From f36cc6a7639a8f1adff02bc7a152bd7f54ceae6d Mon Sep 17 00:00:00 2001 From: julieng Date: Mon, 15 Nov 2021 21:45:09 +0100 Subject: move *.html to *.md --- files/fr/mozilla/add-ons/index.html | 107 -- files/fr/mozilla/add-ons/index.md | 107 ++ .../add_a_button_to_the_toolbar/index.html | 224 --- .../add_a_button_to_the_toolbar/index.md | 224 +++ .../anatomy_of_a_webextension/index.html | 146 -- .../anatomy_of_a_webextension/index.md | 146 ++ .../webextensions/api/alarms/alarm/index.html | 43 - .../webextensions/api/alarms/alarm/index.md | 43 + .../webextensions/api/alarms/clear/index.html | 57 - .../webextensions/api/alarms/clear/index.md | 57 + .../webextensions/api/alarms/clearall/index.html | 53 - .../webextensions/api/alarms/clearall/index.md | 53 + .../webextensions/api/alarms/create/index.html | 90 - .../webextensions/api/alarms/create/index.md | 90 + .../webextensions/api/alarms/get/index.html | 60 - .../add-ons/webextensions/api/alarms/get/index.md | 60 + .../webextensions/api/alarms/getall/index.html | 57 - .../webextensions/api/alarms/getall/index.md | 57 + .../add-ons/webextensions/api/alarms/index.html | 60 - .../add-ons/webextensions/api/alarms/index.md | 60 + .../webextensions/api/alarms/onalarm/index.html | 77 - .../webextensions/api/alarms/onalarm/index.md | 77 + .../api/bookmarks/bookmarktreenode/index.html | 89 - .../api/bookmarks/bookmarktreenode/index.md | 89 + .../api/bookmarks/bookmarktreenodetype/index.html | 33 - .../api/bookmarks/bookmarktreenodetype/index.md | 33 + .../bookmarktreenodeunmodifiable/index.html | 66 - .../bookmarktreenodeunmodifiable/index.md | 66 + .../webextensions/api/bookmarks/create/index.html | 101 -- .../webextensions/api/bookmarks/create/index.md | 101 ++ .../api/bookmarks/createdetails/index.html | 79 - .../api/bookmarks/createdetails/index.md | 79 + .../webextensions/api/bookmarks/get/index.html | 97 -- .../webextensions/api/bookmarks/get/index.md | 97 ++ .../api/bookmarks/getchildren/index.html | 99 -- .../api/bookmarks/getchildren/index.md | 99 ++ .../api/bookmarks/getrecent/index.html | 99 -- .../webextensions/api/bookmarks/getrecent/index.md | 99 ++ .../api/bookmarks/getsubtree/index.html | 119 -- .../api/bookmarks/getsubtree/index.md | 119 ++ .../webextensions/api/bookmarks/gettree/index.html | 114 -- .../webextensions/api/bookmarks/gettree/index.md | 114 ++ .../add-ons/webextensions/api/bookmarks/index.html | 124 -- .../add-ons/webextensions/api/bookmarks/index.md | 124 ++ .../webextensions/api/bookmarks/move/index.html | 116 -- .../webextensions/api/bookmarks/move/index.md | 116 ++ .../api/bookmarks/onchanged/index.html | 129 -- .../webextensions/api/bookmarks/onchanged/index.md | 129 ++ .../api/bookmarks/onchildrenreordered/index.html | 124 -- .../api/bookmarks/onchildrenreordered/index.md | 124 ++ .../api/bookmarks/oncreated/index.html | 110 -- .../webextensions/api/bookmarks/oncreated/index.md | 110 ++ .../api/bookmarks/onimportbegan/index.html | 111 -- .../api/bookmarks/onimportbegan/index.md | 111 ++ .../api/bookmarks/onimportended/index.html | 111 -- .../api/bookmarks/onimportended/index.md | 111 ++ .../webextensions/api/bookmarks/onmoved/index.html | 133 -- .../webextensions/api/bookmarks/onmoved/index.md | 133 ++ .../api/bookmarks/onremoved/index.html | 128 -- .../webextensions/api/bookmarks/onremoved/index.md | 128 ++ .../webextensions/api/bookmarks/remove/index.html | 104 -- .../webextensions/api/bookmarks/remove/index.md | 104 ++ .../api/bookmarks/removetree/index.html | 110 -- .../api/bookmarks/removetree/index.md | 110 ++ .../webextensions/api/bookmarks/search/index.html | 139 -- .../webextensions/api/bookmarks/search/index.md | 139 ++ .../webextensions/api/bookmarks/update/index.html | 123 -- .../webextensions/api/bookmarks/update/index.md | 123 ++ .../api/browseraction/colorarray/index.html | 73 - .../api/browseraction/colorarray/index.md | 73 + .../api/browseraction/disable/index.html | 93 -- .../api/browseraction/disable/index.md | 93 ++ .../api/browseraction/enable/index.html | 89 - .../api/browseraction/enable/index.md | 89 + .../getbadgebackgroundcolor/index.html | 106 -- .../browseraction/getbadgebackgroundcolor/index.md | 106 ++ .../api/browseraction/getbadgetext/index.html | 105 -- .../api/browseraction/getbadgetext/index.md | 105 ++ .../api/browseraction/getbadgetextcolor/index.html | 100 -- .../api/browseraction/getbadgetextcolor/index.md | 100 ++ .../api/browseraction/getpopup/index.html | 105 -- .../api/browseraction/getpopup/index.md | 105 ++ .../api/browseraction/gettitle/index.html | 113 -- .../api/browseraction/gettitle/index.md | 113 ++ .../api/browseraction/imagedatatype/index.html | 66 - .../api/browseraction/imagedatatype/index.md | 66 + .../webextensions/api/browseraction/index.html | 127 -- .../webextensions/api/browseraction/index.md | 127 ++ .../api/browseraction/isenabled/index.html | 78 - .../api/browseraction/isenabled/index.md | 78 + .../api/browseraction/onclicked/index.html | 110 -- .../api/browseraction/onclicked/index.md | 110 ++ .../api/browseraction/openpopup/index.html | 56 - .../api/browseraction/openpopup/index.md | 56 + .../setbadgebackgroundcolor/index.html | 125 -- .../browseraction/setbadgebackgroundcolor/index.md | 125 ++ .../api/browseraction/setbadgetext/index.html | 114 -- .../api/browseraction/setbadgetext/index.md | 114 ++ .../api/browseraction/setbadgetextcolor/index.html | 116 -- .../api/browseraction/setbadgetextcolor/index.md | 116 ++ .../api/browseraction/seticon/index.html | 191 --- .../api/browseraction/seticon/index.md | 191 +++ .../api/browseraction/setpopup/index.html | 140 -- .../api/browseraction/setpopup/index.md | 140 ++ .../api/browseraction/settitle/index.html | 126 -- .../api/browseraction/settitle/index.md | 126 ++ .../allowpopupsforuserevents/index.html | 54 - .../allowpopupsforuserevents/index.md | 54 + .../api/browsersettings/cacheenabled/index.html | 46 - .../api/browsersettings/cacheenabled/index.md | 46 + .../closetabsbydoubleclick/index.html | 25 - .../closetabsbydoubleclick/index.md | 25 + .../contextmenushowevent/index.html | 38 - .../browsersettings/contextmenushowevent/index.md | 38 + .../browsersettings/ftpprotocolenabled/index.html | 45 - .../browsersettings/ftpprotocolenabled/index.md | 45 + .../browsersettings/homepageoverride/index.html | 34 - .../api/browsersettings/homepageoverride/index.md | 34 + .../imageanimationbehavior/index.html | 36 - .../imageanimationbehavior/index.md | 36 + .../webextensions/api/browsersettings/index.html | 71 - .../webextensions/api/browsersettings/index.md | 71 + .../browsersettings/newtabpageoverride/index.html | 34 - .../browsersettings/newtabpageoverride/index.md | 34 + .../api/browsersettings/newtabposition/index.html | 34 - .../api/browsersettings/newtabposition/index.md | 34 + .../openbookmarksinnewtabs/index.html | 36 - .../openbookmarksinnewtabs/index.md | 36 + .../opensearchresultsinnewtabs/index.html | 38 - .../opensearchresultsinnewtabs/index.md | 38 + .../openurlbarresultsinnewtabs/index.html | 38 - .../openurlbarresultsinnewtabs/index.md | 38 + .../overridedocumentcolors/index.html | 44 - .../overridedocumentcolors/index.md | 44 + .../browsersettings/usedocumentfonts/index.html | 43 - .../api/browsersettings/usedocumentfonts/index.md | 43 + .../webnotificationsdisabled/index.html | 47 - .../webnotificationsdisabled/index.md | 47 + .../api/browsersettings/zoomfullpage/index.html | 43 - .../api/browsersettings/zoomfullpage/index.md | 43 + .../browsersettings/zoomsitespecific/index.html | 53 - .../api/browsersettings/zoomsitespecific/index.md | 53 + .../api/browsingdata/datatypeset/index.html | 99 -- .../api/browsingdata/datatypeset/index.md | 99 ++ .../webextensions/api/browsingdata/index.html | 122 -- .../webextensions/api/browsingdata/index.md | 122 ++ .../api/browsingdata/removaloptions/index.html | 89 - .../api/browsingdata/removaloptions/index.md | 89 + .../api/browsingdata/remove/index.html | 127 -- .../webextensions/api/browsingdata/remove/index.md | 127 ++ .../api/browsingdata/removecache/index.html | 98 -- .../api/browsingdata/removecache/index.md | 98 ++ .../api/browsingdata/removecookies/index.html | 129 -- .../api/browsingdata/removecookies/index.md | 129 ++ .../api/browsingdata/removedownloads/index.html | 123 -- .../api/browsingdata/removedownloads/index.md | 123 ++ .../api/browsingdata/removeformdata/index.html | 120 -- .../api/browsingdata/removeformdata/index.md | 120 ++ .../api/browsingdata/removehistory/index.html | 123 -- .../api/browsingdata/removehistory/index.md | 123 ++ .../api/browsingdata/removelocalstorage/index.html | 101 -- .../api/browsingdata/removelocalstorage/index.md | 101 ++ .../api/browsingdata/removepasswords/index.html | 121 -- .../api/browsingdata/removepasswords/index.md | 121 ++ .../api/browsingdata/removeplugindata/index.html | 122 -- .../api/browsingdata/removeplugindata/index.md | 122 ++ .../api/browsingdata/settings/index.html | 107 -- .../api/browsingdata/settings/index.md | 107 ++ .../api/captiveportal/canonicalurl/index.html | 60 - .../api/captiveportal/canonicalurl/index.md | 60 + .../api/captiveportal/getlastchecked/index.html | 62 - .../api/captiveportal/getlastchecked/index.md | 62 + .../api/captiveportal/getstate/index.html | 62 - .../api/captiveportal/getstate/index.md | 62 + .../webextensions/api/captiveportal/index.html | 84 - .../webextensions/api/captiveportal/index.md | 84 + .../onconnectivityavailable/index.html | 98 -- .../captiveportal/onconnectivityavailable/index.md | 98 ++ .../api/captiveportal/onstatechanged/index.html | 100 -- .../api/captiveportal/onstatechanged/index.md | 100 ++ .../add-ons/webextensions/api/clipboard/index.html | 39 - .../add-ons/webextensions/api/clipboard/index.md | 39 + .../api/clipboard/setimagedata/index.html | 79 - .../api/clipboard/setimagedata/index.md | 79 + .../webextensions/api/commands/command/index.html | 44 - .../webextensions/api/commands/command/index.md | 44 + .../webextensions/api/commands/getall/index.html | 59 - .../webextensions/api/commands/getall/index.md | 59 + .../add-ons/webextensions/api/commands/index.html | 91 - .../add-ons/webextensions/api/commands/index.md | 91 + .../api/commands/oncommand/index.html | 86 - .../webextensions/api/commands/oncommand/index.md | 86 + .../webextensions/api/commands/reset/index.html | 57 - .../webextensions/api/commands/reset/index.md | 57 + .../webextensions/api/commands/update/index.html | 67 - .../webextensions/api/commands/update/index.md | 67 + .../webextensions/api/contentscripts/index.html | 45 - .../webextensions/api/contentscripts/index.md | 45 + .../api/contentscripts/register/index.html | 104 -- .../api/contentscripts/register/index.md | 104 ++ .../registeredcontentscript/index.html | 67 - .../registeredcontentscript/index.md | 67 + .../registeredcontentscript/unregister/index.html | 65 - .../registeredcontentscript/unregister/index.md | 65 + .../contextualidentity/index.html | 74 - .../contextualidentity/index.md | 74 + .../api/contextualidentities/create/index.html | 106 -- .../api/contextualidentities/create/index.md | 106 ++ .../api/contextualidentities/get/index.html | 63 - .../api/contextualidentities/get/index.md | 63 + .../api/contextualidentities/index.html | 64 - .../api/contextualidentities/index.md | 64 + .../api/contextualidentities/oncreated/index.html | 96 -- .../api/contextualidentities/oncreated/index.md | 96 ++ .../api/contextualidentities/onremoved/index.html | 96 -- .../api/contextualidentities/onremoved/index.md | 96 ++ .../api/contextualidentities/onupdated/index.html | 96 -- .../api/contextualidentities/onupdated/index.md | 96 ++ .../api/contextualidentities/query/index.html | 83 - .../api/contextualidentities/query/index.md | 83 + .../api/contextualidentities/remove/index.html | 65 - .../api/contextualidentities/remove/index.md | 65 + .../api/contextualidentities/update/index.html | 112 -- .../api/contextualidentities/update/index.md | 112 ++ .../webextensions/api/cookies/cookie/index.html | 111 -- .../webextensions/api/cookies/cookie/index.md | 111 ++ .../api/cookies/cookiestore/index.html | 97 -- .../webextensions/api/cookies/cookiestore/index.md | 97 ++ .../webextensions/api/cookies/get/index.html | 119 -- .../add-ons/webextensions/api/cookies/get/index.md | 119 ++ .../webextensions/api/cookies/getall/index.html | 116 -- .../webextensions/api/cookies/getall/index.md | 116 ++ .../api/cookies/getallcookiestores/index.html | 94 -- .../api/cookies/getallcookiestores/index.md | 94 ++ .../add-ons/webextensions/api/cookies/index.html | 169 -- .../add-ons/webextensions/api/cookies/index.md | 169 ++ .../webextensions/api/cookies/onchanged/index.html | 125 -- .../webextensions/api/cookies/onchanged/index.md | 125 ++ .../api/cookies/onchangedcause/index.html | 90 - .../api/cookies/onchangedcause/index.md | 90 + .../webextensions/api/cookies/remove/index.html | 118 -- .../webextensions/api/cookies/remove/index.md | 118 ++ .../api/cookies/samesitestatus/index.html | 35 - .../api/cookies/samesitestatus/index.md | 35 + .../webextensions/api/cookies/set/index.html | 122 -- .../add-ons/webextensions/api/cookies/set/index.md | 122 ++ .../add-ons/webextensions/api/devtools/index.html | 72 - .../add-ons/webextensions/api/devtools/index.md | 72 + .../api/devtools/inspectedwindow/eval/index.html | 217 --- .../api/devtools/inspectedwindow/eval/index.md | 217 +++ .../api/devtools/inspectedwindow/index.html | 83 - .../api/devtools/inspectedwindow/index.md | 83 + .../api/devtools/inspectedwindow/reload/index.html | 98 -- .../api/devtools/inspectedwindow/reload/index.md | 98 ++ .../api/devtools/inspectedwindow/tabid/index.html | 84 - .../api/devtools/inspectedwindow/tabid/index.md | 84 + .../api/devtools/network/gethar/index.html | 87 - .../api/devtools/network/gethar/index.md | 87 + .../webextensions/api/devtools/network/index.html | 76 - .../webextensions/api/devtools/network/index.md | 76 + .../api/devtools/network/onnavigated/index.html | 102 -- .../api/devtools/network/onnavigated/index.md | 102 ++ .../devtools/network/onrequestfinished/index.html | 111 -- .../devtools/network/onrequestfinished/index.md | 111 ++ .../api/devtools/panels/create/index.html | 109 -- .../api/devtools/panels/create/index.md | 109 ++ .../api/devtools/panels/elements/index.html | 28 - .../api/devtools/panels/elements/index.md | 28 + .../elementspanel/createsidebarpane/index.html | 107 -- .../elementspanel/createsidebarpane/index.md | 107 ++ .../api/devtools/panels/elementspanel/index.html | 74 - .../api/devtools/panels/elementspanel/index.md | 74 + .../elementspanel/onselectionchanged/index.html | 74 - .../elementspanel/onselectionchanged/index.md | 74 + .../api/devtools/panels/extensionpanel/index.html | 92 -- .../api/devtools/panels/extensionpanel/index.md | 92 ++ .../panels/extensionsidebarpane/index.html | 90 - .../devtools/panels/extensionsidebarpane/index.md | 90 + .../extensionsidebarpane/onhidden/index.html | 80 - .../panels/extensionsidebarpane/onhidden/index.md | 80 + .../panels/extensionsidebarpane/onshown/index.html | 77 - .../panels/extensionsidebarpane/onshown/index.md | 77 + .../extensionsidebarpane/setexpression/index.html | 106 -- .../extensionsidebarpane/setexpression/index.md | 106 ++ .../extensionsidebarpane/setobject/index.html | 104 -- .../panels/extensionsidebarpane/setobject/index.md | 104 ++ .../panels/extensionsidebarpane/setpage/index.html | 86 - .../panels/extensionsidebarpane/setpage/index.md | 86 + .../webextensions/api/devtools/panels/index.html | 104 -- .../webextensions/api/devtools/panels/index.md | 104 ++ .../api/devtools/panels/onthemechanged/index.html | 71 - .../api/devtools/panels/onthemechanged/index.md | 71 + .../api/devtools/panels/themename/index.html | 38 - .../api/devtools/panels/themename/index.md | 38 + .../add-ons/webextensions/api/dns/index.html | 31 - .../mozilla/add-ons/webextensions/api/dns/index.md | 31 + .../webextensions/api/dns/resolve/index.html | 94 -- .../add-ons/webextensions/api/dns/resolve/index.md | 94 ++ .../api/downloads/acceptdanger/index.html | 84 - .../api/downloads/acceptdanger/index.md | 84 + .../api/downloads/booleandelta/index.html | 72 - .../api/downloads/booleandelta/index.md | 72 + .../webextensions/api/downloads/cancel/index.html | 99 -- .../webextensions/api/downloads/cancel/index.md | 99 ++ .../api/downloads/dangertype/index.html | 91 - .../api/downloads/dangertype/index.md | 91 + .../api/downloads/doubledelta/index.html | 73 - .../api/downloads/doubledelta/index.md | 73 + .../api/downloads/download/index.html | 142 -- .../webextensions/api/downloads/download/index.md | 142 ++ .../api/downloads/downloaditem/index.html | 109 -- .../api/downloads/downloaditem/index.md | 109 ++ .../api/downloads/downloadquery/index.html | 120 -- .../api/downloads/downloadquery/index.md | 120 ++ .../api/downloads/downloadtime/index.html | 77 - .../api/downloads/downloadtime/index.md | 77 + .../webextensions/api/downloads/drag/index.html | 78 - .../webextensions/api/downloads/drag/index.md | 78 + .../webextensions/api/downloads/erase/index.html | 121 -- .../webextensions/api/downloads/erase/index.md | 121 ++ .../downloads/filenameconflictaction/index.html | 77 - .../api/downloads/filenameconflictaction/index.md | 77 + .../api/downloads/getfileicon/index.html | 121 -- .../api/downloads/getfileicon/index.md | 121 ++ .../add-ons/webextensions/api/downloads/index.html | 132 -- .../add-ons/webextensions/api/downloads/index.md | 132 ++ .../api/downloads/interruptreason/index.html | 117 -- .../api/downloads/interruptreason/index.md | 117 ++ .../api/downloads/onchanged/index.html | 148 -- .../webextensions/api/downloads/onchanged/index.md | 148 ++ .../api/downloads/oncreated/index.html | 108 -- .../webextensions/api/downloads/oncreated/index.md | 108 ++ .../api/downloads/onerased/index.html | 113 -- .../webextensions/api/downloads/onerased/index.md | 113 ++ .../webextensions/api/downloads/open/index.html | 110 -- .../webextensions/api/downloads/open/index.md | 110 ++ .../webextensions/api/downloads/pause/index.html | 94 -- .../webextensions/api/downloads/pause/index.md | 94 ++ .../api/downloads/removefile/index.html | 116 -- .../api/downloads/removefile/index.md | 116 ++ .../webextensions/api/downloads/resume/index.html | 97 -- .../webextensions/api/downloads/resume/index.md | 97 ++ .../webextensions/api/downloads/search/index.html | 166 -- .../webextensions/api/downloads/search/index.md | 166 ++ .../api/downloads/setshelfenabled/index.html | 82 - .../api/downloads/setshelfenabled/index.md | 82 + .../webextensions/api/downloads/show/index.html | 109 -- .../webextensions/api/downloads/show/index.md | 109 ++ .../api/downloads/showdefaultfolder/index.html | 81 - .../api/downloads/showdefaultfolder/index.md | 81 + .../webextensions/api/downloads/state/index.html | 81 - .../webextensions/api/downloads/state/index.md | 81 + .../api/downloads/stringdelta/index.html | 73 - .../api/downloads/stringdelta/index.md | 73 + .../webextensions/api/events/event/index.html | 85 - .../webextensions/api/events/event/index.md | 85 + .../add-ons/webextensions/api/events/index.html | 72 - .../add-ons/webextensions/api/events/index.md | 72 + .../webextensions/api/events/rule/index.html | 79 - .../add-ons/webextensions/api/events/rule/index.md | 79 + .../webextensions/api/events/urlfilter/index.html | 140 -- .../webextensions/api/events/urlfilter/index.md | 140 ++ .../api/extension/getbackgroundpage/index.html | 96 -- .../api/extension/getbackgroundpage/index.md | 96 ++ .../api/extension/getextensiontabs/index.html | 86 - .../api/extension/getextensiontabs/index.md | 86 + .../webextensions/api/extension/geturl/index.html | 92 -- .../webextensions/api/extension/geturl/index.md | 92 ++ .../api/extension/getviews/index.html | 114 -- .../webextensions/api/extension/getviews/index.md | 114 ++ .../add-ons/webextensions/api/extension/index.html | 109 -- .../add-ons/webextensions/api/extension/index.md | 109 ++ .../api/extension/inincognitocontext/index.html | 62 - .../api/extension/inincognitocontext/index.md | 62 + .../extension/isallowedfileschemeaccess/index.html | 92 -- .../extension/isallowedfileschemeaccess/index.md | 92 ++ .../extension/isallowedincognitoaccess/index.html | 86 - .../extension/isallowedincognitoaccess/index.md | 86 + .../api/extension/lasterror/index.html | 62 - .../webextensions/api/extension/lasterror/index.md | 62 + .../api/extension/onrequest/index.html | 115 -- .../webextensions/api/extension/onrequest/index.md | 115 ++ .../api/extension/onrequestexternal/index.html | 114 -- .../api/extension/onrequestexternal/index.md | 114 ++ .../api/extension/sendrequest/index.html | 93 -- .../api/extension/sendrequest/index.md | 93 ++ .../api/extension/setupdateurldata/index.html | 78 - .../api/extension/setupdateurldata/index.md | 78 + .../api/extension/viewtype/index.html | 66 - .../webextensions/api/extension/viewtype/index.md | 66 + .../api/extensiontypes/imagedetails/index.html | 73 - .../api/extensiontypes/imagedetails/index.md | 73 + .../api/extensiontypes/imageformat/index.html | 66 - .../api/extensiontypes/imageformat/index.md | 66 + .../webextensions/api/extensiontypes/index.html | 76 - .../webextensions/api/extensiontypes/index.md | 76 + .../api/extensiontypes/injectdetails/index.html | 24 - .../api/extensiontypes/injectdetails/index.md | 24 + .../api/extensiontypes/runat/index.html | 74 - .../api/extensiontypes/runat/index.md | 74 + .../add-ons/webextensions/api/find/find/index.html | 290 ---- .../add-ons/webextensions/api/find/find/index.md | 290 ++++ .../api/find/highlightresults/index.html | 51 - .../api/find/highlightresults/index.md | 51 + .../add-ons/webextensions/api/find/index.html | 32 - .../add-ons/webextensions/api/find/index.md | 32 + .../api/find/removehighlighting/index.html | 39 - .../api/find/removehighlighting/index.md | 39 + .../webextensions/api/history/addurl/index.html | 147 -- .../webextensions/api/history/addurl/index.md | 147 ++ .../webextensions/api/history/deleteall/index.html | 94 -- .../webextensions/api/history/deleteall/index.md | 94 ++ .../api/history/deleterange/index.html | 104 -- .../webextensions/api/history/deleterange/index.md | 104 ++ .../webextensions/api/history/deleteurl/index.html | 139 -- .../webextensions/api/history/deleteurl/index.md | 139 ++ .../webextensions/api/history/getvisits/index.html | 116 -- .../webextensions/api/history/getvisits/index.md | 116 ++ .../api/history/historyitem/index.html | 81 - .../webextensions/api/history/historyitem/index.md | 81 + .../add-ons/webextensions/api/history/index.html | 132 -- .../add-ons/webextensions/api/history/index.md | 132 ++ .../api/history/ontitlechanged/index.html | 115 -- .../api/history/ontitlechanged/index.md | 115 ++ .../webextensions/api/history/onvisited/index.html | 111 -- .../webextensions/api/history/onvisited/index.md | 111 ++ .../api/history/onvisitremoved/index.html | 117 -- .../api/history/onvisitremoved/index.md | 117 ++ .../webextensions/api/history/search/index.html | 150 -- .../webextensions/api/history/search/index.md | 150 ++ .../api/history/transitiontype/index.html | 91 - .../api/history/transitiontype/index.md | 91 + .../webextensions/api/history/visititem/index.html | 79 - .../webextensions/api/history/visititem/index.md | 79 + .../api/i18n/detectlanguage/index.html | 112 -- .../webextensions/api/i18n/detectlanguage/index.md | 112 ++ .../api/i18n/getacceptlanguages/index.html | 90 - .../api/i18n/getacceptlanguages/index.md | 90 + .../webextensions/api/i18n/getmessage/index.html | 115 -- .../webextensions/api/i18n/getmessage/index.md | 115 ++ .../api/i18n/getuilanguage/index.html | 82 - .../webextensions/api/i18n/getuilanguage/index.md | 82 + .../add-ons/webextensions/api/i18n/index.html | 57 - .../add-ons/webextensions/api/i18n/index.md | 57 + .../webextensions/api/i18n/languagecode/index.html | 67 - .../webextensions/api/i18n/languagecode/index.md | 67 + .../locale-specific_message_reference/index.html | 129 -- .../locale-specific_message_reference/index.md | 129 ++ .../api/identity/getredirecturl/index.html | 53 - .../api/identity/getredirecturl/index.md | 53 + .../add-ons/webextensions/api/identity/index.html | 106 -- .../add-ons/webextensions/api/identity/index.md | 106 ++ .../api/identity/launchwebauthflow/index.html | 121 -- .../api/identity/launchwebauthflow/index.md | 121 ++ .../webextensions/api/idle/idlestate/index.html | 66 - .../webextensions/api/idle/idlestate/index.md | 66 + .../add-ons/webextensions/api/idle/index.html | 88 - .../add-ons/webextensions/api/idle/index.md | 88 + .../api/idle/onstatechanged/index.html | 111 -- .../webextensions/api/idle/onstatechanged/index.md | 111 ++ .../webextensions/api/idle/querystate/index.html | 98 -- .../webextensions/api/idle/querystate/index.md | 98 ++ .../api/idle/setdetectioninterval/index.html | 82 - .../api/idle/setdetectioninterval/index.md | 82 + .../mozilla/add-ons/webextensions/api/index.html | 58 - .../fr/mozilla/add-ons/webextensions/api/index.md | 58 + .../api/management/extensioninfo/index.html | 125 -- .../api/management/extensioninfo/index.md | 125 ++ .../webextensions/api/management/get/index.html | 96 -- .../webextensions/api/management/get/index.md | 96 ++ .../webextensions/api/management/getall/index.html | 94 -- .../webextensions/api/management/getall/index.md | 94 ++ .../getpermissionwarningsbyid/index.html | 101 -- .../management/getpermissionwarningsbyid/index.md | 101 ++ .../getpermissionwarningsbymanifest/index.html | 110 -- .../getpermissionwarningsbymanifest/index.md | 110 ++ .../api/management/getself/index.html | 88 - .../webextensions/api/management/getself/index.md | 88 + .../webextensions/api/management/index.html | 113 -- .../add-ons/webextensions/api/management/index.md | 113 ++ .../api/management/install/index.html | 83 - .../webextensions/api/management/install/index.md | 83 + .../api/management/ondisabled/index.html | 104 -- .../api/management/ondisabled/index.md | 104 ++ .../api/management/onenabled/index.html | 104 -- .../api/management/onenabled/index.md | 104 ++ .../api/management/oninstalled/index.html | 104 -- .../api/management/oninstalled/index.md | 104 ++ .../api/management/onuninstalled/index.html | 104 -- .../api/management/onuninstalled/index.md | 104 ++ .../api/management/setenabled/index.html | 103 -- .../api/management/setenabled/index.md | 103 ++ .../api/management/uninstall/index.html | 105 -- .../api/management/uninstall/index.md | 105 ++ .../api/management/uninstallself/index.html | 117 -- .../api/management/uninstallself/index.md | 117 ++ .../menus/action_menu_top_level_limit/index.html | 64 - .../api/menus/action_menu_top_level_limit/index.md | 64 + .../webextensions/api/menus/contexttype/index.html | 100 -- .../webextensions/api/menus/contexttype/index.md | 100 ++ .../webextensions/api/menus/create/index.html | 221 --- .../webextensions/api/menus/create/index.md | 221 +++ .../api/menus/createproperties/index.html | 128 -- .../api/menus/createproperties/index.md | 128 ++ .../api/menus/gettargetelement/index.html | 74 - .../api/menus/gettargetelement/index.md | 74 + .../add-ons/webextensions/api/menus/index.html | 203 --- .../add-ons/webextensions/api/menus/index.md | 203 +++ .../webextensions/api/menus/itemtype/index.html | 79 - .../webextensions/api/menus/itemtype/index.md | 79 + .../webextensions/api/menus/onclickdata/index.html | 103 -- .../webextensions/api/menus/onclickdata/index.md | 103 ++ .../webextensions/api/menus/onclicked/index.html | 116 -- .../webextensions/api/menus/onclicked/index.md | 116 ++ .../webextensions/api/menus/onhidden/index.html | 68 - .../webextensions/api/menus/onhidden/index.md | 68 + .../webextensions/api/menus/onshown/index.html | 151 -- .../webextensions/api/menus/onshown/index.md | 151 ++ .../api/menus/overridecontext/index.html | 44 - .../api/menus/overridecontext/index.md | 44 + .../webextensions/api/menus/refresh/index.html | 64 - .../webextensions/api/menus/refresh/index.md | 64 + .../webextensions/api/menus/remove/index.html | 107 -- .../webextensions/api/menus/remove/index.md | 107 ++ .../webextensions/api/menus/removeall/index.html | 105 -- .../webextensions/api/menus/removeall/index.md | 105 ++ .../webextensions/api/menus/update/index.html | 191 --- .../webextensions/api/menus/update/index.md | 191 +++ .../api/notifications/clear/index.html | 78 - .../webextensions/api/notifications/clear/index.md | 78 + .../api/notifications/create/index.html | 147 -- .../api/notifications/create/index.md | 147 ++ .../api/notifications/getall/index.html | 86 - .../api/notifications/getall/index.md | 86 + .../webextensions/api/notifications/index.html | 66 - .../webextensions/api/notifications/index.md | 66 + .../notifications/notificationoptions/index.html | 86 - .../api/notifications/notificationoptions/index.md | 86 + .../api/notifications/onbuttonclicked/index.html | 67 - .../api/notifications/onbuttonclicked/index.md | 67 + .../api/notifications/onclicked/index.html | 73 - .../api/notifications/onclicked/index.md | 73 + .../api/notifications/onclosed/index.html | 75 - .../api/notifications/onclosed/index.md | 75 + .../api/notifications/onshown/index.html | 75 - .../api/notifications/onshown/index.md | 75 + .../api/notifications/templatetype/index.html | 67 - .../api/notifications/templatetype/index.md | 67 + .../api/notifications/update/index.html | 108 -- .../api/notifications/update/index.md | 108 ++ .../add-ons/webextensions/api/omnibox/index.html | 70 - .../add-ons/webextensions/api/omnibox/index.md | 70 + .../api/omnibox/oninputcancelled/index.html | 58 - .../api/omnibox/oninputcancelled/index.md | 58 + .../api/omnibox/oninputchanged/index.html | 151 -- .../api/omnibox/oninputchanged/index.md | 151 ++ .../api/omnibox/oninputentered/index.html | 151 -- .../api/omnibox/oninputentered/index.md | 151 ++ .../omnibox/oninputentereddisposition/index.html | 43 - .../api/omnibox/oninputentereddisposition/index.md | 43 + .../api/omnibox/oninputstarted/index.html | 68 - .../api/omnibox/oninputstarted/index.md | 68 + .../api/omnibox/setdefaultsuggestion/index.html | 56 - .../api/omnibox/setdefaultsuggestion/index.md | 56 + .../api/omnibox/suggestresult/index.html | 41 - .../api/omnibox/suggestresult/index.md | 41 + .../api/pageaction/getpopup/index.html | 107 -- .../webextensions/api/pageaction/getpopup/index.md | 107 ++ .../api/pageaction/gettitle/index.html | 102 -- .../webextensions/api/pageaction/gettitle/index.md | 102 ++ .../webextensions/api/pageaction/hide/index.html | 86 - .../webextensions/api/pageaction/hide/index.md | 86 + .../api/pageaction/imagedatatype/index.html | 66 - .../api/pageaction/imagedatatype/index.md | 66 + .../webextensions/api/pageaction/index.html | 112 -- .../add-ons/webextensions/api/pageaction/index.md | 112 ++ .../api/pageaction/isshown/index.html | 65 - .../webextensions/api/pageaction/isshown/index.md | 65 + .../api/pageaction/onclicked/index.html | 112 -- .../api/pageaction/onclicked/index.md | 112 ++ .../api/pageaction/openpopup/index.html | 56 - .../api/pageaction/openpopup/index.md | 56 + .../api/pageaction/setpopup/index.html | 104 -- .../webextensions/api/pageaction/setpopup/index.md | 104 ++ .../api/pageaction/settitle/index.html | 96 -- .../webextensions/api/pageaction/settitle/index.md | 96 ++ .../webextensions/api/pageaction/show/index.html | 100 -- .../webextensions/api/pageaction/show/index.md | 100 ++ .../api/permissions/contains/index.html | 93 -- .../api/permissions/contains/index.md | 93 ++ .../api/permissions/getall/index.html | 54 - .../webextensions/api/permissions/getall/index.md | 54 + .../webextensions/api/permissions/index.html | 84 - .../add-ons/webextensions/api/permissions/index.md | 84 + .../api/permissions/onadded/index.html | 73 - .../webextensions/api/permissions/onadded/index.md | 73 + .../api/permissions/onremoved/index.html | 73 - .../api/permissions/onremoved/index.md | 73 + .../api/permissions/permissions/index.html | 39 - .../api/permissions/permissions/index.md | 39 + .../api/permissions/remove/index.html | 68 - .../webextensions/api/permissions/remove/index.md | 68 + .../api/permissions/request/index.html | 88 - .../webextensions/api/permissions/request/index.md | 88 + .../api/pkcs11/getmoduleslots/index.html | 92 -- .../api/pkcs11/getmoduleslots/index.md | 92 ++ .../add-ons/webextensions/api/pkcs11/index.html | 90 - .../add-ons/webextensions/api/pkcs11/index.md | 90 + .../api/pkcs11/installmodule/index.html | 71 - .../api/pkcs11/installmodule/index.md | 71 + .../api/pkcs11/ismoduleinstalled/index.html | 55 - .../api/pkcs11/ismoduleinstalled/index.md | 55 + .../api/pkcs11/uninstallmodule/index.html | 51 - .../api/pkcs11/uninstallmodule/index.md | 51 + .../add-ons/webextensions/api/privacy/index.html | 70 - .../add-ons/webextensions/api/privacy/index.md | 70 + .../webextensions/api/privacy/network/index.html | 110 -- .../webextensions/api/privacy/network/index.md | 110 ++ .../webextensions/api/privacy/services/index.html | 60 - .../webextensions/api/privacy/services/index.md | 60 + .../webextensions/api/privacy/websites/index.html | 154 -- .../webextensions/api/privacy/websites/index.md | 154 ++ .../add-ons/webextensions/api/proxy/index.html | 68 - .../add-ons/webextensions/api/proxy/index.md | 68 + .../webextensions/api/proxy/onerror/index.html | 59 - .../webextensions/api/proxy/onerror/index.md | 59 + .../webextensions/api/proxy/onrequest/index.html | 105 -- .../webextensions/api/proxy/onrequest/index.md | 105 ++ .../webextensions/api/proxy/proxyinfo/index.html | 61 - .../webextensions/api/proxy/proxyinfo/index.md | 61 + .../webextensions/api/proxy/register/index.html | 159 -- .../webextensions/api/proxy/register/index.md | 159 ++ .../api/proxy/requestdetails/index.html | 58 - .../api/proxy/requestdetails/index.md | 58 + .../webextensions/api/proxy/settings/index.html | 68 - .../webextensions/api/proxy/settings/index.md | 68 + .../webextensions/api/proxy/unregister/index.html | 53 - .../webextensions/api/proxy/unregister/index.md | 53 + .../webextensions/api/runtime/connect/index.html | 158 -- .../webextensions/api/runtime/connect/index.md | 158 ++ .../api/runtime/connectnative/index.html | 120 -- .../api/runtime/connectnative/index.md | 120 ++ .../api/runtime/getbackgroundpage/index.html | 110 -- .../api/runtime/getbackgroundpage/index.md | 110 ++ .../api/runtime/getbrowserinfo/index.html | 63 - .../api/runtime/getbrowserinfo/index.md | 63 + .../api/runtime/getmanifest/index.html | 84 - .../webextensions/api/runtime/getmanifest/index.md | 84 + .../runtime/getpackagedirectoryentry/index.html | 86 - .../api/runtime/getpackagedirectoryentry/index.md | 86 + .../api/runtime/getplatforminfo/index.html | 88 - .../api/runtime/getplatforminfo/index.md | 88 + .../webextensions/api/runtime/geturl/index.html | 95 -- .../webextensions/api/runtime/geturl/index.md | 95 ++ .../webextensions/api/runtime/id/index.html | 68 - .../add-ons/webextensions/api/runtime/id/index.md | 68 + .../add-ons/webextensions/api/runtime/index.html | 171 -- .../add-ons/webextensions/api/runtime/index.md | 171 ++ .../webextensions/api/runtime/lasterror/index.html | 122 -- .../webextensions/api/runtime/lasterror/index.md | 122 ++ .../api/runtime/messagesender/index.html | 81 - .../api/runtime/messagesender/index.md | 81 + .../runtime/onbrowserupdateavailable/index.html | 101 -- .../api/runtime/onbrowserupdateavailable/index.md | 101 ++ .../webextensions/api/runtime/onconnect/index.html | 153 -- .../webextensions/api/runtime/onconnect/index.md | 153 ++ .../api/runtime/onconnectexternal/index.html | 138 -- .../api/runtime/onconnectexternal/index.md | 138 ++ .../api/runtime/oninstalled/index.html | 122 -- .../webextensions/api/runtime/oninstalled/index.md | 122 ++ .../api/runtime/oninstalledreason/index.html | 77 - .../api/runtime/oninstalledreason/index.md | 77 + .../webextensions/api/runtime/onmessage/index.html | 326 ---- .../webextensions/api/runtime/onmessage/index.md | 326 ++++ .../api/runtime/onmessageexternal/index.html | 155 -- .../api/runtime/onmessageexternal/index.md | 155 ++ .../api/runtime/onrestartrequired/index.html | 98 -- .../api/runtime/onrestartrequired/index.md | 98 ++ .../api/runtime/onrestartrequiredreason/index.html | 72 - .../api/runtime/onrestartrequiredreason/index.md | 72 + .../webextensions/api/runtime/onstartup/index.html | 98 -- .../webextensions/api/runtime/onstartup/index.md | 98 ++ .../webextensions/api/runtime/onsuspend/index.html | 106 -- .../webextensions/api/runtime/onsuspend/index.md | 106 ++ .../api/runtime/onsuspendcanceled/index.html | 101 -- .../api/runtime/onsuspendcanceled/index.md | 101 ++ .../api/runtime/onupdateavailable/index.html | 114 -- .../api/runtime/onupdateavailable/index.md | 114 ++ .../api/runtime/openoptionspage/index.html | 84 - .../api/runtime/openoptionspage/index.md | 84 + .../api/runtime/platformarch/index.html | 75 - .../api/runtime/platformarch/index.md | 75 + .../api/runtime/platforminfo/index.html | 75 - .../api/runtime/platforminfo/index.md | 75 + .../api/runtime/platformnaclarch/index.html | 66 - .../api/runtime/platformnaclarch/index.md | 66 + .../api/runtime/platformos/index.html | 81 - .../webextensions/api/runtime/platformos/index.md | 81 + .../webextensions/api/runtime/port/index.html | 246 --- .../webextensions/api/runtime/port/index.md | 246 +++ .../webextensions/api/runtime/reload/index.html | 81 - .../webextensions/api/runtime/reload/index.md | 81 + .../api/runtime/requestupdatecheck/index.html | 107 -- .../api/runtime/requestupdatecheck/index.md | 107 ++ .../runtime/requestupdatecheckstatus/index.html | 75 - .../api/runtime/requestupdatecheckstatus/index.md | 75 + .../api/runtime/sendmessage/index.html | 165 -- .../webextensions/api/runtime/sendmessage/index.md | 165 ++ .../api/runtime/sendnativemessage/index.html | 112 -- .../api/runtime/sendnativemessage/index.md | 112 ++ .../api/runtime/setuninstallurl/index.html | 95 -- .../api/runtime/setuninstallurl/index.md | 95 ++ .../webextensions/api/search/get/index.html | 69 - .../add-ons/webextensions/api/search/get/index.md | 69 + .../add-ons/webextensions/api/search/index.html | 31 - .../add-ons/webextensions/api/search/index.md | 31 + .../webextensions/api/search/search/index.html | 100 -- .../webextensions/api/search/search/index.md | 100 ++ .../webextensions/api/sessions/filter/index.html | 73 - .../webextensions/api/sessions/filter/index.md | 73 + .../api/sessions/forgetclosedtab/index.html | 78 - .../api/sessions/forgetclosedtab/index.md | 78 + .../api/sessions/forgetclosedwindow/index.html | 75 - .../api/sessions/forgetclosedwindow/index.md | 75 + .../api/sessions/getrecentlyclosed/index.html | 113 -- .../api/sessions/getrecentlyclosed/index.md | 113 ++ .../api/sessions/gettabvalue/index.html | 64 - .../api/sessions/gettabvalue/index.md | 64 + .../api/sessions/getwindowvalue/index.html | 64 - .../api/sessions/getwindowvalue/index.md | 64 + .../add-ons/webextensions/api/sessions/index.html | 134 -- .../add-ons/webextensions/api/sessions/index.md | 134 ++ .../api/sessions/max_session_results/index.html | 60 - .../api/sessions/max_session_results/index.md | 60 + .../api/sessions/onchanged/index.html | 121 -- .../webextensions/api/sessions/onchanged/index.md | 121 ++ .../api/sessions/removetabvalue/index.html | 82 - .../api/sessions/removetabvalue/index.md | 82 + .../api/sessions/removewindowvalue/index.html | 80 - .../api/sessions/removewindowvalue/index.md | 80 + .../webextensions/api/sessions/restore/index.html | 110 -- .../webextensions/api/sessions/restore/index.md | 110 ++ .../webextensions/api/sessions/session/index.html | 84 - .../webextensions/api/sessions/session/index.md | 84 + .../api/sessions/settabvalue/index.html | 69 - .../api/sessions/settabvalue/index.md | 69 + .../api/sessions/setwindowvalue/index.html | 68 - .../api/sessions/setwindowvalue/index.md | 68 + .../api/sidebaraction/close/index.html | 54 - .../webextensions/api/sidebaraction/close/index.md | 54 + .../api/sidebaraction/getpanel/index.html | 106 -- .../api/sidebaraction/getpanel/index.md | 106 ++ .../api/sidebaraction/gettitle/index.html | 113 -- .../api/sidebaraction/gettitle/index.md | 113 ++ .../api/sidebaraction/imagedatatype/index.html | 65 - .../api/sidebaraction/imagedatatype/index.md | 65 + .../webextensions/api/sidebaraction/index.html | 101 -- .../webextensions/api/sidebaraction/index.md | 101 ++ .../api/sidebaraction/isopen/index.html | 78 - .../api/sidebaraction/isopen/index.md | 78 + .../api/sidebaraction/open/index.html | 57 - .../webextensions/api/sidebaraction/open/index.md | 57 + .../api/sidebaraction/seticon/index.html | 134 -- .../api/sidebaraction/seticon/index.md | 134 ++ .../api/sidebaraction/setpanel/index.html | 127 -- .../api/sidebaraction/setpanel/index.md | 127 ++ .../api/sidebaraction/settitle/index.html | 121 -- .../api/sidebaraction/settitle/index.md | 121 ++ .../api/sidebaraction/toggle/index.html | 54 - .../api/sidebaraction/toggle/index.md | 54 + .../add-ons/webextensions/api/storage/index.html | 109 -- .../add-ons/webextensions/api/storage/index.md | 109 ++ .../webextensions/api/storage/local/index.html | 92 -- .../webextensions/api/storage/local/index.md | 92 ++ .../webextensions/api/storage/managed/index.html | 134 -- .../webextensions/api/storage/managed/index.md | 134 ++ .../webextensions/api/storage/onchanged/index.html | 125 -- .../webextensions/api/storage/onchanged/index.md | 125 ++ .../api/storage/storagearea/clear/index.html | 62 - .../api/storage/storagearea/clear/index.md | 62 + .../api/storage/storagearea/get/index.html | 135 -- .../api/storage/storagearea/get/index.md | 135 ++ .../storage/storagearea/getbytesinuse/index.html | 54 - .../api/storage/storagearea/getbytesinuse/index.md | 54 + .../api/storage/storagearea/index.html | 81 - .../webextensions/api/storage/storagearea/index.md | 81 + .../api/storage/storagearea/remove/index.html | 70 - .../api/storage/storagearea/remove/index.md | 70 + .../api/storage/storagearea/set/index.html | 101 -- .../api/storage/storagearea/set/index.md | 101 ++ .../api/storage/storagechange/index.html | 73 - .../api/storage/storagechange/index.md | 73 + .../webextensions/api/storage/sync/index.html | 109 -- .../webextensions/api/storage/sync/index.md | 109 ++ .../webextensions/api/tabs/capturetab/index.html | 100 -- .../webextensions/api/tabs/capturetab/index.md | 100 ++ .../api/tabs/capturevisibletab/index.html | 103 -- .../api/tabs/capturevisibletab/index.md | 103 ++ .../webextensions/api/tabs/connect/index.html | 120 -- .../webextensions/api/tabs/connect/index.md | 120 ++ .../webextensions/api/tabs/create/index.html | 137 -- .../add-ons/webextensions/api/tabs/create/index.md | 137 ++ .../api/tabs/detectlanguage/index.html | 127 -- .../webextensions/api/tabs/detectlanguage/index.md | 127 ++ .../webextensions/api/tabs/discard/index.html | 113 -- .../webextensions/api/tabs/discard/index.md | 113 ++ .../webextensions/api/tabs/duplicate/index.html | 120 -- .../webextensions/api/tabs/duplicate/index.md | 120 ++ .../api/tabs/executescript/index.html | 173 -- .../webextensions/api/tabs/executescript/index.md | 173 ++ .../add-ons/webextensions/api/tabs/get/index.html | 95 -- .../add-ons/webextensions/api/tabs/get/index.md | 95 ++ .../api/tabs/getallinwindow/index.html | 88 - .../webextensions/api/tabs/getallinwindow/index.md | 88 + .../webextensions/api/tabs/getcurrent/index.html | 94 -- .../webextensions/api/tabs/getcurrent/index.md | 94 ++ .../webextensions/api/tabs/getselected/index.html | 87 - .../webextensions/api/tabs/getselected/index.md | 87 + .../webextensions/api/tabs/getzoom/index.html | 110 -- .../webextensions/api/tabs/getzoom/index.md | 110 ++ .../api/tabs/getzoomsettings/index.html | 97 -- .../api/tabs/getzoomsettings/index.md | 97 ++ .../webextensions/api/tabs/goback/index.html | 101 -- .../add-ons/webextensions/api/tabs/goback/index.md | 101 ++ .../webextensions/api/tabs/goforward/index.html | 101 -- .../webextensions/api/tabs/goforward/index.md | 101 ++ .../add-ons/webextensions/api/tabs/hide/index.html | 87 - .../add-ons/webextensions/api/tabs/hide/index.md | 87 + .../webextensions/api/tabs/highlight/index.html | 99 -- .../webextensions/api/tabs/highlight/index.md | 99 ++ .../add-ons/webextensions/api/tabs/index.html | 223 --- .../add-ons/webextensions/api/tabs/index.md | 223 +++ .../webextensions/api/tabs/insertcss/index.html | 141 -- .../webextensions/api/tabs/insertcss/index.md | 141 ++ .../add-ons/webextensions/api/tabs/move/index.html | 166 -- .../add-ons/webextensions/api/tabs/move/index.md | 166 ++ .../api/tabs/moveinsuccession/index.html | 51 - .../api/tabs/moveinsuccession/index.md | 51 + .../webextensions/api/tabs/mutedinfo/index.html | 75 - .../webextensions/api/tabs/mutedinfo/index.md | 75 + .../api/tabs/mutedinforeason/index.html | 75 - .../api/tabs/mutedinforeason/index.md | 75 + .../webextensions/api/tabs/onactivated/index.html | 118 -- .../webextensions/api/tabs/onactivated/index.md | 118 ++ .../api/tabs/onactivechanged/index.html | 118 -- .../api/tabs/onactivechanged/index.md | 118 ++ .../webextensions/api/tabs/onattached/index.html | 124 -- .../webextensions/api/tabs/onattached/index.md | 124 ++ .../webextensions/api/tabs/oncreated/index.html | 108 -- .../webextensions/api/tabs/oncreated/index.md | 108 ++ .../webextensions/api/tabs/ondetached/index.html | 124 -- .../webextensions/api/tabs/ondetached/index.md | 124 ++ .../api/tabs/onhighlightchanged/index.html | 111 -- .../api/tabs/onhighlightchanged/index.md | 111 ++ .../api/tabs/onhighlighted/index.html | 117 -- .../webextensions/api/tabs/onhighlighted/index.md | 117 ++ .../webextensions/api/tabs/onmoved/index.html | 131 -- .../webextensions/api/tabs/onmoved/index.md | 131 ++ .../webextensions/api/tabs/onremoved/index.html | 127 -- .../webextensions/api/tabs/onremoved/index.md | 127 ++ .../webextensions/api/tabs/onreplaced/index.html | 117 -- .../webextensions/api/tabs/onreplaced/index.md | 117 ++ .../api/tabs/onselectionchanged/index.html | 115 -- .../api/tabs/onselectionchanged/index.md | 115 ++ .../webextensions/api/tabs/onupdated/index.html | 272 --- .../webextensions/api/tabs/onupdated/index.md | 272 +++ .../webextensions/api/tabs/onzoomchange/index.html | 126 -- .../webextensions/api/tabs/onzoomchange/index.md | 126 ++ .../webextensions/api/tabs/pagesettings/index.html | 86 - .../webextensions/api/tabs/pagesettings/index.md | 86 + .../webextensions/api/tabs/print/index.html | 46 - .../add-ons/webextensions/api/tabs/print/index.md | 46 + .../webextensions/api/tabs/printpreview/index.html | 62 - .../webextensions/api/tabs/printpreview/index.md | 62 + .../webextensions/api/tabs/query/index.html | 187 --- .../add-ons/webextensions/api/tabs/query/index.md | 187 +++ .../webextensions/api/tabs/reload/index.html | 113 -- .../add-ons/webextensions/api/tabs/reload/index.md | 113 ++ .../webextensions/api/tabs/remove/index.html | 110 -- .../add-ons/webextensions/api/tabs/remove/index.md | 110 ++ .../webextensions/api/tabs/removecss/index.html | 119 -- .../webextensions/api/tabs/removecss/index.md | 119 ++ .../webextensions/api/tabs/saveaspdf/index.html | 60 - .../webextensions/api/tabs/saveaspdf/index.md | 60 + .../webextensions/api/tabs/sendmessage/index.html | 145 -- .../webextensions/api/tabs/sendmessage/index.md | 145 ++ .../webextensions/api/tabs/sendrequest/index.html | 87 - .../webextensions/api/tabs/sendrequest/index.md | 87 + .../webextensions/api/tabs/setzoom/index.html | 105 -- .../webextensions/api/tabs/setzoom/index.md | 105 ++ .../api/tabs/setzoomsettings/index.html | 100 -- .../api/tabs/setzoomsettings/index.md | 100 ++ .../add-ons/webextensions/api/tabs/show/index.html | 69 - .../add-ons/webextensions/api/tabs/show/index.md | 69 + .../add-ons/webextensions/api/tabs/tab/index.html | 125 -- .../add-ons/webextensions/api/tabs/tab/index.md | 125 ++ .../webextensions/api/tabs/tab_id_none/index.html | 62 - .../webextensions/api/tabs/tab_id_none/index.md | 62 + .../webextensions/api/tabs/tabstatus/index.html | 66 - .../webextensions/api/tabs/tabstatus/index.md | 66 + .../api/tabs/togglereadermode/index.html | 79 - .../api/tabs/togglereadermode/index.md | 79 + .../webextensions/api/tabs/update/index.html | 162 -- .../add-ons/webextensions/api/tabs/update/index.md | 162 ++ .../webextensions/api/tabs/windowtype/index.html | 73 - .../webextensions/api/tabs/windowtype/index.md | 73 + .../webextensions/api/tabs/zoomsettings/index.html | 75 - .../webextensions/api/tabs/zoomsettings/index.md | 75 + .../api/tabs/zoomsettingsmode/index.html | 75 - .../api/tabs/zoomsettingsmode/index.md | 75 + .../api/tabs/zoomsettingsscope/index.html | 73 - .../api/tabs/zoomsettingsscope/index.md | 73 + .../webextensions/api/theme/getcurrent/index.html | 64 - .../webextensions/api/theme/getcurrent/index.md | 64 + .../add-ons/webextensions/api/theme/index.html | 50 - .../add-ons/webextensions/api/theme/index.md | 50 + .../webextensions/api/theme/onupdated/index.html | 83 - .../webextensions/api/theme/onupdated/index.md | 83 + .../webextensions/api/theme/reset/index.html | 78 - .../add-ons/webextensions/api/theme/reset/index.md | 78 + .../webextensions/api/theme/theme/index.html | 23 - .../add-ons/webextensions/api/theme/theme/index.md | 23 + .../webextensions/api/theme/update/index.html | 84 - .../webextensions/api/theme/update/index.md | 84 + .../webextensions/api/topsites/get/index.html | 142 -- .../webextensions/api/topsites/get/index.md | 142 ++ .../add-ons/webextensions/api/topsites/index.html | 81 - .../add-ons/webextensions/api/topsites/index.md | 81 + .../api/topsites/mostvisitedurl/index.html | 79 - .../api/topsites/mostvisitedurl/index.md | 79 + .../api/types/browsersetting/clear/index.html | 98 -- .../api/types/browsersetting/clear/index.md | 98 ++ .../api/types/browsersetting/get/index.html | 121 -- .../api/types/browsersetting/get/index.md | 121 ++ .../api/types/browsersetting/index.html | 85 - .../api/types/browsersetting/index.md | 85 + .../api/types/browsersetting/onchange/index.html | 128 -- .../api/types/browsersetting/onchange/index.md | 128 ++ .../api/types/browsersetting/set/index.html | 126 -- .../api/types/browsersetting/set/index.md | 126 ++ .../add-ons/webextensions/api/types/index.html | 64 - .../add-ons/webextensions/api/types/index.md | 64 + .../webextensions/api/userscripts/index.html | 68 - .../add-ons/webextensions/api/userscripts/index.md | 68 + .../api/userscripts/onbeforescript/index.html | 51 - .../api/userscripts/onbeforescript/index.md | 51 + .../api/userscripts/register/index.html | 76 - .../api/userscripts/register/index.md | 76 + .../userscripts/registereduserscript/index.html | 32 - .../api/userscripts/registereduserscript/index.md | 32 + .../registereduserscript/unregister/index.html | 47 - .../registereduserscript/unregister/index.md | 47 + .../api/userscripts/userscriptoptions/index.html | 48 - .../api/userscripts/userscriptoptions/index.md | 48 + .../working_with_userscripts/index.html | 116 -- .../userscripts/working_with_userscripts/index.md | 116 ++ .../api/webnavigation/getallframes/index.html | 132 -- .../api/webnavigation/getallframes/index.md | 132 ++ .../api/webnavigation/getframe/index.html | 123 -- .../api/webnavigation/getframe/index.md | 123 ++ .../webextensions/api/webnavigation/index.html | 143 -- .../webextensions/api/webnavigation/index.md | 143 ++ .../api/webnavigation/onbeforenavigate/index.html | 140 -- .../api/webnavigation/onbeforenavigate/index.md | 140 ++ .../api/webnavigation/oncommitted/index.html | 146 -- .../api/webnavigation/oncommitted/index.md | 146 ++ .../api/webnavigation/oncompleted/index.html | 139 -- .../api/webnavigation/oncompleted/index.md | 139 ++ .../oncreatednavigationtarget/index.html | 154 -- .../oncreatednavigationtarget/index.md | 154 ++ .../webnavigation/ondomcontentloaded/index.html | 140 -- .../api/webnavigation/ondomcontentloaded/index.md | 140 ++ .../api/webnavigation/onerroroccurred/index.html | 142 -- .../api/webnavigation/onerroroccurred/index.md | 142 ++ .../webnavigation/onhistorystateupdated/index.html | 147 -- .../webnavigation/onhistorystateupdated/index.md | 147 ++ .../onreferencefragmentupdated/index.html | 149 -- .../onreferencefragmentupdated/index.md | 149 ++ .../api/webnavigation/ontabreplaced/index.html | 126 -- .../api/webnavigation/ontabreplaced/index.md | 126 ++ .../webnavigation/transitionqualifier/index.html | 83 - .../api/webnavigation/transitionqualifier/index.md | 83 + .../api/webnavigation/transitiontype/index.html | 93 -- .../api/webnavigation/transitiontype/index.md | 93 ++ .../api/webrequest/blockingresponse/index.html | 94 -- .../api/webrequest/blockingresponse/index.md | 94 ++ .../api/webrequest/certificateinfo/index.html | 75 - .../api/webrequest/certificateinfo/index.md | 75 + .../api/webrequest/filterresponsedata/index.html | 72 - .../api/webrequest/filterresponsedata/index.md | 72 + .../api/webrequest/getsecurityinfo/index.html | 103 -- .../api/webrequest/getsecurityinfo/index.md | 103 ++ .../webrequest/handlerbehaviorchanged/index.html | 113 -- .../api/webrequest/handlerbehaviorchanged/index.md | 113 ++ .../api/webrequest/httpheaders/index.html | 75 - .../api/webrequest/httpheaders/index.md | 75 + .../webextensions/api/webrequest/index.html | 200 --- .../add-ons/webextensions/api/webrequest/index.md | 200 +++ .../index.html | 66 - .../index.md | 66 + .../api/webrequest/onauthrequired/index.html | 357 ---- .../api/webrequest/onauthrequired/index.md | 357 ++++ .../api/webrequest/onbeforeredirect/index.html | 205 --- .../api/webrequest/onbeforeredirect/index.md | 205 +++ .../api/webrequest/onbeforerequest/index.html | 293 ---- .../api/webrequest/onbeforerequest/index.md | 293 ++++ .../api/webrequest/onbeforesendheaders/index.html | 283 ---- .../api/webrequest/onbeforesendheaders/index.md | 283 ++++ .../api/webrequest/oncompleted/index.html | 206 --- .../api/webrequest/oncompleted/index.md | 206 +++ .../api/webrequest/onerroroccurred/index.html | 194 --- .../api/webrequest/onerroroccurred/index.md | 194 +++ .../api/webrequest/onheadersreceived/index.html | 245 --- .../api/webrequest/onheadersreceived/index.md | 245 +++ .../api/webrequest/onresponsestarted/index.html | 200 --- .../api/webrequest/onresponsestarted/index.md | 200 +++ .../api/webrequest/onsendheaders/index.html | 197 --- .../api/webrequest/onsendheaders/index.md | 197 +++ .../api/webrequest/requestfilter/index.html | 79 - .../api/webrequest/requestfilter/index.md | 79 + .../api/webrequest/resourcetype/index.html | 118 -- .../api/webrequest/resourcetype/index.md | 118 ++ .../api/webrequest/securityinfo/index.html | 96 -- .../api/webrequest/securityinfo/index.md | 96 ++ .../api/webrequest/streamfilter/close/index.html | 61 - .../api/webrequest/streamfilter/close/index.md | 61 + .../webrequest/streamfilter/disconnect/index.html | 65 - .../webrequest/streamfilter/disconnect/index.md | 65 + .../api/webrequest/streamfilter/error/index.html | 44 - .../api/webrequest/streamfilter/error/index.md | 44 + .../api/webrequest/streamfilter/index.html | 124 -- .../api/webrequest/streamfilter/index.md | 124 ++ .../api/webrequest/streamfilter/ondata/index.html | 195 --- .../api/webrequest/streamfilter/ondata/index.md | 195 +++ .../api/webrequest/streamfilter/onerror/index.html | 49 - .../api/webrequest/streamfilter/onerror/index.md | 49 + .../api/webrequest/streamfilter/onstart/index.html | 45 - .../api/webrequest/streamfilter/onstart/index.md | 45 + .../api/webrequest/streamfilter/onstop/index.html | 49 - .../api/webrequest/streamfilter/onstop/index.md | 49 + .../api/webrequest/streamfilter/resume/index.html | 61 - .../api/webrequest/streamfilter/resume/index.md | 61 + .../api/webrequest/streamfilter/status/index.html | 70 - .../api/webrequest/streamfilter/status/index.md | 70 + .../api/webrequest/streamfilter/suspend/index.html | 61 - .../api/webrequest/streamfilter/suspend/index.md | 61 + .../api/webrequest/streamfilter/write/index.html | 74 - .../api/webrequest/streamfilter/write/index.md | 74 + .../api/webrequest/uploaddata/index.html | 73 - .../api/webrequest/uploaddata/index.md | 73 + .../webextensions/api/windows/create/index.html | 189 --- .../webextensions/api/windows/create/index.md | 189 +++ .../api/windows/createtype/index.html | 73 - .../webextensions/api/windows/createtype/index.md | 73 + .../webextensions/api/windows/get/index.html | 121 -- .../add-ons/webextensions/api/windows/get/index.md | 121 ++ .../webextensions/api/windows/getall/index.html | 113 -- .../webextensions/api/windows/getall/index.md | 113 ++ .../api/windows/getcurrent/index.html | 116 -- .../webextensions/api/windows/getcurrent/index.md | 116 ++ .../api/windows/getlastfocused/index.html | 115 -- .../api/windows/getlastfocused/index.md | 115 ++ .../add-ons/webextensions/api/windows/index.html | 115 -- .../add-ons/webextensions/api/windows/index.md | 115 ++ .../webextensions/api/windows/oncreated/index.html | 104 -- .../webextensions/api/windows/oncreated/index.md | 104 ++ .../api/windows/onfocuschanged/index.html | 108 -- .../api/windows/onfocuschanged/index.md | 108 ++ .../webextensions/api/windows/onremoved/index.html | 105 -- .../webextensions/api/windows/onremoved/index.md | 105 ++ .../webextensions/api/windows/remove/index.html | 114 -- .../webextensions/api/windows/remove/index.md | 114 ++ .../webextensions/api/windows/update/index.html | 127 -- .../webextensions/api/windows/update/index.md | 127 ++ .../webextensions/api/windows/window/index.html | 90 - .../webextensions/api/windows/window/index.md | 90 + .../api/windows/window_id_current/index.html | 61 - .../api/windows/window_id_current/index.md | 61 + .../api/windows/window_id_none/index.html | 62 - .../api/windows/window_id_none/index.md | 62 + .../api/windows/windowstate/index.html | 81 - .../webextensions/api/windows/windowstate/index.md | 81 + .../api/windows/windowtype/index.html | 73 - .../webextensions/api/windows/windowtype/index.md | 73 + .../webextensions/browser_actions/index.html | 46 - .../add-ons/webextensions/browser_actions/index.md | 46 + .../index.html | 25 - .../index.md | 25 + .../browser_support_for_javascript_apis/index.html | 25 - .../browser_support_for_javascript_apis/index.md | 25 + .../build_a_cross_browser_extension/index.html | 232 --- .../build_a_cross_browser_extension/index.md | 232 +++ .../chrome_incompatibilities/index.html | 180 -- .../chrome_incompatibilities/index.md | 180 ++ .../webextensions/content_scripts/index.html | 474 ------ .../add-ons/webextensions/content_scripts/index.md | 474 ++++++ .../content_security_policy/index.html | 95 -- .../webextensions/content_security_policy/index.md | 95 ++ .../debugging_(before_firefox_50)/index.html | 235 --- .../debugging_(before_firefox_50)/index.md | 235 +++ .../index.html | 24 - .../index.md | 24 + .../index.html | 78 - .../index.md | 78 + .../add-ons/webextensions/examples/index.html | 34 - .../add-ons/webextensions/examples/index.md | 34 + .../extending_the_developer_tools/index.html | 167 -- .../extending_the_developer_tools/index.md | 167 ++ .../firefox_differentiators/index.html | 90 - .../webextensions/firefox_differentiators/index.md | 90 + .../firefox_workflow_overview/index.html | 74 - .../firefox_workflow_overview/index.md | 74 + .../implement_a_settings_page/index.html | 220 --- .../implement_a_settings_page/index.md | 220 +++ files/fr/mozilla/add-ons/webextensions/index.html | 62 - files/fr/mozilla/add-ons/webextensions/index.md | 62 + .../mozilla/add-ons/webextensions/index/index.html | 12 - .../mozilla/add-ons/webextensions/index/index.md | 12 + .../interact_with_the_clipboard/index.html | 190 --- .../interact_with_the_clipboard/index.md | 190 +++ .../intercept_http_requests/index.html | 161 -- .../webextensions/intercept_http_requests/index.md | 161 ++ .../webextensions/internationalization/index.html | 408 ----- .../webextensions/internationalization/index.md | 408 +++++ .../webextensions/manifest.json/author/index.html | 43 - .../webextensions/manifest.json/author/index.md | 43 + .../manifest.json/background/index.html | 92 -- .../manifest.json/background/index.md | 92 ++ .../manifest.json/browser_action/index.html | 249 --- .../manifest.json/browser_action/index.md | 249 +++ .../browser_specific_settings/index.html | 117 -- .../browser_specific_settings/index.md | 117 ++ .../chrome_settings_overrides/index.html | 134 -- .../chrome_settings_overrides/index.md | 134 ++ .../manifest.json/chrome_url_overrides/index.html | 95 -- .../manifest.json/chrome_url_overrides/index.md | 95 ++ .../manifest.json/commands/index.html | 196 --- .../webextensions/manifest.json/commands/index.md | 196 +++ .../manifest.json/content_scripts/index.html | 232 --- .../manifest.json/content_scripts/index.md | 232 +++ .../content_security_policy/index.html | 115 -- .../manifest.json/content_security_policy/index.md | 115 ++ .../manifest.json/default_locale/index.html | 44 - .../manifest.json/default_locale/index.md | 44 + .../manifest.json/description/index.html | 42 - .../manifest.json/description/index.md | 42 + .../manifest.json/developer/index.html | 50 - .../webextensions/manifest.json/developer/index.md | 50 + .../manifest.json/devtools_page/index.html | 48 - .../manifest.json/devtools_page/index.md | 48 + .../manifest.json/dictionaries/index.html | 45 - .../manifest.json/dictionaries/index.md | 45 + .../externally_connectable/index.html | 65 - .../manifest.json/externally_connectable/index.md | 65 + .../manifest.json/homepage_url/index.html | 44 - .../manifest.json/homepage_url/index.md | 44 + .../webextensions/manifest.json/icons/index.html | 76 - .../webextensions/manifest.json/icons/index.md | 76 + .../manifest.json/incognito/index.html | 68 - .../webextensions/manifest.json/incognito/index.md | 68 + .../add-ons/webextensions/manifest.json/index.html | 138 -- .../add-ons/webextensions/manifest.json/index.md | 138 ++ .../manifest.json/manifest_version/index.html | 43 - .../manifest.json/manifest_version/index.md | 43 + .../webextensions/manifest.json/name/index.html | 44 - .../webextensions/manifest.json/name/index.md | 44 + .../manifest.json/offline_enabled/index.html | 48 - .../manifest.json/offline_enabled/index.md | 48 + .../webextensions/manifest.json/omnibox/index.html | 48 - .../webextensions/manifest.json/omnibox/index.md | 48 + .../manifest.json/optional_permissions/index.html | 104 -- .../manifest.json/optional_permissions/index.md | 104 ++ .../manifest.json/options_page/index.html | 63 - .../manifest.json/options_page/index.md | 63 + .../manifest.json/options_ui/index.html | 118 -- .../manifest.json/options_ui/index.md | 118 ++ .../manifest.json/page_action/index.html | 200 --- .../manifest.json/page_action/index.md | 200 +++ .../manifest.json/permissions/index.html | 196 --- .../manifest.json/permissions/index.md | 196 +++ .../manifest.json/protocol_handlers/index.html | 83 - .../manifest.json/protocol_handlers/index.md | 83 + .../manifest.json/short_name/index.html | 42 - .../manifest.json/short_name/index.md | 42 + .../manifest.json/sidebar_action/index.html | 151 -- .../manifest.json/sidebar_action/index.md | 151 ++ .../webextensions/manifest.json/storage/index.html | 67 - .../webextensions/manifest.json/storage/index.md | 67 + .../webextensions/manifest.json/theme/index.html | 1335 --------------- .../webextensions/manifest.json/theme/index.md | 1335 +++++++++++++++ .../manifest.json/theme_experiment/index.html | 161 -- .../manifest.json/theme_experiment/index.md | 161 ++ .../manifest.json/user_scripts/index.html | 47 - .../manifest.json/user_scripts/index.md | 47 + .../webextensions/manifest.json/version/index.html | 61 - .../webextensions/manifest.json/version/index.md | 61 + .../manifest.json/version_name/index.html | 38 - .../manifest.json/version_name/index.md | 38 + .../web_accessible_resources/index.html | 96 -- .../web_accessible_resources/index.md | 96 ++ .../webextensions/match_patterns/index.html | 436 ----- .../add-ons/webextensions/match_patterns/index.md | 436 +++++ .../webextensions/modify_a_web_page/index.html | 245 --- .../webextensions/modify_a_web_page/index.md | 245 +++ .../webextensions/native_manifests/index.html | 310 ---- .../webextensions/native_manifests/index.md | 310 ++++ .../webextensions/native_messaging/index.html | 369 ----- .../webextensions/native_messaging/index.md | 369 +++++ .../add-ons/webextensions/prerequisites/index.html | 11 - .../add-ons/webextensions/prerequisites/index.md | 11 + .../index.html | 104 -- .../index.md | 104 ++ .../sharing_objects_with_page_scripts/index.html | 259 --- .../sharing_objects_with_page_scripts/index.md | 259 +++ .../mozilla/add-ons/webextensions/tips/index.html | 56 - .../fr/mozilla/add-ons/webextensions/tips/index.md | 56 + .../add-ons/webextensions/user_actions/index.html | 47 - .../add-ons/webextensions/user_actions/index.md | 47 + .../user_interface/browser_action/index.html | 48 - .../user_interface/browser_action/index.md | 48 + .../user_interface/browser_styles/index.html | 459 ------ .../user_interface/browser_styles/index.md | 459 ++++++ .../user_interface/context_menu_items/index.html | 56 - .../user_interface/context_menu_items/index.md | 56 + .../user_interface/devtools_panels/index.html | 75 - .../user_interface/devtools_panels/index.md | 75 + .../user_interface/extension_pages/index.html | 78 - .../user_interface/extension_pages/index.md | 78 + .../webextensions/user_interface/index.html | 115 -- .../add-ons/webextensions/user_interface/index.md | 115 ++ .../user_interface/notifications/index.html | 50 - .../user_interface/notifications/index.md | 50 + .../user_interface/omnibox/index.html | 75 - .../webextensions/user_interface/omnibox/index.md | 75 + .../user_interface/options_pages/index.html | 71 - .../user_interface/options_pages/index.md | 71 + .../user_interface/page_actions/index.html | 109 -- .../user_interface/page_actions/index.md | 109 ++ .../webextensions/user_interface/popups/index.html | 62 - .../webextensions/user_interface/popups/index.md | 62 + .../user_interface/sidebars/index.html | 60 - .../webextensions/user_interface/sidebars/index.md | 60 + .../what_are_webextensions/index.html | 59 - .../webextensions/what_are_webextensions/index.md | 59 + .../add-ons/webextensions/what_next_/index.html | 73 - .../add-ons/webextensions/what_next_/index.md | 73 + .../work_with_contextual_identities/index.html | 170 -- .../work_with_contextual_identities/index.md | 170 ++ .../work_with_the_bookmarks_api/index.html | 206 --- .../work_with_the_bookmarks_api/index.md | 206 +++ .../work_with_the_cookies_api/index.html | 255 --- .../work_with_the_cookies_api/index.md | 255 +++ .../webextensions/working_with_files/index.html | 160 -- .../webextensions/working_with_files/index.md | 160 ++ .../working_with_the_tabs_api/index.html | 629 ------- .../working_with_the_tabs_api/index.md | 629 +++++++ .../your_first_webextension/index.html | 161 -- .../webextensions/your_first_webextension/index.md | 161 ++ .../your_second_webextension/index.html | 480 ------ .../your_second_webextension/index.md | 480 ++++++ .../firefox/experimental_features/index.html | 1743 -------------------- .../mozilla/firefox/experimental_features/index.md | 1743 ++++++++++++++++++++ files/fr/mozilla/firefox/index.html | 71 - files/fr/mozilla/firefox/index.md | 71 + .../index.html | 34 - .../index.md | 34 + files/fr/mozilla/firefox/releases/1.5/index.html | 126 -- files/fr/mozilla/firefox/releases/1.5/index.md | 126 ++ .../1.5/using_firefox_1.5_caching/index.html | 190 --- .../1.5/using_firefox_1.5_caching/index.md | 190 +++ files/fr/mozilla/firefox/releases/11/index.html | 145 -- files/fr/mozilla/firefox/releases/11/index.md | 145 ++ files/fr/mozilla/firefox/releases/12/index.html | 163 -- files/fr/mozilla/firefox/releases/12/index.md | 163 ++ files/fr/mozilla/firefox/releases/13/index.html | 146 -- files/fr/mozilla/firefox/releases/13/index.md | 146 ++ files/fr/mozilla/firefox/releases/15/index.html | 115 -- files/fr/mozilla/firefox/releases/15/index.md | 115 ++ files/fr/mozilla/firefox/releases/16/index.html | 89 - files/fr/mozilla/firefox/releases/16/index.md | 89 + files/fr/mozilla/firefox/releases/17/index.html | 88 - files/fr/mozilla/firefox/releases/17/index.md | 88 + files/fr/mozilla/firefox/releases/18/index.html | 93 -- files/fr/mozilla/firefox/releases/18/index.md | 93 ++ files/fr/mozilla/firefox/releases/19/index.html | 83 - files/fr/mozilla/firefox/releases/19/index.md | 83 + files/fr/mozilla/firefox/releases/2/index.html | 150 -- files/fr/mozilla/firefox/releases/2/index.md | 150 ++ .../firefox/releases/2/security_changes/index.html | 33 - .../firefox/releases/2/security_changes/index.md | 33 + .../releases/2/updating_extensions/index.html | 48 - .../releases/2/updating_extensions/index.md | 48 + files/fr/mozilla/firefox/releases/20/index.html | 76 - files/fr/mozilla/firefox/releases/20/index.md | 76 + files/fr/mozilla/firefox/releases/21/index.html | 142 -- files/fr/mozilla/firefox/releases/21/index.md | 142 ++ files/fr/mozilla/firefox/releases/22/index.html | 73 - files/fr/mozilla/firefox/releases/22/index.md | 73 + files/fr/mozilla/firefox/releases/23/index.html | 86 - files/fr/mozilla/firefox/releases/23/index.md | 86 + files/fr/mozilla/firefox/releases/24/index.html | 77 - files/fr/mozilla/firefox/releases/24/index.md | 77 + files/fr/mozilla/firefox/releases/25/index.html | 90 - files/fr/mozilla/firefox/releases/25/index.md | 90 + files/fr/mozilla/firefox/releases/26/index.html | 90 - files/fr/mozilla/firefox/releases/26/index.md | 90 + files/fr/mozilla/firefox/releases/27/index.html | 112 -- files/fr/mozilla/firefox/releases/27/index.md | 112 ++ files/fr/mozilla/firefox/releases/28/index.html | 117 -- files/fr/mozilla/firefox/releases/28/index.md | 117 ++ files/fr/mozilla/firefox/releases/29/index.html | 133 -- files/fr/mozilla/firefox/releases/29/index.md | 133 ++ files/fr/mozilla/firefox/releases/3.5/index.html | 234 --- files/fr/mozilla/firefox/releases/3.5/index.md | 234 +++ files/fr/mozilla/firefox/releases/3.6/index.html | 297 ---- files/fr/mozilla/firefox/releases/3.6/index.md | 297 ++++ .../firefox/releases/3/dom_improvements/index.html | 36 - .../firefox/releases/3/dom_improvements/index.md | 36 + .../firefox/releases/3/full_page_zoom/index.html | 37 - .../firefox/releases/3/full_page_zoom/index.md | 37 + files/fr/mozilla/firefox/releases/3/index.html | 273 --- files/fr/mozilla/firefox/releases/3/index.md | 273 +++ .../releases/3/notable_bugs_fixed/index.html | 30 - .../firefox/releases/3/notable_bugs_fixed/index.md | 30 + .../releases/3/site_compatibility/index.html | 81 - .../firefox/releases/3/site_compatibility/index.md | 81 + .../firefox/releases/3/svg_improvements/index.html | 58 - .../firefox/releases/3/svg_improvements/index.md | 58 + .../releases/3/updating_extensions/index.html | 224 --- .../releases/3/updating_extensions/index.md | 224 +++ .../3/updating_web_applications/index.html | 91 - .../releases/3/updating_web_applications/index.md | 91 + .../3/xul_improvements_in_firefox_3/index.html | 96 -- .../3/xul_improvements_in_firefox_3/index.md | 96 ++ files/fr/mozilla/firefox/releases/30/index.html | 93 -- files/fr/mozilla/firefox/releases/30/index.md | 93 ++ files/fr/mozilla/firefox/releases/32/index.html | 139 -- files/fr/mozilla/firefox/releases/32/index.md | 139 ++ files/fr/mozilla/firefox/releases/35/index.html | 198 --- files/fr/mozilla/firefox/releases/35/index.md | 198 +++ files/fr/mozilla/firefox/releases/39/index.html | 117 -- files/fr/mozilla/firefox/releases/39/index.md | 117 ++ files/fr/mozilla/firefox/releases/4/index.html | 631 ------- files/fr/mozilla/firefox/releases/4/index.md | 631 +++++++ files/fr/mozilla/firefox/releases/40/index.html | 196 --- files/fr/mozilla/firefox/releases/40/index.md | 196 +++ files/fr/mozilla/firefox/releases/41/index.html | 198 --- files/fr/mozilla/firefox/releases/41/index.md | 198 +++ files/fr/mozilla/firefox/releases/42/index.html | 190 --- files/fr/mozilla/firefox/releases/42/index.md | 190 +++ files/fr/mozilla/firefox/releases/5/index.html | 171 -- files/fr/mozilla/firefox/releases/5/index.md | 171 ++ files/fr/mozilla/firefox/releases/6/index.html | 292 ---- files/fr/mozilla/firefox/releases/6/index.md | 292 ++++ files/fr/mozilla/firefox/releases/7/index.html | 241 --- files/fr/mozilla/firefox/releases/7/index.md | 241 +++ files/fr/mozilla/firefox/releases/8/index.html | 257 --- files/fr/mozilla/firefox/releases/8/index.md | 257 +++ files/fr/mozilla/firefox/releases/9/index.html | 232 --- files/fr/mozilla/firefox/releases/9/index.md | 232 +++ files/fr/mozilla/firefox/releases/index.html | 14 - files/fr/mozilla/firefox/releases/index.md | 14 + files/fr/mozilla/index.html | 16 - files/fr/mozilla/index.md | 16 + 1364 files changed, 74977 insertions(+), 74977 deletions(-) delete mode 100644 files/fr/mozilla/add-ons/index.html create mode 100644 files/fr/mozilla/add-ons/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/add_a_button_to_the_toolbar/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/add_a_button_to_the_toolbar/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/anatomy_of_a_webextension/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/anatomy_of_a_webextension/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/alarm/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/alarm/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/clear/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/clear/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/clearall/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/clearall/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/create/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/create/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/get/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/get/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/getall/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/getall/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/onalarm/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/alarms/onalarm/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenode/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenode/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodetype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodetype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodeunmodifiable/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodeunmodifiable/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/create/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/create/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/createdetails/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/createdetails/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/get/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/get/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/getchildren/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/getchildren/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/getrecent/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/getrecent/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/getsubtree/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/getsubtree/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/gettree/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/gettree/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/move/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/move/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchildrenreordered/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchildrenreordered/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/oncreated/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/oncreated/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportbegan/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportbegan/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportended/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportended/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/onmoved/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/onmoved/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/onremoved/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/onremoved/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/remove/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/remove/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/removetree/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/removetree/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/search/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/search/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/update/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/bookmarks/update/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/colorarray/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/colorarray/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/disable/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/disable/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/enable/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/enable/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgebackgroundcolor/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgebackgroundcolor/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetext/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetext/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetextcolor/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetextcolor/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/getpopup/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/getpopup/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/gettitle/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/gettitle/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/imagedatatype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/imagedatatype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/isenabled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/isenabled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/onclicked/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/onclicked/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/openpopup/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/openpopup/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgebackgroundcolor/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgebackgroundcolor/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetext/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetext/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetextcolor/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetextcolor/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/seticon/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/seticon/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/setpopup/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/setpopup/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/settitle/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browseraction/settitle/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/allowpopupsforuserevents/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/allowpopupsforuserevents/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/cacheenabled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/cacheenabled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/closetabsbydoubleclick/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/closetabsbydoubleclick/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/contextmenushowevent/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/contextmenushowevent/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/ftpprotocolenabled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/ftpprotocolenabled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/homepageoverride/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/homepageoverride/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/imageanimationbehavior/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/imageanimationbehavior/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabpageoverride/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabpageoverride/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabposition/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabposition/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/openbookmarksinnewtabs/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/openbookmarksinnewtabs/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/opensearchresultsinnewtabs/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/opensearchresultsinnewtabs/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/openurlbarresultsinnewtabs/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/openurlbarresultsinnewtabs/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/overridedocumentcolors/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/overridedocumentcolors/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/usedocumentfonts/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/usedocumentfonts/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/webnotificationsdisabled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/webnotificationsdisabled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomfullpage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomfullpage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomsitespecific/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomsitespecific/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/datatypeset/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/datatypeset/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removaloptions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removaloptions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/remove/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/remove/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecache/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecache/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecookies/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecookies/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removedownloads/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removedownloads/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeformdata/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeformdata/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removehistory/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removehistory/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removelocalstorage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removelocalstorage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removepasswords/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removepasswords/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeplugindata/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeplugindata/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/settings/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/browsingdata/settings/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/captiveportal/canonicalurl/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/captiveportal/canonicalurl/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/captiveportal/getlastchecked/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/captiveportal/getlastchecked/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/captiveportal/getstate/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/captiveportal/getstate/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/captiveportal/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/captiveportal/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/captiveportal/onconnectivityavailable/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/captiveportal/onconnectivityavailable/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/captiveportal/onstatechanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/captiveportal/onstatechanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/clipboard/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/clipboard/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/clipboard/setimagedata/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/clipboard/setimagedata/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/commands/command/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/commands/command/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/commands/getall/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/commands/getall/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/commands/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/commands/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/commands/oncommand/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/commands/oncommand/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/commands/reset/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/commands/reset/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/commands/update/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/commands/update/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contentscripts/register/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contentscripts/register/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/unregister/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/unregister/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/contextualidentity/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/contextualidentity/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/create/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/create/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/get/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/get/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/oncreated/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/oncreated/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onremoved/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onremoved/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onupdated/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onupdated/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/query/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/query/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/remove/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/remove/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/update/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/contextualidentities/update/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/cookie/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/cookie/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/cookiestore/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/cookiestore/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/get/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/get/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/getall/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/getall/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/getallcookiestores/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/getallcookiestores/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/onchanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/onchanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/onchangedcause/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/onchangedcause/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/remove/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/remove/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/samesitestatus/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/samesitestatus/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/set/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/cookies/set/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/eval/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/eval/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/reload/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/reload/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/tabid/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/tabid/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/network/gethar/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/network/gethar/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/network/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/network/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/network/onnavigated/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/network/onnavigated/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/network/onrequestfinished/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/network/onrequestfinished/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/create/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/create/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elements/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elements/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/createsidebarpane/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/createsidebarpane/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/onselectionchanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/onselectionchanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionpanel/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionpanel/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/onhidden/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/onhidden/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/onshown/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/onshown/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setexpression/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setexpression/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setobject/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setobject/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setpage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setpage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/onthemechanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/onthemechanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/themename/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/devtools/panels/themename/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/dns/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/dns/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/dns/resolve/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/dns/resolve/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/acceptdanger/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/acceptdanger/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/booleandelta/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/booleandelta/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/cancel/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/cancel/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/dangertype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/dangertype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/doubledelta/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/doubledelta/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/download/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/download/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/downloaditem/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/downloaditem/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/downloadquery/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/downloadquery/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/downloadtime/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/downloadtime/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/drag/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/drag/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/erase/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/erase/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/filenameconflictaction/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/filenameconflictaction/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/getfileicon/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/getfileicon/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/interruptreason/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/interruptreason/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/onchanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/onchanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/oncreated/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/oncreated/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/onerased/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/onerased/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/open/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/open/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/pause/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/pause/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/removefile/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/removefile/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/resume/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/resume/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/search/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/search/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/setshelfenabled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/setshelfenabled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/show/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/show/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/showdefaultfolder/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/showdefaultfolder/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/state/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/state/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/stringdelta/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/downloads/stringdelta/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/events/event/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/events/event/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/events/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/events/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/events/rule/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/events/rule/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/events/urlfilter/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/events/urlfilter/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/getbackgroundpage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/getbackgroundpage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/getextensiontabs/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/getextensiontabs/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/geturl/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/geturl/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/getviews/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/getviews/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/inincognitocontext/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/inincognitocontext/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/isallowedfileschemeaccess/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/isallowedfileschemeaccess/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/isallowedincognitoaccess/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/isallowedincognitoaccess/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/lasterror/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/lasterror/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/onrequest/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/onrequest/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/onrequestexternal/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/onrequestexternal/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/sendrequest/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/sendrequest/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/setupdateurldata/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/setupdateurldata/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/viewtype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extension/viewtype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imagedetails/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imagedetails/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imageformat/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imageformat/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extensiontypes/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extensiontypes/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extensiontypes/injectdetails/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extensiontypes/injectdetails/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/extensiontypes/runat/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/extensiontypes/runat/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/find/find/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/find/find/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/find/highlightresults/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/find/highlightresults/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/find/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/find/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/find/removehighlighting/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/find/removehighlighting/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/addurl/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/addurl/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/deleteall/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/deleteall/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/deleterange/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/deleterange/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/deleteurl/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/deleteurl/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/getvisits/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/getvisits/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/historyitem/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/historyitem/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/ontitlechanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/ontitlechanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/onvisited/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/onvisited/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/onvisitremoved/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/onvisitremoved/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/search/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/search/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/transitiontype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/transitiontype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/visititem/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/history/visititem/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/detectlanguage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/detectlanguage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/getacceptlanguages/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/getacceptlanguages/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/getmessage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/getmessage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/getuilanguage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/getuilanguage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/languagecode/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/languagecode/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/locale-specific_message_reference/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/i18n/locale-specific_message_reference/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/identity/getredirecturl/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/identity/getredirecturl/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/identity/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/identity/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/identity/launchwebauthflow/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/identity/launchwebauthflow/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/idle/idlestate/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/idle/idlestate/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/idle/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/idle/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/idle/onstatechanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/idle/onstatechanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/idle/querystate/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/idle/querystate/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/idle/setdetectioninterval/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/idle/setdetectioninterval/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/extensioninfo/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/extensioninfo/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/get/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/get/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/getall/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/getall/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbyid/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbyid/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbymanifest/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbymanifest/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/getself/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/getself/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/install/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/install/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/ondisabled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/ondisabled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/onenabled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/onenabled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/oninstalled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/oninstalled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/onuninstalled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/onuninstalled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/setenabled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/setenabled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/uninstall/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/uninstall/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/uninstallself/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/management/uninstallself/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/action_menu_top_level_limit/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/action_menu_top_level_limit/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/contexttype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/contexttype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/create/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/create/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/createproperties/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/createproperties/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/gettargetelement/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/gettargetelement/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/itemtype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/itemtype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/onclickdata/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/onclickdata/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/onclicked/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/onclicked/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/onhidden/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/onhidden/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/onshown/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/onshown/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/overridecontext/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/overridecontext/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/refresh/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/refresh/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/remove/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/remove/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/removeall/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/removeall/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/update/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/menus/update/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/clear/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/clear/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/create/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/create/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/getall/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/getall/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/notificationoptions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/notificationoptions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/onbuttonclicked/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/onbuttonclicked/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/onclicked/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/onclicked/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/onclosed/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/onclosed/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/onshown/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/onshown/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/templatetype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/templatetype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/update/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/notifications/update/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputcancelled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputcancelled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputchanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputchanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentered/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentered/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentereddisposition/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentereddisposition/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputstarted/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputstarted/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/setdefaultsuggestion/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/setdefaultsuggestion/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/suggestresult/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/omnibox/suggestresult/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/getpopup/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/getpopup/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/gettitle/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/gettitle/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/hide/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/hide/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/imagedatatype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/imagedatatype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/isshown/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/isshown/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/onclicked/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/onclicked/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/openpopup/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/openpopup/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/setpopup/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/setpopup/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/settitle/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/settitle/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/show/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pageaction/show/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/contains/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/contains/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/getall/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/getall/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/onadded/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/onadded/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/onremoved/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/onremoved/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/permissions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/permissions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/remove/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/remove/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/request/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/permissions/request/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pkcs11/getmoduleslots/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pkcs11/getmoduleslots/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pkcs11/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pkcs11/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pkcs11/installmodule/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pkcs11/installmodule/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pkcs11/ismoduleinstalled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pkcs11/ismoduleinstalled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/pkcs11/uninstallmodule/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/pkcs11/uninstallmodule/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/privacy/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/privacy/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/privacy/network/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/privacy/network/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/privacy/services/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/privacy/services/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/privacy/websites/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/privacy/websites/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/onerror/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/onerror/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/onrequest/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/onrequest/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/proxyinfo/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/proxyinfo/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/requestdetails/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/requestdetails/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/settings/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/settings/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/unregister/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/proxy/unregister/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/connect/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/connect/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/connectnative/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/connectnative/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/getbackgroundpage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/getbackgroundpage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/getbrowserinfo/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/getbrowserinfo/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/getmanifest/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/getmanifest/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/getpackagedirectoryentry/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/getpackagedirectoryentry/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/getplatforminfo/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/getplatforminfo/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/geturl/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/geturl/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/id/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/id/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/lasterror/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/lasterror/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/messagesender/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/messagesender/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onbrowserupdateavailable/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onbrowserupdateavailable/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onconnect/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onconnect/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onconnectexternal/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onconnectexternal/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalledreason/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalledreason/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onmessage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onmessage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onmessageexternal/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onmessageexternal/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequired/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequired/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequiredreason/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequiredreason/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onstartup/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onstartup/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspend/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspend/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspendcanceled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspendcanceled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onupdateavailable/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/onupdateavailable/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/openoptionspage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/openoptionspage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/platformarch/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/platformarch/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/platforminfo/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/platforminfo/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/platformnaclarch/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/platformnaclarch/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/platformos/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/platformos/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/port/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/port/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/reload/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/reload/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheck/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheck/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheckstatus/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheckstatus/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/sendmessage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/sendmessage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/sendnativemessage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/sendnativemessage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/setuninstallurl/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/runtime/setuninstallurl/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/search/get/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/search/get/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/search/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/search/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/search/search/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/search/search/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/filter/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/filter/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedtab/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedtab/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedwindow/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedwindow/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/getrecentlyclosed/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/getrecentlyclosed/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/gettabvalue/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/gettabvalue/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/getwindowvalue/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/getwindowvalue/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/max_session_results/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/max_session_results/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/onchanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/onchanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/removetabvalue/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/removetabvalue/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/removewindowvalue/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/removewindowvalue/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/restore/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/restore/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/session/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/session/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/settabvalue/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/settabvalue/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/setwindowvalue/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sessions/setwindowvalue/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/close/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/close/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/gettitle/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/gettitle/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/imagedatatype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/imagedatatype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/isopen/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/isopen/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/open/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/open/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/seticon/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/seticon/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/setpanel/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/setpanel/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/settitle/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/settitle/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/toggle/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/sidebaraction/toggle/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/local/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/local/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/managed/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/managed/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/onchanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/onchanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/clear/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/clear/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/get/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/get/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/getbytesinuse/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/getbytesinuse/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/remove/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/remove/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/set/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/set/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagechange/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/storagechange/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/sync/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/storage/sync/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/capturetab/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/capturetab/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/capturevisibletab/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/capturevisibletab/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/connect/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/connect/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/create/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/create/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/detectlanguage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/detectlanguage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/discard/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/discard/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/duplicate/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/duplicate/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/executescript/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/executescript/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/get/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/get/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/getallinwindow/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/getallinwindow/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/getcurrent/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/getcurrent/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/getselected/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/getselected/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/getzoom/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/getzoom/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/getzoomsettings/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/getzoomsettings/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/goback/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/goback/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/goforward/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/goforward/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/hide/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/hide/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/highlight/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/highlight/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/insertcss/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/insertcss/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/move/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/move/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/moveinsuccession/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/moveinsuccession/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinfo/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinfo/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinforeason/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinforeason/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onactivated/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onactivated/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onactivechanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onactivechanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onattached/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onattached/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/oncreated/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/oncreated/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/ondetached/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/ondetached/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlightchanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlightchanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlighted/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlighted/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onmoved/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onmoved/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onremoved/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onremoved/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onreplaced/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onreplaced/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onselectionchanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onselectionchanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onupdated/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onupdated/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onzoomchange/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/onzoomchange/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/pagesettings/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/pagesettings/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/print/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/print/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/printpreview/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/printpreview/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/query/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/query/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/reload/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/reload/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/remove/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/remove/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/removecss/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/removecss/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/saveaspdf/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/saveaspdf/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/sendmessage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/sendmessage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/sendrequest/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/sendrequest/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/setzoom/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/setzoom/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/setzoomsettings/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/setzoomsettings/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/show/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/show/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/tab/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/tab/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/tab_id_none/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/tab_id_none/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/tabstatus/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/tabstatus/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/togglereadermode/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/togglereadermode/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/update/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/update/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/windowtype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/windowtype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettings/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettings/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsmode/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsmode/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsscope/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsscope/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/theme/getcurrent/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/theme/getcurrent/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/theme/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/theme/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/theme/onupdated/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/theme/onupdated/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/theme/reset/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/theme/reset/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/theme/theme/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/theme/theme/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/theme/update/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/theme/update/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/topsites/get/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/topsites/get/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/topsites/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/topsites/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/topsites/mostvisitedurl/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/topsites/mostvisitedurl/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/clear/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/clear/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/get/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/get/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/onchange/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/onchange/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/set/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/set/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/types/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/types/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/onbeforescript/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/onbeforescript/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/register/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/register/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/unregister/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/unregister/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/userscriptoptions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/userscriptoptions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/working_with_userscripts/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/userscripts/working_with_userscripts/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/getallframes/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/getallframes/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/getframe/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/getframe/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/onbeforenavigate/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/onbeforenavigate/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncommitted/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncommitted/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncompleted/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncompleted/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncreatednavigationtarget/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncreatednavigationtarget/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/ondomcontentloaded/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/ondomcontentloaded/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/onerroroccurred/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/onerroroccurred/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/onhistorystateupdated/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/onhistorystateupdated/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/onreferencefragmentupdated/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/onreferencefragmentupdated/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/ontabreplaced/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/ontabreplaced/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitionqualifier/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitionqualifier/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitiontype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitiontype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/blockingresponse/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/blockingresponse/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/certificateinfo/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/certificateinfo/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/filterresponsedata/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/filterresponsedata/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/getsecurityinfo/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/getsecurityinfo/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/handlerbehaviorchanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/handlerbehaviorchanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/httpheaders/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/httpheaders/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/max_handler_behavior_changed_calls_per_10_minutes/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/max_handler_behavior_changed_calls_per_10_minutes/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/requestfilter/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/requestfilter/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/resourcetype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/resourcetype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/securityinfo/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/securityinfo/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/close/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/close/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/disconnect/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/disconnect/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/error/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/error/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/ondata/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/ondata/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onerror/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onerror/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstart/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstart/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstop/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstop/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/resume/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/resume/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/status/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/status/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/suspend/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/suspend/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/write/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/write/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/uploaddata/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/webrequest/uploaddata/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/create/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/create/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/createtype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/createtype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/get/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/get/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/getall/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/getall/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/getcurrent/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/getcurrent/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/getlastfocused/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/getlastfocused/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/oncreated/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/oncreated/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/onfocuschanged/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/onfocuschanged/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/onremoved/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/onremoved/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/remove/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/remove/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/update/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/update/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/window/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/window/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/window_id_current/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/window_id_current/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/window_id_none/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/window_id_none/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/windowstate/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/windowstate/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/windowtype/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/api/windows/windowtype/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/browser_actions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/browser_actions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/browser_compatibility_for_manifest.json/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/browser_compatibility_for_manifest.json/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/browser_support_for_javascript_apis/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/browser_support_for_javascript_apis/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/build_a_cross_browser_extension/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/build_a_cross_browser_extension/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/chrome_incompatibilities/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/chrome_incompatibilities/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/content_scripts/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/content_scripts/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/content_security_policy/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/content_security_policy/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/debugging_(before_firefox_50)/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/debugging_(before_firefox_50)/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/developing_webextensions_for_thunderbird/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/developing_webextensions_for_thunderbird/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/differences_between_api_implementations/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/differences_between_api_implementations/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/examples/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/examples/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/extending_the_developer_tools/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/extending_the_developer_tools/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/firefox_differentiators/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/firefox_differentiators/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/firefox_workflow_overview/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/firefox_workflow_overview/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/implement_a_settings_page/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/implement_a_settings_page/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/index/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/index/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/interact_with_the_clipboard/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/interact_with_the_clipboard/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/intercept_http_requests/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/intercept_http_requests/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/internationalization/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/internationalization/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/author/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/author/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/background/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/background/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/browser_action/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/browser_action/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/browser_specific_settings/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/browser_specific_settings/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_settings_overrides/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_settings_overrides/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_url_overrides/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_url_overrides/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/commands/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/commands/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/content_scripts/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/content_scripts/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/content_security_policy/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/content_security_policy/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/default_locale/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/default_locale/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/description/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/description/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/developer/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/developer/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/devtools_page/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/devtools_page/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/dictionaries/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/dictionaries/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/externally_connectable/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/externally_connectable/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/homepage_url/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/homepage_url/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/icons/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/icons/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/incognito/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/incognito/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/manifest_version/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/manifest_version/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/name/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/name/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/offline_enabled/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/offline_enabled/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/omnibox/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/omnibox/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/optional_permissions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/optional_permissions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/options_page/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/options_page/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/options_ui/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/options_ui/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/page_action/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/page_action/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/permissions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/permissions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/short_name/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/short_name/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/sidebar_action/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/sidebar_action/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/storage/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/storage/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/theme/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/theme/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/theme_experiment/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/theme_experiment/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/user_scripts/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/user_scripts/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/version/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/version/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/version_name/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/version_name/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/web_accessible_resources/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/manifest.json/web_accessible_resources/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/match_patterns/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/match_patterns/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/modify_a_web_page/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/modify_a_web_page/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/native_manifests/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/native_manifests/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/native_messaging/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/native_messaging/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/prerequisites/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/prerequisites/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/safely_inserting_external_content_into_a_page/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/safely_inserting_external_content_into_a_page/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/sharing_objects_with_page_scripts/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/sharing_objects_with_page_scripts/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/tips/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/tips/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_actions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_actions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/browser_action/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/browser_action/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/browser_styles/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/browser_styles/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/context_menu_items/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/context_menu_items/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/devtools_panels/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/devtools_panels/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/extension_pages/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/extension_pages/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/notifications/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/notifications/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/omnibox/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/omnibox/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/options_pages/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/options_pages/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/page_actions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/page_actions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/popups/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/popups/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/sidebars/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/user_interface/sidebars/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/what_are_webextensions/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/what_are_webextensions/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/what_next_/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/what_next_/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/work_with_contextual_identities/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/work_with_contextual_identities/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/work_with_the_bookmarks_api/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/work_with_the_bookmarks_api/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/work_with_the_cookies_api/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/work_with_the_cookies_api/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/working_with_files/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/working_with_files/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/working_with_the_tabs_api/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/working_with_the_tabs_api/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/your_first_webextension/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/your_first_webextension/index.md delete mode 100644 files/fr/mozilla/add-ons/webextensions/your_second_webextension/index.html create mode 100644 files/fr/mozilla/add-ons/webextensions/your_second_webextension/index.md delete mode 100644 files/fr/mozilla/firefox/experimental_features/index.html create mode 100644 files/fr/mozilla/firefox/experimental_features/index.md delete mode 100644 files/fr/mozilla/firefox/index.html create mode 100644 files/fr/mozilla/firefox/index.md delete mode 100644 files/fr/mozilla/firefox/releases/1.5/adapting_xul_applications_for_firefox_1.5/index.html create mode 100644 files/fr/mozilla/firefox/releases/1.5/adapting_xul_applications_for_firefox_1.5/index.md delete mode 100644 files/fr/mozilla/firefox/releases/1.5/index.html create mode 100644 files/fr/mozilla/firefox/releases/1.5/index.md delete mode 100644 files/fr/mozilla/firefox/releases/1.5/using_firefox_1.5_caching/index.html create mode 100644 files/fr/mozilla/firefox/releases/1.5/using_firefox_1.5_caching/index.md delete mode 100644 files/fr/mozilla/firefox/releases/11/index.html create mode 100644 files/fr/mozilla/firefox/releases/11/index.md delete mode 100644 files/fr/mozilla/firefox/releases/12/index.html create mode 100644 files/fr/mozilla/firefox/releases/12/index.md delete mode 100644 files/fr/mozilla/firefox/releases/13/index.html create mode 100644 files/fr/mozilla/firefox/releases/13/index.md delete mode 100644 files/fr/mozilla/firefox/releases/15/index.html create mode 100644 files/fr/mozilla/firefox/releases/15/index.md delete mode 100644 files/fr/mozilla/firefox/releases/16/index.html create mode 100644 files/fr/mozilla/firefox/releases/16/index.md delete mode 100644 files/fr/mozilla/firefox/releases/17/index.html create mode 100644 files/fr/mozilla/firefox/releases/17/index.md delete mode 100644 files/fr/mozilla/firefox/releases/18/index.html create mode 100644 files/fr/mozilla/firefox/releases/18/index.md delete mode 100644 files/fr/mozilla/firefox/releases/19/index.html create mode 100644 files/fr/mozilla/firefox/releases/19/index.md delete mode 100644 files/fr/mozilla/firefox/releases/2/index.html create mode 100644 files/fr/mozilla/firefox/releases/2/index.md delete mode 100644 files/fr/mozilla/firefox/releases/2/security_changes/index.html create mode 100644 files/fr/mozilla/firefox/releases/2/security_changes/index.md delete mode 100644 files/fr/mozilla/firefox/releases/2/updating_extensions/index.html create mode 100644 files/fr/mozilla/firefox/releases/2/updating_extensions/index.md delete mode 100644 files/fr/mozilla/firefox/releases/20/index.html create mode 100644 files/fr/mozilla/firefox/releases/20/index.md delete mode 100644 files/fr/mozilla/firefox/releases/21/index.html create mode 100644 files/fr/mozilla/firefox/releases/21/index.md delete mode 100644 files/fr/mozilla/firefox/releases/22/index.html create mode 100644 files/fr/mozilla/firefox/releases/22/index.md delete mode 100644 files/fr/mozilla/firefox/releases/23/index.html create mode 100644 files/fr/mozilla/firefox/releases/23/index.md delete mode 100644 files/fr/mozilla/firefox/releases/24/index.html create mode 100644 files/fr/mozilla/firefox/releases/24/index.md delete mode 100644 files/fr/mozilla/firefox/releases/25/index.html create mode 100644 files/fr/mozilla/firefox/releases/25/index.md delete mode 100644 files/fr/mozilla/firefox/releases/26/index.html create mode 100644 files/fr/mozilla/firefox/releases/26/index.md delete mode 100644 files/fr/mozilla/firefox/releases/27/index.html create mode 100644 files/fr/mozilla/firefox/releases/27/index.md delete mode 100644 files/fr/mozilla/firefox/releases/28/index.html create mode 100644 files/fr/mozilla/firefox/releases/28/index.md delete mode 100644 files/fr/mozilla/firefox/releases/29/index.html create mode 100644 files/fr/mozilla/firefox/releases/29/index.md delete mode 100644 files/fr/mozilla/firefox/releases/3.5/index.html create mode 100644 files/fr/mozilla/firefox/releases/3.5/index.md delete mode 100644 files/fr/mozilla/firefox/releases/3.6/index.html create mode 100644 files/fr/mozilla/firefox/releases/3.6/index.md delete mode 100644 files/fr/mozilla/firefox/releases/3/dom_improvements/index.html create mode 100644 files/fr/mozilla/firefox/releases/3/dom_improvements/index.md delete mode 100644 files/fr/mozilla/firefox/releases/3/full_page_zoom/index.html create mode 100644 files/fr/mozilla/firefox/releases/3/full_page_zoom/index.md delete mode 100644 files/fr/mozilla/firefox/releases/3/index.html create mode 100644 files/fr/mozilla/firefox/releases/3/index.md delete mode 100644 files/fr/mozilla/firefox/releases/3/notable_bugs_fixed/index.html create mode 100644 files/fr/mozilla/firefox/releases/3/notable_bugs_fixed/index.md delete mode 100644 files/fr/mozilla/firefox/releases/3/site_compatibility/index.html create mode 100644 files/fr/mozilla/firefox/releases/3/site_compatibility/index.md delete mode 100644 files/fr/mozilla/firefox/releases/3/svg_improvements/index.html create mode 100644 files/fr/mozilla/firefox/releases/3/svg_improvements/index.md delete mode 100644 files/fr/mozilla/firefox/releases/3/updating_extensions/index.html create mode 100644 files/fr/mozilla/firefox/releases/3/updating_extensions/index.md delete mode 100644 files/fr/mozilla/firefox/releases/3/updating_web_applications/index.html create mode 100644 files/fr/mozilla/firefox/releases/3/updating_web_applications/index.md delete mode 100644 files/fr/mozilla/firefox/releases/3/xul_improvements_in_firefox_3/index.html create mode 100644 files/fr/mozilla/firefox/releases/3/xul_improvements_in_firefox_3/index.md delete mode 100644 files/fr/mozilla/firefox/releases/30/index.html create mode 100644 files/fr/mozilla/firefox/releases/30/index.md delete mode 100644 files/fr/mozilla/firefox/releases/32/index.html create mode 100644 files/fr/mozilla/firefox/releases/32/index.md delete mode 100644 files/fr/mozilla/firefox/releases/35/index.html create mode 100644 files/fr/mozilla/firefox/releases/35/index.md delete mode 100644 files/fr/mozilla/firefox/releases/39/index.html create mode 100644 files/fr/mozilla/firefox/releases/39/index.md delete mode 100644 files/fr/mozilla/firefox/releases/4/index.html create mode 100644 files/fr/mozilla/firefox/releases/4/index.md delete mode 100644 files/fr/mozilla/firefox/releases/40/index.html create mode 100644 files/fr/mozilla/firefox/releases/40/index.md delete mode 100644 files/fr/mozilla/firefox/releases/41/index.html create mode 100644 files/fr/mozilla/firefox/releases/41/index.md delete mode 100644 files/fr/mozilla/firefox/releases/42/index.html create mode 100644 files/fr/mozilla/firefox/releases/42/index.md delete mode 100644 files/fr/mozilla/firefox/releases/5/index.html create mode 100644 files/fr/mozilla/firefox/releases/5/index.md delete mode 100644 files/fr/mozilla/firefox/releases/6/index.html create mode 100644 files/fr/mozilla/firefox/releases/6/index.md delete mode 100644 files/fr/mozilla/firefox/releases/7/index.html create mode 100644 files/fr/mozilla/firefox/releases/7/index.md delete mode 100644 files/fr/mozilla/firefox/releases/8/index.html create mode 100644 files/fr/mozilla/firefox/releases/8/index.md delete mode 100644 files/fr/mozilla/firefox/releases/9/index.html create mode 100644 files/fr/mozilla/firefox/releases/9/index.md delete mode 100644 files/fr/mozilla/firefox/releases/index.html create mode 100644 files/fr/mozilla/firefox/releases/index.md delete mode 100644 files/fr/mozilla/index.html create mode 100644 files/fr/mozilla/index.md (limited to 'files') diff --git a/files/fr/mozilla/add-ons/index.html b/files/fr/mozilla/add-ons/index.html deleted file mode 100644 index b3d7929517..0000000000 --- a/files/fr/mozilla/add-ons/index.html +++ /dev/null @@ -1,107 +0,0 @@ ---- -title: Modules -slug: Mozilla/Add-ons -tags: - - Add-ons - - Extensions - - Landing - - Modules - - Mozilla -translation_of: Mozilla/Add-ons ---- -
{{AddonSidebar}}
- -

Les modules complémentaires (add-ons) permettent aux développeurs d'ajouter et de modifier les fonctionnalités de Firefox. Les modules sont écrits à l'aide de technologies web standard : JavaScript, HTML, et CSS - et d'API JavaScript spécifiques à ces modules. Un module complémentaire peut, par exemple, être utilisé pour :

- - - -

Il y a plusieurs types de modules complémentaires (add-ons), mais le plus courant est l'extension.

- -

Développer des modules complémentaires

- -

Par le passé, il a existé différents outils et formats pour développer des modules complémentaires pour Firefox. Cependant,depuis Novembre 2017, les WebExtensions sont devenues le format standard. Les autres outils (le SDK Add-On par exemple) sont maintenant dépréciés.

- -

En savoir plus à propos des WebExtensions

- -

Si vous développez un nouveau module complémentaire, nous vous recommandons d'utiliser WebExtension.

- -

Les extensions qui respectent le format WebExtensions de Firefox sont conçues pour pouvoir être utilisées sur différents navigateurs. Les extensions WebExtensions écrites pour Firefox fonctionneront pour la plupart dans Chrome, Edge et Opera, nécessitant peu, si ce n'est aucun changements. Elles sont également compatibles avec le mode multi-processus de Firefox.
-
- Voici la liste des API actuellement prises en charge par Firefox et les autres navigateurs. Nous continuons à concevoir et à implémenter de nouvelles API afin de répondre aux besoins des développeurs.
-
- La plupart des API utilisées pour WebExtension sont également disponibles pour Firefox pour Android.

- -

L'atelier des extensions Firefox (Extension Workshop)

- -

L'atelier des extensions firefox (Extension Workshop) est utile pour aider à développer une extension pour Firefox en offrant à l'utilisateur une façon simple et efficace de personnaliser sa navigatrion sur internet. On peut notamment y trouver : 

- - - -

Les extensions pour Firefox pour Android

- -

En 2020, Mozilla sortira une nouvelle expérience Firefox pour Android. Le nouveau Firefox ultra-performant pour Android a été entièrement repensé avec GeckoView, le nouveau moteur de rendu pour mobiles de Mozilla. Nous travaillons actuellement à la création d'un support pour WebExtensions sur GeckoView.

- -

Migrer un module existant

- -

Si vous maintenez un module complémentaire historique utilisant XUL ou le SDK Add-on, nous vous recommandons de le porter vers une extension WebExtensions. Voici quelques ressources MDN à propos du portage d'extension.

- -

Nous avons rassemblé un ensemble de ressources sur un page wiki afin d'aider les développeurs pendant cette phase de transition. Pour commencer, vous pouvez utiliser l'outil Lookup afin de détecter si votre module complémentaire est impacté.

- -

Publier des modules

- -

addons.mozilla.org, aussi appelé AMO, est le site officiel de Mozilla sur lequel sont publiés les modules complémentaires et que les utilisateurs peuvent parcourir pour découvrir de nouveaux modules. Publier un module complémentaire sur AMO permet d'entretenir la communauté d'utilisateurs et de créateurs de modules. C'est également une ressource essentielle pour qu'un module puisse être découvert.

- -

Il n'est pas nécessaire que votre module soit publié sur AMO. En revanche, votre module doit être signé par Mozilla afin que les utilisateurs puissent l'installer.

- -

Dans cet article, vous trouverez différentes informations relatives au processus de publication de son module.

- -

Les autres types de modules

- -

Généralement, lorsqu'on évoque les modules complémentaires, on parle des extensions. Ceci étant dit, il existe d'autres types de modules qui permettent aux utilisateurs de personnaliser Firefox. Ces modules peuvent être :

- - - -

Nous contacter

- -

Vous pouvez utiliser les liens qui suivent pour demander de l'aide, être tenu-e informé-e des actualités concernant les modules complémentaires et nous fournir vos retours.

- -

Forum

- -

Le forum Discourse dédié aux modules complémentaires est un lieu où discuter du développement de modules complémentaires et où demander de l'aide.

- -

Liste de diffusion

- -

La liste de diffusion dev-addons (anglophone) est utilisée afin de discuter du développement des modules complémentaires et de leur environnement. Les thèmes abordés incluent le format WebExtensions et AMO (https://addons.mozilla.org) :

- - - -

IRC

- -

Si vous utilisez IRC, vous pouvez utiliser ces canaux (anglophones) :

- - diff --git a/files/fr/mozilla/add-ons/index.md b/files/fr/mozilla/add-ons/index.md new file mode 100644 index 0000000000..b3d7929517 --- /dev/null +++ b/files/fr/mozilla/add-ons/index.md @@ -0,0 +1,107 @@ +--- +title: Modules +slug: Mozilla/Add-ons +tags: + - Add-ons + - Extensions + - Landing + - Modules + - Mozilla +translation_of: Mozilla/Add-ons +--- +
{{AddonSidebar}}
+ +

Les modules complémentaires (add-ons) permettent aux développeurs d'ajouter et de modifier les fonctionnalités de Firefox. Les modules sont écrits à l'aide de technologies web standard : JavaScript, HTML, et CSS - et d'API JavaScript spécifiques à ces modules. Un module complémentaire peut, par exemple, être utilisé pour :

+ + + +

Il y a plusieurs types de modules complémentaires (add-ons), mais le plus courant est l'extension.

+ +

Développer des modules complémentaires

+ +

Par le passé, il a existé différents outils et formats pour développer des modules complémentaires pour Firefox. Cependant,depuis Novembre 2017, les WebExtensions sont devenues le format standard. Les autres outils (le SDK Add-On par exemple) sont maintenant dépréciés.

+ +

En savoir plus à propos des WebExtensions

+ +

Si vous développez un nouveau module complémentaire, nous vous recommandons d'utiliser WebExtension.

+ +

Les extensions qui respectent le format WebExtensions de Firefox sont conçues pour pouvoir être utilisées sur différents navigateurs. Les extensions WebExtensions écrites pour Firefox fonctionneront pour la plupart dans Chrome, Edge et Opera, nécessitant peu, si ce n'est aucun changements. Elles sont également compatibles avec le mode multi-processus de Firefox.
+
+ Voici la liste des API actuellement prises en charge par Firefox et les autres navigateurs. Nous continuons à concevoir et à implémenter de nouvelles API afin de répondre aux besoins des développeurs.
+
+ La plupart des API utilisées pour WebExtension sont également disponibles pour Firefox pour Android.

+ +

L'atelier des extensions Firefox (Extension Workshop)

+ +

L'atelier des extensions firefox (Extension Workshop) est utile pour aider à développer une extension pour Firefox en offrant à l'utilisateur une façon simple et efficace de personnaliser sa navigatrion sur internet. On peut notamment y trouver : 

+ + + +

Les extensions pour Firefox pour Android

+ +

En 2020, Mozilla sortira une nouvelle expérience Firefox pour Android. Le nouveau Firefox ultra-performant pour Android a été entièrement repensé avec GeckoView, le nouveau moteur de rendu pour mobiles de Mozilla. Nous travaillons actuellement à la création d'un support pour WebExtensions sur GeckoView.

+ +

Migrer un module existant

+ +

Si vous maintenez un module complémentaire historique utilisant XUL ou le SDK Add-on, nous vous recommandons de le porter vers une extension WebExtensions. Voici quelques ressources MDN à propos du portage d'extension.

+ +

Nous avons rassemblé un ensemble de ressources sur un page wiki afin d'aider les développeurs pendant cette phase de transition. Pour commencer, vous pouvez utiliser l'outil Lookup afin de détecter si votre module complémentaire est impacté.

+ +

Publier des modules

+ +

addons.mozilla.org, aussi appelé AMO, est le site officiel de Mozilla sur lequel sont publiés les modules complémentaires et que les utilisateurs peuvent parcourir pour découvrir de nouveaux modules. Publier un module complémentaire sur AMO permet d'entretenir la communauté d'utilisateurs et de créateurs de modules. C'est également une ressource essentielle pour qu'un module puisse être découvert.

+ +

Il n'est pas nécessaire que votre module soit publié sur AMO. En revanche, votre module doit être signé par Mozilla afin que les utilisateurs puissent l'installer.

+ +

Dans cet article, vous trouverez différentes informations relatives au processus de publication de son module.

+ +

Les autres types de modules

+ +

Généralement, lorsqu'on évoque les modules complémentaires, on parle des extensions. Ceci étant dit, il existe d'autres types de modules qui permettent aux utilisateurs de personnaliser Firefox. Ces modules peuvent être :

+ + + +

Nous contacter

+ +

Vous pouvez utiliser les liens qui suivent pour demander de l'aide, être tenu-e informé-e des actualités concernant les modules complémentaires et nous fournir vos retours.

+ +

Forum

+ +

Le forum Discourse dédié aux modules complémentaires est un lieu où discuter du développement de modules complémentaires et où demander de l'aide.

+ +

Liste de diffusion

+ +

La liste de diffusion dev-addons (anglophone) est utilisée afin de discuter du développement des modules complémentaires et de leur environnement. Les thèmes abordés incluent le format WebExtensions et AMO (https://addons.mozilla.org) :

+ + + +

IRC

+ +

Si vous utilisez IRC, vous pouvez utiliser ces canaux (anglophones) :

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/add_a_button_to_the_toolbar/index.html b/files/fr/mozilla/add-ons/webextensions/add_a_button_to_the_toolbar/index.html deleted file mode 100644 index 35f4c76bcf..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/add_a_button_to_the_toolbar/index.html +++ /dev/null @@ -1,224 +0,0 @@ ---- -title: Ajouter un bouton à la barre d'outils -slug: Mozilla/Add-ons/WebExtensions/Add_a_button_to_the_toolbar -tags: - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Add_a_button_to_the_toolbar -original_slug: Mozilla/Add-ons/WebExtensions/Ajouter_un_bouton_a_la_barre_d_outils ---- -
{{AddonSidebar}}
- -

Les boutons de la barre d’outils sont l’un des principaux composants UI disponibles aux WebExtensions. Les boutons de la barre d’outils sont présents dans la barre d’outils principale du navigateur et contiennent une icône. Lorsque l’utilisateur clique sur l’icône, une des deux choses peut arriver :

- - - -

Dans WebExtensions, ces types de boutons s’appellent « actions du navigateur » et sont configurés de la manière suivante :

- - - -

Un bouton simple

- -

Dans cette section, nous créerons une WebExtension qui ajoute un bouton à la barre d’outils. Lorsque l’utilisateur clique sur le bouton, nous ouvrirons https ://developer.mozilla.org dans un nouveau onglet.

- -

Tout d’abord, créez un nouveau dossier, « bouton », et créez un fichier appelé « manifest.json » à l’intérieur avec le contenu suivant :

- -
{
-
-  "description": "Demonstrating toolbar buttons",
-  "manifest_version": 2,
-  "name": "button-demo",
-  "version": "1.0",
-
-  "background": {
-    "scripts": ["background.js"]
-  },
-
-  "browser_action": {
-    "default_icon": {
-      "16": "icons/page-16.png",
-      "32": "icons/page-32.png"
-    }
-  }
-
-}
- -

Cela spécifie que nous aurons un script en arrière‐plan nommé « background.js », et une action du navigateur (bouton) et une action du navigateur (bouton) dont les icônes vont vivre dans le répertoire « icônes ».

- - -

Ces icônes proviennent des bits ! icônes créées parRecep Kütük.

- -

Ensuite, créez un dossier « icons » dans le dossier « buttons » et enregistrez les deux icônes ci‐dessous :

- - - -
- -

Nous avons deux icônes que nous pouvons utiliser, la plus grande dans les écrans haute densité. Le navigateur prend en charge la sélection de la meilleure icône pour l’affichage courrant.

- -

Ensuite, créez « background.js » dans le répertoire racine de l’add‐on, et donnez‐lui le contenu suivant :

- -
function openPage() {
-  browser.tabs.create({
-    url: "https://developer.mozilla.org"
-  });
-}
-
-browser.browserAction.onClicked.addListener(openPage);
- -

Cela écoute l’événement de clic de l’action du navigateur ; Lorsque l’événement se déclenche, la fonction openPage() est exécuté, ce qui ouvre la page spécifiée à l’aide de l’API des onglets.

- -

A ce point, l’extension complète devrait ressembler à ceci :

- -
button/
-    icons/
-        page-16.png
-        page-32.png
-    background.js
-    manifest.json
- -

Maintenant installer la WebExtension et cliquez sur le bouton :

- -

{{EmbedYouTube("kwwTowgT‐Ys")}}

- -

Ajout d’une fenêtre contextuelle

- -

Essayons d’ajouter une fenêtre contextuelle au bouton. Remplacez manifest.json par ceci :

- -
{
-
-  "description": "Demonstrating toolbar buttons",
-  "manifest_version": 2,
-  "name": "button-demo",
-  "version": "1.0",
-
-  "browser_action": {
-    "browser_style": true,
-    "default_popup": "popup/choose_page.html",
-    "default_icon": {
-      "16": "icons/page-16.png",
-      "32": "icons/page-32.png"
-    }
-  }
-
-}
- -

Nous avons fait trois changements par rapport à l’original :

- - - -

Donc maintenant nous devons créer cette fenêtre contextuelle. Créez un répertoire appelé « popup » puis créez un fichier appelé « choose_page.html » à l’intérieur. Donnez‐lui les contenus suivants :

- -
<!DOCTYPE html>
-
-<html>
-  <head>
-    <meta charset="utf-8">
-    <link rel="stylesheet" href="choose_page.css"/>
-  </head>
-
-<body>
-  <div class="page-choice">developer.mozilla.org</div>
-  <div class="page-choice">support.mozilla.org</div>
-  <div class="page-choice">addons.mozilla.org</div>
-  <script src="choose_page.js"></script>
-</body>
-
-</html>
- -

Vous pouvez voir qu’il s’agit d’une page HTML normale contenant trois éléments {{htmlelement ("div")}}, chacun avec le nom d’un site Mozilla à l’intérieur. Il comprend également un fichier CSS et un fichier JavaScript, que nous ajouterons ensuite.

- -

Créez un fichier appelé « choose_page.css » dans le répertoire « popup » et donnez‐lui ce contenu :

- -
html, body {
-  width: 300px;
-}
-
-.page-choice {
-  width: 100%;
-  padding: 4px;
-  font-size: 1.5em;
-  text-align: center;
-  cursor: pointer;
-}
-
-.page-choice:hover {
-  background-color: #CFF2F2;
-}
- -

C'est juste un peu d’habillage pour notre popup.

- -

Ensuite, créez un fichier « choose_page.js » dans le répertoire « popup » et donnez‐le à ces contenus :

- -
document.addEventListener("click", function(e) {
-  if (!e.target.classList.contains("page-choice")) {
-    return;
-  }
-
-  var chosenPage = "https://" + e.target.textContent;
-  browser.tabs.create({
-    url: chosenPage
-  });
-
-});
- -

Dans notre JavaScript, nous écoutons les clics sur les choix contextuels. Nous vérifions d’abord si le clic a atterri sur l’un des choix de la page ; Sinon, nous ne faisons rien d’autre. Si le clic atterrit sur un choix de page, nous construisons une URL à partir de celui‐ci, et ouvrons un nouvel onglet contenant la page correspondante. Notez que nous pouvons utiliser les API WebExtension dans les scripts contextuels, tout comme nous le pouvons dans les scripts en arrière‐plan.

- -

La structure finale de l’add‐on devrait ressembler à ceci :

- -
button/
-    icons/
-        page-16.png
-        page-32.png
-    popup/
-        choose_page.css
-        choose_page.html
-        choose_page.js
-    manifest.json
- -

Maintenant, rechargez l’extension, cliquez de nouveau sur le bouton et essayez de cliquer sur les choix dans la fenêtre contextuelle :

- -

{{EmbedYouTube("QPEh1L1xq0Y")}}

- -

Actions de page

- -

Les actions de page sont comme les actions du navigateur, mais qui ne sont pertinentes que pour les pages particulières, plutôt que sur le navigateur dans son ensemble.

- -

Alors que les actions du navigateur sont toujours affichées, les actions de la page ne sont affichées que dans les onglets où elles sont pertinentes. Les boutons d’action de la page sont affichés dans la barre d’URL, plutôt que dans la barre d’outils du navigateur.

- -

Pour en savoir plus

- - diff --git a/files/fr/mozilla/add-ons/webextensions/add_a_button_to_the_toolbar/index.md b/files/fr/mozilla/add-ons/webextensions/add_a_button_to_the_toolbar/index.md new file mode 100644 index 0000000000..35f4c76bcf --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/add_a_button_to_the_toolbar/index.md @@ -0,0 +1,224 @@ +--- +title: Ajouter un bouton à la barre d'outils +slug: Mozilla/Add-ons/WebExtensions/Add_a_button_to_the_toolbar +tags: + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Add_a_button_to_the_toolbar +original_slug: Mozilla/Add-ons/WebExtensions/Ajouter_un_bouton_a_la_barre_d_outils +--- +
{{AddonSidebar}}
+ +

Les boutons de la barre d’outils sont l’un des principaux composants UI disponibles aux WebExtensions. Les boutons de la barre d’outils sont présents dans la barre d’outils principale du navigateur et contiennent une icône. Lorsque l’utilisateur clique sur l’icône, une des deux choses peut arriver :

+ + + +

Dans WebExtensions, ces types de boutons s’appellent « actions du navigateur » et sont configurés de la manière suivante :

+ + + +

Un bouton simple

+ +

Dans cette section, nous créerons une WebExtension qui ajoute un bouton à la barre d’outils. Lorsque l’utilisateur clique sur le bouton, nous ouvrirons https ://developer.mozilla.org dans un nouveau onglet.

+ +

Tout d’abord, créez un nouveau dossier, « bouton », et créez un fichier appelé « manifest.json » à l’intérieur avec le contenu suivant :

+ +
{
+
+  "description": "Demonstrating toolbar buttons",
+  "manifest_version": 2,
+  "name": "button-demo",
+  "version": "1.0",
+
+  "background": {
+    "scripts": ["background.js"]
+  },
+
+  "browser_action": {
+    "default_icon": {
+      "16": "icons/page-16.png",
+      "32": "icons/page-32.png"
+    }
+  }
+
+}
+ +

Cela spécifie que nous aurons un script en arrière‐plan nommé « background.js », et une action du navigateur (bouton) et une action du navigateur (bouton) dont les icônes vont vivre dans le répertoire « icônes ».

+ + +

Ces icônes proviennent des bits ! icônes créées parRecep Kütük.

+ +

Ensuite, créez un dossier « icons » dans le dossier « buttons » et enregistrez les deux icônes ci‐dessous :

+ + + +
+ +

Nous avons deux icônes que nous pouvons utiliser, la plus grande dans les écrans haute densité. Le navigateur prend en charge la sélection de la meilleure icône pour l’affichage courrant.

+ +

Ensuite, créez « background.js » dans le répertoire racine de l’add‐on, et donnez‐lui le contenu suivant :

+ +
function openPage() {
+  browser.tabs.create({
+    url: "https://developer.mozilla.org"
+  });
+}
+
+browser.browserAction.onClicked.addListener(openPage);
+ +

Cela écoute l’événement de clic de l’action du navigateur ; Lorsque l’événement se déclenche, la fonction openPage() est exécuté, ce qui ouvre la page spécifiée à l’aide de l’API des onglets.

+ +

A ce point, l’extension complète devrait ressembler à ceci :

+ +
button/
+    icons/
+        page-16.png
+        page-32.png
+    background.js
+    manifest.json
+ +

Maintenant installer la WebExtension et cliquez sur le bouton :

+ +

{{EmbedYouTube("kwwTowgT‐Ys")}}

+ +

Ajout d’une fenêtre contextuelle

+ +

Essayons d’ajouter une fenêtre contextuelle au bouton. Remplacez manifest.json par ceci :

+ +
{
+
+  "description": "Demonstrating toolbar buttons",
+  "manifest_version": 2,
+  "name": "button-demo",
+  "version": "1.0",
+
+  "browser_action": {
+    "browser_style": true,
+    "default_popup": "popup/choose_page.html",
+    "default_icon": {
+      "16": "icons/page-16.png",
+      "32": "icons/page-32.png"
+    }
+  }
+
+}
+ +

Nous avons fait trois changements par rapport à l’original :

+ + + +

Donc maintenant nous devons créer cette fenêtre contextuelle. Créez un répertoire appelé « popup » puis créez un fichier appelé « choose_page.html » à l’intérieur. Donnez‐lui les contenus suivants :

+ +
<!DOCTYPE html>
+
+<html>
+  <head>
+    <meta charset="utf-8">
+    <link rel="stylesheet" href="choose_page.css"/>
+  </head>
+
+<body>
+  <div class="page-choice">developer.mozilla.org</div>
+  <div class="page-choice">support.mozilla.org</div>
+  <div class="page-choice">addons.mozilla.org</div>
+  <script src="choose_page.js"></script>
+</body>
+
+</html>
+ +

Vous pouvez voir qu’il s’agit d’une page HTML normale contenant trois éléments {{htmlelement ("div")}}, chacun avec le nom d’un site Mozilla à l’intérieur. Il comprend également un fichier CSS et un fichier JavaScript, que nous ajouterons ensuite.

+ +

Créez un fichier appelé « choose_page.css » dans le répertoire « popup » et donnez‐lui ce contenu :

+ +
html, body {
+  width: 300px;
+}
+
+.page-choice {
+  width: 100%;
+  padding: 4px;
+  font-size: 1.5em;
+  text-align: center;
+  cursor: pointer;
+}
+
+.page-choice:hover {
+  background-color: #CFF2F2;
+}
+ +

C'est juste un peu d’habillage pour notre popup.

+ +

Ensuite, créez un fichier « choose_page.js » dans le répertoire « popup » et donnez‐le à ces contenus :

+ +
document.addEventListener("click", function(e) {
+  if (!e.target.classList.contains("page-choice")) {
+    return;
+  }
+
+  var chosenPage = "https://" + e.target.textContent;
+  browser.tabs.create({
+    url: chosenPage
+  });
+
+});
+ +

Dans notre JavaScript, nous écoutons les clics sur les choix contextuels. Nous vérifions d’abord si le clic a atterri sur l’un des choix de la page ; Sinon, nous ne faisons rien d’autre. Si le clic atterrit sur un choix de page, nous construisons une URL à partir de celui‐ci, et ouvrons un nouvel onglet contenant la page correspondante. Notez que nous pouvons utiliser les API WebExtension dans les scripts contextuels, tout comme nous le pouvons dans les scripts en arrière‐plan.

+ +

La structure finale de l’add‐on devrait ressembler à ceci :

+ +
button/
+    icons/
+        page-16.png
+        page-32.png
+    popup/
+        choose_page.css
+        choose_page.html
+        choose_page.js
+    manifest.json
+ +

Maintenant, rechargez l’extension, cliquez de nouveau sur le bouton et essayez de cliquer sur les choix dans la fenêtre contextuelle :

+ +

{{EmbedYouTube("QPEh1L1xq0Y")}}

+ +

Actions de page

+ +

Les actions de page sont comme les actions du navigateur, mais qui ne sont pertinentes que pour les pages particulières, plutôt que sur le navigateur dans son ensemble.

+ +

Alors que les actions du navigateur sont toujours affichées, les actions de la page ne sont affichées que dans les onglets où elles sont pertinentes. Les boutons d’action de la page sont affichés dans la barre d’URL, plutôt que dans la barre d’outils du navigateur.

+ +

Pour en savoir plus

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/anatomy_of_a_webextension/index.html b/files/fr/mozilla/add-ons/webextensions/anatomy_of_a_webextension/index.html deleted file mode 100644 index c731203edf..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/anatomy_of_a_webextension/index.html +++ /dev/null @@ -1,146 +0,0 @@ ---- -title: Anatomie d'une WebExtension -slug: Mozilla/Add-ons/WebExtensions/Anatomy_of_a_WebExtension -tags: - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Anatomy_of_a_WebExtension ---- -
{{AddonSidebar}}
- -

Une extension se compose de plusieurs fichiers, packagés pour la distribution et l'installation. Dans cet article, nous allons rapidement passer par les fichiers qui pourraient être présents dans une extension.

- -

manifest.json

- -

Il s'agit du seul fichier qui doit être présent dans chaque extension. Il contient des métadonnées de base sur l'extension telles que son nom, sa version et les autorisations requises. Il fournit également des pointeurs vers d'autres fichiers dans l'extension.

- -

Ce manifeste peut également contenir des pointeurs vers plusieurs autres types de fichiers :

- - - -

- -

Voir la page référence manifest.json pour tous les détails.

- -

En plus de celles déjà listées dans le manifeste, une extension peut également inclure des pages d'extensions supplémentaires et des fichiers de support.

- -

Scripts d'arrière-plan

- -

Les extensions doivent souvent conserver un état à long terme ou effectuer des opérations à long terme indépendamment de la durée de vie d'une page Web ou d'une fenêtre de navigateur. C'est le rôle des scripts d'arrière-plan.

- -

Les scripts en arrière-plan sont chargés dès que l'extension est chargée et restent chargés jusqu'à ce que l'extension soit désactivée ou désinstallée. Vous pouvez utiliser n'importe laquelle des WebExtension APIs dans le script, tant que vous avez demandé les permissions nécessaires.

- -

Spécifier les scripts d'arrière-plan

- -

Vous pouvez inclure un script d'arrière-plan à l'aide de la clé background dans "manifest.json" :

- -
// manifest.json
-
-"background": {
-  "scripts": ["background-script.js"]
-}
- -

Vous pouvez spécifier plusieurs scripts en arrière-plan : si vous le faites, ils s'exécutent dans le même contexte, tout comme plusieurs scripts chargés dans une seule page Web.

- -

Au lieu de spécifier des scripts d'arrière-plan, vous pouvez spécifier une page d'arrière-plan qui a l'avantage supplémentaire de supporter les modules ES6 :

- -

manifest.json

- -
// manifest.json
-
-"background": {
-  "page": "background-page.html"
-}
- -

background-page.html

- -
<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <script type="module" src="background-script.js"></script>
-  </head>
-</html>
- -

Environnement des scripts d'arrière-plan

- -

APIs DOM

- -

Les scripts d'arrière-plan s'exécutent dans le contexte de pages spéciales appelées pages d'arrière-plan. Cela leur donne une fenêtre globale, ainsi que toutes les API DOM standard fournies par cet objet.

- -
-

Attention : Dans Firefox, les pages d'arrière-plan ne supportent pas l'utilisation de alert(), confirm(), ou prompt().

-
- -

APIs des WebExtensions

- -

Les scripts d'arrière-plan peuvent utiliser l'une des APIs des WebExtensions dans le script, à condition que leur extension dispose des permissions nécessaires.

- -

Cross-origin access

- -

Les scripts d'arrière-plan peuvent faire des requêtes XHR à tous les hôtes pour lesquels ils ont des permissions d'hôte.

- -

Contenu Web

- -

Les scripts d'arrière-plan n'obtiennent pas un accès direct aux pages Web. Toutefois,  ils peuvent charger des scripts de contenu dans les pages Web et peuvent communiquer avec ces scripts de contenu à l'aide d'une API de communication.

- -

Politique de sécurité du contenu

- -

Les scripts d'arrière-plan sont restreints à certaines opérations pour lutter contre d'autres potentiellement dangereuses, comme l'utilisation de la fonction eval(), par le biais d'une politique de sécurité du contenu. Pour plus de détails, consultez la politique de sécurité du contenu.

- - - -

Votre extension peut inclure divers composants d'interface utilisateur dont le contenu est défini à l'aide d'un document HTML :

- - - -

Pour chacun de ces composants, vous créez un fichier HTML et pointez vers lui en utilisant une propriété spécifique dans manifest.json. Le fichier HTML peut inclure des fichiers CSS et JavaScript, tout comme une page Web normale.

- -

Toutes ces pages sont un type de pages d'extension,et contrairement à une page Web normale, votre JavaScript peut utiliser les mêmes API d'extension Web privilégiées que votre script de fond. Ils peuvent même accéder directement aux variables de la page d'arrière-plan en utilisant  {{WebExtAPIRef("runtime.getBackgroundPage()")}}.

- -

Page d'extension

- -

Vous pouvez également inclure dans votre extension des documents HTML qui ne sont pas attachés à un composant d'interface utilisateur prédéfini. Contrairement aux documents que vous pouvez fournir pour les sidebars, les popups ou les pages d'options, ceux-ci n'ont pas d'entrée dans manifest.json. Cependant, ils ont également accès aux mêmes API WebExtension privilégiées que votre script d'arrière-plan.

- -

Vous chargerez typiquement une page comme celle-ci en utilisant  {{WebExtAPIRef("windows.create()")}} ou {{WebExtAPIRef("tabs.create()")}}.

- -

Voir les pages d'extension pour en savoir plus.

- -

Scripts de contenu

- -

Utilisez les scripts de contenu pour accéder et manipuler des pages Web. Les scripts de contenu sont chargés dans des pages Web et lancés dans le contexte de cette page particulière.

- -

Les scripts de contenu sont des scripts fournis par les extensions qui s'exécutent dans le contexte d'une page Web ; cela diffère des scripts qui sont chargés par la page elle-même, y compris ceux qui sont fournis dans les éléments {{HTMLElement ("script")}} dans la page.

- -

Les scripts de contenu peuvent voir et manipuler le DOM de la page, tout comme les scripts normaux chargés par la page.

- -

Contrairement aux scripts de pages normales, ils peuvent :

- - - -

Les scripts de contenu ne peuvent pas directement accéder normalement aux scripts de page, mais peuvent échanger des messages avec eux à l'aide de l'API standard window.postMessage().

- -

Habituellement, quand nous parlons de scripts de contenu, nous parlons de JavaScript, mais vous pouvez injecter du CSS dans des pages Web en utilisant le même mécanisme.

- -

Voir l'article de scripts de contenu pour en savoir plus.

- -

Rendre accessible des ressources web

- -

Les ressources web sont des fichiers tels que des images, des fichiers HTML, CSS ou JavaScript qui sont inclus dans l'extension afin d'être utilisés par les scripts de contenu et les scripts d'arrière-plan. Les ressources web mises à disposition peuvent être référencées depuis les scripts grâce à un schéma d'URI spécifique.

- -

Ainsi, si un script de contenu souhaite insérer des images sur une page web, on pourra insérer ces images dans l'extension et les rendre accessible. Ensuite, le script de contenu pourra créer et ajouter une balise {{HTMLElement("img")}} faisant référence à l'image via l'attribut src ciblant le fichier via le schéma spécifique.

- -

Pour en savoir plus, se référer à la documentation de la clé web_accessible_resources du fichier manifest.json.

diff --git a/files/fr/mozilla/add-ons/webextensions/anatomy_of_a_webextension/index.md b/files/fr/mozilla/add-ons/webextensions/anatomy_of_a_webextension/index.md new file mode 100644 index 0000000000..c731203edf --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/anatomy_of_a_webextension/index.md @@ -0,0 +1,146 @@ +--- +title: Anatomie d'une WebExtension +slug: Mozilla/Add-ons/WebExtensions/Anatomy_of_a_WebExtension +tags: + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Anatomy_of_a_WebExtension +--- +
{{AddonSidebar}}
+ +

Une extension se compose de plusieurs fichiers, packagés pour la distribution et l'installation. Dans cet article, nous allons rapidement passer par les fichiers qui pourraient être présents dans une extension.

+ +

manifest.json

+ +

Il s'agit du seul fichier qui doit être présent dans chaque extension. Il contient des métadonnées de base sur l'extension telles que son nom, sa version et les autorisations requises. Il fournit également des pointeurs vers d'autres fichiers dans l'extension.

+ +

Ce manifeste peut également contenir des pointeurs vers plusieurs autres types de fichiers :

+ + + +

+ +

Voir la page référence manifest.json pour tous les détails.

+ +

En plus de celles déjà listées dans le manifeste, une extension peut également inclure des pages d'extensions supplémentaires et des fichiers de support.

+ +

Scripts d'arrière-plan

+ +

Les extensions doivent souvent conserver un état à long terme ou effectuer des opérations à long terme indépendamment de la durée de vie d'une page Web ou d'une fenêtre de navigateur. C'est le rôle des scripts d'arrière-plan.

+ +

Les scripts en arrière-plan sont chargés dès que l'extension est chargée et restent chargés jusqu'à ce que l'extension soit désactivée ou désinstallée. Vous pouvez utiliser n'importe laquelle des WebExtension APIs dans le script, tant que vous avez demandé les permissions nécessaires.

+ +

Spécifier les scripts d'arrière-plan

+ +

Vous pouvez inclure un script d'arrière-plan à l'aide de la clé background dans "manifest.json" :

+ +
// manifest.json
+
+"background": {
+  "scripts": ["background-script.js"]
+}
+ +

Vous pouvez spécifier plusieurs scripts en arrière-plan : si vous le faites, ils s'exécutent dans le même contexte, tout comme plusieurs scripts chargés dans une seule page Web.

+ +

Au lieu de spécifier des scripts d'arrière-plan, vous pouvez spécifier une page d'arrière-plan qui a l'avantage supplémentaire de supporter les modules ES6 :

+ +

manifest.json

+ +
// manifest.json
+
+"background": {
+  "page": "background-page.html"
+}
+ +

background-page.html

+ +
<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <script type="module" src="background-script.js"></script>
+  </head>
+</html>
+ +

Environnement des scripts d'arrière-plan

+ +

APIs DOM

+ +

Les scripts d'arrière-plan s'exécutent dans le contexte de pages spéciales appelées pages d'arrière-plan. Cela leur donne une fenêtre globale, ainsi que toutes les API DOM standard fournies par cet objet.

+ +
+

Attention : Dans Firefox, les pages d'arrière-plan ne supportent pas l'utilisation de alert(), confirm(), ou prompt().

+
+ +

APIs des WebExtensions

+ +

Les scripts d'arrière-plan peuvent utiliser l'une des APIs des WebExtensions dans le script, à condition que leur extension dispose des permissions nécessaires.

+ +

Cross-origin access

+ +

Les scripts d'arrière-plan peuvent faire des requêtes XHR à tous les hôtes pour lesquels ils ont des permissions d'hôte.

+ +

Contenu Web

+ +

Les scripts d'arrière-plan n'obtiennent pas un accès direct aux pages Web. Toutefois,  ils peuvent charger des scripts de contenu dans les pages Web et peuvent communiquer avec ces scripts de contenu à l'aide d'une API de communication.

+ +

Politique de sécurité du contenu

+ +

Les scripts d'arrière-plan sont restreints à certaines opérations pour lutter contre d'autres potentiellement dangereuses, comme l'utilisation de la fonction eval(), par le biais d'une politique de sécurité du contenu. Pour plus de détails, consultez la politique de sécurité du contenu.

+ + + +

Votre extension peut inclure divers composants d'interface utilisateur dont le contenu est défini à l'aide d'un document HTML :

+ + + +

Pour chacun de ces composants, vous créez un fichier HTML et pointez vers lui en utilisant une propriété spécifique dans manifest.json. Le fichier HTML peut inclure des fichiers CSS et JavaScript, tout comme une page Web normale.

+ +

Toutes ces pages sont un type de pages d'extension,et contrairement à une page Web normale, votre JavaScript peut utiliser les mêmes API d'extension Web privilégiées que votre script de fond. Ils peuvent même accéder directement aux variables de la page d'arrière-plan en utilisant  {{WebExtAPIRef("runtime.getBackgroundPage()")}}.

+ +

Page d'extension

+ +

Vous pouvez également inclure dans votre extension des documents HTML qui ne sont pas attachés à un composant d'interface utilisateur prédéfini. Contrairement aux documents que vous pouvez fournir pour les sidebars, les popups ou les pages d'options, ceux-ci n'ont pas d'entrée dans manifest.json. Cependant, ils ont également accès aux mêmes API WebExtension privilégiées que votre script d'arrière-plan.

+ +

Vous chargerez typiquement une page comme celle-ci en utilisant  {{WebExtAPIRef("windows.create()")}} ou {{WebExtAPIRef("tabs.create()")}}.

+ +

Voir les pages d'extension pour en savoir plus.

+ +

Scripts de contenu

+ +

Utilisez les scripts de contenu pour accéder et manipuler des pages Web. Les scripts de contenu sont chargés dans des pages Web et lancés dans le contexte de cette page particulière.

+ +

Les scripts de contenu sont des scripts fournis par les extensions qui s'exécutent dans le contexte d'une page Web ; cela diffère des scripts qui sont chargés par la page elle-même, y compris ceux qui sont fournis dans les éléments {{HTMLElement ("script")}} dans la page.

+ +

Les scripts de contenu peuvent voir et manipuler le DOM de la page, tout comme les scripts normaux chargés par la page.

+ +

Contrairement aux scripts de pages normales, ils peuvent :

+ + + +

Les scripts de contenu ne peuvent pas directement accéder normalement aux scripts de page, mais peuvent échanger des messages avec eux à l'aide de l'API standard window.postMessage().

+ +

Habituellement, quand nous parlons de scripts de contenu, nous parlons de JavaScript, mais vous pouvez injecter du CSS dans des pages Web en utilisant le même mécanisme.

+ +

Voir l'article de scripts de contenu pour en savoir plus.

+ +

Rendre accessible des ressources web

+ +

Les ressources web sont des fichiers tels que des images, des fichiers HTML, CSS ou JavaScript qui sont inclus dans l'extension afin d'être utilisés par les scripts de contenu et les scripts d'arrière-plan. Les ressources web mises à disposition peuvent être référencées depuis les scripts grâce à un schéma d'URI spécifique.

+ +

Ainsi, si un script de contenu souhaite insérer des images sur une page web, on pourra insérer ces images dans l'extension et les rendre accessible. Ensuite, le script de contenu pourra créer et ajouter une balise {{HTMLElement("img")}} faisant référence à l'image via l'attribut src ciblant le fichier via le schéma spécifique.

+ +

Pour en savoir plus, se référer à la documentation de la clé web_accessible_resources du fichier manifest.json.

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 deleted file mode 100644 index 43a30753a7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/alarms/alarm/index.html +++ /dev/null @@ -1,43 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

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')}}.

- -

Type

- -

Les valeurs de ce type sont des objets contenant les propriétés suivantes :

- -
-
name
-
string 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.
-
scheduledTime
-
double Un nombre qui représente l'heure à laquelle l'alarme doit être déclenchée, exprimée en nombre de millisecondes depuis epoch.
-
periodInMinutes{{optional_inline}}
-
double Un nombre qui, s'il n'est pas null, indique que l'alarme est périodique et fournit la période.
-
- -

Compatibilité des navigateur

- -

{{Compat("webextensions.api.alarms.Alarm")}}

- -

{{WebExtExamples}}

- -

Remerciements :

- -

Cette API est basée sur l'API Chromium chrome.alarms.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

\ No newline at end of file diff --git a/files/fr/mozilla/add-ons/webextensions/api/alarms/alarm/index.md b/files/fr/mozilla/add-ons/webextensions/api/alarms/alarm/index.md new file mode 100644 index 0000000000..43a30753a7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/alarm/index.md @@ -0,0 +1,43 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

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')}}.

+ +

Type

+ +

Les valeurs de ce type sont des objets contenant les propriétés suivantes :

+ +
+
name
+
string 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.
+
scheduledTime
+
double Un nombre qui représente l'heure à laquelle l'alarme doit être déclenchée, exprimée en nombre de millisecondes depuis epoch.
+
periodInMinutes{{optional_inline}}
+
double Un nombre qui, s'il n'est pas null, indique que l'alarme est périodique et fournit la période.
+
+ +

Compatibilité des navigateur

+ +

{{Compat("webextensions.api.alarms.Alarm")}}

+ +

{{WebExtExamples}}

+ +

Remerciements :

+ +

Cette API est basée sur l'API Chromium chrome.alarms.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

\ No newline at end of file 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 deleted file mode 100644 index 2895bf2486..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/alarms/clear/index.html +++ /dev/null @@ -1,57 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Cette méthode supprime une alarme à partir du nom passé en argument. Il s'agit d'une fonction asynchrone qui renvoie une {{jsxref("Promise")}}.

- -

Syntaxe

- -
var clearAlarm = browser.alarms.clear(
-  name // string
-);
-
- -

Paramètres

- -
-
name{{optional_inline}}
-
string. Le nom de l'alarme à supprimer. Si le paramètre n'est pas fourni, c'est la chaîne vide "" qui sera utilisée.
-
- -

Valeur de retour

- -

Une promesse ({{jsxref("Promise")}}) qui sera tenue avec un booléen. Ce booléen vaudra true si l'alarme a bien été effacée et false sinon.

- -

Exemples

- -
function onCleared(wasCleared) {
-  console.log(wasCleared);  // true/false
-}
-
-var clearAlarm = browser.alarms.clear("my-periodic-alarm");
-clearAlarm.then(onCleared);
- -

{{WebExtExamples}}

- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.api.alarms.clear")}}

- -

Remerciements :

- -

Cette API est basée sur l'API Chromium chrome.alarms.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

diff --git a/files/fr/mozilla/add-ons/webextensions/api/alarms/clear/index.md b/files/fr/mozilla/add-ons/webextensions/api/alarms/clear/index.md new file mode 100644 index 0000000000..2895bf2486 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/clear/index.md @@ -0,0 +1,57 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

Cette méthode supprime une alarme à partir du nom passé en argument. Il s'agit d'une fonction asynchrone qui renvoie une {{jsxref("Promise")}}.

+ +

Syntaxe

+ +
var clearAlarm = browser.alarms.clear(
+  name // string
+);
+
+ +

Paramètres

+ +
+
name{{optional_inline}}
+
string. Le nom de l'alarme à supprimer. Si le paramètre n'est pas fourni, c'est la chaîne vide "" qui sera utilisée.
+
+ +

Valeur de retour

+ +

Une promesse ({{jsxref("Promise")}}) qui sera tenue avec un booléen. Ce booléen vaudra true si l'alarme a bien été effacée et false sinon.

+ +

Exemples

+ +
function onCleared(wasCleared) {
+  console.log(wasCleared);  // true/false
+}
+
+var clearAlarm = browser.alarms.clear("my-periodic-alarm");
+clearAlarm.then(onCleared);
+ +

{{WebExtExamples}}

+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.api.alarms.clear")}}

+ +

Remerciements :

+ +

Cette API est basée sur l'API Chromium chrome.alarms.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

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 deleted file mode 100644 index 05c10b87c7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/alarms/clearall/index.html +++ /dev/null @@ -1,53 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Cette méthode supprime toutes les alarmes actives. C'est une fonction asynchrone qui renvoie une promesse {{jsxref("Promise")}}.

- -

Syntaxe

- -
var clearAlarms = browser.alarms.clearAll()
-
- -

Paramètres

- -

Aucun.

- -

Valeur de retour

- -

Une promesse ({{jsxref("Promise")}}) qui sera tenue avec une valeur booléenne. Ce dernier vaudra true si certaines alarmes ont bien été effacées et false sinon. On notera que Chrome renvoie toujours true.

- -

Exemples

- -
function onClearedAll(wasCleared) {
-  console.log(wasCleared);  // true/false
-}
-
-var clearAlarms = browser.alarms.clearAll();
-clearAlarms.then(onClearedAll);
- -

{{WebExtExamples}}

- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.api.alarms.clearAll")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.alarms.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/alarms/clearall/index.md b/files/fr/mozilla/add-ons/webextensions/api/alarms/clearall/index.md new file mode 100644 index 0000000000..05c10b87c7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/clearall/index.md @@ -0,0 +1,53 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

Cette méthode supprime toutes les alarmes actives. C'est une fonction asynchrone qui renvoie une promesse {{jsxref("Promise")}}.

+ +

Syntaxe

+ +
var clearAlarms = browser.alarms.clearAll()
+
+ +

Paramètres

+ +

Aucun.

+ +

Valeur de retour

+ +

Une promesse ({{jsxref("Promise")}}) qui sera tenue avec une valeur booléenne. Ce dernier vaudra true si certaines alarmes ont bien été effacées et false sinon. On notera que Chrome renvoie toujours true.

+ +

Exemples

+ +
function onClearedAll(wasCleared) {
+  console.log(wasCleared);  // true/false
+}
+
+var clearAlarms = browser.alarms.clearAll();
+clearAlarms.then(onClearedAll);
+ +

{{WebExtExamples}}

+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.api.alarms.clearAll")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.alarms.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 8eb55ed95a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/alarms/create/index.html +++ /dev/null @@ -1,90 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.alarms.create(
-  name,        // une valeur string optionnelle
-  alarmInfo    // une valeur object optionnelle
-)
-
- -

Paramètres

- -
-
name{{optional_inline}}
-
string. Le nom utilisé pour l'alarme. Par défaut, la chaîne utilisée sera la chaîne vide. 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é name de l'objet {{WebExtAPIRef('alarms.Alarm')}} passé au gestionnaire d'évènement. 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.
-
alarmInfo{{optional_inline}}
-
-

object. Un objet de configuration qui indique le moment du premier déclenchement comme valeur absolue (when) ou relative (delayInMinutes). Pour que l'alarme se repète, on utilisera le champ periodInMinutes.

- -

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 delayInMinutes 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 periodInMinutes avec une valeur strictement inférieure à 1, l'alarme se déclenchera alors chaque minute.

- -

L'objet alarmInfo peut contenir les propriétés suivantes :

-
-
when{{optional_inline}}
-
double. Le moment où l'alarme se déclenchera en premier. L'instant est indiquée comme une valeur absolue, exprimée en millisecondes depuis epoch. 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 delayInMinutes.
-
delayInMinutes{{optional_inline}}
-
double. 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 when.
-
periodInMinutes{{optional_inline}}
-
double. Si cette valeur est indiquée, l'alarme sera répétée périodiquement (toutes les periodInMinutes minutes) après le premier déclenchement. Si cette valeur est indiquée, il n'est pas obligatoire de fournir when ou delayInMinutes : l'alarme se déclenchera au bout de periodInMinutes. Si periodInMinutes n'est pas indiquée, l'alarme ne se déclenchera qu'une seule fois.
-
-
-
- -

Exemples

- -

Alarme vide

- -
const delayInMinutes = 5;
-
-browser.alarms.create({
-  delayInMinutes
-});
- -

Alarme relative périodique

- -
const delayInMinutes = 5;
-const periodInMinutes = 2;
-
-browser.alarms.create("my-periodic-alarm", {
-  delayInMinutes,
-  periodInMinutes
-});
- -

Alarme périodique absolue

- -
const when = 1545696000;
-const periodInMinutes = 2;
-
-browser.alarms.create("my-periodic-alarm", {
-  when,
-  periodInMinutes
-});
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.alarms.create")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.alarms.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/alarms/create/index.md b/files/fr/mozilla/add-ons/webextensions/api/alarms/create/index.md new file mode 100644 index 0000000000..8eb55ed95a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/create/index.md @@ -0,0 +1,90 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.alarms.create(
+  name,        // une valeur string optionnelle
+  alarmInfo    // une valeur object optionnelle
+)
+
+ +

Paramètres

+ +
+
name{{optional_inline}}
+
string. Le nom utilisé pour l'alarme. Par défaut, la chaîne utilisée sera la chaîne vide. 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é name de l'objet {{WebExtAPIRef('alarms.Alarm')}} passé au gestionnaire d'évènement. 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.
+
alarmInfo{{optional_inline}}
+
+

object. Un objet de configuration qui indique le moment du premier déclenchement comme valeur absolue (when) ou relative (delayInMinutes). Pour que l'alarme se repète, on utilisera le champ periodInMinutes.

+ +

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 delayInMinutes 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 periodInMinutes avec une valeur strictement inférieure à 1, l'alarme se déclenchera alors chaque minute.

+ +

L'objet alarmInfo peut contenir les propriétés suivantes :

+
+
when{{optional_inline}}
+
double. Le moment où l'alarme se déclenchera en premier. L'instant est indiquée comme une valeur absolue, exprimée en millisecondes depuis epoch. 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 delayInMinutes.
+
delayInMinutes{{optional_inline}}
+
double. 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 when.
+
periodInMinutes{{optional_inline}}
+
double. Si cette valeur est indiquée, l'alarme sera répétée périodiquement (toutes les periodInMinutes minutes) après le premier déclenchement. Si cette valeur est indiquée, il n'est pas obligatoire de fournir when ou delayInMinutes : l'alarme se déclenchera au bout de periodInMinutes. Si periodInMinutes n'est pas indiquée, l'alarme ne se déclenchera qu'une seule fois.
+
+
+
+ +

Exemples

+ +

Alarme vide

+ +
const delayInMinutes = 5;
+
+browser.alarms.create({
+  delayInMinutes
+});
+ +

Alarme relative périodique

+ +
const delayInMinutes = 5;
+const periodInMinutes = 2;
+
+browser.alarms.create("my-periodic-alarm", {
+  delayInMinutes,
+  periodInMinutes
+});
+ +

Alarme périodique absolue

+ +
const when = 1545696000;
+const periodInMinutes = 2;
+
+browser.alarms.create("my-periodic-alarm", {
+  when,
+  periodInMinutes
+});
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.alarms.create")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.alarms.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index d7f1b3624c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/alarms/get/index.html +++ /dev/null @@ -1,60 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

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")}}).

- -

Syntaxe

- -
var getAlarm = browser.alarms.get(
-  name  // optional string
-)
-
- -

Paramètres

- -
-
name{{optional_inline}}
-
string. 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 ("").
-
- -

Valeur de retour

- -

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 name. Si aucune alarme ne correspond, la valeur renvoyée sera undefined.

- -

Exemples

- -
function gotAlarm(alarm) {
-  if (alarm) {
-    console.log(alarm.name);
-  }
-}
-
-var getAlarm = browser.alarms.get("my-periodic-alarm");
-getAlarm.then(gotAlarm);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.alarms.get")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.alarms.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/alarms/get/index.md b/files/fr/mozilla/add-ons/webextensions/api/alarms/get/index.md new file mode 100644 index 0000000000..d7f1b3624c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/get/index.md @@ -0,0 +1,60 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

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")}}).

+ +

Syntaxe

+ +
var getAlarm = browser.alarms.get(
+  name  // optional string
+)
+
+ +

Paramètres

+ +
+
name{{optional_inline}}
+
string. 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 ("").
+
+ +

Valeur de retour

+ +

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 name. Si aucune alarme ne correspond, la valeur renvoyée sera undefined.

+ +

Exemples

+ +
function gotAlarm(alarm) {
+  if (alarm) {
+    console.log(alarm.name);
+  }
+}
+
+var getAlarm = browser.alarms.get("my-periodic-alarm");
+getAlarm.then(gotAlarm);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.alarms.get")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.alarms.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index c10f1ab6fd..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/alarms/getall/index.html +++ /dev/null @@ -1,57 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Obtient toutes les alarmes actives pour le poste.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getAlarms = browser.alarms.getAll()
-
- -

Paramètres

- -

Aucun

- -

Valeur de retour

- -

Une Promise dont la valeur de résolution sera un tableau d'objets Alarm. Chaque élément de ce tableau représente une alarme active de l'extension. Si aucune alarme n'est active, le tableau sera vide.

- -

Exemples

- -
function gotAll(alarms) {
-  for (var alarm of alarms) {
-    console.log(alarm.name);
-  }
-}
-
-var getAlarms = browser.alarms.getAll();
-getAlarms.then(gotAll);
- -

{{WebExtExamples}}

- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.api.alarms.getAll")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.alarms.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/alarms/getall/index.md b/files/fr/mozilla/add-ons/webextensions/api/alarms/getall/index.md new file mode 100644 index 0000000000..c10f1ab6fd --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/getall/index.md @@ -0,0 +1,57 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

Obtient toutes les alarmes actives pour le poste.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getAlarms = browser.alarms.getAll()
+
+ +

Paramètres

+ +

Aucun

+ +

Valeur de retour

+ +

Une Promise dont la valeur de résolution sera un tableau d'objets Alarm. Chaque élément de ce tableau représente une alarme active de l'extension. Si aucune alarme n'est active, le tableau sera vide.

+ +

Exemples

+ +
function gotAll(alarms) {
+  for (var alarm of alarms) {
+    console.log(alarm.name);
+  }
+}
+
+var getAlarms = browser.alarms.getAll();
+getAlarms.then(gotAll);
+ +

{{WebExtExamples}}

+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.api.alarms.getAll")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.alarms.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
diff --git a/files/fr/mozilla/add-ons/webextensions/api/alarms/index.html b/files/fr/mozilla/add-ons/webextensions/api/alarms/index.html deleted file mode 100644 index 7b49da9e46..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/alarms/index.html +++ /dev/null @@ -1,60 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Programmer le code pour qu'il soit exécuté à un moment précis dans le futur. C'est comme setTimeout() and setInterval() 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

- -

Pour pouvoir utiliser cette API, vous devez disposer de la permission "alarms".

- -

Types

- -
-
{{WebExtAPIRef("alarms.Alarm")}}
-
Ce type permet d'obtenir des informations à propos d'une alarme donnée.
-
- -

Méthodes

- -
-
{{WebExtAPIRef("alarms.create()")}}
-
Cette fonction permet de créer une nouvelle alarme.
-
{{WebExtAPIRef("alarms.get()")}}
-
Cette fonction permet de récupérer une alarme donnée en fonction de son nom.
-
{{WebExtAPIRef("alarms.getAll()")}}
-
Cette fonction permet de récupérer l'ensemble des alarmes qui sont planifiées.
-
{{WebExtAPIRef("alarms.clear()")}}
-
Cette fonction permet de supprimer une alarme donnée en fonction de son nom.
-
{{WebExtAPIRef("alarms.clearAll()")}}
-
Cette fonction permet de supprimer l'ensemble des alarmes qui sont planifiées.
-
- -

Évènements

- -
-
{{WebExtAPIRef("alarms.onAlarm")}}
-
Cet évènement est déclenché lorsque l'alarme s'éteint.
-
- -

{{WebExtExamples("h2")}}

- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.api.alarms")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.alarms.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/alarms/index.md b/files/fr/mozilla/add-ons/webextensions/api/alarms/index.md new file mode 100644 index 0000000000..7b49da9e46 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Programmer le code pour qu'il soit exécuté à un moment précis dans le futur. C'est comme setTimeout() and setInterval() 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

+ +

Pour pouvoir utiliser cette API, vous devez disposer de la permission "alarms".

+ +

Types

+ +
+
{{WebExtAPIRef("alarms.Alarm")}}
+
Ce type permet d'obtenir des informations à propos d'une alarme donnée.
+
+ +

Méthodes

+ +
+
{{WebExtAPIRef("alarms.create()")}}
+
Cette fonction permet de créer une nouvelle alarme.
+
{{WebExtAPIRef("alarms.get()")}}
+
Cette fonction permet de récupérer une alarme donnée en fonction de son nom.
+
{{WebExtAPIRef("alarms.getAll()")}}
+
Cette fonction permet de récupérer l'ensemble des alarmes qui sont planifiées.
+
{{WebExtAPIRef("alarms.clear()")}}
+
Cette fonction permet de supprimer une alarme donnée en fonction de son nom.
+
{{WebExtAPIRef("alarms.clearAll()")}}
+
Cette fonction permet de supprimer l'ensemble des alarmes qui sont planifiées.
+
+ +

Évènements

+ +
+
{{WebExtAPIRef("alarms.onAlarm")}}
+
Cet évènement est déclenché lorsque l'alarme s'éteint.
+
+ +

{{WebExtExamples("h2")}}

+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.api.alarms")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.alarms.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 46742021b9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/alarms/onalarm/index.html +++ /dev/null @@ -1,77 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Cet évènement est déclenché lorsque l'alarme se déclenche.

- -

Syntaxe

- -
browser.alarms.onAlarm.addListener(listener)
-browser.alarms.onAlarm.removeListener(listener)
-browser.alarms.onAlarm.hasListener(listener)
-
- -

Cet évènement possède trois méthodes :

- -
-
addListener(listener)
-
Cette méthode ajoute un gestionnaire à l'évènement.
-
removeListener(listener)
-
Cette méthode retire le gestionnaire d'évènement passé en argument.
-
hasListener(listener)
-
Cette méthode permet de vérifier si le gestionnaire d'évènement passé en argument est enregistré : elle renvoie true s'il est déjà présent et false sinon.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
listener
-
-

La fonction qui sera appelée lorsque l'événement se produira. La fonction recevra les arguments suivants :

- -
-
alarm
-
{{WebExtAPIRef('alarms.Alarm')}}. L'alarme qui s'est déclenchée. La propriété Alarm.name pourra être utilisée afin de déterminer l'alarme qui s'est déclenchée.
-
-
-
- -

Exemples

- -

Voici un exemple illustrant ce qui se produit quand l'alarme se déclenche

- -
function handleAlarm(alarmInfo) {
-  console.log("L'alarme " + alarmInfo.name + " s'est déclenchée");
-}
-
-browser.alarms.onAlarm.addListener(handleAlarm);
- -

{{WebExtExamples}}

- - - -

Compatibilité des navigateurs

- -

{{Compat("webextensions.api.alarms.onAlarm")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.alarms.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/alarms/onalarm/index.md b/files/fr/mozilla/add-ons/webextensions/api/alarms/onalarm/index.md new file mode 100644 index 0000000000..46742021b9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/alarms/onalarm/index.md @@ -0,0 +1,77 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

Cet évènement est déclenché lorsque l'alarme se déclenche.

+ +

Syntaxe

+ +
browser.alarms.onAlarm.addListener(listener)
+browser.alarms.onAlarm.removeListener(listener)
+browser.alarms.onAlarm.hasListener(listener)
+
+ +

Cet évènement possède trois méthodes :

+ +
+
addListener(listener)
+
Cette méthode ajoute un gestionnaire à l'évènement.
+
removeListener(listener)
+
Cette méthode retire le gestionnaire d'évènement passé en argument.
+
hasListener(listener)
+
Cette méthode permet de vérifier si le gestionnaire d'évènement passé en argument est enregistré : elle renvoie true s'il est déjà présent et false sinon.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
listener
+
+

La fonction qui sera appelée lorsque l'événement se produira. La fonction recevra les arguments suivants :

+ +
+
alarm
+
{{WebExtAPIRef('alarms.Alarm')}}. L'alarme qui s'est déclenchée. La propriété Alarm.name pourra être utilisée afin de déterminer l'alarme qui s'est déclenchée.
+
+
+
+ +

Exemples

+ +

Voici un exemple illustrant ce qui se produit quand l'alarme se déclenche

+ +
function handleAlarm(alarmInfo) {
+  console.log("L'alarme " + alarmInfo.name + " s'est déclenchée");
+}
+
+browser.alarms.onAlarm.addListener(handleAlarm);
+ +

{{WebExtExamples}}

+ + + +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.api.alarms.onAlarm")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.alarms.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index c7e94d7184..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenode/index.html +++ /dev/null @@ -1,89 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet de type bookmarks.BookmarkTreeNode 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 index dans leurs dossiers parents respectifs.

- -

Type

- -

Un {{jsxref("object")}} avec les propriétés suivantes :

- -
-
children {{optional_inline}}
-
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.
-
dateAdded {{optional_inline}}
-
Un nombre représentant la date de création du noeud en millisecondes depuis l'époque.
-
dateGroupModified {{optional_inline}}
-
Un nombre représentant la date et l'heure de la dernière modification du contenu de ce dossier, en millisecondes depuis l'époque.
-
id
-
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.
-
index {{optional_inline}}
-
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.
-
parentId {{optional_inline}}
-
Un {{jsxref("string")}} qui spécifie l'ID du dossier parent. Cette propriété n'est pas présente dans le noeud racine.
-
title
-
Un {{jsxref("string")}} qui contient le texte affiché pour le nœud dans les menus et les listes de signets.
-
type{{optional_inline}}
-
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 "bookmark" sauf si l'url est omise, auquel cas elle est par défaut "folder".
-
unmodifiable {{optional_inline}}
-
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.
-
url {{optional_inline}}
-
Un {{jsxref("string")}} qui représente l'URL du signet. Si le nœud représente un dossier, cette propriété est omise.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.BookmarkTreeNode", 10)}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenode/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenode/index.md new file mode 100644 index 0000000000..c7e94d7184 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenode/index.md @@ -0,0 +1,89 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet de type bookmarks.BookmarkTreeNode 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 index dans leurs dossiers parents respectifs.

+ +

Type

+ +

Un {{jsxref("object")}} avec les propriétés suivantes :

+ +
+
children {{optional_inline}}
+
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.
+
dateAdded {{optional_inline}}
+
Un nombre représentant la date de création du noeud en millisecondes depuis l'époque.
+
dateGroupModified {{optional_inline}}
+
Un nombre représentant la date et l'heure de la dernière modification du contenu de ce dossier, en millisecondes depuis l'époque.
+
id
+
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.
+
index {{optional_inline}}
+
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.
+
parentId {{optional_inline}}
+
Un {{jsxref("string")}} qui spécifie l'ID du dossier parent. Cette propriété n'est pas présente dans le noeud racine.
+
title
+
Un {{jsxref("string")}} qui contient le texte affiché pour le nœud dans les menus et les listes de signets.
+
type{{optional_inline}}
+
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 "bookmark" sauf si l'url est omise, auquel cas elle est par défaut "folder".
+
unmodifiable {{optional_inline}}
+
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.
+
url {{optional_inline}}
+
Un {{jsxref("string")}} qui représente l'URL du signet. Si le nœud représente un dossier, cette propriété est omise.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.BookmarkTreeNode", 10)}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 13419e4584..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodetype/index.html +++ /dev/null @@ -1,33 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type bookmarks.BookmarkTreeNodeType est utilisé pour décrire si un nœud de l'arborescence de signets est un signet, un dossier ou un séparateur.

- -

Type

- -

bookmarks.BookmarkTreeNodeType est un {{jsxref("string")}}qui peut avoir l'une des trois valeurs suivantes :

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.BookmarkTreeNodeType", 10)}}

- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodetype/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodetype/index.md new file mode 100644 index 0000000000..13419e4584 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodetype/index.md @@ -0,0 +1,33 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type bookmarks.BookmarkTreeNodeType est utilisé pour décrire si un nœud de l'arborescence de signets est un signet, un dossier ou un séparateur.

+ +

Type

+ +

bookmarks.BookmarkTreeNodeType est un {{jsxref("string")}}qui peut avoir l'une des trois valeurs suivantes :

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.BookmarkTreeNodeType", 10)}}

+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 28a6704fa7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodeunmodifiable/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un type bookmarks.BookmarkTreeNodeUnmodifiable 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.

- -

Type

- -

bookmarks.BookmarkTreeNodeUnmodifiable est un {{jsxref("string")}} qui ne peut actuellement avoir qu'une seule valeur : "managed". 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).

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.BookmarkTreeNodeUnmodifiable")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodeunmodifiable/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodeunmodifiable/index.md new file mode 100644 index 0000000000..28a6704fa7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/bookmarktreenodeunmodifiable/index.md @@ -0,0 +1,66 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un type bookmarks.BookmarkTreeNodeUnmodifiable 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.

+ +

Type

+ +

bookmarks.BookmarkTreeNodeUnmodifiable est un {{jsxref("string")}} qui ne peut actuellement avoir qu'une seule valeur : "managed". 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).

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.BookmarkTreeNodeUnmodifiable")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 78c196778d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/create/index.html +++ /dev/null @@ -1,101 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Crée un signet ou un dossier en tant qu'enfant de {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} avec  parentId spécifié. Pour créer un dossier, omettez ou laissez vide le paramètre  {{WebExtAPIRef("bookmarks.CreateDetails", "CreateDetails", "url")}}.

- -
-

Attention : 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: "La racine du signet ne peut pas être modifiée" et le signet ne sera pas créé.

-
- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var createBookmark = browser.bookmarks.create(
-  bookmark                  // CreateDetails object
-)
-
- -

Paramètres

- -
-
bookmark
-
Un objet {{WebExtAPIRef("bookmarks.CreateDetails")}}.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un {{WebExtAPIRef('bookmarks.BookmarkTreeNode', 'BookmarkTreeNode')}} qui décrit le nouveau noeud de marque pages.

- -

Exemples

- -

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).

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.create")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/create/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/create/index.md new file mode 100644 index 0000000000..78c196778d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/create/index.md @@ -0,0 +1,101 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Crée un signet ou un dossier en tant qu'enfant de {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} avec  parentId spécifié. Pour créer un dossier, omettez ou laissez vide le paramètre  {{WebExtAPIRef("bookmarks.CreateDetails", "CreateDetails", "url")}}.

+ +
+

Attention : 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: "La racine du signet ne peut pas être modifiée" et le signet ne sera pas créé.

+
+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var createBookmark = browser.bookmarks.create(
+  bookmark                  // CreateDetails object
+)
+
+ +

Paramètres

+ +
+
bookmark
+
Un objet {{WebExtAPIRef("bookmarks.CreateDetails")}}.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un {{WebExtAPIRef('bookmarks.BookmarkTreeNode', 'BookmarkTreeNode')}} qui décrit le nouveau noeud de marque pages.

+ +

Exemples

+ +

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).

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.create")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 95c51c4da7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/createdetails/index.html +++ /dev/null @@ -1,79 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type CreateDetails 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()")}}.

- -

Type

- -

Un {{jsxref("object")}} contenant une combinaison des champs suivants :

- -
-
index {{optional_inline}}
-
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.
-
parentId {{optional_inline}}
-
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.
-
title {{optional_inline}}
-
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 "".
-
type{{optional_inline}}
-
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 "bookmark" sauf si l'url est omise, auquel cas elle est par défaut "folder".
-
url {{optional_inline}}
-
string. Un {{jsxref("string")}} qui spécifie l'URL de la page à mettre en signet. Si ceci est omis ou est null, un dossier est créé à la place d'un signet.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.CreateDetails", 10)}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/createdetails/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/createdetails/index.md new file mode 100644 index 0000000000..95c51c4da7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/createdetails/index.md @@ -0,0 +1,79 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type CreateDetails 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()")}}.

+ +

Type

+ +

Un {{jsxref("object")}} contenant une combinaison des champs suivants :

+ +
+
index {{optional_inline}}
+
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.
+
parentId {{optional_inline}}
+
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.
+
title {{optional_inline}}
+
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 "".
+
type{{optional_inline}}
+
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 "bookmark" sauf si l'url est omise, auquel cas elle est par défaut "folder".
+
url {{optional_inline}}
+
string. Un {{jsxref("string")}} qui spécifie l'URL de la page à mettre en signet. Si ceci est omis ou est null, un dossier est créé à la place d'un signet.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.CreateDetails", 10)}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index d2d2a6f475..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/get/index.html +++ /dev/null @@ -1,97 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Étant donné l'ID d'un {{WebExtAPIRef("bookmarks.BookmarkTreeNode")}} ou d'un tableau de ces ID, la méthode bookmarks.get() récupère les nœuds correspondants.

- -

C'est une fonction asynchrone qui renvoie une {{jsxref("promise")}}.

- -

Syntaxe

- -
var getBookmarks = browser.bookmarks.get(
-  idOrIdList                // string or string array
-)
-
- -

Paramètres

- -
-
idOrIdList
-
string 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.
-
- -

Valeur retournée

- -

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.

- -

Exemples

- -

Cet exemple essaie d'obtenir le signet dont l'ID est bookmarkAAAA. Si aucun signet avec cet ID n'existe, onRejected est appelé :

- -
function onFulfilled(bookmarks) {
-  console.log(bookmarks);
-}
-
-function onRejected(error) {
-  console.log(`An error: ${error}`);
-}
-
-var gettingBookmarks = browser.bookmarks.get("bookmarkAAAA");
-gettingBookmarks.then(onFulfilled, onRejected);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.get")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/get/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/get/index.md new file mode 100644 index 0000000000..d2d2a6f475 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/get/index.md @@ -0,0 +1,97 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Étant donné l'ID d'un {{WebExtAPIRef("bookmarks.BookmarkTreeNode")}} ou d'un tableau de ces ID, la méthode bookmarks.get() récupère les nœuds correspondants.

+ +

C'est une fonction asynchrone qui renvoie une {{jsxref("promise")}}.

+ +

Syntaxe

+ +
var getBookmarks = browser.bookmarks.get(
+  idOrIdList                // string or string array
+)
+
+ +

Paramètres

+ +
+
idOrIdList
+
string 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.
+
+ +

Valeur retournée

+ +

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.

+ +

Exemples

+ +

Cet exemple essaie d'obtenir le signet dont l'ID est bookmarkAAAA. Si aucun signet avec cet ID n'existe, onRejected est appelé :

+ +
function onFulfilled(bookmarks) {
+  console.log(bookmarks);
+}
+
+function onRejected(error) {
+  console.log(`An error: ${error}`);
+}
+
+var gettingBookmarks = browser.bookmarks.get("bookmarkAAAA");
+gettingBookmarks.then(onFulfilled, onRejected);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.get")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 6738cbe514..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getchildren/index.html +++ /dev/null @@ -1,99 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

bookmarks.getChildren() récupère tous les enfants immédiats d'un dossier de signets donné, identifié comme {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} ID.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingChildren = browser.bookmarks.getChildren(
-  id                     // string
-)
-
- -

Paramètres

- -
-
id
-
Un {{jsxref("string")}} qui spécifie l'ID du dossier dont les enfants doivent être récupérés.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un tableau d'objets BookmarkTreeNode. 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.

- -

Si le noeud spécifié n'a pas d'enfants, le tableau est vide.Si le noeud identifié par id n'est pas trouvé, la promise est rejetée avec un message d'erreur.

- -

Exemples

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.getChildren")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getchildren/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getchildren/index.md new file mode 100644 index 0000000000..6738cbe514 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getchildren/index.md @@ -0,0 +1,99 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

bookmarks.getChildren() récupère tous les enfants immédiats d'un dossier de signets donné, identifié comme {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} ID.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingChildren = browser.bookmarks.getChildren(
+  id                     // string
+)
+
+ +

Paramètres

+ +
+
id
+
Un {{jsxref("string")}} qui spécifie l'ID du dossier dont les enfants doivent être récupérés.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un tableau d'objets BookmarkTreeNode. 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.

+ +

Si le noeud spécifié n'a pas d'enfants, le tableau est vide.Si le noeud identifié par id n'est pas trouvé, la promise est rejetée avec un message d'erreur.

+ +

Exemples

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.getChildren")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index a8e59ca423..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getrecent/index.html +++ /dev/null @@ -1,99 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La méthode bookmarks.getRecent() 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')}}.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingRecent = browser.bookmarks.getRecent(
-  numberOfItems          // integer
-)
-
- -

Paramètres

- -
-
numberOfItems
-
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.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un tableau d'objets BookmarkTreeNode.

- -

Exemples

- -

Cet exemple enregistre l'URL du dernier signet ajouté :

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.getRecent")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getrecent/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getrecent/index.md new file mode 100644 index 0000000000..a8e59ca423 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getrecent/index.md @@ -0,0 +1,99 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La méthode bookmarks.getRecent() 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')}}.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingRecent = browser.bookmarks.getRecent(
+  numberOfItems          // integer
+)
+
+ +

Paramètres

+ +
+
numberOfItems
+
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.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un tableau d'objets BookmarkTreeNode.

+ +

Exemples

+ +

Cet exemple enregistre l'URL du dernier signet ajouté :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.getRecent")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 023c3a7368..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getsubtree/index.html +++ /dev/null @@ -1,119 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La méthode bookmarks.getSubTree() récupère de façon asynchrone un {{WebExtAPIRef("bookmarks.BookmarkTreeNode")}}, étant donné son ID.

- -

Si l'élément est un dossier, vous pouvez accéder à tous ses descendants de manière récursive en utilisant sa propriété children et la propriété children de ses descendants, s'ils sont eux-mêmes des dossiers.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingSubTree = browser.bookmarks.getSubTree(
-  id                     // string
-)
-
- -

Paramètres

- -
-
id
-
Un {{jsxref("string")}} spécifiant l'ID de la racine du sous-arbre à récupérer.
-
- -

Valeur retournée

- -

Une Promise 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 à id n'a pas pu être trouvé, la promesse sera rejetée avec un message d'erreur.

- -

Exemples

- -

Cet exemple imprime récursivement le sous-arbre sous un noeud donné :

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.getSubTree")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getsubtree/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getsubtree/index.md new file mode 100644 index 0000000000..023c3a7368 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/getsubtree/index.md @@ -0,0 +1,119 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La méthode bookmarks.getSubTree() récupère de façon asynchrone un {{WebExtAPIRef("bookmarks.BookmarkTreeNode")}}, étant donné son ID.

+ +

Si l'élément est un dossier, vous pouvez accéder à tous ses descendants de manière récursive en utilisant sa propriété children et la propriété children de ses descendants, s'ils sont eux-mêmes des dossiers.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingSubTree = browser.bookmarks.getSubTree(
+  id                     // string
+)
+
+ +

Paramètres

+ +
+
id
+
Un {{jsxref("string")}} spécifiant l'ID de la racine du sous-arbre à récupérer.
+
+ +

Valeur retournée

+ +

Une Promise 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 à id n'a pas pu être trouvé, la promesse sera rejetée avec un message d'erreur.

+ +

Exemples

+ +

Cet exemple imprime récursivement le sous-arbre sous un noeud donné :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.getSubTree")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index a1e8033e89..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/gettree/index.html +++ /dev/null @@ -1,114 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

bookmarks.getTree() renvoie un tableau contenant la racine de l'arborescence des signets en tant qu'objet {{WebExtAPIRef("bookmarks.BookmarkTreeNode")}}.

- -

Vous pouvez accéder à l'intégralité de l'arborescence de manière récursive en utilisant sa propriété children et la propriété children de ses descendants, s'ils sont eux-mêmes des dossiers.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingTree = browser.bookmarks.getTree()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui sera remplie avec un tableau contenant un objet, un objet  bookmarks.BookmarkTreeNode le noeud racine.

- -

Exemples

- -

Cet exemple imprime l'intégralité de l'arborescence des signets :

- -
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);
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.getTree")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/gettree/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/gettree/index.md new file mode 100644 index 0000000000..a1e8033e89 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/gettree/index.md @@ -0,0 +1,114 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

bookmarks.getTree() renvoie un tableau contenant la racine de l'arborescence des signets en tant qu'objet {{WebExtAPIRef("bookmarks.BookmarkTreeNode")}}.

+ +

Vous pouvez accéder à l'intégralité de l'arborescence de manière récursive en utilisant sa propriété children et la propriété children de ses descendants, s'ils sont eux-mêmes des dossiers.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingTree = browser.bookmarks.getTree()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un tableau contenant un objet, un objet  bookmarks.BookmarkTreeNode le noeud racine.

+ +

Exemples

+ +

Cet exemple imprime l'intégralité de l'arborescence des signets :

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.getTree")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/index.html b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/index.html deleted file mode 100644 index b935b48f56..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/index.html +++ /dev/null @@ -1,124 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

L’API de la WebExtensions {{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.

- -

Pour utiliser cette API, une extension doit demander la permission « bookmarks » dans son fichier manifest.json.

- -

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: "La racine du signet ne peut pas être modifiée"

- -

Les Types

- -
-
{{WebExtAPIRef("bookmarks.BookmarkTreeNode")}}
-
Représente un marque-page ou un dossier dans l'arborescence des marque-pages.
-
{{WebExtAPIRef("bookmarks.BookmarkTreeNodeType")}}
-
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.
-
{{WebExtAPIRef("bookmarks.BookmarkTreeNodeUnmodifiable")}}
-
Un {{jsxref("String")}} énumère ce qui spécifie pourquoi un marque-page ou un dossier n’est pas possible.
-
{{WebExtAPIRef("bookmarks.CreateDetails")}}
-
Contient des informations passées à la fonction {{WebExtAPIRef("bookmarks.create()")}} lors de la création d’un nouveau marque-page.
-
- -

Les fonctions

- -
-
{{WebExtAPIRef("bookmarks.create()")}}
-
Créer un marque-page ou un dossier.
-
{{WebExtAPIRef("bookmarks.get()")}}
-
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.
-
{{WebExtAPIRef("bookmarks.getChildren()")}}
-
Récupère les enfants spécifiés {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}}.
-
{{WebExtAPIRef("bookmarks.getRecent()")}}
-
Récupère un nombre demandé de marque-page récemment ajoutés.
-
{{WebExtAPIRef("bookmarks.getSubTree()")}}
-
Récupère un nombre demandé de favoris récemment ajoutés.
-
{{WebExtAPIRef("bookmarks.getTree()")}}
-
Récupère l’intégralité de l’arborescence des marques pages dans un tableau d’objets  {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}}.
-
{{WebExtAPIRef("bookmarks.move()")}}
-
Déplace le {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} vers un nouvel emplacement dans l’arborescence de marque-pages.
-
{{WebExtAPIRef("bookmarks.remove()")}}
-
Supprime un marque page ou un dossier de marque-pages vide, en fonction de l’ID du noeud.
-
{{WebExtAPIRef("bookmarks.removeTree()")}}
-
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.
-
{{WebExtAPIRef("bookmarks.search()")}}
-
Recherche {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} une correspondant à un ensemble de critères spécifié.
-
{{WebExtAPIRef("bookmarks.update()")}}
-
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.
-
- -

Events

- -
-
{{WebExtAPIRef("bookmarks.onCreated")}}
-
Déclenché lorsqu’un marque-page ou un dossier est créé.
-
{{WebExtAPIRef("bookmarks.onRemoved")}}
-
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.
-
{{WebExtAPIRef("bookmarks.onChanged")}}
-
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.
-
{{WebExtAPIRef("bookmarks.onMoved")}}
-
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.
-
{{WebExtAPIRef("bookmarks.onChildrenReordered")}}
-
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()")}}.
-
{{WebExtAPIRef("bookmarks.onImportBegan")}}
-
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.
-
{{WebExtAPIRef("bookmarks.onImportEnded")}}
-
Déclenché lorsqu’une session d’importation de marque-pages est terminée.
-
- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.api.bookmarks")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l’API Chromium chrome.bookmarks. Cette documentation provient de bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/index.md new file mode 100644 index 0000000000..b935b48f56 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/index.md @@ -0,0 +1,124 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

L’API de la WebExtensions {{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.

+ +

Pour utiliser cette API, une extension doit demander la permission « bookmarks » dans son fichier manifest.json.

+ +

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: "La racine du signet ne peut pas être modifiée"

+ +

Les Types

+ +
+
{{WebExtAPIRef("bookmarks.BookmarkTreeNode")}}
+
Représente un marque-page ou un dossier dans l'arborescence des marque-pages.
+
{{WebExtAPIRef("bookmarks.BookmarkTreeNodeType")}}
+
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.
+
{{WebExtAPIRef("bookmarks.BookmarkTreeNodeUnmodifiable")}}
+
Un {{jsxref("String")}} énumère ce qui spécifie pourquoi un marque-page ou un dossier n’est pas possible.
+
{{WebExtAPIRef("bookmarks.CreateDetails")}}
+
Contient des informations passées à la fonction {{WebExtAPIRef("bookmarks.create()")}} lors de la création d’un nouveau marque-page.
+
+ +

Les fonctions

+ +
+
{{WebExtAPIRef("bookmarks.create()")}}
+
Créer un marque-page ou un dossier.
+
{{WebExtAPIRef("bookmarks.get()")}}
+
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.
+
{{WebExtAPIRef("bookmarks.getChildren()")}}
+
Récupère les enfants spécifiés {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}}.
+
{{WebExtAPIRef("bookmarks.getRecent()")}}
+
Récupère un nombre demandé de marque-page récemment ajoutés.
+
{{WebExtAPIRef("bookmarks.getSubTree()")}}
+
Récupère un nombre demandé de favoris récemment ajoutés.
+
{{WebExtAPIRef("bookmarks.getTree()")}}
+
Récupère l’intégralité de l’arborescence des marques pages dans un tableau d’objets  {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}}.
+
{{WebExtAPIRef("bookmarks.move()")}}
+
Déplace le {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} vers un nouvel emplacement dans l’arborescence de marque-pages.
+
{{WebExtAPIRef("bookmarks.remove()")}}
+
Supprime un marque page ou un dossier de marque-pages vide, en fonction de l’ID du noeud.
+
{{WebExtAPIRef("bookmarks.removeTree()")}}
+
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.
+
{{WebExtAPIRef("bookmarks.search()")}}
+
Recherche {{WebExtAPIRef("bookmarks.BookmarkTreeNode", "BookmarkTreeNode")}} une correspondant à un ensemble de critères spécifié.
+
{{WebExtAPIRef("bookmarks.update()")}}
+
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.
+
+ +

Events

+ +
+
{{WebExtAPIRef("bookmarks.onCreated")}}
+
Déclenché lorsqu’un marque-page ou un dossier est créé.
+
{{WebExtAPIRef("bookmarks.onRemoved")}}
+
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.
+
{{WebExtAPIRef("bookmarks.onChanged")}}
+
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.
+
{{WebExtAPIRef("bookmarks.onMoved")}}
+
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.
+
{{WebExtAPIRef("bookmarks.onChildrenReordered")}}
+
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()")}}.
+
{{WebExtAPIRef("bookmarks.onImportBegan")}}
+
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.
+
{{WebExtAPIRef("bookmarks.onImportEnded")}}
+
Déclenché lorsqu’une session d’importation de marque-pages est terminée.
+
+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.api.bookmarks")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l’API Chromium chrome.bookmarks. Cette documentation provient de bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index cb8f56ae57..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/move/index.html +++ /dev/null @@ -1,116 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La méthode bookmarks.move() 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.

- -
-

Attention : 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: "La racine du signet ne peut pas être modifiée" et le déplacement ne sera pas terminé.

-
- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var movingBookmark = browser.bookmarks.move(
-  id,                    // string
-  destination           // object
-)
-
- -

Paramètres :

- -
-
id
-
Un {{jsxref("string")}} contenant l'ID du signet ou du dossier à déplacer.
-
destination
-

Un {{jsxref("object")}} qui spécifie la destination du signet. Cet objet doit contenir un ou les deux champs suivants :

- -
-
parentId {{optional_inline}}
-
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.
-
index {{optional_inline}}
-
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..
-
-
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un seul objet bookmarks.BookmarkTreeNode  décrivant le noeud déplacé.Si le noeud correspondant au paramètre id ne peut pas être trouvé, la promesse est rejetée avec un message d'erreur.

- -

Exemples

- -

Cet exemple déplace un signet afin qu'il soit le premier signet dans son dossier actuel.

- -
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);
- -

{{WebExtExamples}}

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.move")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/move/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/move/index.md new file mode 100644 index 0000000000..cb8f56ae57 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/move/index.md @@ -0,0 +1,116 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La méthode bookmarks.move() 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.

+ +
+

Attention : 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: "La racine du signet ne peut pas être modifiée" et le déplacement ne sera pas terminé.

+
+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var movingBookmark = browser.bookmarks.move(
+  id,                    // string
+  destination           // object
+)
+
+ +

Paramètres :

+ +
+
id
+
Un {{jsxref("string")}} contenant l'ID du signet ou du dossier à déplacer.
+
destination
+

Un {{jsxref("object")}} qui spécifie la destination du signet. Cet objet doit contenir un ou les deux champs suivants :

+ +
+
parentId {{optional_inline}}
+
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.
+
index {{optional_inline}}
+
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..
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un seul objet bookmarks.BookmarkTreeNode  décrivant le noeud déplacé.Si le noeud correspondant au paramètre id ne peut pas être trouvé, la promesse est rejetée avec un message d'erreur.

+ +

Exemples

+ +

Cet exemple déplace un signet afin qu'il soit le premier signet dans son dossier actuel.

+ +
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);
+ +

{{WebExtExamples}}

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.move")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 50b31946cd..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchanged/index.html +++ /dev/null @@ -1,129 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Mise en place quand il y a un changement à :

- - - -

Syntaxe

- -
browser.bookmarks.onChanged.addListener(listener)
-browser.bookmarks.onChanged.removeListener(listener)
-browser.bookmarks.onChanged.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
id
-
string. ID de l'article qui a changé.
-
- -
-
changeInfo
-
object. Objet contenant deux propriétés : title, une chaîne contenant le titre de l'élément et url, une chaîne contenant l'URL de l'élément. Si l'élément est un dossier, l'url est omise.
-
-
-
- -
-

Note : 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'url d'un signet change, le changeInfo ne peut contenir que les nouvelles informations de l'url.

-
- -

Exemples

- -
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);
-
- -

{{WebExtExamples}}

- - - - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.onChanged")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchanged/index.md new file mode 100644 index 0000000000..50b31946cd --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchanged/index.md @@ -0,0 +1,129 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

Mise en place quand il y a un changement à :

+ + + +

Syntaxe

+ +
browser.bookmarks.onChanged.addListener(listener)
+browser.bookmarks.onChanged.removeListener(listener)
+browser.bookmarks.onChanged.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
id
+
string. ID de l'article qui a changé.
+
+ +
+
changeInfo
+
object. Objet contenant deux propriétés : title, une chaîne contenant le titre de l'élément et url, une chaîne contenant l'URL de l'élément. Si l'élément est un dossier, l'url est omise.
+
+
+
+ +
+

Note : 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'url d'un signet change, le changeInfo ne peut contenir que les nouvelles informations de l'url.

+
+ +

Exemples

+ +
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);
+
+ +

{{WebExtExamples}}

+ + + + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.onChanged")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e6d6097773..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchildrenreordered/index.html +++ /dev/null @@ -1,124 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.bookmarks.onChildrenReordered.addListener(listener)
-browser.bookmarks.onChildrenReordered.removeListener(listener)
-browser.bookmarks.onChildrenReordered.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Synatxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera très semblable à cet événement. La fonction suivante les arguments suivants :

- -
-
id
-
string. ID du dossier dont les enfants ont été réorganisés.
-
- -
-
reorderInfo
-
object. Objet contenant des objets supplémentaires.
-
-
-
- -

Objets supplémentaires

- -

reorderInfo

- -
-
childIds
-
array de string. 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.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.onChildrenReordered")}}

- -

Exemples

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchildrenreordered/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchildrenreordered/index.md new file mode 100644 index 0000000000..e6d6097773 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onchildrenreordered/index.md @@ -0,0 +1,124 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.bookmarks.onChildrenReordered.addListener(listener)
+browser.bookmarks.onChildrenReordered.removeListener(listener)
+browser.bookmarks.onChildrenReordered.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Synatxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera très semblable à cet événement. La fonction suivante les arguments suivants :

+ +
+
id
+
string. ID du dossier dont les enfants ont été réorganisés.
+
+ +
+
reorderInfo
+
object. Objet contenant des objets supplémentaires.
+
+
+
+ +

Objets supplémentaires

+ +

reorderInfo

+ +
+
childIds
+
array de string. 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.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.onChildrenReordered")}}

+ +

Exemples

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 92cb03124e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/oncreated/index.html +++ /dev/null @@ -1,110 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'un élément de signet (un signet ou un dossier) est créé.

- -

Syntaxe

- -
browser.bookmarks.onCreated.addListener()
-browser.bookmarks.onCreated.removeListener(listener)
-browser.bookmarks.onCreated.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
id
-
string. L'ID du nouvel élément de favori.
-
- -
-
bookmark
-
{{WebExtAPIRef('bookmarks.BookmarkTreeNode')}}. Informations sur le nouvel élément de favori.
-
-
-
- -

Exemples

- -
function handleCreated(id, bookmarkInfo) {
-  console.log(`New bookmark ID: ${id}`);
-  console.log(`New bookmark URL: ${bookmarkInfo.url}`);
-}
-
-browser.bookmarks.onCreated.addListener(handleCreated);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.onCreated")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/oncreated/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/oncreated/index.md new file mode 100644 index 0000000000..92cb03124e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/oncreated/index.md @@ -0,0 +1,110 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'un élément de signet (un signet ou un dossier) est créé.

+ +

Syntaxe

+ +
browser.bookmarks.onCreated.addListener()
+browser.bookmarks.onCreated.removeListener(listener)
+browser.bookmarks.onCreated.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
id
+
string. L'ID du nouvel élément de favori.
+
+ +
+
bookmark
+
{{WebExtAPIRef('bookmarks.BookmarkTreeNode')}}. Informations sur le nouvel élément de favori.
+
+
+
+ +

Exemples

+ +
function handleCreated(id, bookmarkInfo) {
+  console.log(`New bookmark ID: ${id}`);
+  console.log(`New bookmark URL: ${bookmarkInfo.url}`);
+}
+
+browser.bookmarks.onCreated.addListener(handleCreated);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.onCreated")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 4c2a02eabe..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportbegan/index.html +++ /dev/null @@ -1,111 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsque le navigateur a commencé à importer un ensemble de signet.

- -

Pendant l'importation d'un ensemble de signets, {{WebExtAPIRef("bookmarks.onCreated", "onCreated")}} peut déclencher plusieurs fois. Si votre extension écoute onCreated, et que l'écouteur est cher, vous devez également écouter onImportBegan et {{WebExtAPIRef("bookmarks.onImportEnded", "onImportEnded")}}. Lorsque vous recevez onImportBegan, ignorez onCreated jusqu'à ce que vous receviez onImportEnded. Vous pouvez gérer toutes les autres notifications comme d'habitude.

- -

Syntaxe

- -
browser.bookmarks.onImportBegan.addListener(listener)
-browser.bookmarks.onImportBegan.removeListener(listener)
-browser.bookmarks.onImportBegan.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Parameters

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. Il n'y a pas de paramètres.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.onImportBegan")}}

- -

Exemples

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportbegan/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportbegan/index.md new file mode 100644 index 0000000000..4c2a02eabe --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportbegan/index.md @@ -0,0 +1,111 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque le navigateur a commencé à importer un ensemble de signet.

+ +

Pendant l'importation d'un ensemble de signets, {{WebExtAPIRef("bookmarks.onCreated", "onCreated")}} peut déclencher plusieurs fois. Si votre extension écoute onCreated, et que l'écouteur est cher, vous devez également écouter onImportBegan et {{WebExtAPIRef("bookmarks.onImportEnded", "onImportEnded")}}. Lorsque vous recevez onImportBegan, ignorez onCreated jusqu'à ce que vous receviez onImportEnded. Vous pouvez gérer toutes les autres notifications comme d'habitude.

+ +

Syntaxe

+ +
browser.bookmarks.onImportBegan.addListener(listener)
+browser.bookmarks.onImportBegan.removeListener(listener)
+browser.bookmarks.onImportBegan.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Parameters

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. Il n'y a pas de paramètres.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.onImportBegan")}}

+ +

Exemples

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index c70be82f29..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportended/index.html +++ /dev/null @@ -1,111 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsque le navigateur a fini d'importer un ensemble de signets.

- -

Voir {{WebExtAPIRef("bookmarks.onImportBegan")}}.

- -

Syntaxe

- -
browser.bookmarks.onImportEnded.addListener(listener)
-browser.bookmarks.onImportEnded.removeListener(listener)
-browser.bookmarks.onImportEnded.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. Il n'a pas passé de paramètres.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.onImportEnded")}}

- -

Exemples

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportended/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportended/index.md new file mode 100644 index 0000000000..c70be82f29 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onimportended/index.md @@ -0,0 +1,111 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque le navigateur a fini d'importer un ensemble de signets.

+ +

Voir {{WebExtAPIRef("bookmarks.onImportBegan")}}.

+ +

Syntaxe

+ +
browser.bookmarks.onImportEnded.addListener(listener)
+browser.bookmarks.onImportEnded.removeListener(listener)
+browser.bookmarks.onImportEnded.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. Il n'a pas passé de paramètres.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.onImportEnded")}}

+ +

Exemples

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 1b39e36c37..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onmoved/index.html +++ /dev/null @@ -1,133 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'un signet ou un dossier est déplacé vers un autre dossier parent et / ou position dans un dossier.

- -

Syntaxe

- -
browser.bookmarks.onMoved.addListener(listener)
-browser.bookmarks.onMoved.removeListener(listener)
-browser.bookmarks.onMoved.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Parameters

- -
-
callback
-
-

Function that will be called when this event occurs. The function will be passed the following arguments:

- -
-
id
-
string. ID of the item that was moved.
-
- -
-
moveInfo
-
object. Object containing more details about the move.
-
-
-
- -

Objets supplémentaires

- -

moveInfo

- -
-
parentId
-
string. Le nouveau dossier parent.
-
index
-
integer. Le nouvel index de cet élément dans son parent.
-
oldParentId
-
string. L'ancien dossier parent.
-
oldIndex
-
integer. L'ancien index de l'élément dans son parent.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.onMoved")}}

- -

Exemples

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onmoved/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onmoved/index.md new file mode 100644 index 0000000000..1b39e36c37 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onmoved/index.md @@ -0,0 +1,133 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'un signet ou un dossier est déplacé vers un autre dossier parent et / ou position dans un dossier.

+ +

Syntaxe

+ +
browser.bookmarks.onMoved.addListener(listener)
+browser.bookmarks.onMoved.removeListener(listener)
+browser.bookmarks.onMoved.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Parameters

+ +
+
callback
+
+

Function that will be called when this event occurs. The function will be passed the following arguments:

+ +
+
id
+
string. ID of the item that was moved.
+
+ +
+
moveInfo
+
object. Object containing more details about the move.
+
+
+
+ +

Objets supplémentaires

+ +

moveInfo

+ +
+
parentId
+
string. Le nouveau dossier parent.
+
index
+
integer. Le nouvel index de cet élément dans son parent.
+
oldParentId
+
string. L'ancien dossier parent.
+
oldIndex
+
integer. L'ancien index de l'élément dans son parent.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.onMoved")}}

+ +

Exemples

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 272fdfa0af..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onremoved/index.html +++ /dev/null @@ -1,128 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.bookmarks.onRemoved.addListener(listener)
-browser.bookmarks.onRemoved.removeListener(listener)
-browser.bookmarks.onRemoved.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
id
-
string. ID de l'article qui a été supprimé.
-
- -
-
removeInfo
-
object. Plus de détails sur l'élément supprimé.
-
-
-
- -

Objets supplémentaires

- -

removeInfo

- -
-
parentId
-
string. ID du parent de l'élément dans l'arborescence.
-
index
-
integer. Position d'index basée sur zéro de cet élément dans son parent.
-
node
-
{{WebExtAPIRef('bookmarks.BookmarkTreeNode')}}. Informations détaillées sur l'élément qui a été supprimé.
-
- -

Exemples

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.onRemoved")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onremoved/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onremoved/index.md new file mode 100644 index 0000000000..272fdfa0af --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/onremoved/index.md @@ -0,0 +1,128 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.bookmarks.onRemoved.addListener(listener)
+browser.bookmarks.onRemoved.removeListener(listener)
+browser.bookmarks.onRemoved.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
id
+
string. ID de l'article qui a été supprimé.
+
+ +
+
removeInfo
+
object. Plus de détails sur l'élément supprimé.
+
+
+
+ +

Objets supplémentaires

+ +

removeInfo

+ +
+
parentId
+
string. ID du parent de l'élément dans l'arborescence.
+
index
+
integer. Position d'index basée sur zéro de cet élément dans son parent.
+
node
+
{{WebExtAPIRef('bookmarks.BookmarkTreeNode')}}. Informations détaillées sur l'élément qui a été supprimé.
+
+ +

Exemples

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.onRemoved")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 8e17a38a86..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/remove/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La méthode bookmarks.remove() supprime un seul signet ou un dossier de signets vide.

- -
-

Attention : 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: "La racine du signet ne peut pas être modifiée" et le signet ne sera pas supprimé.

-
- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removingBookmark = browser.bookmarks.remove(
-  id                 // string
-)
-
- -

Paramètres

- -
-
id
-
Un {{jsxref("string")}} spécifiant l'ID du signet ou du dossier vide à supprimer.
-
- -

Valeur retournée

- -

Une Promise qui sera accomplie sans arguments..Si le nœud correspondant au paramètre id ne peut être trouvé ou s'il s'agit d'un dossier non vide, la promesse est rejetée avec un message d'erreur.

- -

Exemples

- -
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);
- -

{{WebExtExamples}}

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.remove")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/remove/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/remove/index.md new file mode 100644 index 0000000000..8e17a38a86 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/remove/index.md @@ -0,0 +1,104 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La méthode bookmarks.remove() supprime un seul signet ou un dossier de signets vide.

+ +
+

Attention : 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: "La racine du signet ne peut pas être modifiée" et le signet ne sera pas supprimé.

+
+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removingBookmark = browser.bookmarks.remove(
+  id                 // string
+)
+
+ +

Paramètres

+ +
+
id
+
Un {{jsxref("string")}} spécifiant l'ID du signet ou du dossier vide à supprimer.
+
+ +

Valeur retournée

+ +

Une Promise qui sera accomplie sans arguments..Si le nœud correspondant au paramètre id ne peut être trouvé ou s'il s'agit d'un dossier non vide, la promesse est rejetée avec un message d'erreur.

+ +

Exemples

+ +
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);
+ +

{{WebExtExamples}}

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.remove")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 81cb531cfd..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/removetree/index.html +++ /dev/null @@ -1,110 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La méthode bookmarks.removeTree() supprime récursivement un dossier de signets et tout son contenu.

- -
-

Attention : 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é.

-
- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removingTree = browser.bookmarks.removeTree(
-  id                // string
-)
-
- -

Paramètres

- -
-
id
-
Un {{jsxref("string")}} spécifiant l'ID du noeud de dossier à supprimer avec ses descendants.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie sans arguments lorsque l'arbre a été retiré.Si le noeud correspondant au paramètre id ne peut pas être trouvé, la promesse est rejetée avec un message d'erreur.

- -

Exemples

- -

Cet exemple localise un dossier de signets nommé "MDN" et le supprime avec tout son contenu.

- -
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);
- -

{{WebExtExamples}}

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.removeTree")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/removetree/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/removetree/index.md new file mode 100644 index 0000000000..81cb531cfd --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/removetree/index.md @@ -0,0 +1,110 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La méthode bookmarks.removeTree() supprime récursivement un dossier de signets et tout son contenu.

+ +
+

Attention : 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é.

+
+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removingTree = browser.bookmarks.removeTree(
+  id                // string
+)
+
+ +

Paramètres

+ +
+
id
+
Un {{jsxref("string")}} spécifiant l'ID du noeud de dossier à supprimer avec ses descendants.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie sans arguments lorsque l'arbre a été retiré.Si le noeud correspondant au paramètre id ne peut pas être trouvé, la promesse est rejetée avec un message d'erreur.

+ +

Exemples

+ +

Cet exemple localise un dossier de signets nommé "MDN" et le supprime avec tout son contenu.

+ +
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);
+ +

{{WebExtExamples}}

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.removeTree")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 0e2955e21c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/search/index.html +++ /dev/null @@ -1,139 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction bookmarks.search() recherche les nœuds d'arborescence de signets correspondant à la requête donnée.

- -

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 console 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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var searching = browser.bookmarks.search(
-  query                  // string or object
-)
-
- -

Paramètres

- -
-
query
-

Un {{jsxref("string")}} ou {{jsxref("object")}} décrivant la requête à effectuer.

-

Si la query 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.

- -

Si la query un objet, elle possède zéro ou plus des trois propriétés suivantes : query, title, et url, 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.

- -
-
query {{optional_inline}}
-
Un {{jsxref("string")}} spécifiant un ou plusieurs termes à comparer; le format est identique à la forme de chaîne du paramètre du query. Si ce n'est pas une chaîne, une exception est levée.
-
url {{optional_inline}}
-

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.Si vous passez une URL invalide ici, la fonction lèvera une exception.

-
-
title {{optional_inline}}
-
Un {{jsxref("string")}} Ceci doit correspondre exactement au titre du noeud de l'arbre du signet. La correspondance est sensible à la casse.
-
-
-
- -

Valeur retournée

- -

Une Promise 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 BookmarkTreeNodes—même du type "folder" — renvoyé par  bookmarks.search() ne contiennent pas la propriété children. Pour obtenir un  BookmarkTreeNode utilisez bookmarks.getSubTree().

- -

Exemple

- -

Cet exemple enregistre les ID de tous les signets :

- -
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);
- -

Cet exemple cherche à voir si l'onglet actuellement actif est marqué d'un signet :

- -
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);
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.search")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/search/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/search/index.md new file mode 100644 index 0000000000..0e2955e21c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/search/index.md @@ -0,0 +1,139 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction bookmarks.search() recherche les nœuds d'arborescence de signets correspondant à la requête donnée.

+ +

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 console 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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var searching = browser.bookmarks.search(
+  query                  // string or object
+)
+
+ +

Paramètres

+ +
+
query
+

Un {{jsxref("string")}} ou {{jsxref("object")}} décrivant la requête à effectuer.

+

Si la query 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.

+ +

Si la query un objet, elle possède zéro ou plus des trois propriétés suivantes : query, title, et url, 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.

+ +
+
query {{optional_inline}}
+
Un {{jsxref("string")}} spécifiant un ou plusieurs termes à comparer; le format est identique à la forme de chaîne du paramètre du query. Si ce n'est pas une chaîne, une exception est levée.
+
url {{optional_inline}}
+

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.Si vous passez une URL invalide ici, la fonction lèvera une exception.

+
+
title {{optional_inline}}
+
Un {{jsxref("string")}} Ceci doit correspondre exactement au titre du noeud de l'arbre du signet. La correspondance est sensible à la casse.
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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 BookmarkTreeNodes—même du type "folder" — renvoyé par  bookmarks.search() ne contiennent pas la propriété children. Pour obtenir un  BookmarkTreeNode utilisez bookmarks.getSubTree().

+ +

Exemple

+ +

Cet exemple enregistre les ID de tous les signets :

+ +
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);
+ +

Cet exemple cherche à voir si l'onglet actuellement actif est marqué d'un signet :

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.search")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 0bfaea33ef..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/update/index.html +++ /dev/null @@ -1,123 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

bookmarks.update() met à jour le titre et / ou l'URL d'un signet ou le nom d'un dossier de signets.

- -
-

Attention : 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.

-
- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var updating = browser.bookmarks.update(
-  id,                    // string
-  changes                // object
-)
-
- -

Paramètres

- -
-
id
-
Un {{jsxref("string")}} spécifiant l'ID du dossier de signet ou de dossier de signets à mettre à jour.
-
changes
-

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é :

-
-
title {{optional_inline}}
-
Un {{jsxref("string")}} contenant le nouveau titre du signet, ou le nouveau nom du dossier si l'id fait référence à un dossier.
-
url {{optional_inline}}
-
Un {{jsxref("string")}} fournissant une nouvelle URL pour le signet.
-
-
-
- -

Valeur retournée

- -

Une Promise qui sera satisfaite avec un seul objet bookmarks.BookmarkTreeNode représentant le signet mis à jour. Si l'élément de signet correspondant au paramètre id ne peut pas être trouvé, la promesse est rejetée.

- -

Exemples

- -

Cet exemple renomme tous les dossiers nommés "MDN" en "Mozilla Developer Network (MDN)".

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.bookmarks.update")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/bookmarks/update/index.md b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/update/index.md new file mode 100644 index 0000000000..0bfaea33ef --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/bookmarks/update/index.md @@ -0,0 +1,123 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

bookmarks.update() met à jour le titre et / ou l'URL d'un signet ou le nom d'un dossier de signets.

+ +
+

Attention : 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.

+
+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var updating = browser.bookmarks.update(
+  id,                    // string
+  changes                // object
+)
+
+ +

Paramètres

+ +
+
id
+
Un {{jsxref("string")}} spécifiant l'ID du dossier de signet ou de dossier de signets à mettre à jour.
+
changes
+

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é :

+
+
title {{optional_inline}}
+
Un {{jsxref("string")}} contenant le nouveau titre du signet, ou le nouveau nom du dossier si l'id fait référence à un dossier.
+
url {{optional_inline}}
+
Un {{jsxref("string")}} fournissant une nouvelle URL pour le signet.
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera satisfaite avec un seul objet bookmarks.BookmarkTreeNode représentant le signet mis à jour. Si l'élément de signet correspondant au paramètre id ne peut pas être trouvé, la promesse est rejetée.

+ +

Exemples

+ +

Cet exemple renomme tous les dossiers nommés "MDN" en "Mozilla Developer Network (MDN)".

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.bookmarks.update")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.bookmarks. Cette documentation provient de  bookmarks.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 105713c961..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/colorarray/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Type

- -

Un tableau de quatre nombres entiers entre 0-255 définie une couleur RGBA. Les quatres couleurs spécifient les canaux suivants :

- -
    -
  1. Rouge
  2. -
  3. Vert
  4. -
  5. Bleu
  6. -
  7. Alpha (opacité).
  8. -
- -

Par exemple , le rouge opaque est  [255, 0, 0, 255].

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.ColorArray")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/colorarray/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/colorarray/index.md new file mode 100644 index 0000000000..105713c961 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/colorarray/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Type

+ +

Un tableau de quatre nombres entiers entre 0-255 définie une couleur RGBA. Les quatres couleurs spécifient les canaux suivants :

+ +
    +
  1. Rouge
  2. +
  3. Vert
  4. +
  5. Bleu
  6. +
  7. Alpha (opacité).
  8. +
+ +

Par exemple , le rouge opaque est  [255, 0, 0, 255].

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.ColorArray")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 1b44f9386e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/disable/index.html +++ /dev/null @@ -1,93 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Désactive l'action du navigateur pour un onglet, ce qui signifie qu'il ne peut pas être cliqué lorsque cet onglet est actif.

- -

Syntaxe

- -
browser.browserAction.disable(
-  tabId // optional integer
-)
-
- -

Paramètres

- -
-
tabId{{optional_inline}}
-
integer. L'identifiant (ID) de l'onglet pour lequel vous souhaitez désactiver l'action du navigateur.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.disable")}}

- -

Exemples

- -

Désactive l'action du navigateur lorsque vous cliquez et réactivez-le chaque fois qu'un nouveau onglet est ouvert :

- -
browser.tabs.onCreated.addListener(() => {
-  browser.browserAction.enable();
-});
-
-browser.browserAction.onClicked.addListener(() => {
-  browser.browserAction.disable();
-});
-
- -

Désactivez l'action du navigateur uniquement pour l'onglet actif :

- -
browser.browserAction.onClicked.addListener((tab) => {
-  browser.browserAction.disable(tab.id);
-});
- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/disable/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/disable/index.md new file mode 100644 index 0000000000..1b44f9386e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/disable/index.md @@ -0,0 +1,93 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Désactive l'action du navigateur pour un onglet, ce qui signifie qu'il ne peut pas être cliqué lorsque cet onglet est actif.

+ +

Syntaxe

+ +
browser.browserAction.disable(
+  tabId // optional integer
+)
+
+ +

Paramètres

+ +
+
tabId{{optional_inline}}
+
integer. L'identifiant (ID) de l'onglet pour lequel vous souhaitez désactiver l'action du navigateur.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.disable")}}

+ +

Exemples

+ +

Désactive l'action du navigateur lorsque vous cliquez et réactivez-le chaque fois qu'un nouveau onglet est ouvert :

+ +
browser.tabs.onCreated.addListener(() => {
+  browser.browserAction.enable();
+});
+
+browser.browserAction.onClicked.addListener(() => {
+  browser.browserAction.disable();
+});
+
+ +

Désactivez l'action du navigateur uniquement pour l'onglet actif :

+ +
browser.browserAction.onClicked.addListener((tab) => {
+  browser.browserAction.disable(tab.id);
+});
+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index f7e8f6139c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/enable/index.html +++ /dev/null @@ -1,89 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Active l'action du navigateur pour un onglet. Par défaut, les actions du navigateur sont activées pour tous les onglets.

- -

Syntaxe

- -
browser.browserAction.enable(
-  tabId // optional integer
-)
-
- -

Paramètres

- -
-
tabId{{optional_inline}}
-
integer. L'identifiant (ID) de l'onglet pour lequel vous souhaitez activer l'action du navigateur.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.enable")}}

- -

Exemples

- -

 Désactivez l'option du navigateur lorsque vous cliquez et réactivez-le chaque fois qu'un nouveau onglet est ouvert :

- -
browser.tabs.onCreated.addListener(() => {
-  browser.browserAction.enable();
-});
-
-browser.browserAction.onClicked.addListener(() => {
-  browser.browserAction.disable();
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/enable/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/enable/index.md new file mode 100644 index 0000000000..f7e8f6139c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/enable/index.md @@ -0,0 +1,89 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Active l'action du navigateur pour un onglet. Par défaut, les actions du navigateur sont activées pour tous les onglets.

+ +

Syntaxe

+ +
browser.browserAction.enable(
+  tabId // optional integer
+)
+
+ +

Paramètres

+ +
+
tabId{{optional_inline}}
+
integer. L'identifiant (ID) de l'onglet pour lequel vous souhaitez activer l'action du navigateur.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.enable")}}

+ +

Exemples

+ +

 Désactivez l'option du navigateur lorsque vous cliquez et réactivez-le chaque fois qu'un nouveau onglet est ouvert :

+ +
browser.tabs.onCreated.addListener(() => {
+  browser.browserAction.enable();
+});
+
+browser.browserAction.onClicked.addListener(() => {
+  browser.browserAction.disable();
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 665501decf..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgebackgroundcolor/index.html +++ /dev/null @@ -1,106 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient la couleur d'arrière plan du badge de l'action du navigateur.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
browser.browserAction.getBadgeBackgroundColor (
-  details // object
-)
-
- -

Paramètres

- -

details

- -

object

-
-
tabId{{optional_inline}}
-
integer. Specifie l'onglet pour obtenir la couleur d'arrière-plan du badge.
-
windowId{{optional_inline}}
-
integer. Spécifie la fenêtre à partir de laquelle obtenir la couleur de fond du badge.
-
- - - -

Valeur retournée

- -

Une Promise qui sera remplie avec la couleur récupérée en tant que  {{WebExtAPIRef('browserAction.ColorArray')}}.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.getBadgeBackgroundColor",2)}}

- -

Exemples

- -

Enregistrez la couleur de fond du badge :

- -
function onGot(color) {
-  console.log(color);
-}
-
-function onFailure(error) {
-  console.log(error);
-}
-
-browser.browserAction.getBadgeBackgroundColor({}).then(onGot, onFailure);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgebackgroundcolor/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgebackgroundcolor/index.md new file mode 100644 index 0000000000..665501decf --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgebackgroundcolor/index.md @@ -0,0 +1,106 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient la couleur d'arrière plan du badge de l'action du navigateur.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
browser.browserAction.getBadgeBackgroundColor (
+  details // object
+)
+
+ +

Paramètres

+ +

details

+ +

object

+
+
tabId{{optional_inline}}
+
integer. Specifie l'onglet pour obtenir la couleur d'arrière-plan du badge.
+
windowId{{optional_inline}}
+
integer. Spécifie la fenêtre à partir de laquelle obtenir la couleur de fond du badge.
+
+ + + +

Valeur retournée

+ +

Une Promise qui sera remplie avec la couleur récupérée en tant que  {{WebExtAPIRef('browserAction.ColorArray')}}.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.getBadgeBackgroundColor",2)}}

+ +

Exemples

+ +

Enregistrez la couleur de fond du badge :

+ +
function onGot(color) {
+  console.log(color);
+}
+
+function onFailure(error) {
+  console.log(error);
+}
+
+browser.browserAction.getBadgeBackgroundColor({}).then(onGot, onFailure);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 96f04dba54..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetext/index.html +++ /dev/null @@ -1,105 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient le texte du badge de l'action du navigateur.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingText = browser.browserAction.getBadgeText (
-  details               // object
-)
-
- -

Paramètres

- -
-
details
-

object

-
-
tabId{{optional_inline}}
-
integer. Spécifie l'onglet pour obtenir le texte du badge.
-
windowId{{optional_inline}}
-
integer. Spécifie la fenêtre à partir de laquelle obtenir le texte du badge.
-
-
-
- - - -

Valeur de retour

- -

Une Promise qui sera remplie avec une chaîne contenant le texte du badge.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.getBadgeText",2)}}

- -

Exemples

- -

Enregistrez le texte du badge : 

- -
function gotBadgeText(text) {
-  console.log(text);
-}
-
-var gettingBadgeText = browser.browserAction.getBadgeText({});
-gettingBadgeText.then(gotBadgeText);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetext/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetext/index.md new file mode 100644 index 0000000000..96f04dba54 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetext/index.md @@ -0,0 +1,105 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient le texte du badge de l'action du navigateur.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingText = browser.browserAction.getBadgeText (
+  details               // object
+)
+
+ +

Paramètres

+ +
+
details
+

object

+
+
tabId{{optional_inline}}
+
integer. Spécifie l'onglet pour obtenir le texte du badge.
+
windowId{{optional_inline}}
+
integer. Spécifie la fenêtre à partir de laquelle obtenir le texte du badge.
+
+
+
+ + + +

Valeur de retour

+ +

Une Promise qui sera remplie avec une chaîne contenant le texte du badge.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.getBadgeText",2)}}

+ +

Exemples

+ +

Enregistrez le texte du badge : 

+ +
function gotBadgeText(text) {
+  console.log(text);
+}
+
+var gettingBadgeText = browser.browserAction.getBadgeText({});
+gettingBadgeText.then(gotBadgeText);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index d1caee0152..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetextcolor/index.html +++ /dev/null @@ -1,100 +0,0 @@ ---- -title: browserAction.getBadgeTextColor() -slug: Mozilla/Add-ons/WebExtensions/API/browserAction/getBadgeTextColor -translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/getBadgeTextColor ---- -
{{AddonSidebar()}}
- -

Obtient la couleur du texte du badge de l'action du navigateur.

- -

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.

- -

Les autres navigateurs utilisent toujours une couleur de texte blanche.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
browser.browserAction.getBadgeTextColor(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object

-
-
tabId{{optional_inline}}
-
integer. Spécifie l'onglet pour obtenir la couleur du texte du badge.
-
windowId{{optional_inline}}
-
integer. Spécifie la fenêtre à partir de laquelle obtenir la couleur du texte du badge.
-
-
-
- - - -

Valeur retournée

- -

Une Promise qui sera remplie avec la couleur récupérée comme un {{WebExtAPIRef('browserAction.ColorArray')}}.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.getBadgeTextColor",2)}}

- -

Exemples

- -

Enregistrer la couleur du texte du badge :

- -
function onGot(color) {
-  console.log(color);
-}
-
-function onFailure(error) {
-  console.log(error);
-}
-
-browser.browserAction.getBadgeTextColor({}).then(onGot, onFailure);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetextcolor/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetextcolor/index.md new file mode 100644 index 0000000000..d1caee0152 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getbadgetextcolor/index.md @@ -0,0 +1,100 @@ +--- +title: browserAction.getBadgeTextColor() +slug: Mozilla/Add-ons/WebExtensions/API/browserAction/getBadgeTextColor +translation_of: Mozilla/Add-ons/WebExtensions/API/browserAction/getBadgeTextColor +--- +
{{AddonSidebar()}}
+ +

Obtient la couleur du texte du badge de l'action du navigateur.

+ +

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.

+ +

Les autres navigateurs utilisent toujours une couleur de texte blanche.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
browser.browserAction.getBadgeTextColor(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object

+
+
tabId{{optional_inline}}
+
integer. Spécifie l'onglet pour obtenir la couleur du texte du badge.
+
windowId{{optional_inline}}
+
integer. Spécifie la fenêtre à partir de laquelle obtenir la couleur du texte du badge.
+
+
+
+ + + +

Valeur retournée

+ +

Une Promise qui sera remplie avec la couleur récupérée comme un {{WebExtAPIRef('browserAction.ColorArray')}}.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.getBadgeTextColor",2)}}

+ +

Exemples

+ +

Enregistrer la couleur du texte du badge :

+ +
function onGot(color) {
+  console.log(color);
+}
+
+function onFailure(error) {
+  console.log(error);
+}
+
+browser.browserAction.getBadgeTextColor({}).then(onGot, onFailure);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+
+ + 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 deleted file mode 100644 index e641899dc9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/getpopup/index.html +++ /dev/null @@ -1,105 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient le document HTML défini comme la popup pour cette action du navigateur.

- -

Il s'agit d'une fonction asynchrone  qui renvoie une Promise.

- -

Syntaxe

- -
var gettingPopup = browser.browserAction.getPopup(
-  details               // object
-)
-
- -

Paramètres

- -
-
details
-

object.

-
-
tabId{{optional_inline}}
-
integer. L'onglet dont le menu déroulant reçoit un entier.
-
windowId{{optional_inline}}
-
integer. Les fenêtres dont le popup à obtenir.
-
-
-
- - - -

Valeur retournée

- -

Une Promise qui sera remplie avec une chaine cntenant l'URL du document contextuel. Ce sera une URL entièrement qualifiée, telle que moz-extension://d1d8a2eb-fe60-f646-af30-a866c5b39942/popups/popup2.html.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.getPopup",2)}}

- -

Exemples

- -

Obtenez l'URL du Popup:

- -
function gotPopup(popupURL) {
-  console.log(popupURL)
-}
-
-var gettingPopup = browser.browserAction.getPopup({});
-gettingPopup.then(gotPopup); 
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/getpopup/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getpopup/index.md new file mode 100644 index 0000000000..e641899dc9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/getpopup/index.md @@ -0,0 +1,105 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient le document HTML défini comme la popup pour cette action du navigateur.

+ +

Il s'agit d'une fonction asynchrone  qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingPopup = browser.browserAction.getPopup(
+  details               // object
+)
+
+ +

Paramètres

+ +
+
details
+

object.

+
+
tabId{{optional_inline}}
+
integer. L'onglet dont le menu déroulant reçoit un entier.
+
windowId{{optional_inline}}
+
integer. Les fenêtres dont le popup à obtenir.
+
+
+
+ + + +

Valeur retournée

+ +

Une Promise qui sera remplie avec une chaine cntenant l'URL du document contextuel. Ce sera une URL entièrement qualifiée, telle que moz-extension://d1d8a2eb-fe60-f646-af30-a866c5b39942/popups/popup2.html.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.getPopup",2)}}

+ +

Exemples

+ +

Obtenez l'URL du Popup:

+ +
function gotPopup(popupURL) {
+  console.log(popupURL)
+}
+
+var gettingPopup = browser.browserAction.getPopup({});
+gettingPopup.then(gotPopup); 
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index b18eb58a0b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/gettitle/index.html +++ /dev/null @@ -1,113 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient le titre de l'action du navigateur.

- -

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.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingTitle = browser.browserAction.getTitle(
-  details               // object
-)
-
- -

Paramètres

- -
-
details
-

object

-

-
tabId{{optional_inline}}
-
integer. Spécifiez l'onglet pour obtenir le titre.
-
windowId{{optional_inline}}
-
integer. Spécifiez la fenêtre à partir de laquelle vous souhaitez obtenir le titre.
-
-
-
- - - -

Return value

- -

Une Promise qui sera remplie avec une chaîne contenant le titre de l'action du navigateur.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.getTitle",2)}}

- -

Exemples

- -

Ce code change le titre entre "ceci" et "cela" chaque fois que l'utilisateur clique sur l'action du navigateur :

- -
function toggleTitle(title) {
-  if (title == "this") {
-    browser.browserAction.setTitle({title: "that"});
-  } else {
-    browser.browserAction.setTitle({title: "this"});
-  }
-}
-
-browser.browserAction.onClicked.addListener(() => {
-  var gettingTitle = browser.browserAction.getTitle({});
-  gettingTitle.then(toggleTitle);
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/gettitle/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/gettitle/index.md new file mode 100644 index 0000000000..b18eb58a0b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/gettitle/index.md @@ -0,0 +1,113 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient le titre de l'action du navigateur.

+ +

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.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingTitle = browser.browserAction.getTitle(
+  details               // object
+)
+
+ +

Paramètres

+ +
+
details
+

object

+

+
tabId{{optional_inline}}
+
integer. Spécifiez l'onglet pour obtenir le titre.
+
windowId{{optional_inline}}
+
integer. Spécifiez la fenêtre à partir de laquelle vous souhaitez obtenir le titre.
+
+
+
+ + + +

Return value

+ +

Une Promise qui sera remplie avec une chaîne contenant le titre de l'action du navigateur.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.getTitle",2)}}

+ +

Exemples

+ +

Ce code change le titre entre "ceci" et "cela" chaque fois que l'utilisateur clique sur l'action du navigateur :

+ +
function toggleTitle(title) {
+  if (title == "this") {
+    browser.browserAction.setTitle({title: "that"});
+  } else {
+    browser.browserAction.setTitle({title: "this"});
+  }
+}
+
+browser.browserAction.onClicked.addListener(() => {
+  var gettingTitle = browser.browserAction.getTitle({});
+  gettingTitle.then(toggleTitle);
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index a93726876c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/imagedatatype/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Données en pixels pour une image. Doit être un objet ImageData  (par exemple, un élément  {{htmlelement("canvas")}}).

- -

Type

- -

Un objet ImageData.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.ImageDataType")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/imagedatatype/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/imagedatatype/index.md new file mode 100644 index 0000000000..a93726876c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/imagedatatype/index.md @@ -0,0 +1,66 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Données en pixels pour une image. Doit être un objet ImageData  (par exemple, un élément  {{htmlelement("canvas")}}).

+ +

Type

+ +

Un objet ImageData.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.ImageDataType")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/index.html b/files/fr/mozilla/add-ons/webextensions/api/browseraction/index.html deleted file mode 100644 index ea193dbd49..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/index.html +++ /dev/null @@ -1,127 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Ajoute un bouton à la barre d'outils du navigateur.

- -

Une action du navigateur est un bouton dans la barre d'outils du navigateur.

- -

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 messages.

- -

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.

- -

Vous pouvez définir la plupart des propriétés d'une action de navigateur en utilisant la clé browser_action dans le manifest.json.

- -

Quand l'API browserAction, vous pouvez :

- - - -

Types

- -
-
{{WebExtAPIRef("browserAction.ColorArray")}}
-
Un tableau de quatre nombres entiers entre 0-255 définie une couleur RGBA.
-
{{WebExtAPIRef("browserAction.ImageDataType")}}
-
Données en pixels pour une image. Doit être un objet ImageData (par exemple, un élément {{htmlelement("canvas")}} ).
-
- -

Fonctions

- -
-
{{WebExtAPIRef("browserAction.setTitle()")}}
-
Définit le titre de l'action du navigateur. Cela sera affiché dans une info-bulle.
-
{{WebExtAPIRef("browserAction.getTitle()")}}
-
Obtient le titre de l'action du navigateur.
-
{{WebExtAPIRef("browserAction.setIcon()")}}
-
Définit l'icône de l'action du navigateur.
-
{{WebExtAPIRef("browserAction.setPopup()")}}
-
Définit le document HTML à ouvrir en popup lorsque l'utilisateur clique  sur l'icône de l'action du navigateur.
-
{{WebExtAPIRef("browserAction.getPopup()")}}
-
Permet de définir le document HTML en tant que popup de l'action du navigateur.
-
{{WebExtAPIRef("browserAction.openPopup()")}}
-
Ouvrez le popup de l'action du navigateur.
-
{{WebExtAPIRef("browserAction.setBadgeText()")}}
-
Définit le texte du badge de l'action du navigateur. Le badge est affiché en haut de l'icône.
-
{{WebExtAPIRef("browserAction.getBadgeText()")}}
-
Obtient le texte du badge de l'action du navigateur.
-
{{WebExtAPIRef("browserAction.setBadgeBackgroundColor()")}}
-
Définit la couleur de fond du badge.
-
{{WebExtAPIRef("browserAction.getBadgeBackgroundColor()")}}
-
Obtient la couleur de fond du badge.
-
{{WebExtAPIRef("browserAction.setBadgeTextColor()")}}
-
Définit la couleur du texte du badge.
-
{{WebExtAPIRef("browserAction.getBadgeTextColor()")}}
-
Obtient la couleur du texte du badge.
-
{{WebExtAPIRef("browserAction.enable()")}}
-
Active l'action du navigateur pour un onglet. Par défaut, les actions du navigateur sont activées pour tous les onglets.
-
{{WebExtAPIRef("browserAction.disable()")}}
-
Désactive l'action du navigateur pour un onglet, ce qui signifie  qu'il ne peut pas être cliqué lorsque cet onglet est actif.
-
{{WebExtAPIRef("browserAction.isEnabled()")}}
-
Vérifie si l'action du navigateur est activée ou non.
-
- -

Evénements

- -
-
{{WebExtAPIRef("browserAction.onClicked")}}
-
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.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/index.md new file mode 100644 index 0000000000..ea193dbd49 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/index.md @@ -0,0 +1,127 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

Ajoute un bouton à la barre d'outils du navigateur.

+ +

Une action du navigateur est un bouton dans la barre d'outils du navigateur.

+ +

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 messages.

+ +

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.

+ +

Vous pouvez définir la plupart des propriétés d'une action de navigateur en utilisant la clé browser_action dans le manifest.json.

+ +

Quand l'API browserAction, vous pouvez :

+ + + +

Types

+ +
+
{{WebExtAPIRef("browserAction.ColorArray")}}
+
Un tableau de quatre nombres entiers entre 0-255 définie une couleur RGBA.
+
{{WebExtAPIRef("browserAction.ImageDataType")}}
+
Données en pixels pour une image. Doit être un objet ImageData (par exemple, un élément {{htmlelement("canvas")}} ).
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("browserAction.setTitle()")}}
+
Définit le titre de l'action du navigateur. Cela sera affiché dans une info-bulle.
+
{{WebExtAPIRef("browserAction.getTitle()")}}
+
Obtient le titre de l'action du navigateur.
+
{{WebExtAPIRef("browserAction.setIcon()")}}
+
Définit l'icône de l'action du navigateur.
+
{{WebExtAPIRef("browserAction.setPopup()")}}
+
Définit le document HTML à ouvrir en popup lorsque l'utilisateur clique  sur l'icône de l'action du navigateur.
+
{{WebExtAPIRef("browserAction.getPopup()")}}
+
Permet de définir le document HTML en tant que popup de l'action du navigateur.
+
{{WebExtAPIRef("browserAction.openPopup()")}}
+
Ouvrez le popup de l'action du navigateur.
+
{{WebExtAPIRef("browserAction.setBadgeText()")}}
+
Définit le texte du badge de l'action du navigateur. Le badge est affiché en haut de l'icône.
+
{{WebExtAPIRef("browserAction.getBadgeText()")}}
+
Obtient le texte du badge de l'action du navigateur.
+
{{WebExtAPIRef("browserAction.setBadgeBackgroundColor()")}}
+
Définit la couleur de fond du badge.
+
{{WebExtAPIRef("browserAction.getBadgeBackgroundColor()")}}
+
Obtient la couleur de fond du badge.
+
{{WebExtAPIRef("browserAction.setBadgeTextColor()")}}
+
Définit la couleur du texte du badge.
+
{{WebExtAPIRef("browserAction.getBadgeTextColor()")}}
+
Obtient la couleur du texte du badge.
+
{{WebExtAPIRef("browserAction.enable()")}}
+
Active l'action du navigateur pour un onglet. Par défaut, les actions du navigateur sont activées pour tous les onglets.
+
{{WebExtAPIRef("browserAction.disable()")}}
+
Désactive l'action du navigateur pour un onglet, ce qui signifie  qu'il ne peut pas être cliqué lorsque cet onglet est actif.
+
{{WebExtAPIRef("browserAction.isEnabled()")}}
+
Vérifie si l'action du navigateur est activée ou non.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("browserAction.onClicked")}}
+
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.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 851dc1e386..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/isenabled/index.html +++ /dev/null @@ -1,78 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Renvoie true si l'action du navigateur est activée.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
let gettingIsEnabled = browser.browserAction.isEnabled(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object. Un objet contenant éventuellement le tabId ou windowId à vérifier.

-
-
tabId {{optional_inline}}
-
integer. ID d'un onglet à vérifier
-
windowId {{optional_inline}}
-
integer. ID d'une fenêtre à vérifier.
-
-
-
- - - - - -

Valeur retournée

- -

Une Promise qui sera remplie avec true si l'action du navigateur de l'extension est activée, et false dans le cas contraire.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.isEnabled",2)}}

- -

Exemples

- -

Vérifiez l'état global :

- -
browser.browserAction.isEnabled({}).then(result => {
-  console.log(result);
-});
- -

Vérifiez l'état de l'onglet actuellement actif :

- -
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);
-}
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/isenabled/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/isenabled/index.md new file mode 100644 index 0000000000..851dc1e386 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/isenabled/index.md @@ -0,0 +1,78 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Renvoie true si l'action du navigateur est activée.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
let gettingIsEnabled = browser.browserAction.isEnabled(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Un objet contenant éventuellement le tabId ou windowId à vérifier.

+
+
tabId {{optional_inline}}
+
integer. ID d'un onglet à vérifier
+
windowId {{optional_inline}}
+
integer. ID d'une fenêtre à vérifier.
+
+
+
+ + + + + +

Valeur retournée

+ +

Une Promise qui sera remplie avec true si l'action du navigateur de l'extension est activée, et false dans le cas contraire.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.isEnabled",2)}}

+ +

Exemples

+ +

Vérifiez l'état global :

+ +
browser.browserAction.isEnabled({}).then(result => {
+  console.log(result);
+});
+ +

Vérifiez l'état de l'onglet actuellement actif :

+ +
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);
+}
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 9a109b7082..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/onclicked/index.html +++ /dev/null @@ -1,110 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Pour définir une action de clic droit, utilisez l'API contextMenus  avec le type de contexte "browser_action".

- -

Syntaxe

- -
browser.browserAction.onClicked.addListener(listener)
-browser.browserAction.onClicked.removeListener(listener)
-browser.browserAction.onClicked.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajoutez un auditeur à cet événement.
-
removeListener(listener)
-
Arretez d'écouter cet événement. L'argument de l'auditeur est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifier si l'autditeur est enregistré pour cet événement. Renvoie true si elle est écouté, sinon  false.
-
- -

addListener syntaxe

- -

Paramètre

- -
-
callback
-
-

Fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera par l'argument suivant :

- -
-
tab
-
{{WebExtAPIRef('tabs.Tab')}}. L'onglet qui était actif lorsque l'icône a été cliquée .
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.onClicked")}}

- -

Exemples

- -

Lorsque l'utilisateur clique sur l'icône, désactivez-la pour l'onglet actif et enregistrez l'URL de l'onglet

- -
browser.browserAction.onClicked.addListener((tab) => {
-  // disable the active tab
-  browser.browserAction.disable(tab.id);
-  // requires the "tabs" or "activeTab" permission
-  console.log(tab.url);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/onclicked/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/onclicked/index.md new file mode 100644 index 0000000000..9a109b7082 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/onclicked/index.md @@ -0,0 +1,110 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Pour définir une action de clic droit, utilisez l'API contextMenus  avec le type de contexte "browser_action".

+ +

Syntaxe

+ +
browser.browserAction.onClicked.addListener(listener)
+browser.browserAction.onClicked.removeListener(listener)
+browser.browserAction.onClicked.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajoutez un auditeur à cet événement.
+
removeListener(listener)
+
Arretez d'écouter cet événement. L'argument de l'auditeur est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifier si l'autditeur est enregistré pour cet événement. Renvoie true si elle est écouté, sinon  false.
+
+ +

addListener syntaxe

+ +

Paramètre

+ +
+
callback
+
+

Fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera par l'argument suivant :

+ +
+
tab
+
{{WebExtAPIRef('tabs.Tab')}}. L'onglet qui était actif lorsque l'icône a été cliquée .
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.onClicked")}}

+ +

Exemples

+ +

Lorsque l'utilisateur clique sur l'icône, désactivez-la pour l'onglet actif et enregistrez l'URL de l'onglet

+ +
browser.browserAction.onClicked.addListener((tab) => {
+  // disable the active tab
+  browser.browserAction.disable(tab.id);
+  // requires the "tabs" or "activeTab" permission
+  console.log(tab.url);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 32f07cc370..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/openpopup/index.html +++ /dev/null @@ -1,56 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Ouvrez le popup de l'action du navigateur.
- -
- -
-

Vous pouvez uniquement appeler cette fonction à partir du gestionnaire pour une action utilisateur.

-
- -

Syntaxe

- -
browser.browserAction.openPopup()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise cela est résolu sans arguments.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.openPopup", 10)}}

- -

Exemples

- -

Ouvrez la fenêtre contextuelle lorsque l'utilisateur sélectionne un élément de menu contextuel :

- -
browser.menus.create({
-  id: "open-popup",
-  title: "open popup",
-  contexts: ["all"]
-});
-
-browser.menus.onClicked.addListener(() => {
-  browser.browserAction.openPopup();
-});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/openpopup/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/openpopup/index.md new file mode 100644 index 0000000000..32f07cc370 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/openpopup/index.md @@ -0,0 +1,56 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Ouvrez le popup de l'action du navigateur.
+ +
+ +
+

Vous pouvez uniquement appeler cette fonction à partir du gestionnaire pour une action utilisateur.

+
+ +

Syntaxe

+ +
browser.browserAction.openPopup()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise cela est résolu sans arguments.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.openPopup", 10)}}

+ +

Exemples

+ +

Ouvrez la fenêtre contextuelle lorsque l'utilisateur sélectionne un élément de menu contextuel :

+ +
browser.menus.create({
+  id: "open-popup",
+  title: "open popup",
+  contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(() => {
+  browser.browserAction.openPopup();
+});
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 0482f401d6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgebackgroundcolor/index.html +++ /dev/null @@ -1,125 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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 [217, 0, 0, 255] dans Firefox.

- -

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.

- -

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

- -

Syntaxe

- -
browser.browserAction.setBadgeBackgroundColor(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object

-
-
color
-

La couleur, spécifiée comme l'un des suivants :

-
    -
  • une chaîne : toute valeur CSS <color> , par exemple "red", "#FF0000", ou "rgb(255,0,0)". 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.
  • -
  • Un objet {{WebExtAPIRef('browserAction.ColorArray')}}.
  • -
  • null. Si un tabId 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.
  • -
-
-
tabId{{optional_inline}}
-
integer. 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.
-
windowId{{optional_inline}}
-
integer. Définit la couleur d'arrière-plan du badge uniquement pour l'onglet donné.
-
-
-
- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.setBadgeBackgroundColor",2)}}

- -

La couleur par défaut dans Firefox est : [217, 0, 0, 255].

- -

Exemples

- -

Une couleur d'arrière plan qui commence en rouge et devient  verte lorsque l'action du navigateur est cliquée :

- -
browser.browserAction.setBadgeText({text: "1234"});
-browser.browserAction.setBadgeBackgroundColor({color: "red"});
-
-browser.browserAction.onClicked.addListener(()=> {
-  browser.browserAction.setBadgeBackgroundColor({color: "green"});
-});
- -

Réglez la couleur d'arrière-plan du badge uniquement pour l'onget actif :

- -
browser.browserAction.setBadgeText({text: "1234"});
-browser.browserAction.setBadgeBackgroundColor({color: "red"});
-
-browser.browserAction.onClicked.addListener((tab)=> {
-  browser.browserAction.setBadgeBackgroundColor({
-    color: "green",
-    tabId: tab.id
-  });
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

- - -
diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgebackgroundcolor/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgebackgroundcolor/index.md new file mode 100644 index 0000000000..0482f401d6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgebackgroundcolor/index.md @@ -0,0 +1,125 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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 [217, 0, 0, 255] dans Firefox.

+ +

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.

+ +

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

+ +

Syntaxe

+ +
browser.browserAction.setBadgeBackgroundColor(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object

+
+
color
+

La couleur, spécifiée comme l'un des suivants :

+
    +
  • une chaîne : toute valeur CSS <color> , par exemple "red", "#FF0000", ou "rgb(255,0,0)". 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.
  • +
  • Un objet {{WebExtAPIRef('browserAction.ColorArray')}}.
  • +
  • null. Si un tabId 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.
  • +
+
+
tabId{{optional_inline}}
+
integer. 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.
+
windowId{{optional_inline}}
+
integer. Définit la couleur d'arrière-plan du badge uniquement pour l'onglet donné.
+
+
+
+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.setBadgeBackgroundColor",2)}}

+ +

La couleur par défaut dans Firefox est : [217, 0, 0, 255].

+ +

Exemples

+ +

Une couleur d'arrière plan qui commence en rouge et devient  verte lorsque l'action du navigateur est cliquée :

+ +
browser.browserAction.setBadgeText({text: "1234"});
+browser.browserAction.setBadgeBackgroundColor({color: "red"});
+
+browser.browserAction.onClicked.addListener(()=> {
+  browser.browserAction.setBadgeBackgroundColor({color: "green"});
+});
+ +

Réglez la couleur d'arrière-plan du badge uniquement pour l'onget actif :

+ +
browser.browserAction.setBadgeText({text: "1234"});
+browser.browserAction.setBadgeBackgroundColor({color: "red"});
+
+browser.browserAction.onClicked.addListener((tab)=> {
+  browser.browserAction.setBadgeBackgroundColor({
+    color: "green",
+    tabId: tab.id
+  });
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+ + +
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 deleted file mode 100644 index 90e7209425..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetext/index.html +++ /dev/null @@ -1,114 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Définit le texte du badge pour l'action du navigateur. Le badge est affiché en haut de l'icône.

- -

Les onglets sans texte de badge spécifique hériteront du texte global du badge, qui est "" par défaut.

- -

Syntaxe

- -
browser.browserAction.setBadgeText(
-  details // object
-)
-
- -

Cette API est également disponible sous chrome.browserAction.setBadgeText().

- -

Paramètres

- -
-
details
-

object

-
-
text
-
-

string or null. N'importe quel nombre de caractères peut être passé, mais seulement quatre environ peuvent tenir dans l'espace.

- -

Utilisez une chaîne vide - "" - si vous ne voulez pas de badge.

- -

Si un tabId est spécifié, null 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 "".

- -

Si un windowId est spécifié, null 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 "".

-
-
tabId{{optional_inline}}
-
integer. 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.
-
windowId{{optional_inline}}
-
integer. Définir le texte du badge pour la fenêtre donnée.
-
-
-
- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.setBadgeText",2)}}

- -

Exemples

- -

Ajouter un badge indiquant combien de fois l'utilisateur a cliqué sur le bouton : 

- -
var clicks = 0;
-
-function increment() {
-  browser.browserAction.setBadgeText({text: (++clicks).toString()});
-}
-
-browser.browserAction.onClicked.addListener(increment);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetext/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetext/index.md new file mode 100644 index 0000000000..90e7209425 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetext/index.md @@ -0,0 +1,114 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Définit le texte du badge pour l'action du navigateur. Le badge est affiché en haut de l'icône.

+ +

Les onglets sans texte de badge spécifique hériteront du texte global du badge, qui est "" par défaut.

+ +

Syntaxe

+ +
browser.browserAction.setBadgeText(
+  details // object
+)
+
+ +

Cette API est également disponible sous chrome.browserAction.setBadgeText().

+ +

Paramètres

+ +
+
details
+

object

+
+
text
+
+

string or null. N'importe quel nombre de caractères peut être passé, mais seulement quatre environ peuvent tenir dans l'espace.

+ +

Utilisez une chaîne vide - "" - si vous ne voulez pas de badge.

+ +

Si un tabId est spécifié, null 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 "".

+ +

Si un windowId est spécifié, null 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 "".

+
+
tabId{{optional_inline}}
+
integer. 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.
+
windowId{{optional_inline}}
+
integer. Définir le texte du badge pour la fenêtre donnée.
+
+
+
+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.setBadgeText",2)}}

+ +

Exemples

+ +

Ajouter un badge indiquant combien de fois l'utilisateur a cliqué sur le bouton : 

+ +
var clicks = 0;
+
+function increment() {
+  browser.browserAction.setBadgeText({text: (++clicks).toString()});
+}
+
+browser.browserAction.onClicked.addListener(increment);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index a03c34cf47..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetextcolor/index.html +++ /dev/null @@ -1,116 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.browserAction.setBadgeTextColor(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object

-
-
color
-

La couleur, spécifiée comme l'une des couleurs :

-
    -
  •  une chaîne : toute valeur CSS <color>, par exemple "red", "#FF0000", ou "rgb(255,0,0)". 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.
  • -
  • Un objet {{WebExtAPIRef('browserAction.ColorArray')}}.
  • -
  • null. Si un tabId 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.
  • -
-
-
tabId{{optional_inline}}
-
integer. 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.
-
windowId{{optional_inline}}
-
integer. Définit la couleur du texte du badge uniquement pour l'onglet donné.
-
-
-
- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.setBadgeTextColor",2)}}

- -

Exemples

- -

Une couleur de texte de badge qui commence par le rouge et passe au vert lorsque l'on clique sur l'action du navigateur :

- -
browser.browserAction.setBadgeText({text: "1234"});
-browser.browserAction.setBadgeTextColor({color: "red"});
-
-browser.browserAction.onClicked.addListener(()=> {
-  browser.browserAction.setBadgeTextColor({color: "green"});
-});
- -

Définissez la couleur du texte du badge uniquement pour l'onglet actif :

- -
browser.browserAction.setBadgeText({text: "1234"});
-browser.browserAction.setBadgeTextColor({color: "red"});
-
-browser.browserAction.onClicked.addListener((tab)=> {
-  browser.browserAction.setBadgeTextColor({
-    color: "green",
-    tabId: tab.id
-  });
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetextcolor/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetextcolor/index.md new file mode 100644 index 0000000000..a03c34cf47 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setbadgetextcolor/index.md @@ -0,0 +1,116 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.browserAction.setBadgeTextColor(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object

+
+
color
+

La couleur, spécifiée comme l'une des couleurs :

+
    +
  •  une chaîne : toute valeur CSS <color>, par exemple "red", "#FF0000", ou "rgb(255,0,0)". 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.
  • +
  • Un objet {{WebExtAPIRef('browserAction.ColorArray')}}.
  • +
  • null. Si un tabId 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.
  • +
+
+
tabId{{optional_inline}}
+
integer. 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.
+
windowId{{optional_inline}}
+
integer. Définit la couleur du texte du badge uniquement pour l'onglet donné.
+
+
+
+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.setBadgeTextColor",2)}}

+ +

Exemples

+ +

Une couleur de texte de badge qui commence par le rouge et passe au vert lorsque l'on clique sur l'action du navigateur :

+ +
browser.browserAction.setBadgeText({text: "1234"});
+browser.browserAction.setBadgeTextColor({color: "red"});
+
+browser.browserAction.onClicked.addListener(()=> {
+  browser.browserAction.setBadgeTextColor({color: "green"});
+});
+ +

Définissez la couleur du texte du badge uniquement pour l'onglet actif :

+ +
browser.browserAction.setBadgeText({text: "1234"});
+browser.browserAction.setBadgeTextColor({color: "red"});
+
+browser.browserAction.onClicked.addListener((tab)=> {
+  browser.browserAction.setBadgeTextColor({
+    color: "green",
+    tabId: tab.id
+  });
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+
+ + 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 deleted file mode 100644 index 04ca4243fb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/seticon/index.html +++ /dev/null @@ -1,191 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Définit l'icône pour l'action du navigateur.

- -

Vous pouvez spécifier une seule icône comme chemin d'accès à un fichier ou un objet {{WebExtAPIRef('browserAction.ImageDataType')}} .

- -

Vous pouvez spécifier plusieurs icônes dans différentes tailles en fournissant un dictionnaire contenant plusieurs chemins ou des objets  ImageData. 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.

- -

Les onglets sans icône spécifique hériteront de l'icône globale, qui par défaut est  default_icon specifié dans le manifest.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var settingIcon = browser.browserAction.setIcon(
-  details         // object
-)
-
- -

Paramètres

- -
-
details
-

object. Un objet contenant des propriétés imageData ou path, et éventuellement une propriété tabId .

-
-
imageData{{optional_inline}}
-
-

{{WebExtAPIRef('browserAction.ImageDataType')}} ou object. Il s'agit soit d'un seul objet ImageData ou un dictionnaire d'objet.

- -

Utilisez un dictionnaire d'objet pour spécifier plusieurs objets ImageData 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 imageData est un dictionnaire, la valeur de chaque propriété  est un objetImageData, et son nom est sa taille, comme ceci :

- -
{
-  16: image16,
-  32: image32
-}
- -

Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir Choix de la tailles d'icônes pour plus d'informations à ce sujet.

-
-
path{{optional_inline}}
-
-

string or object. Il s'agit du chemin relatif d'un fichier d'icône ou d'un objet de dictionnaire. 

- -

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 path est un dictionnaire, la valeur de chaque propriété est un chemin relatif , et son nom est sa taille, comme ceci :

- -
{
-  16: "path/to/image16.jpg",
-  32: "path/to/image32.jpg"
-}
- -

Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir Choix de la tailles d'icônes pour plus d'informations à ce sujet.

-
-
tabId{{optional_inline}}
-
integer. 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.
-
windowId{{optional_inline}}
-
integer. Définit l'icône de la fenêtre donnée.
-
-
-
- - - -

Si chaque imageData et path est un objet undefined, null ou vide :

- - - -

Valeur retournée

- -

Une Promise qui sera remplie sans arguments une fois que l'icône a été définie.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.setIcon",2)}}

- -

Exemples

- -

Le code ci-dessous utilise une action du navigateur pour basculer un auditeur pour {{WebExtAPIRef("webRequest.onHeadersReceived")}}, et utilise setIcon() pour indiquer si l'écoute est activée ou désactivée :

- -
function logResponseHeaders(requestDetails) {
-  console.log(requestDetails);
-}
-
-function startListening() {
-  browser.webRequest.onHeadersReceived.addListener(
-    logResponseHeaders,
-    {urls: ["<all_urls>"]},
-    ["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);
- -

Le code ci-dessous définit l'icône à l'aide d'un objetImageData :

- -
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(() => {
-  browser.browserAction.setIcon({imageData: getImageData()});
-});
-
- -

L'extrait suivant met à jour l'icône lorsque l'utilisateur clique, mais uniquement pour l'onglet actif :

- -
browser.browserAction.onClicked.addListener((tab) => {
-  browser.browserAction.setIcon({
-    tabId: tab.id, path: "icons/updated-48.png"
-  });
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/seticon/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/seticon/index.md new file mode 100644 index 0000000000..04ca4243fb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/seticon/index.md @@ -0,0 +1,191 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Définit l'icône pour l'action du navigateur.

+ +

Vous pouvez spécifier une seule icône comme chemin d'accès à un fichier ou un objet {{WebExtAPIRef('browserAction.ImageDataType')}} .

+ +

Vous pouvez spécifier plusieurs icônes dans différentes tailles en fournissant un dictionnaire contenant plusieurs chemins ou des objets  ImageData. 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.

+ +

Les onglets sans icône spécifique hériteront de l'icône globale, qui par défaut est  default_icon specifié dans le manifest.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var settingIcon = browser.browserAction.setIcon(
+  details         // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Un objet contenant des propriétés imageData ou path, et éventuellement une propriété tabId .

+
+
imageData{{optional_inline}}
+
+

{{WebExtAPIRef('browserAction.ImageDataType')}} ou object. Il s'agit soit d'un seul objet ImageData ou un dictionnaire d'objet.

+ +

Utilisez un dictionnaire d'objet pour spécifier plusieurs objets ImageData 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 imageData est un dictionnaire, la valeur de chaque propriété  est un objetImageData, et son nom est sa taille, comme ceci :

+ +
{
+  16: image16,
+  32: image32
+}
+ +

Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir Choix de la tailles d'icônes pour plus d'informations à ce sujet.

+
+
path{{optional_inline}}
+
+

string or object. Il s'agit du chemin relatif d'un fichier d'icône ou d'un objet de dictionnaire. 

+ +

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 path est un dictionnaire, la valeur de chaque propriété est un chemin relatif , et son nom est sa taille, comme ceci :

+ +
{
+  16: "path/to/image16.jpg",
+  32: "path/to/image32.jpg"
+}
+ +

Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir Choix de la tailles d'icônes pour plus d'informations à ce sujet.

+
+
tabId{{optional_inline}}
+
integer. 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.
+
windowId{{optional_inline}}
+
integer. Définit l'icône de la fenêtre donnée.
+
+
+
+ + + +

Si chaque imageData et path est un objet undefined, null ou vide :

+ + + +

Valeur retournée

+ +

Une Promise qui sera remplie sans arguments une fois que l'icône a été définie.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.setIcon",2)}}

+ +

Exemples

+ +

Le code ci-dessous utilise une action du navigateur pour basculer un auditeur pour {{WebExtAPIRef("webRequest.onHeadersReceived")}}, et utilise setIcon() pour indiquer si l'écoute est activée ou désactivée :

+ +
function logResponseHeaders(requestDetails) {
+  console.log(requestDetails);
+}
+
+function startListening() {
+  browser.webRequest.onHeadersReceived.addListener(
+    logResponseHeaders,
+    {urls: ["<all_urls>"]},
+    ["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);
+ +

Le code ci-dessous définit l'icône à l'aide d'un objetImageData :

+ +
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(() => {
+  browser.browserAction.setIcon({imageData: getImageData()});
+});
+
+ +

L'extrait suivant met à jour l'icône lorsque l'utilisateur clique, mais uniquement pour l'onglet actif :

+ +
browser.browserAction.onClicked.addListener((tab) => {
+  browser.browserAction.setIcon({
+    tabId: tab.id, path: "icons/updated-48.png"
+  });
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 02458b82c4..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/setpopup/index.html +++ /dev/null @@ -1,140 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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 default_popup spécifiée dans le manifest.

- -

Syntaxe

- -
browser.browserAction.setPopup(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object.

-
-
tabId{{optional_inline}}
-
integer. 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.
-
windowId{{optional_inline}}
-
integer. Définit le popup uniquement pour la fenêtre spécifiée.
-
popup
-
-

string ou null. Le fichier HTML à afficher dans un popup, spécifié comme URL.

- -

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 https://example.org/).

- -

Si une chaîne vide ("") est passée ici, le popup est désactivé, et l'extension recevra les événements {{WebExtAPIRef("browserAction.onClicked")}}.

- -

Si le popup est null:

- -

Si tabId est spécifié, supprime la fenêtre popup spécifique à l'onglet afin que l'onglet hérite de la fenêtre popup globale..

- -

Si windowId est spécifié, supprime le popup spécifique à la fenêtre afin que la fenêtre hérite du popup global.

- -

Sinon, la fenêtre contextuelle globale revient à la valeur par défaut.

-
-
-
-
- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserAction.setPopup",2)}}

- -

Exemples

- -

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 permission "contextMenus" définie dans le manifest de l'extension pour créer des éléments du menu contextuel.

- -
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"})
-  }
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/setpopup/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setpopup/index.md new file mode 100644 index 0000000000..02458b82c4 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/setpopup/index.md @@ -0,0 +1,140 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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 default_popup spécifiée dans le manifest.

+ +

Syntaxe

+ +
browser.browserAction.setPopup(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object.

+
+
tabId{{optional_inline}}
+
integer. 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.
+
windowId{{optional_inline}}
+
integer. Définit le popup uniquement pour la fenêtre spécifiée.
+
popup
+
+

string ou null. Le fichier HTML à afficher dans un popup, spécifié comme URL.

+ +

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 https://example.org/).

+ +

Si une chaîne vide ("") est passée ici, le popup est désactivé, et l'extension recevra les événements {{WebExtAPIRef("browserAction.onClicked")}}.

+ +

Si le popup est null:

+ +

Si tabId est spécifié, supprime la fenêtre popup spécifique à l'onglet afin que l'onglet hérite de la fenêtre popup globale..

+ +

Si windowId est spécifié, supprime le popup spécifique à la fenêtre afin que la fenêtre hérite du popup global.

+ +

Sinon, la fenêtre contextuelle globale revient à la valeur par défaut.

+
+
+
+
+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserAction.setPopup",2)}}

+ +

Exemples

+ +

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 permission "contextMenus" définie dans le manifest de l'extension pour créer des éléments du menu contextuel.

+ +
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"})
+  }
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 9de3566dcd..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browseraction/settitle/index.html +++ /dev/null @@ -1,126 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

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 tabId dans ou une windowId 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 default_title ou name specifié dans le manifest.

- -

Syntaxe

- -
browser.browserAction.setTitle(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object. Le nouveau titre et éventuellement l'ID de l'onglet ou de la fenêtre à cibler.

-
-
title
-
-

string ou null. La chaîne de caractères que l'action du navigateur doit afficher lorsqu'il y a une souris.

- -

Si title est une chaîne vide, le titre utilisé sera le nom de l'extension, mais {{WebExtAPIRef("browserAction.getTitle")}} fournira toujours la chaîne vide.

- -

Si title est null:

- -
    -
  • Si tabId 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.
  • -
  • Si windowId 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.
  • -
  • Sinon, le titre global sera réinitialisé au titre du manifest.
  • -
-
-
tabId{{Optional_Inline}}
-
-

integer. Définit le titre uniquement pour l'onglet donné.

-
-
windowId{{Optional_Inline}}
-
-

integer. Définit le titre de la fenêtre donnée.

-
-
-
-
- - - -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.browserAction.setTitle",10)}}

- -

Exemples

- -

Ce code change le titre entre "ceci" et "ça" chaque fois  que l'utilisateur clique sur l'action du navigateur :

- -
function toggleTitle(title) {
-  if (title == "this") {
-    browser.browserAction.setTitle({title: "that"});
-  } else {
-    browser.browserAction.setTitle({title: "this"});
-  }
-}
-
-browser.browserAction.onClicked.addListener(() => {
-  var gettingTitle = browser.browserAction.getTitle({});
-  gettingTitle.then(toggleTitle);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browseraction/settitle/index.md b/files/fr/mozilla/add-ons/webextensions/api/browseraction/settitle/index.md new file mode 100644 index 0000000000..9de3566dcd --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browseraction/settitle/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

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 tabId dans ou une windowId 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 default_title ou name specifié dans le manifest.

+ +

Syntaxe

+ +
browser.browserAction.setTitle(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Le nouveau titre et éventuellement l'ID de l'onglet ou de la fenêtre à cibler.

+
+
title
+
+

string ou null. La chaîne de caractères que l'action du navigateur doit afficher lorsqu'il y a une souris.

+ +

Si title est une chaîne vide, le titre utilisé sera le nom de l'extension, mais {{WebExtAPIRef("browserAction.getTitle")}} fournira toujours la chaîne vide.

+ +

Si title est null:

+ +
    +
  • Si tabId 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.
  • +
  • Si windowId 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.
  • +
  • Sinon, le titre global sera réinitialisé au titre du manifest.
  • +
+
+
tabId{{Optional_Inline}}
+
+

integer. Définit le titre uniquement pour l'onglet donné.

+
+
windowId{{Optional_Inline}}
+
+

integer. Définit le titre de la fenêtre donnée.

+
+
+
+
+ + + +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.browserAction.setTitle",10)}}

+ +

Exemples

+ +

Ce code change le titre entre "ceci" et "ça" chaque fois  que l'utilisateur clique sur l'action du navigateur :

+ +
function toggleTitle(title) {
+  if (title == "this") {
+    browser.browserAction.setTitle({title: "that"});
+  } else {
+    browser.browserAction.setTitle({title: "this"});
+  }
+}
+
+browser.browserAction.onClicked.addListener(() => {
+  var gettingTitle = browser.browserAction.getTitle({});
+  gettingTitle.then(toggleTitle);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browserAction. Cette documentation est dérivée de browser_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e3f24ec22b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/allowpopupsforuserevents/index.html +++ /dev/null @@ -1,54 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

La valeur sous-jacente  est un booléen.

- -

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 click, mouseup, submit. Si allowPopupsForUserEvents est défini sur false, aucun événement utilisateur ne pourra ouvrir des fenêtres contextuelles. Si elle est définie sur true, l'ensemble d'événements par défaut sera autorisé à ouvrir des fenêtres contextuelles.

- -

Par exemple, supposons qu'une page web comporte un code comme celui-ci :

- -
window.addEventListener("click", (e) => {
-  window.open("https://example.com","myPopup",'height=400,width=400');
-});
-
- -

Par défaut, cela ouvrira une fenêtre contextuelle. Si vos extensions définient allowPopupsForUserEvents à false, cela n'ouvrira pas la fenêtre contextuelle, et l'utilisateur sera informé que le popup était bloqué.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.allowPopupsForUserEvents")}}

- -

Exemples

- -

Basculer le réglage :

- -
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(() => {
-  toggleAllowPopup();
-});
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/allowpopupsforuserevents/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/allowpopupsforuserevents/index.md new file mode 100644 index 0000000000..e3f24ec22b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/allowpopupsforuserevents/index.md @@ -0,0 +1,54 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

La valeur sous-jacente  est un booléen.

+ +

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 click, mouseup, submit. Si allowPopupsForUserEvents est défini sur false, aucun événement utilisateur ne pourra ouvrir des fenêtres contextuelles. Si elle est définie sur true, l'ensemble d'événements par défaut sera autorisé à ouvrir des fenêtres contextuelles.

+ +

Par exemple, supposons qu'une page web comporte un code comme celui-ci :

+ +
window.addEventListener("click", (e) => {
+  window.open("https://example.com","myPopup",'height=400,width=400');
+});
+
+ +

Par défaut, cela ouvrira une fenêtre contextuelle. Si vos extensions définient allowPopupsForUserEvents à false, cela n'ouvrira pas la fenêtre contextuelle, et l'utilisateur sera informé que le popup était bloqué.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.allowPopupsForUserEvents")}}

+ +

Exemples

+ +

Basculer le réglage :

+ +
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(() => {
+  toggleAllowPopup();
+});
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index df7a1e5500..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/cacheenabled/index.html +++ /dev/null @@ -1,46 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour activer ou désactiver globalement le cache du navigateur.

- -

La valeur sous-jacente est un booléen.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.cacheEnabled")}}

- -

Exemples

- -

Obtenir une valeur actuelle de ce paramètre :

- -
function logResult(result) {
-  console.log(`Current value: ${result.value}`);
-  console.log(`Current level of control: ${result.levelOfControl}`);
-}
-
-browser.browserSettings.cacheEnabled.get({}).
-  then(logResult);
- -

Désactivation du cache du navigateur :

- -
function logResult(result) {
-  console.log(`Setting was modified: ${result}`);
-}
-
-browser.browserSettings.cacheEnabled.set({value: false}).
-  then(logResult);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/cacheenabled/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/cacheenabled/index.md new file mode 100644 index 0000000000..df7a1e5500 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/cacheenabled/index.md @@ -0,0 +1,46 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour activer ou désactiver globalement le cache du navigateur.

+ +

La valeur sous-jacente est un booléen.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.cacheEnabled")}}

+ +

Exemples

+ +

Obtenir une valeur actuelle de ce paramètre :

+ +
function logResult(result) {
+  console.log(`Current value: ${result.value}`);
+  console.log(`Current level of control: ${result.levelOfControl}`);
+}
+
+browser.browserSettings.cacheEnabled.get({}).
+  then(logResult);
+ +

Désactivation du cache du navigateur :

+ +
function logResult(result) {
+  console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.cacheEnabled.set({value: false}).
+  then(logResult);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 1bc3269a59..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/closetabsbydoubleclick/index.html +++ /dev/null @@ -1,25 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

La valeur sous-jacente est un booléen.

- -

Par défaut, closeTabsByDoubleClick est faux. Le réglage peut être modifié par l'utilisateur dans about:config.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.closeTabsByDoubleClick")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/closetabsbydoubleclick/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/closetabsbydoubleclick/index.md new file mode 100644 index 0000000000..1bc3269a59 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/closetabsbydoubleclick/index.md @@ -0,0 +1,25 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

La valeur sous-jacente est un booléen.

+ +

Par défaut, closeTabsByDoubleClick est faux. Le réglage peut être modifié par l'utilisateur dans about:config.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.closeTabsByDoubleClick")}}

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 deleted file mode 100644 index 99c1f5dd1f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/contextmenushowevent/index.html +++ /dev/null @@ -1,38 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Sa valeur sous-jacente est une chaîne qui peut être "mouseup" ou "mousedown".

- -

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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.contextMenuShowEvent")}}

- -

Exemples

- -

Réglez le paramètre sur "mouseup":

- -
function logResult(result) {
-  console.log(`Setting was modified: ${result}`);
-}
-
-browser.browserSettings.contextMenuShowEvent.set({value: "mouseup"}).
-  then(logResult);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/contextmenushowevent/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/contextmenushowevent/index.md new file mode 100644 index 0000000000..99c1f5dd1f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/contextmenushowevent/index.md @@ -0,0 +1,38 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Sa valeur sous-jacente est une chaîne qui peut être "mouseup" ou "mousedown".

+ +

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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.contextMenuShowEvent")}}

+ +

Exemples

+ +

Réglez le paramètre sur "mouseup":

+ +
function logResult(result) {
+  console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.contextMenuShowEvent.set({value: "mouseup"}).
+  then(logResult);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 592a79ed11..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/ftpprotocolenabled/index.html +++ /dev/null @@ -1,45 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui détermine si le protocole FTP est activé dans le navigateur.

- -

La valeur sous-jaccente est un booléen.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.ftpProtocolEnabled")}}

- -

Exemples

- -

Changer le réglage:

- -
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(() => {
-  toggleAllowFtp();
-});
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/ftpprotocolenabled/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/ftpprotocolenabled/index.md new file mode 100644 index 0000000000..592a79ed11 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/ftpprotocolenabled/index.md @@ -0,0 +1,45 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui détermine si le protocole FTP est activé dans le navigateur.

+ +

La valeur sous-jaccente est un booléen.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.ftpProtocolEnabled")}}

+ +

Exemples

+ +

Changer le réglage:

+ +
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(() => {
+  toggleAllowFtp();
+});
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index e91be7db8d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/homepageoverride/index.html +++ /dev/null @@ -1,34 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Notez qu'il s'agit d'un paramètre en lecture seule. Pour changer la page d'accueil, voir chrome_settings_overrides.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.homepageOverride", 10)}}

- -

Exemples

- -

Obtenez la valeur actuelle de l'URL de la page d'accueil :

- -
browser.browserSettings.homepageOverride.get({}).then(result => {
-  console.log(result.value);
-});
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/homepageoverride/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/homepageoverride/index.md new file mode 100644 index 0000000000..e91be7db8d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/homepageoverride/index.md @@ -0,0 +1,34 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Notez qu'il s'agit d'un paramètre en lecture seule. Pour changer la page d'accueil, voir chrome_settings_overrides.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.homepageOverride", 10)}}

+ +

Exemples

+ +

Obtenez la valeur actuelle de l'URL de la page d'accueil :

+ +
browser.browserSettings.homepageOverride.get({}).then(result => {
+  console.log(result.value);
+});
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index aca79c796c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/imageanimationbehavior/index.html +++ /dev/null @@ -1,36 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

La valeur sous-jacente est une chaîne qui peut prendre l'une des trois valeurs suivantes:

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.imageAnimationBehavior", 10)}}

- -

Exemples

- -

Désactiver les images animées :

- -
  browser.browserSettings.imageAnimationBehavior.set({value: "none"});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/imageanimationbehavior/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/imageanimationbehavior/index.md new file mode 100644 index 0000000000..aca79c796c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/imageanimationbehavior/index.md @@ -0,0 +1,36 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

La valeur sous-jacente est une chaîne qui peut prendre l'une des trois valeurs suivantes:

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.imageAnimationBehavior", 10)}}

+ +

Exemples

+ +

Désactiver les images animées :

+ +
  browser.browserSettings.imageAnimationBehavior.set({value: "none"});
+ +

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/index.html deleted file mode 100644 index ef39e6380a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/index.html +++ /dev/null @@ -1,71 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -
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.
- -
- -
Parce que ce sont les paramètres globaux, il est possible d'étendre les conflits des extensions. voir la documentation de BrowserSetting.set() pour plus détails sur la façon dont les conflits sont traités.
- -
- -
-

Pour utiliser cette API, vous devez avoir la permission "browserSettings".

-
- -

Propriétés

- -
-
{{WebExtAPIRef("browserSettings.allowPopupsForUserEvents")}}
-
Déterminer si le code exécuté dans les pages Web peut afficher les fenêtres contextuelles en réponse aux événements utilisateur.
-
{{WebExtAPIRef("browserSettings.cacheEnabled")}}
-
Déterminer si le cache du navigateur est activé ou pas.
-
{{WebExtAPIRef("browserSettings.closeTabsByDoubleClick")}}
-
Détermine si l'onglet sélectionné peut être fermé en double-cliquant
-
{{WebExtAPIRef("browserSettings.contextMenuShowEvent")}}
-
Détermine l'événement de souris qui déclenche un menu contextuel.
-
{{WebExtAPIRef("browserSettings.ftpProtocolEnabled")}}
-
Détermine si le protocole FTP est activé.
-
{{WebExtAPIRef("browserSettings.homepageOverride")}}
-
Lire la valeur de la page d'accueil du navigateur.
-
{{WebExtAPIRef("browserSettings.imageAnimationBehavior")}}
-
Détermine comment le navigateur traite les images animées.
-
{{WebExtAPIRef("browserSettings.newTabPageOverride")}}
-
Lire la valeur de la nouvelle page de l'onglet du navigateur.
-
{{WebExtAPIRef("browserSettings.newTabPosition")}}
-
Contrôle la position des onglets nouvellement ouverts par rapport aux onglets déjà ouverts.
-
{{WebExtAPIRef("browserSettings.openBookmarksInNewTabs")}}
-
Détermine si les signets sont ouverts dans l'onglet actuel ou dans un nouvel onglet.
-
{{WebExtAPIRef("browserSettings.openSearchResultsInNewTabs")}}
-
Détermine si les résultats de recherche sont ouverts dans l'onglet actuel ou dans un nouvel onglet.
-
{{WebExtAPIRef("browserSettings.openUrlbarResultsInNewTabs")}}
-
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.
-
{{WebExtAPIRef("browserSettings.overrideDocumentColors")}}
-
Contrôle si les couleurs choisies par l'utilisateur remplacent les couleurs de la page.
-
{{WebExtAPIRef("browserSettings.useDocumentFonts")}}
-
Contrôle si le navigateur utilisera les polices spécifiées par une page Web ou n'utilisera que des polices intégrées.
-
{{WebExtAPIRef("browserSettings.webNotificationsDisabled")}}
-
Empêche les sites Web d'afficher des notifications à l'aide de la web API  Notification.
-
{{WebExtAPIRef("browserSettings.zoomFullPage")}}
-
Contrôle si le zoom est appliqué à la page entière ou seulement au texte.
-
{{WebExtAPIRef("browserSettings.zoomSiteSpecific")}}
-
Contrôle si le zoom est appliqué sur un modèle par-site ou par-onglet. Si {{WebExtAPIRef("privacy.websites")}}.resistFingerprinting est à vrai, ce réglage n'a aucun effet et le modèle de zoom appliqué reste par-onglet.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings")}}

- -

{{WebExtExamples("h2")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/index.md new file mode 100644 index 0000000000..ef39e6380a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +
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.
+ +
+ +
Parce que ce sont les paramètres globaux, il est possible d'étendre les conflits des extensions. voir la documentation de BrowserSetting.set() pour plus détails sur la façon dont les conflits sont traités.
+ +
+ +
+

Pour utiliser cette API, vous devez avoir la permission "browserSettings".

+
+ +

Propriétés

+ +
+
{{WebExtAPIRef("browserSettings.allowPopupsForUserEvents")}}
+
Déterminer si le code exécuté dans les pages Web peut afficher les fenêtres contextuelles en réponse aux événements utilisateur.
+
{{WebExtAPIRef("browserSettings.cacheEnabled")}}
+
Déterminer si le cache du navigateur est activé ou pas.
+
{{WebExtAPIRef("browserSettings.closeTabsByDoubleClick")}}
+
Détermine si l'onglet sélectionné peut être fermé en double-cliquant
+
{{WebExtAPIRef("browserSettings.contextMenuShowEvent")}}
+
Détermine l'événement de souris qui déclenche un menu contextuel.
+
{{WebExtAPIRef("browserSettings.ftpProtocolEnabled")}}
+
Détermine si le protocole FTP est activé.
+
{{WebExtAPIRef("browserSettings.homepageOverride")}}
+
Lire la valeur de la page d'accueil du navigateur.
+
{{WebExtAPIRef("browserSettings.imageAnimationBehavior")}}
+
Détermine comment le navigateur traite les images animées.
+
{{WebExtAPIRef("browserSettings.newTabPageOverride")}}
+
Lire la valeur de la nouvelle page de l'onglet du navigateur.
+
{{WebExtAPIRef("browserSettings.newTabPosition")}}
+
Contrôle la position des onglets nouvellement ouverts par rapport aux onglets déjà ouverts.
+
{{WebExtAPIRef("browserSettings.openBookmarksInNewTabs")}}
+
Détermine si les signets sont ouverts dans l'onglet actuel ou dans un nouvel onglet.
+
{{WebExtAPIRef("browserSettings.openSearchResultsInNewTabs")}}
+
Détermine si les résultats de recherche sont ouverts dans l'onglet actuel ou dans un nouvel onglet.
+
{{WebExtAPIRef("browserSettings.openUrlbarResultsInNewTabs")}}
+
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.
+
{{WebExtAPIRef("browserSettings.overrideDocumentColors")}}
+
Contrôle si les couleurs choisies par l'utilisateur remplacent les couleurs de la page.
+
{{WebExtAPIRef("browserSettings.useDocumentFonts")}}
+
Contrôle si le navigateur utilisera les polices spécifiées par une page Web ou n'utilisera que des polices intégrées.
+
{{WebExtAPIRef("browserSettings.webNotificationsDisabled")}}
+
Empêche les sites Web d'afficher des notifications à l'aide de la web API  Notification.
+
{{WebExtAPIRef("browserSettings.zoomFullPage")}}
+
Contrôle si le zoom est appliqué à la page entière ou seulement au texte.
+
{{WebExtAPIRef("browserSettings.zoomSiteSpecific")}}
+
Contrôle si le zoom est appliqué sur un modèle par-site ou par-onglet. Si {{WebExtAPIRef("privacy.websites")}}.resistFingerprinting est à vrai, ce réglage n'a aucun effet et le modèle de zoom appliqué reste par-onglet.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings")}}

+ +

{{WebExtExamples("h2")}}

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 deleted file mode 100644 index 544110550b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabpageoverride/index.html +++ /dev/null @@ -1,34 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Notez qu'il s'agit d'un paramètre en lecture seule.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.newTabPageOverride", 10)}}

- -

Exemples

- -

Obtenir la valeur actuelle de la nouvelle URL de l'onglet :

- -
browser.browserSettings.newTabPageOverride.get({}).then(result => {
-  console.log(result.value);
-});
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabpageoverride/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabpageoverride/index.md new file mode 100644 index 0000000000..544110550b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabpageoverride/index.md @@ -0,0 +1,34 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Notez qu'il s'agit d'un paramètre en lecture seule.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.newTabPageOverride", 10)}}

+ +

Exemples

+ +

Obtenir la valeur actuelle de la nouvelle URL de l'onglet :

+ +
browser.browserSettings.newTabPageOverride.get({}).then(result => {
+  console.log(result.value);
+});
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 7acc08e98a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabposition/index.html +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: browserSettings.newTabPosition -slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/newTabPosition -translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/newTabPosition ---- -
{{AddonSidebar()}}
- -

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.

- -

La valeur sous-jacente est une chaîne qui peut prendre l'une des trois valeurs suivantes :

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.newTabPosition", 10)}}

- -

Exemples

- -

Ce code définit la valeur à "afterCurrent" puis enregistre la nouvelle valeur :

- -
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}`);
-}
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabposition/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabposition/index.md new file mode 100644 index 0000000000..7acc08e98a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/newtabposition/index.md @@ -0,0 +1,34 @@ +--- +title: browserSettings.newTabPosition +slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/newTabPosition +translation_of: Mozilla/Add-ons/WebExtensions/API/browserSettings/newTabPosition +--- +
{{AddonSidebar()}}
+ +

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.

+ +

La valeur sous-jacente est une chaîne qui peut prendre l'une des trois valeurs suivantes :

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.newTabPosition", 10)}}

+ +

Exemples

+ +

Ce code définit la valeur à "afterCurrent" puis enregistre la nouvelle valeur :

+ +
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}`);
+}
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index b83b8657b1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openbookmarksinnewtabs/index.html +++ /dev/null @@ -1,36 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est un booléen.

- -

Si la valeur est true, alors lorsque l'utilisateur sélectionne un signet, il sera ouvert dans un nouvel onglet. Si la valeur estfalse (valeur par défaut), les marque-pages sont ouverts dans l'onglet en cours.

- -

Compatibilité de navigateur

- -

{{Compat("webextensions.api.browserSettings.openBookmarksInNewTabs")}}

- -

Exemples

- -

Définissez le paramètre sur true:

- -
function logResult(result) {
-  console.log(`Setting was modified: ${result}`);
-}
-
-browser.browserSettings.openBookmarksInNewTabs.set({value: true}).
-  then(logResult);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openbookmarksinnewtabs/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openbookmarksinnewtabs/index.md new file mode 100644 index 0000000000..b83b8657b1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openbookmarksinnewtabs/index.md @@ -0,0 +1,36 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est un booléen.

+ +

Si la valeur est true, alors lorsque l'utilisateur sélectionne un signet, il sera ouvert dans un nouvel onglet. Si la valeur estfalse (valeur par défaut), les marque-pages sont ouverts dans l'onglet en cours.

+ +

Compatibilité de navigateur

+ +

{{Compat("webextensions.api.browserSettings.openBookmarksInNewTabs")}}

+ +

Exemples

+ +

Définissez le paramètre sur true:

+ +
function logResult(result) {
+  console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.openBookmarksInNewTabs.set({value: true}).
+  then(logResult);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 0c2873fd64..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/opensearchresultsinnewtabs/index.html +++ /dev/null @@ -1,38 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est un booléen.

- -

Si la valeur est définie à true, 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 false (valeur par défaut), les résultats de la recherche apparaissent dans l'onglet en cours.

- -

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..

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.openSearchResultsInNewTabs")}}

- -

Exemples

- -

Définissez le paramètre sur true:

- -
function logResult(result) {
-  console.log(`Setting was modified: ${result}`);
-}
-
-browser.browserSettings.openSearchResultsInNewTabs.set({value: true}).
-  then(logResult);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/opensearchresultsinnewtabs/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/opensearchresultsinnewtabs/index.md new file mode 100644 index 0000000000..0c2873fd64 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/opensearchresultsinnewtabs/index.md @@ -0,0 +1,38 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est un booléen.

+ +

Si la valeur est définie à true, 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 false (valeur par défaut), les résultats de la recherche apparaissent dans l'onglet en cours.

+ +

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..

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.openSearchResultsInNewTabs")}}

+ +

Exemples

+ +

Définissez le paramètre sur true:

+ +
function logResult(result) {
+  console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.openSearchResultsInNewTabs.set({value: true}).
+  then(logResult);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 40d8b35aaf..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openurlbarresultsinnewtabs/index.html +++ /dev/null @@ -1,38 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est un booléen.

- -

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.

- -

Si la valeur est true, alors lorsque l'utiliseur sélectionne l'un des éléments, l'élément est ouvert dans un nouvel onglet. Si la valeur est false (valeur par défaut) l'élément est ouvert dans l'onglet en cours.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.openUrlbarResultsInNewTabs")}}

- -

Exemples

- -

Définit le paramètre à true:

- -
function logResult(result) {
-  console.log(`Setting was modified: ${result}`);
-}
-
-browser.browserSettings.openUrlbarResultsInNewTabs.set({value: true}).
-  then(logResult);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openurlbarresultsinnewtabs/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openurlbarresultsinnewtabs/index.md new file mode 100644 index 0000000000..40d8b35aaf --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/openurlbarresultsinnewtabs/index.md @@ -0,0 +1,38 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est un booléen.

+ +

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.

+ +

Si la valeur est true, alors lorsque l'utiliseur sélectionne l'un des éléments, l'élément est ouvert dans un nouvel onglet. Si la valeur est false (valeur par défaut) l'élément est ouvert dans l'onglet en cours.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.openUrlbarResultsInNewTabs")}}

+ +

Exemples

+ +

Définit le paramètre à true:

+ +
function logResult(result) {
+  console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.openUrlbarResultsInNewTabs.set({value: true}).
+  then(logResult);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 13946e6f18..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/overridedocumentcolors/index.html +++ /dev/null @@ -1,44 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est une chaîne.

- -

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.

- -

Sa valeur sous-jacente est une chaîne qui peut prendre l'une des valeurs suivantes:

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.openUrlbarResultsInNewTabs")}}

- -

Exemples

- -

Définissez le paramètre sur "always":

- -
function logResult(result) {
-  console.log(`Setting was modified: ${result}`);
-}
-
-browser.browserSettings.overrideDocumentColors.set({value: "always"}).
-  then(logResult);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/overridedocumentcolors/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/overridedocumentcolors/index.md new file mode 100644 index 0000000000..13946e6f18 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/overridedocumentcolors/index.md @@ -0,0 +1,44 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est une chaîne.

+ +

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.

+ +

Sa valeur sous-jacente est une chaîne qui peut prendre l'une des valeurs suivantes:

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.openUrlbarResultsInNewTabs")}}

+ +

Exemples

+ +

Définissez le paramètre sur "always":

+ +
function logResult(result) {
+  console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.overrideDocumentColors.set({value: "always"}).
+  then(logResult);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index fc9a4ee16c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/usedocumentfonts/index.html +++ /dev/null @@ -1,43 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est un booléen.

- -

Par défaut, bien sûr, les pages Web peuvent spécifier les polices qu'ils veulent utiliser les propriétés CSS comme font-family. 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.

- -

Sa valeur sous-jacente est un booléen :

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.useDocumentFonts")}}

- -

Exemples

- -

Définissez le paramètre sur false:

- -
function logResult(result) {
-  console.log(`Setting was modified: ${result}`);
-}
-
-browser.browserSettings.useDocumentFonts.set({value: false}).
-  then(logResult);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/usedocumentfonts/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/usedocumentfonts/index.md new file mode 100644 index 0000000000..fc9a4ee16c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/usedocumentfonts/index.md @@ -0,0 +1,43 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jacente est un booléen.

+ +

Par défaut, bien sûr, les pages Web peuvent spécifier les polices qu'ils veulent utiliser les propriétés CSS comme font-family. 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.

+ +

Sa valeur sous-jacente est un booléen :

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.useDocumentFonts")}}

+ +

Exemples

+ +

Définissez le paramètre sur false:

+ +
function logResult(result) {
+  console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.useDocumentFonts.set({value: false}).
+  then(logResult);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 799854cd60..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/webnotificationsdisabled/index.html +++ /dev/null @@ -1,47 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour empêcher les sites Web d'afficher des Notifications à l'aide de l'API Web de notifications.

- -

L'API Notifications est utilisée pour afficher les notifications de bureau à l'utilisateur. Il existe trois niveaux d'autorisation pour les notifications : allow, deny, et prompt. 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 invitée.

- -

Définir browserSettings.webNotificationsDisabled à true change l'autorisation globale à refuser.

- -

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 https://example.org pour autoriser, et une extension place ensuite browserSettings.webNotificationsDisabled à true, alors les pages sous https://example.org seront toujours autorisées à afficher des notifications..

- -

Si vous définissez browserSettings.webNotificationsDisabled à false la valeur par défaut globale est rétablie.

- -

Notez que ce paramètre n'a aucun effet sur les notifications créées par des extensions à l'aide de l'API de notifications.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.webNotificationsDisabled")}}

- -

Exemples

- -

Basculer le paramètre :

- -
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(() => {
-  toggleWebNotifications();
-});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/webnotificationsdisabled/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/webnotificationsdisabled/index.md new file mode 100644 index 0000000000..799854cd60 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/webnotificationsdisabled/index.md @@ -0,0 +1,47 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour empêcher les sites Web d'afficher des Notifications à l'aide de l'API Web de notifications.

+ +

L'API Notifications est utilisée pour afficher les notifications de bureau à l'utilisateur. Il existe trois niveaux d'autorisation pour les notifications : allow, deny, et prompt. 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 invitée.

+ +

Définir browserSettings.webNotificationsDisabled à true change l'autorisation globale à refuser.

+ +

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 https://example.org pour autoriser, et une extension place ensuite browserSettings.webNotificationsDisabled à true, alors les pages sous https://example.org seront toujours autorisées à afficher des notifications..

+ +

Si vous définissez browserSettings.webNotificationsDisabled à false la valeur par défaut globale est rétablie.

+ +

Notez que ce paramètre n'a aucun effet sur les notifications créées par des extensions à l'aide de l'API de notifications.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.webNotificationsDisabled")}}

+ +

Exemples

+ +

Basculer le paramètre :

+ +
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(() => {
+  toggleWebNotifications();
+});
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 044dcf1a7f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomfullpage/index.html +++ /dev/null @@ -1,43 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jaccente est un booléen.

- -

Par défaut, le zoom s'applique à la page web entière. En utilisant le Zoom Text Only setting les utilisateurs/utilisatrices peuvent choisir de zoomer uniquement le texte de la page. 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.

- -

Valeurs du paramètre:

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.zoomFullPage")}}

- -

Exemples

- -

Mettre le réglage à false:

- -
function afficherResultat(resultat) {
-  console.log(`Le paramètre a été modifié: ${resultat}`);
-}
-
-browser.browserSettings.zoomFullPage.set({value: false}).
-  then(afficherResultat);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomfullpage/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomfullpage/index.md new file mode 100644 index 0000000000..044dcf1a7f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomfullpage/index.md @@ -0,0 +1,43 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jaccente est un booléen.

+ +

Par défaut, le zoom s'applique à la page web entière. En utilisant le Zoom Text Only setting les utilisateurs/utilisatrices peuvent choisir de zoomer uniquement le texte de la page. 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.

+ +

Valeurs du paramètre:

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.zoomFullPage")}}

+ +

Exemples

+ +

Mettre le réglage à false:

+ +
function afficherResultat(resultat) {
+  console.log(`Le paramètre a été modifié: ${resultat}`);
+}
+
+browser.browserSettings.zoomFullPage.set({value: false}).
+  then(afficherResultat);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 35121f3702..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomsitespecific/index.html +++ /dev/null @@ -1,53 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jaccente est un booléen.

- -

Cette propriété contrôle le réglage de configuration browser.zoom.siteSpecific, qui règle comment le zoom est appliqué aux sites et onglets.

- -

Si browser.zoom.siteSpecific est à vrai, les opérations de zoom s'appliquent à toutes les pages du même site selon les règles :

- - - -

Si la préférence browser.zoom.siteSpecific est à faux, les opérations de zoom s'appliquent uniquement à l'onglet actif selon les règles :

- - - -

Lors de l'installation de Firefox, browser.zoom.siteSpecific est à vrai.

- -

Si privacy.websites.resistFingerprinting est à vrai, ce réglage ne peut pas être changé et le niveau de zoom est appliqué sur le schéma par-onglet.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browserSettings.zoomSiteSpecific")}}

- -

Exemples

- -

Mettre le réglage à false:

- -
function logResult(result) {
-  console.log(`Setting was modified: ${result}`);
-}
-
-browser.browserSettings.zoomSiteSpecific.set({value: false}).
-  then(logResult);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomsitespecific/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomsitespecific/index.md new file mode 100644 index 0000000000..35121f3702 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsersettings/zoomsitespecific/index.md @@ -0,0 +1,53 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} dont la valeur sous-jaccente est un booléen.

+ +

Cette propriété contrôle le réglage de configuration browser.zoom.siteSpecific, qui règle comment le zoom est appliqué aux sites et onglets.

+ +

Si browser.zoom.siteSpecific est à vrai, les opérations de zoom s'appliquent à toutes les pages du même site selon les règles :

+ + + +

Si la préférence browser.zoom.siteSpecific est à faux, les opérations de zoom s'appliquent uniquement à l'onglet actif selon les règles :

+ + + +

Lors de l'installation de Firefox, browser.zoom.siteSpecific est à vrai.

+ +

Si privacy.websites.resistFingerprinting est à vrai, ce réglage ne peut pas être changé et le niveau de zoom est appliqué sur le schéma par-onglet.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browserSettings.zoomSiteSpecific")}}

+ +

Exemples

+ +

Mettre le réglage à false:

+ +
function logResult(result) {
+  console.log(`Setting was modified: ${result}`);
+}
+
+browser.browserSettings.zoomSiteSpecific.set({value: false}).
+  then(logResult);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 19b6f90179..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/datatypeset/index.html +++ /dev/null @@ -1,99 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type browsingData.DataTypeSet  décrit un ensemble de types de données.

- -

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.

- -

Ce type est utilisé :

- - - -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
cache {{optional_inline}}
-
boolean. Le cache du navigateur
-
cookies {{optional_inline}}
-
boolean. Cookies acquis en cours de la navigation.
-
downloads {{optional_inline}}
-
boolean. L'historique de téléchargement de l'utilisateur.
-
fileSystems {{optional_inline}}
-
boolean. Les systèmes de fichiers du site Web.
-
formData {{optional_inline}}
-
boolean. Données de formulaire enregistrées, pour la saisie semi-automatique.
-
history {{optional_inline}}
-
boolean. L'histoire de navigation de l'utilisateur.
-
indexedDB {{optional_inline}}
-
boolean. Données IndexedDB.
-
localStorage {{optional_inline}}
-
boolean. Données de stockage local.
-
passwords {{optional_inline}}
-
boolean. Mots de pass enregistrés, pour la saisie semi-automatique.
-
pluginData {{optional_inline}}
-
boolean. Données stockées associées aux plugins.
-
serverBoundCertificates {{optional_inline}}
-
boolean. Certificats liés au serveur stockés.
-
serviceWorkers {{optional_inline}}
-
boolean. Données mises en cache par les travailleurs du service.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browsingData.DataTypeSet")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/datatypeset/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/datatypeset/index.md new file mode 100644 index 0000000000..19b6f90179 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/datatypeset/index.md @@ -0,0 +1,99 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type browsingData.DataTypeSet  décrit un ensemble de types de données.

+ +

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.

+ +

Ce type est utilisé :

+ + + +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
cache {{optional_inline}}
+
boolean. Le cache du navigateur
+
cookies {{optional_inline}}
+
boolean. Cookies acquis en cours de la navigation.
+
downloads {{optional_inline}}
+
boolean. L'historique de téléchargement de l'utilisateur.
+
fileSystems {{optional_inline}}
+
boolean. Les systèmes de fichiers du site Web.
+
formData {{optional_inline}}
+
boolean. Données de formulaire enregistrées, pour la saisie semi-automatique.
+
history {{optional_inline}}
+
boolean. L'histoire de navigation de l'utilisateur.
+
indexedDB {{optional_inline}}
+
boolean. Données IndexedDB.
+
localStorage {{optional_inline}}
+
boolean. Données de stockage local.
+
passwords {{optional_inline}}
+
boolean. Mots de pass enregistrés, pour la saisie semi-automatique.
+
pluginData {{optional_inline}}
+
boolean. Données stockées associées aux plugins.
+
serverBoundCertificates {{optional_inline}}
+
boolean. Certificats liés au serveur stockés.
+
serviceWorkers {{optional_inline}}
+
boolean. Données mises en cache par les travailleurs du service.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browsingData.DataTypeSet")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/index.html b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/index.html deleted file mode 100644 index fb8a350fa3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/index.html +++ /dev/null @@ -1,122 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Permet aux extensions d'effacer les données accumulées pendant la navigation de l'utilisateur.

- -

Dans l'API browsingData, les données de navigations sont divisées en types :

- - - -

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.

- -

Toutes les fonctions browsingData.remove[X]() prennent un objet  {{WebExtAPIRef("browsingData.RemovalOptions")}} que vous pouvez utiliser pour contrôler deux autres aspects de la suppression des données :

- - - -

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.

- -

Pour utiliser cette API, vous devez disposer de l'API permission "browseData".

- -

Types

- -
-
{{WebExtAPIRef("browsingData.DataTypeSet")}}
-
Objet utilisé pour spécifier le type de données à supprimer: par exemple, l'historique, les téléchargements, les mots de passe, etc.
-
{{WebExtAPIRef("browsingData.RemovalOptions")}}
-
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.
-
- -

Méthodes

- -
-
{{WebExtAPIRef("browsingData.remove()")}}
-
Supprime les données de navigation pour les types de données spécifiés.
-
{{WebExtAPIRef("browsingData.removeCache()")}}
-
Efface le cache du navigateur.
-
{{WebExtAPIRef("browsingData.removeCookies()")}}
-
Supprime les cookies
-
{{WebExtAPIRef("browsingData.removeDownloads()")}}
-
Supprime la liste des fichiers téléchargés.
-
{{WebExtAPIRef("browsingData.removeFormData()")}}
-
Efface les données de formulaire enregistrées.
-
{{WebExtAPIRef("browsingData.removeHistory()")}}
-
Efface l'historique du navigateur.
-
{{WebExtAPIRef("browsingData.removeLocalStorage()")}}
-
Efface tout stockage local créé par des sites web.
-
{{WebExtAPIRef("browsingData.removePasswords()")}}
-
Efface les mots de passe enregistrés.
-
{{WebExtAPIRef("browsingData.removePluginData()")}}
-
Efface les données associées aux plugins.
-
{{WebExtAPIRef("browsingData.settings()")}}
-
Obtient la valeur actuelle des paramètres dans la fonction "Effacer l'historique" du navigateur
-
- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.browsingData", 2)}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/index.md new file mode 100644 index 0000000000..fb8a350fa3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/index.md @@ -0,0 +1,122 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

Permet aux extensions d'effacer les données accumulées pendant la navigation de l'utilisateur.

+ +

Dans l'API browsingData, les données de navigations sont divisées en types :

+ + + +

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.

+ +

Toutes les fonctions browsingData.remove[X]() prennent un objet  {{WebExtAPIRef("browsingData.RemovalOptions")}} que vous pouvez utiliser pour contrôler deux autres aspects de la suppression des données :

+ + + +

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.

+ +

Pour utiliser cette API, vous devez disposer de l'API permission "browseData".

+ +

Types

+ +
+
{{WebExtAPIRef("browsingData.DataTypeSet")}}
+
Objet utilisé pour spécifier le type de données à supprimer: par exemple, l'historique, les téléchargements, les mots de passe, etc.
+
{{WebExtAPIRef("browsingData.RemovalOptions")}}
+
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.
+
+ +

Méthodes

+ +
+
{{WebExtAPIRef("browsingData.remove()")}}
+
Supprime les données de navigation pour les types de données spécifiés.
+
{{WebExtAPIRef("browsingData.removeCache()")}}
+
Efface le cache du navigateur.
+
{{WebExtAPIRef("browsingData.removeCookies()")}}
+
Supprime les cookies
+
{{WebExtAPIRef("browsingData.removeDownloads()")}}
+
Supprime la liste des fichiers téléchargés.
+
{{WebExtAPIRef("browsingData.removeFormData()")}}
+
Efface les données de formulaire enregistrées.
+
{{WebExtAPIRef("browsingData.removeHistory()")}}
+
Efface l'historique du navigateur.
+
{{WebExtAPIRef("browsingData.removeLocalStorage()")}}
+
Efface tout stockage local créé par des sites web.
+
{{WebExtAPIRef("browsingData.removePasswords()")}}
+
Efface les mots de passe enregistrés.
+
{{WebExtAPIRef("browsingData.removePluginData()")}}
+
Efface les données associées aux plugins.
+
{{WebExtAPIRef("browsingData.settings()")}}
+
Obtient la valeur actuelle des paramètres dans la fonction "Effacer l'historique" du navigateur
+
+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.browsingData", 2)}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 02beb4443c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removaloptions/index.html +++ /dev/null @@ -1,89 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type browsingData.RemovalOptions contient des options permettant de contrôler certains aspects de la suppression des données de navigation.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes:

- -
-
hostnames {{optional_inline}}
-
-

Array of string. 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.

- -

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  URL 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.

-
-
originTypes {{optional_inline}}
-
-

object. 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 ("unprotectedWeb") 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.

- -

Cet objet peut contenir l'une des propriétés suivantes :

- -
-
unprotectedWeb {{optional_inline}}
-
boolean. Si présent et true, supprime les données de la pages Web normales.
-
protectedWeb {{optional_inline}}
-
boolean. Si présent et true, supprime les données de site Web qui ont été installés en tant qu'applications hébergées.
-
extension {{optional_inline}}
-
boolean. Si présent et true, supprime les données d'extensions.
-
-
-
since {{optional_inline}}
-
number. Jusqu'à quand remontent les données, données en millisecondes depuis l'époque UNIX. 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é since est omise, la valeur par défaut est 0, ce qui signifie "pour toujours".
-
- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.browsingData.RemovalOptions", 2)}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removaloptions/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removaloptions/index.md new file mode 100644 index 0000000000..02beb4443c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removaloptions/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Le type browsingData.RemovalOptions contient des options permettant de contrôler certains aspects de la suppression des données de navigation.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes:

+ +
+
hostnames {{optional_inline}}
+
+

Array of string. 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.

+ +

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  URL 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.

+
+
originTypes {{optional_inline}}
+
+

object. 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 ("unprotectedWeb") 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.

+ +

Cet objet peut contenir l'une des propriétés suivantes :

+ +
+
unprotectedWeb {{optional_inline}}
+
boolean. Si présent et true, supprime les données de la pages Web normales.
+
protectedWeb {{optional_inline}}
+
boolean. Si présent et true, supprime les données de site Web qui ont été installés en tant qu'applications hébergées.
+
extension {{optional_inline}}
+
boolean. Si présent et true, supprime les données d'extensions.
+
+
+
since {{optional_inline}}
+
number. Jusqu'à quand remontent les données, données en millisecondes depuis l'époque UNIX. 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é since est omise, la valeur par défaut est 0, ce qui signifie "pour toujours".
+
+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.browsingData.RemovalOptions", 2)}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+
+ + 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 deleted file mode 100644 index 304ad17451..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/remove/index.html +++ /dev/null @@ -1,127 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Supprime les données de navigation spécifiées.

- -

Les données de navigation à supprimer sont spécifiées dans l'option  dataTypes, qui est un objet  {{WebExtAPIRef("browsingData.DataTypeSet")}}.

- -

Vous pouvez utiliser l'option removalOptions, 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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.browsingData.remove(
-  removalOptions,            // RemovalOptions object
-  dataTypes                  // DataTypeSet object
-)
-
- -

Paramètres

- -
-
removalOptions
-
object. 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.
-
dataTypes
-
object. Un objet {{WebExtAPIRef("browsingData.DataTypeSet")}}, décrit les types de données à supprimer (par exemple, historique, les téléchargements,...).
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browsingData.remove")}}

- -

Exemples

- -

Supprimer l'historique des téléchargements et de l'histoire de navigation de la semaine dernière :

- -
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);
-
- -

Supprimer tout l'historique de téléchargement et de navigation :

- -
function onRemoved() {
-  console.log("removed");
-}
-
-function onError(error) {
-  console.error(error);
-}
-
-browser.browsingData.remove({},
-  {downloads: true, history: true}).
-then(onRemoved, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/remove/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/remove/index.md new file mode 100644 index 0000000000..304ad17451 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/remove/index.md @@ -0,0 +1,127 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Supprime les données de navigation spécifiées.

+ +

Les données de navigation à supprimer sont spécifiées dans l'option  dataTypes, qui est un objet  {{WebExtAPIRef("browsingData.DataTypeSet")}}.

+ +

Vous pouvez utiliser l'option removalOptions, 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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.browsingData.remove(
+  removalOptions,            // RemovalOptions object
+  dataTypes                  // DataTypeSet object
+)
+
+ +

Paramètres

+ +
+
removalOptions
+
object. 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.
+
dataTypes
+
object. Un objet {{WebExtAPIRef("browsingData.DataTypeSet")}}, décrit les types de données à supprimer (par exemple, historique, les téléchargements,...).
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browsingData.remove")}}

+ +

Exemples

+ +

Supprimer l'historique des téléchargements et de l'histoire de navigation de la semaine dernière :

+ +
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);
+
+ +

Supprimer tout l'historique de téléchargement et de navigation :

+ +
function onRemoved() {
+  console.log("removed");
+}
+
+function onError(error) {
+  console.error(error);
+}
+
+browser.browsingData.remove({},
+  {downloads: true, history: true}).
+then(onRemoved, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 4159e5bd9d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecache/index.html +++ /dev/null @@ -1,98 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Effacer le cache du navigateur.

- -

Notez que cette fonction puisse prendre un objet  {{WebExtAPIRef("browsingData.RemovalOptions")}}, elle sera ignorée. Le cache entier est toujours effacé lors de l'utilisation de cette fonction.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.browsingData.removeCache(
-  removalOptions            // RemovalOptions object
-)
-
- -

Paramètres

- -
-
removalOptions {{optional_inline}}
-
object. Un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}. Ce paramètre n'a aucun effet
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browsingData.removeCache")}}

- -

Exemples

- -

Effacer le cache du navigateur :

- -
function onRemoved() {
-  console.log("removed");
-}
-
-function onError(error) {
-  console.error(error);
-}
-
-browser.browsingData.removeCache({}).
-then(onRemoved, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecache/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecache/index.md new file mode 100644 index 0000000000..4159e5bd9d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecache/index.md @@ -0,0 +1,98 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Effacer le cache du navigateur.

+ +

Notez que cette fonction puisse prendre un objet  {{WebExtAPIRef("browsingData.RemovalOptions")}}, elle sera ignorée. Le cache entier est toujours effacé lors de l'utilisation de cette fonction.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.browsingData.removeCache(
+  removalOptions            // RemovalOptions object
+)
+
+ +

Paramètres

+ +
+
removalOptions {{optional_inline}}
+
object. Un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}. Ce paramètre n'a aucun effet
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browsingData.removeCache")}}

+ +

Exemples

+ +

Effacer le cache du navigateur :

+ +
function onRemoved() {
+  console.log("removed");
+}
+
+function onError(error) {
+  console.error(error);
+}
+
+browser.browsingData.removeCache({}).
+then(onRemoved, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index dd543a2a24..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecookies/index.html +++ /dev/null @@ -1,129 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Efface les cookies du navigateur

- -

Vous pouvez utiliser le paramètre removalOptions, qui est un objet  {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :

- - - -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.browsingData.removeCookies(
-  removalOptions            // RemovalOptions object
-)
-
- -

Paramètres

- -
-
removalOptions
-
object. 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.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browsingData.removeCookies")}}

- -

Exemples

- -

Supprime les cookies créés la semaine dernière :

- -
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);
- -

Supprime tous les cookies :

- -
-

Attention :

-

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).

-

Si vous souhaitez simplement effacer tous les cookies sans perturber les installations de stockage locales, utilisez browser.cookies pour faire une boucle et supprimer le contenu de tous les magasins de cookies.

-
- -
function onRemoved() {
-  console.log("removed");
-}
-
-function onError(error) {
-  console.error(error);
-}
-
-browser.browsingData.removeCookies({}).
-then(onRemoved, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecookies/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecookies/index.md new file mode 100644 index 0000000000..dd543a2a24 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removecookies/index.md @@ -0,0 +1,129 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Efface les cookies du navigateur

+ +

Vous pouvez utiliser le paramètre removalOptions, qui est un objet  {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :

+ + + +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.browsingData.removeCookies(
+  removalOptions            // RemovalOptions object
+)
+
+ +

Paramètres

+ +
+
removalOptions
+
object. 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.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browsingData.removeCookies")}}

+ +

Exemples

+ +

Supprime les cookies créés la semaine dernière :

+ +
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);
+ +

Supprime tous les cookies :

+ +
+

Attention :

+

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).

+

Si vous souhaitez simplement effacer tous les cookies sans perturber les installations de stockage locales, utilisez browser.cookies pour faire une boucle et supprimer le contenu de tous les magasins de cookies.

+
+ +
function onRemoved() {
+  console.log("removed");
+}
+
+function onError(error) {
+  console.error(error);
+}
+
+browser.browsingData.removeCookies({}).
+then(onRemoved, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 625cb99a06..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removedownloads/index.html +++ /dev/null @@ -1,123 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Vous pouvez utiliser le paramètre removalOptions, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :

- - - -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.browsingData.removeDownloads(
-  removalOptions            // RemovalOptions object
-)
-
- -

Paramètres

- -
-
removalOptions
-
object. 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.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browsingData.removeDownloads")}}

- -

Exemples

- -

Supprime les enregistrements d'objets téléchargés la semaine dernière :

- -
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.removeDownloads(
-  {since: oneWeekAgo}).
-then(onRemoved, onError);
- -

Supprime tous les enregistrements d'objets téléchargés :

- -
function onRemoved() {
-  console.log("removed");
-}
-
-function onError(error) {
-  console.error(error);
-}
-
-browser.browsingData.removeDownloads({}).
-then(onRemoved, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removedownloads/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removedownloads/index.md new file mode 100644 index 0000000000..625cb99a06 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removedownloads/index.md @@ -0,0 +1,123 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Vous pouvez utiliser le paramètre removalOptions, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :

+ + + +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.browsingData.removeDownloads(
+  removalOptions            // RemovalOptions object
+)
+
+ +

Paramètres

+ +
+
removalOptions
+
object. 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.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browsingData.removeDownloads")}}

+ +

Exemples

+ +

Supprime les enregistrements d'objets téléchargés la semaine dernière :

+ +
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.removeDownloads(
+  {since: oneWeekAgo}).
+then(onRemoved, onError);
+ +

Supprime tous les enregistrements d'objets téléchargés :

+ +
function onRemoved() {
+  console.log("removed");
+}
+
+function onError(error) {
+  console.error(error);
+}
+
+browser.browsingData.removeDownloads({}).
+then(onRemoved, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index b793697877..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeformdata/index.html +++ /dev/null @@ -1,120 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Efface les données que le navigateur a enregistré pour les formulaires de remplissage automatique.

- -

Vous pouvez utiliser le paramètre removalOptions, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, pour :

- - - -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.browsingData.removeFormData(
-  removalOptions            // RemovalOptions object
-)
-
- -

Paramètres

- -

object. 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.

- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browsingData.removeFormData")}}

- -

Exemples

- -

Supprimer les données de formulaire enregistrées la semaine dernière :

- -
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.removeFormData(
-  {since: oneWeekAgo}).
-then(onRemoved, onError);
- -

Supprimer tous les données de formulaire enregistrées :

- -
function onRemoved() {
-  console.log("removed");
-}
-
-function onError(error) {
-  console.error(error);
-}
-
-browser.browsingData.removeFormData({}).
-then(onRemoved, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeformdata/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeformdata/index.md new file mode 100644 index 0000000000..b793697877 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeformdata/index.md @@ -0,0 +1,120 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Efface les données que le navigateur a enregistré pour les formulaires de remplissage automatique.

+ +

Vous pouvez utiliser le paramètre removalOptions, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, pour :

+ + + +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.browsingData.removeFormData(
+  removalOptions            // RemovalOptions object
+)
+
+ +

Paramètres

+ +

object. 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.

+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browsingData.removeFormData")}}

+ +

Exemples

+ +

Supprimer les données de formulaire enregistrées la semaine dernière :

+ +
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.removeFormData(
+  {since: oneWeekAgo}).
+then(onRemoved, onError);
+ +

Supprimer tous les données de formulaire enregistrées :

+ +
function onRemoved() {
+  console.log("removed");
+}
+
+function onError(error) {
+  console.error(error);
+}
+
+browser.browsingData.removeFormData({}).
+then(onRemoved, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 5c8e2bd1b3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removehistory/index.html +++ /dev/null @@ -1,123 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Efface l'enregistrement des pages Web que l'utilisateur a visité (historique de navigation).

- -

Vous pouvez utiliser le paramètre removalOptions, qui est un objet  {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :

- - - -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.browsingData.removeHistory(
-  removalOptions            // RemovalOptions object
-)
-
- -

Paramètres

- -
-
removalOptions
-
object. 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.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browsingData.removeHistory", 10)}}

- -

Exemples

- -

Supprimer les enregistrements de la page visitées de la semaine dernière :

- -
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.removeHistory(
-  {since: oneWeekAgo}).
-then(onRemoved, onError);
- -

Supprimer tous les enregistrements des pages visitées :

- -
function onRemoved() {
-  console.log("removed");
-}
-
-function onError(error) {
-  console.error(error);
-}
-
-browser.browsingData.removeHistory({}).
-then(onRemoved, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removehistory/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removehistory/index.md new file mode 100644 index 0000000000..5c8e2bd1b3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removehistory/index.md @@ -0,0 +1,123 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Efface l'enregistrement des pages Web que l'utilisateur a visité (historique de navigation).

+ +

Vous pouvez utiliser le paramètre removalOptions, qui est un objet  {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :

+ + + +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.browsingData.removeHistory(
+  removalOptions            // RemovalOptions object
+)
+
+ +

Paramètres

+ +
+
removalOptions
+
object. 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.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browsingData.removeHistory", 10)}}

+ +

Exemples

+ +

Supprimer les enregistrements de la page visitées de la semaine dernière :

+ +
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.removeHistory(
+  {since: oneWeekAgo}).
+then(onRemoved, onError);
+ +

Supprimer tous les enregistrements des pages visitées :

+ +
function onRemoved() {
+  console.log("removed");
+}
+
+function onError(error) {
+  console.error(error);
+}
+
+browser.browsingData.removeHistory({}).
+then(onRemoved, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 9cf0b59e81..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removelocalstorage/index.html +++ /dev/null @@ -1,101 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Efface tout le stockage local créé par des sites Web.

- -

Vous pouvez utiliser le paramètre removalOptions, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :

- - - -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.browsingData.removeLocalStorage(
-  removalOptions            // RemovalOptions object
-)
-
- -

Paramètres

- -
-
removalOptions
-
object. 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.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browsingData.removeLocalStorage", 10)}}

- -

Exemples

- -

Supprime tout le stockage local :

- -
function onRemoved() {
-  console.log("removed");
-}
-
-function onError(error) {
-  console.error(error);
-}
-
-browser.browsingData.removeLocalStorage({}).
-then(onRemoved, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removelocalstorage/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removelocalstorage/index.md new file mode 100644 index 0000000000..9cf0b59e81 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removelocalstorage/index.md @@ -0,0 +1,101 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Efface tout le stockage local créé par des sites Web.

+ +

Vous pouvez utiliser le paramètre removalOptions, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :

+ + + +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.browsingData.removeLocalStorage(
+  removalOptions            // RemovalOptions object
+)
+
+ +

Paramètres

+ +
+
removalOptions
+
object. 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.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browsingData.removeLocalStorage", 10)}}

+ +

Exemples

+ +

Supprime tout le stockage local :

+ +
function onRemoved() {
+  console.log("removed");
+}
+
+function onError(error) {
+  console.error(error);
+}
+
+browser.browsingData.removeLocalStorage({}).
+then(onRemoved, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+
+ + 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 deleted file mode 100644 index 474fb9aced..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removepasswords/index.html +++ /dev/null @@ -1,121 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Efface les mots de passes enregistrés

- -

Vous pouvez utiliser le paremètre removalOptions, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :

- - - -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.browsingData.removePasswords(
-  removalOptions            // RemovalOptions object
-)
-
- -

Paramètres

- -
-
removalOptions
-
object. 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.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browsingData.removePasswords")}}

- -

Exemples

- -

Supprimer les mots de passe enregistrés la semaine dernière :

- -
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);
- -

Supprime tous les mots de passe enregistrés :

- -
function onRemoved() {
-  console.log("removed");
-}
-
-function onError(error) {
-  console.error(error);
-}
-
-browser.browsingData.removePasswords({}).then(onRemoved, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removepasswords/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removepasswords/index.md new file mode 100644 index 0000000000..474fb9aced --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removepasswords/index.md @@ -0,0 +1,121 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Efface les mots de passes enregistrés

+ +

Vous pouvez utiliser le paremètre removalOptions, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}} pour :

+ + + +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.browsingData.removePasswords(
+  removalOptions            // RemovalOptions object
+)
+
+ +

Paramètres

+ +
+
removalOptions
+
object. 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.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browsingData.removePasswords")}}

+ +

Exemples

+ +

Supprimer les mots de passe enregistrés la semaine dernière :

+ +
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);
+ +

Supprime tous les mots de passe enregistrés :

+ +
function onRemoved() {
+  console.log("removed");
+}
+
+function onError(error) {
+  console.error(error);
+}
+
+browser.browsingData.removePasswords({}).then(onRemoved, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 3bc02e928c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeplugindata/index.html +++ /dev/null @@ -1,122 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Efface les données stockées par les plugins du navigateur.

- -

Vous pouvez utiliser le paramètre removalOptions, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, pour :

- - - -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.browsingData.removePluginData(
-  removalOptions            // RemovalOptions object
-)
-
- -

Paramètres

- -
-
removalOptions
-
object. 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.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browsingData.removePluginData")}}

- -

Exemples

- -

Supprimer les données stockées par les plugins au cours de la dernière semaine :

- -
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);
- -

Supprimer toutes les données stockées par les plugins :

- -
function onRemoved() {
-  console.log("removed");
-}
-
-function onError(error) {
-  console.error(error);
-}
-
-browser.browsingData.removePluginData({}).
-then(onRemoved, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeplugindata/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeplugindata/index.md new file mode 100644 index 0000000000..3bc02e928c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/removeplugindata/index.md @@ -0,0 +1,122 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Efface les données stockées par les plugins du navigateur.

+ +

Vous pouvez utiliser le paramètre removalOptions, qui est un objet {{WebExtAPIRef("browsingData.RemovalOptions")}}, pour :

+ + + +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.browsingData.removePluginData(
+  removalOptions            // RemovalOptions object
+)
+
+ +

Paramètres

+ +
+
removalOptions
+
object. 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.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browsingData.removePluginData")}}

+ +

Exemples

+ +

Supprimer les données stockées par les plugins au cours de la dernière semaine :

+ +
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);
+ +

Supprimer toutes les données stockées par les plugins :

+ +
function onRemoved() {
+  console.log("removed");
+}
+
+function onError(error) {
+  console.error(error);
+}
+
+browser.browsingData.removePluginData({}).
+then(onRemoved, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index fae7fb7b8e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/settings/index.html +++ /dev/null @@ -1,107 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Cette fonction renvoie la valeur actuelle de ces paramètres.

- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getSettings = browser.browsingData.settings()
-
- -

Paramètres

- -

Aucun.

- -

Valeur retournée

- -

Une Promise qui sera remplie avec un objet contenant les informations sur les paramètres. Cet objet a trois propriétés :

- -
-
options
-
{{WebExtAPIRef("browsingData.RemovalOptions")}}. Un objet  RemovalOptions décrivant les options de suppression actuellement sélectionnées.
-
dataToRemove
-
{{WebExtAPIRef("browsingData.DataTypeSet")}}. 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 true si ce type est sélectionné pour la suppression et false dans le cas contraire.
-
dataRemovalPermitted
-
{{WebExtAPIRef("browsingData.DataTypeSet")}}. Cela contiendra une propriété pour chaque type de données pouvant être basculé dans l'interface utilisateur du navigateur. Chacune aura la valeur  true si l'administrateur du périphérique a autorisé l'utilisateur à supprimer ce type, et false dans le cas contraire.
-
- -

Si une erreur se produit, la  promise sera rejetée avec un message d'erreur.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.browsingData.settings")}}

- -

Exemples

- -

Paramètres des Logs courrants :

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.browsingData.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/browsingdata/settings/index.md b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/settings/index.md new file mode 100644 index 0000000000..fae7fb7b8e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/browsingdata/settings/index.md @@ -0,0 +1,107 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Cette fonction renvoie la valeur actuelle de ces paramètres.

+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getSettings = browser.browsingData.settings()
+
+ +

Paramètres

+ +

Aucun.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un objet contenant les informations sur les paramètres. Cet objet a trois propriétés :

+ +
+
options
+
{{WebExtAPIRef("browsingData.RemovalOptions")}}. Un objet  RemovalOptions décrivant les options de suppression actuellement sélectionnées.
+
dataToRemove
+
{{WebExtAPIRef("browsingData.DataTypeSet")}}. 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 true si ce type est sélectionné pour la suppression et false dans le cas contraire.
+
dataRemovalPermitted
+
{{WebExtAPIRef("browsingData.DataTypeSet")}}. Cela contiendra une propriété pour chaque type de données pouvant être basculé dans l'interface utilisateur du navigateur. Chacune aura la valeur  true si l'administrateur du périphérique a autorisé l'utilisateur à supprimer ce type, et false dans le cas contraire.
+
+ +

Si une erreur se produit, la  promise sera rejetée avec un message d'erreur.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.browsingData.settings")}}

+ +

Exemples

+ +

Paramètres des Logs courrants :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.browsingData.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 23f1e1cd17..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/canonicalurl/index.html +++ /dev/null @@ -1,60 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Renvoyer l'URL canonique de la page de détection du portail des prisonniers. En lecture seule.

- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.captivePortal.canonicalURL")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/canonicalurl/index.md b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/canonicalurl/index.md new file mode 100644 index 0000000000..23f1e1cd17 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/canonicalurl/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Renvoyer l'URL canonique de la page de détection du portail des prisonniers. En lecture seule.

+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.captivePortal.canonicalURL")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 3a5b92c58b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getlastchecked/index.html +++ /dev/null @@ -1,62 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Retourne le temps écoulé depuis que la dernière demande a été complétée.

- -

Syntaxe

- -
var state = browser.captivePortal.getLastChecked()
-
- -

Valeur retournée

- -

Une Promise qui est remplie avec un nombre entier représentant le temps en millisecondes.

- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.captivePortal.getLastChecked")}}

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getlastchecked/index.md b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getlastchecked/index.md new file mode 100644 index 0000000000..3a5b92c58b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getlastchecked/index.md @@ -0,0 +1,62 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Retourne le temps écoulé depuis que la dernière demande a été complétée.

+ +

Syntaxe

+ +
var state = browser.captivePortal.getLastChecked()
+
+ +

Valeur retournée

+ +

Une Promise qui est remplie avec un nombre entier représentant le temps en millisecondes.

+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.captivePortal.getLastChecked")}}

+ + 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 deleted file mode 100644 index 4fdaffb2ee..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getstate/index.html +++ /dev/null @@ -1,62 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Renvoie l'état du portail comme unknown, not_captive, unlocked_portal, ou locked_portal.

- -

Syntaxe

- -
var state = browser.captivePortal.getState()
-
- -

Valeur retournée

- -

Une Promise qui est remplie avec une chaîne de caractères contenant l'un des éléments suivants unknown, not_captive, unlocked_portal, ou locked_portal.

- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.captivePortal.getState")}}

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getstate/index.md b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getstate/index.md new file mode 100644 index 0000000000..4fdaffb2ee --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/getstate/index.md @@ -0,0 +1,62 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Renvoie l'état du portail comme unknown, not_captive, unlocked_portal, ou locked_portal.

+ +

Syntaxe

+ +
var state = browser.captivePortal.getState()
+
+ +

Valeur retournée

+ +

Une Promise qui est remplie avec une chaîne de caractères contenant l'un des éléments suivants unknown, not_captive, unlocked_portal, ou locked_portal.

+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.captivePortal.getState")}}

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/index.html b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/index.html deleted file mode 100644 index 8223e321c6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/index.html +++ /dev/null @@ -1,84 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

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.

- -

Pour utiliser cette API, vous devez disposer de la permission "captivePortal".

- -

Propriétés

- -
-
{{WebExtAPIRef("captivePortal.canonicalURL")}}
-
Renvoyer l'URL canonique de la page de détection du portail des prisonniers. En lecture seule.
-
- -

Fonctions

- -
-
{{WebExtAPIRef("captivePortal.getLastChecked()")}}
-
Retourne le temps, en millisecondes, depuis que la dernière demande a été complétée.
-
{{WebExtAPIRef("captivePortal.getState()")}}
-
Renvoie l'état du portail comme étant inconnu, unknown, not_captive, unlocked_portal, ou locked_portal.
-
- -

Evénements

- -
-
{{WebExtAPIRef("captivePortal.onConnectivityAvailable")}}
-
S'allume lorsque le service de portail captif détermine que l'utilisateur peut se connecter à l'internet.
-
{{WebExtAPIRef("captivePortal.onStateChanged")}}
-
-

S'allume lorsque l'état de portail captif change

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.captivePortal")}}

- -

{{WebExtExamples("h2")}}

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/index.md b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/index.md new file mode 100644 index 0000000000..8223e321c6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/index.md @@ -0,0 +1,84 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

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.

+ +

Pour utiliser cette API, vous devez disposer de la permission "captivePortal".

+ +

Propriétés

+ +
+
{{WebExtAPIRef("captivePortal.canonicalURL")}}
+
Renvoyer l'URL canonique de la page de détection du portail des prisonniers. En lecture seule.
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("captivePortal.getLastChecked()")}}
+
Retourne le temps, en millisecondes, depuis que la dernière demande a été complétée.
+
{{WebExtAPIRef("captivePortal.getState()")}}
+
Renvoie l'état du portail comme étant inconnu, unknown, not_captive, unlocked_portal, ou locked_portal.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("captivePortal.onConnectivityAvailable")}}
+
S'allume lorsque le service de portail captif détermine que l'utilisateur peut se connecter à l'internet.
+
{{WebExtAPIRef("captivePortal.onStateChanged")}}
+
+

S'allume lorsque l'état de portail captif change

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.captivePortal")}}

+ +

{{WebExtExamples("h2")}}

+ + 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 deleted file mode 100644 index d276a97ab6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onconnectivityavailable/index.html +++ /dev/null @@ -1,98 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

S'allume lorsque le service de portail captif détermine que l'utilisateur peut se connecter à l'internet.

- -

Syntaxe

- -
browser.captivePortal.onConnectivityAvailable.addListener(callback)
-browser.captivePortal.onConnectivityAvailable.removeListener(listener)
-browser.captivePortal.onConnectivityAvailable.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un auditeur à cet événement
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à retirer.
-
hasListener(listener)
-
Vérifiez si listener est inscrit à cet événement. Renvoie true si c'est un auditeur, sinon false .
-
- -

Syntaxe addListener

- -

Paramétres

- -
-
callback
-
-

Fonction qui est appelée lorsque cet événement se produit. La fonction se voit transmettre les arguments suivants :

- -
-
status
-
string Le statut du service, étant celui de captive s'il y a un portail captif déverrouillé présent ou clear si aucun portail captif n'est détecté
-
-
-
- -

Exemples

- -

Gérer la capacité d'un utilisateur de changement à se connecter à l'internet :

- -
function handleConnectivity(connectivityInfo) {
-  console.log("The captive portal status: " + connectivityInfo.status);
-}
-
-browser.captivePortal.onConnectivityAvailable.addListener(handleConnectivity);
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.captivePortal.onConnectivityAvailable")}}

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onconnectivityavailable/index.md b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onconnectivityavailable/index.md new file mode 100644 index 0000000000..d276a97ab6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onconnectivityavailable/index.md @@ -0,0 +1,98 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

S'allume lorsque le service de portail captif détermine que l'utilisateur peut se connecter à l'internet.

+ +

Syntaxe

+ +
browser.captivePortal.onConnectivityAvailable.addListener(callback)
+browser.captivePortal.onConnectivityAvailable.removeListener(listener)
+browser.captivePortal.onConnectivityAvailable.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un auditeur à cet événement
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à retirer.
+
hasListener(listener)
+
Vérifiez si listener est inscrit à cet événement. Renvoie true si c'est un auditeur, sinon false .
+
+ +

Syntaxe addListener

+ +

Paramétres

+ +
+
callback
+
+

Fonction qui est appelée lorsque cet événement se produit. La fonction se voit transmettre les arguments suivants :

+ +
+
status
+
string Le statut du service, étant celui de captive s'il y a un portail captif déverrouillé présent ou clear si aucun portail captif n'est détecté
+
+
+
+ +

Exemples

+ +

Gérer la capacité d'un utilisateur de changement à se connecter à l'internet :

+ +
function handleConnectivity(connectivityInfo) {
+  console.log("The captive portal status: " + connectivityInfo.status);
+}
+
+browser.captivePortal.onConnectivityAvailable.addListener(handleConnectivity);
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.captivePortal.onConnectivityAvailable")}}

+ + 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 deleted file mode 100644 index 09bff21405..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onstatechanged/index.html +++ /dev/null @@ -1,100 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

S'allume lorsque l'état de portail captif change.

- -

Syntaxe

- -
browser.captivePortal.onStateChanged.addListener(callback)
-browser.captivePortal.onStateChanged.removeListener(listener)
-browser.captivePortal.onStateChanged.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un auditeur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument de listener est l'auditeur à retirer.
-
hasListener(listener)
-
Vérifiez si listener est inscrit à cet événement. Renvoie true si c'est un auditeur, sinon false.
-
- -

Syntaxe addListener

- -

Paramétres

- -
-
callback
-
-

Fonction qui est appelée lorsque cet événement se produit. La fonction se voit transmettre les arguments suivants :

- -
-
details
-
-

string L'État portail captif, étant l'un des unknown, not_captive, unlocked_portal, ou locked_portal.

-
-
-
-
- -

Exemples

- -

Gérer un changement de statut de portail captif :

- -
function handlePortalStatus(portalstatusInfo) {
-  console.log("The portal status is now: " + portalstatusInfo.details);
-}
-
-browser.captivePortal.onStateChanged.addListener(handlePortalStatus)
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.captivePortal.onStateChanged")}}

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onstatechanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onstatechanged/index.md new file mode 100644 index 0000000000..09bff21405 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/captiveportal/onstatechanged/index.md @@ -0,0 +1,100 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

S'allume lorsque l'état de portail captif change.

+ +

Syntaxe

+ +
browser.captivePortal.onStateChanged.addListener(callback)
+browser.captivePortal.onStateChanged.removeListener(listener)
+browser.captivePortal.onStateChanged.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un auditeur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument de listener est l'auditeur à retirer.
+
hasListener(listener)
+
Vérifiez si listener est inscrit à cet événement. Renvoie true si c'est un auditeur, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramétres

+ +
+
callback
+
+

Fonction qui est appelée lorsque cet événement se produit. La fonction se voit transmettre les arguments suivants :

+ +
+
details
+
+

string L'État portail captif, étant l'un des unknown, not_captive, unlocked_portal, ou locked_portal.

+
+
+
+
+ +

Exemples

+ +

Gérer un changement de statut de portail captif :

+ +
function handlePortalStatus(portalstatusInfo) {
+  console.log("The portal status is now: " + portalstatusInfo.details);
+}
+
+browser.captivePortal.onStateChanged.addListener(handlePortalStatus)
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.captivePortal.onStateChanged")}}

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/clipboard/index.html b/files/fr/mozilla/add-ons/webextensions/api/clipboard/index.html deleted file mode 100644 index abb0395447..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/clipboard/index.html +++ /dev/null @@ -1,39 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

L'API presse-papiers 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.

- -

Cette API WebExtension existe principalement parce que l'API standard du presse-papiers Web ne prend pas en charge l'écriture d'images dans le presse-papiers. 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.

- -

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 Interaction avec le presse-papier.

- -

Cette API est basée sur l'API de clipboard de Chrome, mais cette API n'est disponible que pour les applications Chrome et non pour les extensions.

- -

Pour utiliser cette API, vous devez avoir la permission "clipboardWrite".

- -

Fonctions

- -
-
{{WebExtAPIRef("clipboard.setImageData()")}}
-
Copiez une image dans le presse-papiers.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.clipboard", 1, 1)}} {{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.clipboard.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/clipboard/index.md b/files/fr/mozilla/add-ons/webextensions/api/clipboard/index.md new file mode 100644 index 0000000000..abb0395447 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/clipboard/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

L'API presse-papiers 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.

+ +

Cette API WebExtension existe principalement parce que l'API standard du presse-papiers Web ne prend pas en charge l'écriture d'images dans le presse-papiers. 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.

+ +

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 Interaction avec le presse-papier.

+ +

Cette API est basée sur l'API de clipboard de Chrome, mais cette API n'est disponible que pour les applications Chrome et non pour les extensions.

+ +

Pour utiliser cette API, vous devez avoir la permission "clipboardWrite".

+ +

Fonctions

+ +
+
{{WebExtAPIRef("clipboard.setImageData()")}}
+
Copiez une image dans le presse-papiers.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.clipboard", 1, 1)}} {{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.clipboard.

+
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 deleted file mode 100644 index 13c76084b9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/clipboard/setimagedata/index.html +++ /dev/null @@ -1,79 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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é.

- -

L'image est fournie en tant que ArrayBuffer contenant l'image codée. Les formats JPEG et PNG sont pris en charge.

- -

Bien que cette API soit basée sur l'API clipboard.setImageData() de Chrome, il existe certaines différentes :

- - - -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
browser.clipboard.setImageData(imageData, imageType)
-
- -

Paramètres

- -
-
imageData
-
ArrayBuffer. Les données de l'image codées.
-
imageType
-
Un {{domxref("DOMString")}} indiquant le type d'image contenue dans le fichier imageData: "png" ou "jpeg".
-
- -

Valeur de retour

- -

Une Promise 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).

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.clipboard.setImageData", 10)}}

- -

Exemples

- -

Copiez une image distante :

- -
// requires:
-// * the host permission for "https://cdn.mdn.mozilla.net/*"
-// * the API permission "clipboardWrite"
-
-fetch('https://cdn.mdn.mozilla.net/static/img/favicon144.png')
-.then(response => response.arrayBuffer())
-.then(buffer => browser.clipboard.setImageData(buffer, 'png'));
- -

Copiez une image fournie avec l'extension :

- -
// requires the API permission "clipboardWrite"
-
-fetch(browser.runtime.getURL('image.png'))
-.then(response => response.arrayBuffer())
-.then(buffer => browser.clipboard.setImageData(buffer, 'png'));
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.clipboard.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/clipboard/setimagedata/index.md b/files/fr/mozilla/add-ons/webextensions/api/clipboard/setimagedata/index.md new file mode 100644 index 0000000000..13c76084b9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/clipboard/setimagedata/index.md @@ -0,0 +1,79 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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é.

+ +

L'image est fournie en tant que ArrayBuffer contenant l'image codée. Les formats JPEG et PNG sont pris en charge.

+ +

Bien que cette API soit basée sur l'API clipboard.setImageData() de Chrome, il existe certaines différentes :

+ + + +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
browser.clipboard.setImageData(imageData, imageType)
+
+ +

Paramètres

+ +
+
imageData
+
ArrayBuffer. Les données de l'image codées.
+
imageType
+
Un {{domxref("DOMString")}} indiquant le type d'image contenue dans le fichier imageData: "png" ou "jpeg".
+
+ +

Valeur de retour

+ +

Une Promise 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).

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.clipboard.setImageData", 10)}}

+ +

Exemples

+ +

Copiez une image distante :

+ +
// requires:
+// * the host permission for "https://cdn.mdn.mozilla.net/*"
+// * the API permission "clipboardWrite"
+
+fetch('https://cdn.mdn.mozilla.net/static/img/favicon144.png')
+.then(response => response.arrayBuffer())
+.then(buffer => browser.clipboard.setImageData(buffer, 'png'));
+ +

Copiez une image fournie avec l'extension :

+ +
// requires the API permission "clipboardWrite"
+
+fetch(browser.runtime.getURL('image.png'))
+.then(response => response.arrayBuffer())
+.then(buffer => browser.clipboard.setImageData(buffer, 'png'));
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.clipboard.

+
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 deleted file mode 100644 index a51148fc1e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/commands/command/index.html +++ /dev/null @@ -1,44 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Information sur une commande. Cela contient les informations spécifiées pour la commande dans la  commande clef manifest.json.

- -

Un tableau de ces objets est renvoyé par {{WebExtAPIRef('commands.getAll()')}}.

- -

Type

- -

Les valeurs de ce type  sont des objets. Ils contiennent les propriétés suivantes :

- -
-
name{{optional_inline}}
-
string. Nom de la commande. Cela sera passé dans l'écouteur de l'événement  {{WebExtAPIRef('commands.onCommand')}}.
-
description{{optional_inline}}
-
string. Description de cette commande. Ceci est principalement utilisé pour expliquer à l'utilisateur ce que cette commande fait.
-
shortcut{{optional_inline}}
-
string. clef(s) utilisée pour exécuter cette commande , spécifiée comme une chaîne comme "Ctrl+Shift+Y".
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.commands.Command")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.commands.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/commands/command/index.md b/files/fr/mozilla/add-ons/webextensions/api/commands/command/index.md new file mode 100644 index 0000000000..a51148fc1e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/commands/command/index.md @@ -0,0 +1,44 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Information sur une commande. Cela contient les informations spécifiées pour la commande dans la  commande clef manifest.json.

+ +

Un tableau de ces objets est renvoyé par {{WebExtAPIRef('commands.getAll()')}}.

+ +

Type

+ +

Les valeurs de ce type  sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
name{{optional_inline}}
+
string. Nom de la commande. Cela sera passé dans l'écouteur de l'événement  {{WebExtAPIRef('commands.onCommand')}}.
+
description{{optional_inline}}
+
string. Description de cette commande. Ceci est principalement utilisé pour expliquer à l'utilisateur ce que cette commande fait.
+
shortcut{{optional_inline}}
+
string. clef(s) utilisée pour exécuter cette commande , spécifiée comme une chaîne comme "Ctrl+Shift+Y".
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.commands.Command")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.commands.

+
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 deleted file mode 100644 index c3c2e9b2da..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/commands/getall/index.html +++ /dev/null @@ -1,59 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obient toutes les commandes pour l'exécution que vous avez enregistré à l'aide d'une des commandes clef du manifest.json.

- -

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, browser.commands.getAll(),  les commandes sont passées dans l'argument onFulfilled à Promise.then().

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getCommands = browser.commands.getAll();
-
- -

Paramètres

- -

Aucun.

- -

Valeur retournée

- -

Une Promise qui sera accompli avec un tableau  d'objets {{WebExtAPIRef('commands.Command')}}, un pour  chaque commande enregistrée pour l'extension. Si aucune n'a été enregistrée, le tableau  sera vide.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.commands.getAll")}}

- -

Exemples

- -
function logCommands(commands) {
-  commands.forEach(function(command) {
-    console.log(command);
-  });
-}
-
-var getCommands = browser.commands.getAll();
-getCommands.then(logCommands);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.commands.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/commands/getall/index.md b/files/fr/mozilla/add-ons/webextensions/api/commands/getall/index.md new file mode 100644 index 0000000000..c3c2e9b2da --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/commands/getall/index.md @@ -0,0 +1,59 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obient toutes les commandes pour l'exécution que vous avez enregistré à l'aide d'une des commandes clef du manifest.json.

+ +

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, browser.commands.getAll(),  les commandes sont passées dans l'argument onFulfilled à Promise.then().

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getCommands = browser.commands.getAll();
+
+ +

Paramètres

+ +

Aucun.

+ +

Valeur retournée

+ +

Une Promise qui sera accompli avec un tableau  d'objets {{WebExtAPIRef('commands.Command')}}, un pour  chaque commande enregistrée pour l'extension. Si aucune n'a été enregistrée, le tableau  sera vide.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.commands.getAll")}}

+ +

Exemples

+ +
function logCommands(commands) {
+  commands.forEach(function(command) {
+    console.log(command);
+  });
+}
+
+var getCommands = browser.commands.getAll();
+getCommands.then(logCommands);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.commands.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
diff --git a/files/fr/mozilla/add-ons/webextensions/api/commands/index.html b/files/fr/mozilla/add-ons/webextensions/api/commands/index.html deleted file mode 100644 index 3321458882..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/commands/index.html +++ /dev/null @@ -1,91 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Écoutez l'utilisateur exécutant les commandes que vous avez enregistrées à l'aide des clés commandes du fichier manifest.json.

- -

Types

- -
-
{{WebExtAPIRef("commands.Command")}}
-
Objet représentant une commande. Il contient les informations spécifiées pour la commande dans les clés commands du fichier manifest.json.
-
- -

Fonctions

- -
-
{{WebExtAPIRef("commands.getAll")}}
-
-

Obtient toutes les commandes enregistrées pour cette extension.

-
-
{{WebExtAPIRef("commands.reset")}}
-
-

Réinitialiser la description de la commande donnée et le raccourci vers les valeurs données dans la clé “manifest”.

-
-
{{WebExtAPIRef("commands.update")}}
-
-

Modifiez la description ou le raccourci de la commande donnée.

-
-
- -

Événements

- -
-
{{WebExtAPIRef("commands.onCommand")}}
-
-
Activé lorsqu'une commande est exécutée à l'aide du raccourci clavier associé.
-
-
- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.api.commands")}} {{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.commands.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/commands/index.md b/files/fr/mozilla/add-ons/webextensions/api/commands/index.md new file mode 100644 index 0000000000..3321458882 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/commands/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Écoutez l'utilisateur exécutant les commandes que vous avez enregistrées à l'aide des clés commandes du fichier manifest.json.

+ +

Types

+ +
+
{{WebExtAPIRef("commands.Command")}}
+
Objet représentant une commande. Il contient les informations spécifiées pour la commande dans les clés commands du fichier manifest.json.
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("commands.getAll")}}
+
+

Obtient toutes les commandes enregistrées pour cette extension.

+
+
{{WebExtAPIRef("commands.reset")}}
+
+

Réinitialiser la description de la commande donnée et le raccourci vers les valeurs données dans la clé “manifest”.

+
+
{{WebExtAPIRef("commands.update")}}
+
+

Modifiez la description ou le raccourci de la commande donnée.

+
+
+ +

Événements

+ +
+
{{WebExtAPIRef("commands.onCommand")}}
+
+
Activé lorsqu'une commande est exécutée à l'aide du raccourci clavier associé.
+
+
+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.api.commands")}} {{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.commands.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 36e829fd95..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/commands/oncommand/index.html +++ /dev/null @@ -1,86 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Lancer quand une commande est exécutée à l'aide de son raccourci clavier associé.
- -
L'écouteur reçoit  le nom de la commande. Cela correspond au nom donnée à la commande dans une  entrée manifest.json.
- -

Syntaxe

- -
browser.commands.onCommand.addListener(listener)
-browser.commands.onCommand.removeListener(listener)
-browser.commands.onCommand.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à un événement.
-
removeListener(listener)
-
Arrêter d'écouter un événement. L'arguement listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement . Renvoie true s'il écoute, false sinon.
-
- -

Syntaxe addListener

- -

Paramètre

- -
-
callback
-
-

Fonction qui sera appelée lorsqu'un utilisateur entre dans le raccourci de la commande. La fonction recevra les arguments suivants :

- -
-
name
-
string. Nom de la commande. Cela correspond au nom donné à la commande dans son entrée manifest.json.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.commands.onCommand")}}

- -

Exemples

- -
Etant donnée une entrée manifest.json comme ceci :
- -
"commands": {
-  "toggle-feature": {
-    "suggested_key": {
-      "default": "Ctrl+Shift+Y"
-    },
-    "description": "Send a 'toggle-feature' event"
-  }
-}
- -
Vous pouvez écouter cette commande particulière comme ceci :
- -
browser.commands.onCommand.addListener(function(command) {
-  if (command == "toggle-feature") {
-    console.log("toggling the feature!");
-  }
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.commands.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/commands/oncommand/index.md b/files/fr/mozilla/add-ons/webextensions/api/commands/oncommand/index.md new file mode 100644 index 0000000000..36e829fd95 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/commands/oncommand/index.md @@ -0,0 +1,86 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Lancer quand une commande est exécutée à l'aide de son raccourci clavier associé.
+ +
L'écouteur reçoit  le nom de la commande. Cela correspond au nom donnée à la commande dans une  entrée manifest.json.
+ +

Syntaxe

+ +
browser.commands.onCommand.addListener(listener)
+browser.commands.onCommand.removeListener(listener)
+browser.commands.onCommand.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à un événement.
+
removeListener(listener)
+
Arrêter d'écouter un événement. L'arguement listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement . Renvoie true s'il écoute, false sinon.
+
+ +

Syntaxe addListener

+ +

Paramètre

+ +
+
callback
+
+

Fonction qui sera appelée lorsqu'un utilisateur entre dans le raccourci de la commande. La fonction recevra les arguments suivants :

+ +
+
name
+
string. Nom de la commande. Cela correspond au nom donné à la commande dans son entrée manifest.json.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.commands.onCommand")}}

+ +

Exemples

+ +
Etant donnée une entrée manifest.json comme ceci :
+ +
"commands": {
+  "toggle-feature": {
+    "suggested_key": {
+      "default": "Ctrl+Shift+Y"
+    },
+    "description": "Send a 'toggle-feature' event"
+  }
+}
+ +
Vous pouvez écouter cette commande particulière comme ceci :
+ +
browser.commands.onCommand.addListener(function(command) {
+  if (command == "toggle-feature") {
+    console.log("toggling the feature!");
+  }
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.commands.

+
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 deleted file mode 100644 index a1f61322da..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/commands/reset/index.html +++ /dev/null @@ -1,57 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Réinitialise la description de la commande donnée et le raccourci clavier aux valeurs indiquées dans commands de la clé du manifest.json de l'extension.

- -

Cela annule efficacement les modifications apportées à la commande à l'aide de la fonction {{WEbExtAPIRef("commands.update()")}}.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
browser.commands.reset(
-  name // string
-);
-
- -

Paramètres

- -
-
name
-
string. Nom de la commande à réinitialiser, comme indiqué par la propriété name de l'objet {{WebExtAPIRef("commands.Command")}}.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie sans arguments lorsque le raccourci a été réinitialisé.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.commands.reset")}}

- -

Exemples

- -

Réinitialise la commande "my-command" lorsque l'utilisateur clique sur le bouton "reset" :

- -
const commandName = 'my-command';
-
-function resetShortcut() {
-  browser.commands.reset(commandName);
-}
-
-document.querySelector('#reset').addEventListener('click', resetShortcut);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/commands/reset/index.md b/files/fr/mozilla/add-ons/webextensions/api/commands/reset/index.md new file mode 100644 index 0000000000..a1f61322da --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/commands/reset/index.md @@ -0,0 +1,57 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Réinitialise la description de la commande donnée et le raccourci clavier aux valeurs indiquées dans commands de la clé du manifest.json de l'extension.

+ +

Cela annule efficacement les modifications apportées à la commande à l'aide de la fonction {{WEbExtAPIRef("commands.update()")}}.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
browser.commands.reset(
+  name // string
+);
+
+ +

Paramètres

+ +
+
name
+
string. Nom de la commande à réinitialiser, comme indiqué par la propriété name de l'objet {{WebExtAPIRef("commands.Command")}}.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie sans arguments lorsque le raccourci a été réinitialisé.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.commands.reset")}}

+ +

Exemples

+ +

Réinitialise la commande "my-command" lorsque l'utilisateur clique sur le bouton "reset" :

+ +
const commandName = 'my-command';
+
+function resetShortcut() {
+  browser.commands.reset(commandName);
+}
+
+document.querySelector('#reset').addEventListener('click', resetShortcut);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 19475584cd..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/commands/update/index.html +++ /dev/null @@ -1,67 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Changez la description ou le raccourci clavier pour la commande donnée.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
browser.commands.update(
-  details // object
-);
-
- -

Paramètres

- -
-
details
-

object. Un objet avec les propriétés suivantes:

-
-
name
-
string. e nom de la commande à mettre à jour. Cela doit correspondre au nom d'une commande existante, comme indiqué par exemple dans la propriété name de l'objet {{WebExtAPIRef("commands.Command")}}.
-
description{{optional_inline}}
-
string. Une nouvelle description à définir pour la commande.
-
shortcut{{optional_inline}}
-
string. Un nouveau raccourci à définir pour la commande. Cela doit correspondre au format donné dans la documentation pour les commands de la clé manifest.json. S'il ne correspond pas à ce format, la fonction va générer une erreur.
-
-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.commands.update")}}

- -

Exemples

- -

Met à jour la commande "my-command" avec la valeur de raccourci donnée, lorsque l'utilisateur clique sur "update" :

- -
const commandName = 'my-command';
-
-function updateShortcut() {
-  browser.commands.update({
-    name: commandName,
-    shortcut: document.querySelector('#shortcut').value
-  });
-}
-
-document.querySelector('#update').addEventListener('click', updateShortcut);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/commands/update/index.md b/files/fr/mozilla/add-ons/webextensions/api/commands/update/index.md new file mode 100644 index 0000000000..19475584cd --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/commands/update/index.md @@ -0,0 +1,67 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Changez la description ou le raccourci clavier pour la commande donnée.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
browser.commands.update(
+  details // object
+);
+
+ +

Paramètres

+ +
+
details
+

object. Un objet avec les propriétés suivantes:

+
+
name
+
string. e nom de la commande à mettre à jour. Cela doit correspondre au nom d'une commande existante, comme indiqué par exemple dans la propriété name de l'objet {{WebExtAPIRef("commands.Command")}}.
+
description{{optional_inline}}
+
string. Une nouvelle description à définir pour la commande.
+
shortcut{{optional_inline}}
+
string. Un nouveau raccourci à définir pour la commande. Cela doit correspondre au format donné dans la documentation pour les commands de la clé manifest.json. S'il ne correspond pas à ce format, la fonction va générer une erreur.
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.commands.update")}}

+ +

Exemples

+ +

Met à jour la commande "my-command" avec la valeur de raccourci donnée, lorsque l'utilisateur clique sur "update" :

+ +
const commandName = 'my-command';
+
+function updateShortcut() {
+  browser.commands.update({
+    name: commandName,
+    shortcut: document.querySelector('#shortcut').value
+  });
+}
+
+document.querySelector('#update').addEventListener('click', updateShortcut);
+ +

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.html b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.html deleted file mode 100644 index f74668a67d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.html +++ /dev/null @@ -1,45 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

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.

- -

Cette API est très similaire à la clé "content_scripts" du manifest.json, à l'exception de "content_scripts" , l'ensemble des scripts de contenu et des motifs associés est fixé au moment de l'installation. Avec l'API contentScripts, une extension peut enregistrer et désenregistrer des scripts au moment de l'exécution.

- -

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 Promise qui est résolue avec un objet {{WebExtAPIRef("contentScripts.RegisteredContentScript")}}.

- -

L'objet RegisteredContentScript représente les scripts enregistrés dans l'appel register() . Il définit une méthode unregister() 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.

- -

Il n'y a pas de permission de l'API contentScripts, mais une extension doit disposer des permissions d'hôte appropriées pour tous les modèles qu'elle transmet à register().

- -

Types

- -
-
{{WebExtAPIRef("contentScripts.RegisteredContentScript")}}
-
-

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.

-
-
- -

Fonctions

- -
-
{{WebExtAPIRef("contentScripts.register()")}}
-
Enregistre les scripts de contenu donnés.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contentScripts", 10, 1)}}

- -

 {{WebExtExamples("h2")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.md b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.md new file mode 100644 index 0000000000..f74668a67d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

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.

+ +

Cette API est très similaire à la clé "content_scripts" du manifest.json, à l'exception de "content_scripts" , l'ensemble des scripts de contenu et des motifs associés est fixé au moment de l'installation. Avec l'API contentScripts, une extension peut enregistrer et désenregistrer des scripts au moment de l'exécution.

+ +

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 Promise qui est résolue avec un objet {{WebExtAPIRef("contentScripts.RegisteredContentScript")}}.

+ +

L'objet RegisteredContentScript représente les scripts enregistrés dans l'appel register() . Il définit une méthode unregister() 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.

+ +

Il n'y a pas de permission de l'API contentScripts, mais une extension doit disposer des permissions d'hôte appropriées pour tous les modèles qu'elle transmet à register().

+ +

Types

+ +
+
{{WebExtAPIRef("contentScripts.RegisteredContentScript")}}
+
+

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.

+
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("contentScripts.register()")}}
+
Enregistre les scripts de contenu donnés.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contentScripts", 10, 1)}}

+ +

 {{WebExtExamples("h2")}}

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 deleted file mode 100644 index 43d9573646..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/register/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Utilisez cette fonction pour enregistrer un ou plusieurs scripts de contenu.

- -

Il accepte un paramètre, qui est un objet avec des propriétés similaires aux objets donnés dans la clé du manifest content_scripts (mais notez que content_scripts est un tableau d'objets, tandis que l'argument de register() est un simple objet).

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var registering = browser.contentScripts.register(
-  contentScriptOptions       // object
-)
-
- -

Paramètres

- -
-
contentScriptOptions
-
-

object. Un objet RegisteredContentScriptOptions représentant les scripts de contenu à enregistrer. Sa syntaxe est similaire à celle des objets du tableau de clés de manifest content_scripts.  Les différences sont :

- -
    -
  • les noms de propriété utilisent camelCase plutôt que des traits de soulignement (par exemple, excludeMatches, pas exclude_matches
  • -
  • les propriétés js et css vous permettent d'enregistrer des chaînes ainsi que des URL, leur syntaxe doit donc distinguer ces types.
  • -
- -

L'objet RegisteredContentScriptOptions a les propriétés suivantes :

- -
-
allFrames{{optional_inline}}
-
Identique à all_frames dans la clé content_scripts.
-
css{{optional_inline}}
-
Un tableau d'objets. Chaque objet possède soit une propriété nommée file, 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, qui est un code CSS à enregistrer.
-
excludeGlobs{{optional_inline}}
-
Identique à exclude_globs dans la clé content_scripts.
-
excludeMatches{{optional_inline}}
-
Identique à exclude_matches dans la clé content_scripts.
-
includeGlobs{{optional_inline}}
-
Identique à include_globs dans la clé content_scripts.
-
js{{optional_inline}}
-
Un tableau d'objets. Chaque objet possède soit une propriété nommée file, 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, qui est du code JavaScript à enregistrer.
-
matchAboutBlank{{optional_inline}}
-
Identique à match_about_blank dans la clé content_scripts.
-
matches
-
Identique à matches dans la clé content_scripts.
-
runAt{{optional_inline}}
-
Identique à run_at dans la clé content_scripts.
-
-
-
- -

Return value

- -

Une Promise qui sera remplie avec un objet {{WebExtAPIRef("contentScripts.RegisteredContentScript")}} que vous pouvez utiliser pour annuler l'enregistrement des scripts de contenu.

- -

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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contentScripts.register", 10)}}

- -

Exemples

- -

Cet exemple enregistre le script de contenu defaultCode  pour toutes les URL .org :

- -
const defaultHosts = "*://*.org/*";
-const defaultCode = "document.body.innerHTML = '<h1>This page has been eaten<h1>'";
-
-async function register(hosts, code) {
-
-  return await browser.contentScripts.register({
-    matches: [hosts],
-    js: [{code}],
-    runAt: "document_idle"
-  });
-
-}
-
-var registered = register(defaultHosts, defaultCode);
- -

Ce code enregistre le fichier JS à l'adresse content_scripts/example.js:

- -
const scriptObj = await browser.contentScripts.register({
-  "js": [{file: "/content_scripts/example.js"}],
-  "matches": ["<all_urls>"],
-  "allFrames": true,
-  "runAt": "document_start"
-});
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/register/index.md b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/register/index.md new file mode 100644 index 0000000000..43d9573646 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/register/index.md @@ -0,0 +1,104 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Utilisez cette fonction pour enregistrer un ou plusieurs scripts de contenu.

+ +

Il accepte un paramètre, qui est un objet avec des propriétés similaires aux objets donnés dans la clé du manifest content_scripts (mais notez que content_scripts est un tableau d'objets, tandis que l'argument de register() est un simple objet).

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var registering = browser.contentScripts.register(
+  contentScriptOptions       // object
+)
+
+ +

Paramètres

+ +
+
contentScriptOptions
+
+

object. Un objet RegisteredContentScriptOptions représentant les scripts de contenu à enregistrer. Sa syntaxe est similaire à celle des objets du tableau de clés de manifest content_scripts.  Les différences sont :

+ +
    +
  • les noms de propriété utilisent camelCase plutôt que des traits de soulignement (par exemple, excludeMatches, pas exclude_matches
  • +
  • les propriétés js et css vous permettent d'enregistrer des chaînes ainsi que des URL, leur syntaxe doit donc distinguer ces types.
  • +
+ +

L'objet RegisteredContentScriptOptions a les propriétés suivantes :

+ +
+
allFrames{{optional_inline}}
+
Identique à all_frames dans la clé content_scripts.
+
css{{optional_inline}}
+
Un tableau d'objets. Chaque objet possède soit une propriété nommée file, 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, qui est un code CSS à enregistrer.
+
excludeGlobs{{optional_inline}}
+
Identique à exclude_globs dans la clé content_scripts.
+
excludeMatches{{optional_inline}}
+
Identique à exclude_matches dans la clé content_scripts.
+
includeGlobs{{optional_inline}}
+
Identique à include_globs dans la clé content_scripts.
+
js{{optional_inline}}
+
Un tableau d'objets. Chaque objet possède soit une propriété nommée file, 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, qui est du code JavaScript à enregistrer.
+
matchAboutBlank{{optional_inline}}
+
Identique à match_about_blank dans la clé content_scripts.
+
matches
+
Identique à matches dans la clé content_scripts.
+
runAt{{optional_inline}}
+
Identique à run_at dans la clé content_scripts.
+
+
+
+ +

Return value

+ +

Une Promise qui sera remplie avec un objet {{WebExtAPIRef("contentScripts.RegisteredContentScript")}} que vous pouvez utiliser pour annuler l'enregistrement des scripts de contenu.

+ +

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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contentScripts.register", 10)}}

+ +

Exemples

+ +

Cet exemple enregistre le script de contenu defaultCode  pour toutes les URL .org :

+ +
const defaultHosts = "*://*.org/*";
+const defaultCode = "document.body.innerHTML = '<h1>This page has been eaten<h1>'";
+
+async function register(hosts, code) {
+
+  return await browser.contentScripts.register({
+    matches: [hosts],
+    js: [{code}],
+    runAt: "document_idle"
+  });
+
+}
+
+var registered = register(defaultHosts, defaultCode);
+ +

Ce code enregistre le fichier JS à l'adresse content_scripts/example.js:

+ +
const scriptObj = await browser.contentScripts.register({
+  "js": [{file: "/content_scripts/example.js"}],
+  "matches": ["<all_urls>"],
+  "allFrames": true,
+  "runAt": "document_start"
+});
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 5539d80a6b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/index.html +++ /dev/null @@ -1,67 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un RegisteredContentScript est renvoyé par un appel à  {{WebExtAPIRef("contentScripts.register()")}} et représente les scripts de contenu enregistrés dans cet appel.

- -

Il définit une seule fonction {{WebExtAPIRef("contentScripts.RegisteredContentScript.unregister()", "unregister()")}}, qui peut être utilisée pour annuler l'enregistrement des scripts de contenu.

- -
-

Note: 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.

-
- -

Méthodes

- -
-
{{WebExtAPIRef("contentScripts.RegisteredContentScript.unregister","unregister()")}}
-
Annule l'inscription des scripts de contenu représentés par cet objet.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contentScripts.RegisteredContentScript", 10)}}

- -

Exemples

- -

Ce code permet de basculer un script de contenu enregistré sur un clic d'action du navigateur :

- -
var registered = null;
-
-async function register() {
-
-  registered = await browser.contentScripts.register({
-    matches: ["*://*.org/*"],
-    js: [{
-      code: "document.body.innerHTML = '<h1>This page has been eaten<h1>'"
-    }],
-    runAt: "document_idle"
-  });
-
-}
-
-function toggle() {
-  if (registered) {
-    registered.unregister();
-    registered = null;
-  } else {
-    register();
-  }
-}
-
-browser.browserAction.onClicked.addListener(toggle);
-
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/index.md b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/index.md new file mode 100644 index 0000000000..5539d80a6b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/index.md @@ -0,0 +1,67 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un RegisteredContentScript est renvoyé par un appel à  {{WebExtAPIRef("contentScripts.register()")}} et représente les scripts de contenu enregistrés dans cet appel.

+ +

Il définit une seule fonction {{WebExtAPIRef("contentScripts.RegisteredContentScript.unregister()", "unregister()")}}, qui peut être utilisée pour annuler l'enregistrement des scripts de contenu.

+ +
+

Note: 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.

+
+ +

Méthodes

+ +
+
{{WebExtAPIRef("contentScripts.RegisteredContentScript.unregister","unregister()")}}
+
Annule l'inscription des scripts de contenu représentés par cet objet.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contentScripts.RegisteredContentScript", 10)}}

+ +

Exemples

+ +

Ce code permet de basculer un script de contenu enregistré sur un clic d'action du navigateur :

+ +
var registered = null;
+
+async function register() {
+
+  registered = await browser.contentScripts.register({
+    matches: ["*://*.org/*"],
+    js: [{
+      code: "document.body.innerHTML = '<h1>This page has been eaten<h1>'"
+    }],
+    runAt: "document_idle"
+  });
+
+}
+
+function toggle() {
+  if (registered) {
+    registered.unregister();
+    registered = null;
+  } else {
+    register();
+  }
+}
+
+browser.browserAction.onClicked.addListener(toggle);
+
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 4f52e84f24..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/unregister/index.html +++ /dev/null @@ -1,65 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Annule l'inscription des scripts de contenu représentés par cet objet RegisteredContentScript.
- -

Syntaxe

- -
registered.unregister()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

None.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contentScripts.RegisteredContentScript.unregister", 10)}}

- -

Exemples

- -

Ce code permet de basculer un script de contenu enregistré sur un clic d'action du navigateur :

- -
var registered = null;
-
-async function register() {
-
-  registered = await browser.contentScripts.register({
-    matches: ["*://*.org/*"],
-    js: [{
-      code: "document.body.innerHTML = '<h1>This page has been eaten<h1>'"
-    }],
-    runAt: "document_idle"
-  });
-
-}
-
-function toggle() {
-  if (registered) {
-    registered.unregister();
-    registered = null;
-  } else {
-    register();
-  }
-}
-
-browser.browserAction.onClicked.addListener(toggle);
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/unregister/index.md b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/unregister/index.md new file mode 100644 index 0000000000..4f52e84f24 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contentscripts/registeredcontentscript/unregister/index.md @@ -0,0 +1,65 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Annule l'inscription des scripts de contenu représentés par cet objet RegisteredContentScript.
+ +

Syntaxe

+ +
registered.unregister()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

None.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contentScripts.RegisteredContentScript.unregister", 10)}}

+ +

Exemples

+ +

Ce code permet de basculer un script de contenu enregistré sur un clic d'action du navigateur :

+ +
var registered = null;
+
+async function register() {
+
+  registered = await browser.contentScripts.register({
+    matches: ["*://*.org/*"],
+    js: [{
+      code: "document.body.innerHTML = '<h1>This page has been eaten<h1>'"
+    }],
+    runAt: "document_idle"
+  });
+
+}
+
+function toggle() {
+  if (registered) {
+    registered.unregister();
+    registered = null;
+  } else {
+    register();
+  }
+}
+
+browser.browserAction.onClicked.addListener(toggle);
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index af8db1a3f5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/contextualidentity/index.html +++ /dev/null @@ -1,74 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type contextualIdentities.ContextualIdentity décrit une identité contextuelle unique.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
cookieStoreId
-
string. 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.
-
color
-
-

string. La couleur pour l'identité. Cela sera montré dans les onglets appartenant à cette identité. Les valeurs suivantes sont valides :

- -
    -
  • "blue"
  • -
  • "turquoise"
  • -
  • "green"
  • -
  • "yellow"
  • -
  • "orange"
  • -
  • "red"
  • -
  • "pink"
  • -
  • "purple"
  • -
  • "toolbar"
  • -
- -

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 clé thème "toolbar_field_text").

-
-
colorCode
-
string. Un code hexadécimal représentant la couleur exacte utilisée pour l'identité. Par exemple : "#37adff". Dans le cas particulier de la couleur "toolbar", colorCode est toujours "#7c7c7d", quelle que soit la couleur affichée.
-
icon
-
-

string. 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 :

- -
    -
  • "fingerprint"
  • -
  • "briefcase"
  • -
  • "dollar"
  • -
  • "cart"
  • -
  • "circle"
  • -
  • "gift"
  • -
  • "vacation"
  • -
  • "food"
  • -
  • "fruit"
  • -
  • "pet"
  • -
  • "tree"
  • -
  • "chill"
  • -
  • "fence"
  • -
-
-
iconUrl
-
string. Une URL complète resource:// pointant vers l'icône de l'identité. Par exemple : "resource://usercontext-content/fingerprint.svg".
-
name
-
string. 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 .
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contextualIdentities.ContextualIdentity")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/contextualidentity/index.md b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/contextualidentity/index.md new file mode 100644 index 0000000000..af8db1a3f5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/contextualidentity/index.md @@ -0,0 +1,74 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type contextualIdentities.ContextualIdentity décrit une identité contextuelle unique.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
cookieStoreId
+
string. 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.
+
color
+
+

string. La couleur pour l'identité. Cela sera montré dans les onglets appartenant à cette identité. Les valeurs suivantes sont valides :

+ +
    +
  • "blue"
  • +
  • "turquoise"
  • +
  • "green"
  • +
  • "yellow"
  • +
  • "orange"
  • +
  • "red"
  • +
  • "pink"
  • +
  • "purple"
  • +
  • "toolbar"
  • +
+ +

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 clé thème "toolbar_field_text").

+
+
colorCode
+
string. Un code hexadécimal représentant la couleur exacte utilisée pour l'identité. Par exemple : "#37adff". Dans le cas particulier de la couleur "toolbar", colorCode est toujours "#7c7c7d", quelle que soit la couleur affichée.
+
icon
+
+

string. 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 :

+ +
    +
  • "fingerprint"
  • +
  • "briefcase"
  • +
  • "dollar"
  • +
  • "cart"
  • +
  • "circle"
  • +
  • "gift"
  • +
  • "vacation"
  • +
  • "food"
  • +
  • "fruit"
  • +
  • "pet"
  • +
  • "tree"
  • +
  • "chill"
  • +
  • "fence"
  • +
+
+
iconUrl
+
string. Une URL complète resource:// pointant vers l'icône de l'identité. Par exemple : "resource://usercontext-content/fingerprint.svg".
+
name
+
string. 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 .
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contextualIdentities.ContextualIdentity")}}

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 deleted file mode 100644 index 26117936bb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/create/index.html +++ /dev/null @@ -1,106 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var createContext = browser.contextualIdentities.create(
-  details                  // object
-)
-
- -

Paramètres

- -
-
details
-
-

object. Un objet contenant des propriétés pour la nouvelle identité contextuelle. Cela contient les propriétés suivantes :

- -
-
name
-
-

string. 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é.

-
-
color
-
-

string. 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 :

- -
    -
  • "blue"
  • -
  • "turquoise"
  • -
  • "green"
  • -
  • "yellow"
  • -
  • "orange"
  • -
  • "red"
  • -
  • "pink"
  • -
  • "purple"
  • -
  • "toolbar"
  • -
-
-
icon
-
-

string. 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 :

- -
    -
  • "fingerprint"
  • -
  • "briefcase"
  • -
  • "dollar"
  • -
  • "cart"
  • -
  • "circle"
  • -
  • "gift"
  • -
  • "vacation"
  • -
  • "food"
  • -
  • "fruit"
  • -
  • "pet"
  • -
  • "tree"
  • -
  • "chill"
  • -
  • "fence"
  • -
-
-
-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contextualIdentities.create")}}

- -

Exemples

- -

Cet exemple crée une nouvelle identité contextuelle et enregistre son ID de cookie :

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/create/index.md b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/create/index.md new file mode 100644 index 0000000000..26117936bb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/create/index.md @@ -0,0 +1,106 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var createContext = browser.contextualIdentities.create(
+  details                  // object
+)
+
+ +

Paramètres

+ +
+
details
+
+

object. Un objet contenant des propriétés pour la nouvelle identité contextuelle. Cela contient les propriétés suivantes :

+ +
+
name
+
+

string. 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é.

+
+
color
+
+

string. 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 :

+ +
    +
  • "blue"
  • +
  • "turquoise"
  • +
  • "green"
  • +
  • "yellow"
  • +
  • "orange"
  • +
  • "red"
  • +
  • "pink"
  • +
  • "purple"
  • +
  • "toolbar"
  • +
+
+
icon
+
+

string. 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 :

+ +
    +
  • "fingerprint"
  • +
  • "briefcase"
  • +
  • "dollar"
  • +
  • "cart"
  • +
  • "circle"
  • +
  • "gift"
  • +
  • "vacation"
  • +
  • "food"
  • +
  • "fruit"
  • +
  • "pet"
  • +
  • "tree"
  • +
  • "chill"
  • +
  • "fence"
  • +
+
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contextualIdentities.create")}}

+ +

Exemples

+ +

Cet exemple crée une nouvelle identité contextuelle et enregistre son ID de cookie :

+ +
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);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index acde9fb1e3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/get/index.html +++ /dev/null @@ -1,63 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient des informations sur une identité contextuelle, compte tenu de son ID de cookie.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getContext = browser.contextualIdentities.get(
-  cookieStoreId                  // string
-)
-
- -

Paramètres

- -
-
cookieStoreId
-
-

string. 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.

-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Comptatiblité du navigateur

- -

{{Compat("webextensions.api.contextualIdentities.get")}}

- -

Exemples

- -

Cet exemple tente de récupérer l'identité contextuelle dont l'ID est "firefox-container-1":

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/get/index.md b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/get/index.md new file mode 100644 index 0000000000..acde9fb1e3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/get/index.md @@ -0,0 +1,63 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient des informations sur une identité contextuelle, compte tenu de son ID de cookie.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getContext = browser.contextualIdentities.get(
+  cookieStoreId                  // string
+)
+
+ +

Paramètres

+ +
+
cookieStoreId
+
+

string. 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.

+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Comptatiblité du navigateur

+ +

{{Compat("webextensions.api.contextualIdentities.get")}}

+ +

Exemples

+ +

Cet exemple tente de récupérer l'identité contextuelle dont l'ID est "firefox-container-1":

+ +
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);
+ +

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/index.html b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/index.html deleted file mode 100644 index 670989656d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/index.html +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: contextualIdentities -slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities -tags: - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities ---- -
{{AddonSidebar}}
- -

Travailler avec des identités contextuelles : lister, créer, supprimer et mettre à jour des identités contextuelles.

- -

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.

- -

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…

- -

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 privacy.userContext.enabled sur true. 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.

- -

Avant Firefox 57, l’API contextualIdentities n’était disponible que si la fonctionnalité d’identités contextuelles était activée. Si une extension essayait d’utiliser l’API contextualIdentities sans activer la fonctionnalité, les appels de méthode résolvaient leurs promesses avec false.

- -

À partir de Firefox 57, si une extension utilisant l’API  contextualIdentities 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 contextualIdentities rejetteront leurs promesses avec un message d’erreur.

- -

Pour plus d’informations sur les identités contextuelles, consultez ce guide.

- -

Les identités contextuelles ne sont actuellement pas supportes dans les autres navigateurs.

- -

Pour utiliser cette API, vous devez inclure la permission « contextualIdentities » dans votre fichier manifest.json.

- -

Types

- -
-
{{WebExtAPIRef("contextualIdentities.ContextualIdentity")}}
-
Contient des informations sur une identité contextuelle.
-
- -

Fonctions

- -
-
{{WebExtAPIRef("contextualIdentities.create()")}}
-
Crée une nouvelle identité contextuelle.
-
{{WebExtAPIRef("contextualIdentities.get()")}}
-
Récupère une identité contextuelle unique, compte tenu de son ID de cookie.
-
{{WebExtAPIRef("contextualIdentities.query()")}}
-
Récupère toutes les identités contextuelles ou toutes les identités contextuelles avec un nom particulier.
-
{{WebExtAPIRef("contextualIdentities.update()")}}
-
Met à jour les propriétés d’une identité contextuelle existante.
-
{{WebExtAPIRef("contextualIdentities.remove()")}}
-
Supprime une identité contextuelle.
-
- -

Événements

-
-
{{WebExtAPIRef("contextualIdentities.onCreated")}}
-
Lancé lorsqu’une identité contextuelle est créée
-
{{WebExtAPIRef("contextualIdentities.onRemoved")}}
-
Lancé lorsqu’une identité contextuelle est supprimée
-
{{WebExtAPIRef("contextualIdentities.onUpdated")}}
-
Lancé lorsqu’une ou plusieurs propriétés d’une identité contextuelle sont mises à jour
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contextualIdentities")}}

- -

{{WebExtExamples("h2")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/index.md b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/index.md new file mode 100644 index 0000000000..670989656d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/index.md @@ -0,0 +1,64 @@ +--- +title: contextualIdentities +slug: Mozilla/Add-ons/WebExtensions/API/contextualIdentities +tags: + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/API/contextualIdentities +--- +
{{AddonSidebar}}
+ +

Travailler avec des identités contextuelles : lister, créer, supprimer et mettre à jour des identités contextuelles.

+ +

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.

+ +

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…

+ +

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 privacy.userContext.enabled sur true. 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.

+ +

Avant Firefox 57, l’API contextualIdentities n’était disponible que si la fonctionnalité d’identités contextuelles était activée. Si une extension essayait d’utiliser l’API contextualIdentities sans activer la fonctionnalité, les appels de méthode résolvaient leurs promesses avec false.

+ +

À partir de Firefox 57, si une extension utilisant l’API  contextualIdentities 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 contextualIdentities rejetteront leurs promesses avec un message d’erreur.

+ +

Pour plus d’informations sur les identités contextuelles, consultez ce guide.

+ +

Les identités contextuelles ne sont actuellement pas supportes dans les autres navigateurs.

+ +

Pour utiliser cette API, vous devez inclure la permission « contextualIdentities » dans votre fichier manifest.json.

+ +

Types

+ +
+
{{WebExtAPIRef("contextualIdentities.ContextualIdentity")}}
+
Contient des informations sur une identité contextuelle.
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("contextualIdentities.create()")}}
+
Crée une nouvelle identité contextuelle.
+
{{WebExtAPIRef("contextualIdentities.get()")}}
+
Récupère une identité contextuelle unique, compte tenu de son ID de cookie.
+
{{WebExtAPIRef("contextualIdentities.query()")}}
+
Récupère toutes les identités contextuelles ou toutes les identités contextuelles avec un nom particulier.
+
{{WebExtAPIRef("contextualIdentities.update()")}}
+
Met à jour les propriétés d’une identité contextuelle existante.
+
{{WebExtAPIRef("contextualIdentities.remove()")}}
+
Supprime une identité contextuelle.
+
+ +

Événements

+
+
{{WebExtAPIRef("contextualIdentities.onCreated")}}
+
Lancé lorsqu’une identité contextuelle est créée
+
{{WebExtAPIRef("contextualIdentities.onRemoved")}}
+
Lancé lorsqu’une identité contextuelle est supprimée
+
{{WebExtAPIRef("contextualIdentities.onUpdated")}}
+
Lancé lorsqu’une ou plusieurs propriétés d’une identité contextuelle sont mises à jour
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contextualIdentities")}}

+ +

{{WebExtExamples("h2")}}

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 deleted file mode 100644 index e86795832a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/oncreated/index.html +++ /dev/null @@ -1,96 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'une nouvelle identité contextuelle est créée. Les identités contextuelles peuvent être créées par des extensions en utilisant l'API contextualIdentities, ou directement par l'utilisateur, en utilisant l'interface utilisateur du navigateur.

- -

Syntaxe

- -
browser.contextualIdentities.onCreated.addListener(listener)
-browser.contextualIdentities.onCreated.removeListener(listener)
-browser.contextualIdentities.onCreated.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
changeInfo
-
object. Un objet contenant une seule propriété, contextualIdentity, qui est un objet {{WebExtAPIRef("contextualIdentities.ContextualIdentity")}} représentant l'identité créée.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contextualIdentities.onCreated")}}

- -

Examples

- -
function handleCreated(changeInfo) {
-  console.log(`Created: ${changeInfo.contextualIdentity.name}`);
-}
-
-browser.contextualIdentities.onCreated.addListener(handleCreated);
- -

{{WebExtExamples}}

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/oncreated/index.md b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/oncreated/index.md new file mode 100644 index 0000000000..e86795832a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/oncreated/index.md @@ -0,0 +1,96 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'une nouvelle identité contextuelle est créée. Les identités contextuelles peuvent être créées par des extensions en utilisant l'API contextualIdentities, ou directement par l'utilisateur, en utilisant l'interface utilisateur du navigateur.

+ +

Syntaxe

+ +
browser.contextualIdentities.onCreated.addListener(listener)
+browser.contextualIdentities.onCreated.removeListener(listener)
+browser.contextualIdentities.onCreated.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
changeInfo
+
object. Un objet contenant une seule propriété, contextualIdentity, qui est un objet {{WebExtAPIRef("contextualIdentities.ContextualIdentity")}} représentant l'identité créée.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contextualIdentities.onCreated")}}

+ +

Examples

+ +
function handleCreated(changeInfo) {
+  console.log(`Created: ${changeInfo.contextualIdentity.name}`);
+}
+
+browser.contextualIdentities.onCreated.addListener(handleCreated);
+ +

{{WebExtExamples}}

+ + 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 deleted file mode 100644 index 71c04a6307..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onremoved/index.html +++ /dev/null @@ -1,96 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'une nouvelle identité contextuelle est supprimée. Les identités contextuelles peuvent être supprimées par des extensions en utilisant l'API contextualIdentities,  ou directement par l'utilisateur, en utilisant l'interface utilisateur du navigateur.

- -

Syntaxe

- -
browser.contextualIdentities.onRemoved.addListener(listener)
-browser.contextualIdentities.onRemoved.removeListener(listener)
-browser.contextualIdentities.onRemoved.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
changeInfo
-
object. Un objet qui contient une seule propriété, contextualIdentity, qui est un objet {{WebExtAPIRef("contextualIdentities.ContextualIdentity")}} représentant l'identité qui a été supprimée.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contextualIdentities.onRemoved")}}

- -

Exemples

- -
function handleRemoved(changeInfo) {
-  console.log(`Removed: ${changeInfo.contextualIdentity.name}`);
-}
-
-browser.contextualIdentities.onRemoved.addListener(handleRemoved);
- -

{{WebExtExamples}}

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onremoved/index.md b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onremoved/index.md new file mode 100644 index 0000000000..71c04a6307 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onremoved/index.md @@ -0,0 +1,96 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'une nouvelle identité contextuelle est supprimée. Les identités contextuelles peuvent être supprimées par des extensions en utilisant l'API contextualIdentities,  ou directement par l'utilisateur, en utilisant l'interface utilisateur du navigateur.

+ +

Syntaxe

+ +
browser.contextualIdentities.onRemoved.addListener(listener)
+browser.contextualIdentities.onRemoved.removeListener(listener)
+browser.contextualIdentities.onRemoved.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
changeInfo
+
object. Un objet qui contient une seule propriété, contextualIdentity, qui est un objet {{WebExtAPIRef("contextualIdentities.ContextualIdentity")}} représentant l'identité qui a été supprimée.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contextualIdentities.onRemoved")}}

+ +

Exemples

+ +
function handleRemoved(changeInfo) {
+  console.log(`Removed: ${changeInfo.contextualIdentity.name}`);
+}
+
+browser.contextualIdentities.onRemoved.addListener(handleRemoved);
+ +

{{WebExtExamples}}

+ + 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 deleted file mode 100644 index b209dd3f9e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onupdated/index.html +++ /dev/null @@ -1,96 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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 contextualIdentities , ou directement par l'utilisateur, en utilisant l'interface utilisateur du navigateur.

- -

Syntaxe

- -
browser.contextualIdentities.onUpdated.addListener(listener)
-browser.contextualIdentities.onUpdated.removeListener(listener)
-browser.contextualIdentities.onUpdated.hasListener(listener)
-
- -

Events have three functions:

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si le listener est enregistré pour cet événement. Renvoie trues'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
changeInfo
-
object. Un objet qui contient une seule propriété, contextualIdentity, qui est un objet {{WebExtAPIRef("contextualIdentities.ContextualIdentity")}} représentant l'identité dont les propriétés ont été mises à jour.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contextualIdentities.onUpdated")}}

- -

Exemples

- -
function handleUpdated(changeInfo) {
-  console.log(`Updated: ${changeInfo.contextualIdentity.name}`);
-}
-
-browser.contextualIdentities.onUpdated.addListener(handleUpdated);
- -

{{WebExtExamples}}

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onupdated/index.md b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onupdated/index.md new file mode 100644 index 0000000000..b209dd3f9e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/onupdated/index.md @@ -0,0 +1,96 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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 contextualIdentities , ou directement par l'utilisateur, en utilisant l'interface utilisateur du navigateur.

+ +

Syntaxe

+ +
browser.contextualIdentities.onUpdated.addListener(listener)
+browser.contextualIdentities.onUpdated.removeListener(listener)
+browser.contextualIdentities.onUpdated.hasListener(listener)
+
+ +

Events have three functions:

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si le listener est enregistré pour cet événement. Renvoie trues'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
changeInfo
+
object. Un objet qui contient une seule propriété, contextualIdentity, qui est un objet {{WebExtAPIRef("contextualIdentities.ContextualIdentity")}} représentant l'identité dont les propriétés ont été mises à jour.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contextualIdentities.onUpdated")}}

+ +

Exemples

+ +
function handleUpdated(changeInfo) {
+  console.log(`Updated: ${changeInfo.contextualIdentity.name}`);
+}
+
+browser.contextualIdentities.onUpdated.addListener(handleUpdated);
+ +

{{WebExtExamples}}

+ + 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 deleted file mode 100644 index 510e9fa614..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/query/index.html +++ /dev/null @@ -1,83 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient des informations sur toutes les identités contextuelles ou sur les identités contextuelles correspondant à un argument de filtre donné.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getContext = browser.contextualIdentities.query(
-  details                  // object
-)
-
- -

Paramètres

- -
-
details
-
-

object. Un objet qui peut être utilisé pour filtrer les identités contextuelles renvoyées. Cela peut contenir l'une des propriétés suivantes :

- -
-
name {{optional_inline}}
-
string. Renvoie uniquement les identités contextuelles avec ce nom.
-
-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contextualIdentities.query")}}

- -

Exemples

- -

Retrieve all contextual identities, and log their names :

- -
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);
- -

Récupérez toutes les identités contextuelles dont les noms sont "my-thing", et consignez leurs noms :

- -
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);
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/query/index.md b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/query/index.md new file mode 100644 index 0000000000..510e9fa614 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/query/index.md @@ -0,0 +1,83 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient des informations sur toutes les identités contextuelles ou sur les identités contextuelles correspondant à un argument de filtre donné.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getContext = browser.contextualIdentities.query(
+  details                  // object
+)
+
+ +

Paramètres

+ +
+
details
+
+

object. Un objet qui peut être utilisé pour filtrer les identités contextuelles renvoyées. Cela peut contenir l'une des propriétés suivantes :

+ +
+
name {{optional_inline}}
+
string. Renvoie uniquement les identités contextuelles avec ce nom.
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contextualIdentities.query")}}

+ +

Exemples

+ +

Retrieve all contextual identities, and log their names :

+ +
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);
+ +

Récupérez toutes les identités contextuelles dont les noms sont "my-thing", et consignez leurs noms :

+ +
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);
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 23ffcfbce8..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/remove/index.html +++ /dev/null @@ -1,65 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Supprime une identité contextuelle, compte tenu de son ID de cookie.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removeContext = browser.contextualIdentities.remove(
-  cookieStoreId                  // string
-)
-
- -

Paramètres

- -
-
cookieStoreId
-
-

string. 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.

-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contextualIdentities.remove")}}

- -

Exemples

- -

Cet exemple tente de supprimer l'identité contextuelle dont l'ID est "firefox-container-1" :

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/remove/index.md b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/remove/index.md new file mode 100644 index 0000000000..23ffcfbce8 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/remove/index.md @@ -0,0 +1,65 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Supprime une identité contextuelle, compte tenu de son ID de cookie.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removeContext = browser.contextualIdentities.remove(
+  cookieStoreId                  // string
+)
+
+ +

Paramètres

+ +
+
cookieStoreId
+
+

string. 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.

+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contextualIdentities.remove")}}

+ +

Exemples

+ +

Cet exemple tente de supprimer l'identité contextuelle dont l'ID est "firefox-container-1" :

+ +
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);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index c9a6568712..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/update/index.html +++ /dev/null @@ -1,112 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Met à jour les propriétés d'une identité contextuelle, compte tenu de son ID de cookie.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var createContext = browser.contextualIdentities.update(
-  cookieStoreId,           // string
-  details                  // object
-)
-
- -

Paramètres

- -
-
cookieStoreId
-
-

string. 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.

-
-
details
-
-

object. 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 :

- -
-
name {{optional_inline}}
-
-

string. 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é.

-
-
color {{optional_inline}}
-
-

string. 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 :

- -
    -
  • "blue"
  • -
  • "turquoise"
  • -
  • "green"
  • -
  • "yellow"
  • -
  • "orange"
  • -
  • "red"
  • -
  • "pink"
  • -
  • "purple"
  • -
  • "toolbar"
  • -
-
-
icon {{optional_inline}}
-
-

string. Une nouvelle icône pour l'identité. Vous pouvez fournir l'une des valeurs suivantes ici :

- -
    -
  • "fingerprint"
  • -
  • "briefcase"
  • -
  • "dollar"
  • -
  • "cart"
  • -
  • "circle"
  • -
  • "gift"
  • -
  • "vacation"
  • -
  • "food"
  • -
  • "fruit"
  • -
  • "pet"
  • -
  • "tree"
  • -
  • "chill"
  • -
  • "fence"
  • -
-
-
-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.contextualIdentities.update")}}

- -

Exemples

- -

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 :

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/update/index.md b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/update/index.md new file mode 100644 index 0000000000..c9a6568712 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/contextualidentities/update/index.md @@ -0,0 +1,112 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Met à jour les propriétés d'une identité contextuelle, compte tenu de son ID de cookie.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var createContext = browser.contextualIdentities.update(
+  cookieStoreId,           // string
+  details                  // object
+)
+
+ +

Paramètres

+ +
+
cookieStoreId
+
+

string. 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.

+
+
details
+
+

object. 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 :

+ +
+
name {{optional_inline}}
+
+

string. 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é.

+
+
color {{optional_inline}}
+
+

string. 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 :

+ +
    +
  • "blue"
  • +
  • "turquoise"
  • +
  • "green"
  • +
  • "yellow"
  • +
  • "orange"
  • +
  • "red"
  • +
  • "pink"
  • +
  • "purple"
  • +
  • "toolbar"
  • +
+
+
icon {{optional_inline}}
+
+

string. Une nouvelle icône pour l'identité. Vous pouvez fournir l'une des valeurs suivantes ici :

+ +
    +
  • "fingerprint"
  • +
  • "briefcase"
  • +
  • "dollar"
  • +
  • "cart"
  • +
  • "circle"
  • +
  • "gift"
  • +
  • "vacation"
  • +
  • "food"
  • +
  • "fruit"
  • +
  • "pet"
  • +
  • "tree"
  • +
  • "chill"
  • +
  • "fence"
  • +
+
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.contextualIdentities.update")}}

+ +

Exemples

+ +

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 :

+ +
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);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index a0c5e31518..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/cookies/cookie/index.html +++ /dev/null @@ -1,111 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type Cookie de l'API {{WebExtAPIRef("cookies")}} représente des informations sur un cookie HTTP.

- -

Type

- -

Les valeurs de ce type sont des objets, qui peuvent contenir les propriétés suivantes :

- -
-
domain
-
Une chaîne représentant le domaine auquel appartient le cookie (par exemple "www.google.com", "example.com").
-
expirationDate{{optional_inline}}
-
Un number 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.
-
firstPartyDomain
-
Une chaîne 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 Isolement de la première partie.
-
hostOnly
-
Un booléen, true 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  false dans la case contraire.
-
httpOnly
-
Un booléen, true si le cookie est marqué comme  HttpOnly (c'est à dire le cookie est inaccessible aux scripts côté client), ou false dans le cas contraire.
-
name
-
Une chaîne représentant le nom du cookie.
-
path
-
Une chaîne représentant le chemin du cookie.
-
secure
-
Un booléen, 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 false dans le cas contraire.
-
session
-
Un boolean, true si le cookie est un cookie de session, ou false s'il s'agit d'un cookie persistant avec une date expiration.
-
sameSite
-
Une valeur {{WebExtAPIRef("cookies.SameSiteStatus")}} qui indique l'état SameSite du cookie.
-
storeId
-
Une chaine représentant l'ID du cookie store contenant ce cookie, tel que fourni par {{WebExtAPIRef("cookies.getAllCookieStores()")}}.
-
value
-
Une chaîne représentant la valeur du cookie.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.cookies.Cookie")}}

- -

Exemples

- -

La plupart des méthodes de l'API cookies impliquent qu'un objet Cookie    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 Cookie.

- -

Dans l'exemple ci-dessous, nous avons demandé tous les cookies, puis enregistré quelque-unes des valeurs de chacun des objets Cookie :

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/cookie/index.md b/files/fr/mozilla/add-ons/webextensions/api/cookies/cookie/index.md new file mode 100644 index 0000000000..a0c5e31518 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/cookie/index.md @@ -0,0 +1,111 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type Cookie de l'API {{WebExtAPIRef("cookies")}} représente des informations sur un cookie HTTP.

+ +

Type

+ +

Les valeurs de ce type sont des objets, qui peuvent contenir les propriétés suivantes :

+ +
+
domain
+
Une chaîne représentant le domaine auquel appartient le cookie (par exemple "www.google.com", "example.com").
+
expirationDate{{optional_inline}}
+
Un number 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.
+
firstPartyDomain
+
Une chaîne 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 Isolement de la première partie.
+
hostOnly
+
Un booléen, true 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  false dans la case contraire.
+
httpOnly
+
Un booléen, true si le cookie est marqué comme  HttpOnly (c'est à dire le cookie est inaccessible aux scripts côté client), ou false dans le cas contraire.
+
name
+
Une chaîne représentant le nom du cookie.
+
path
+
Une chaîne représentant le chemin du cookie.
+
secure
+
Un booléen, 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 false dans le cas contraire.
+
session
+
Un boolean, true si le cookie est un cookie de session, ou false s'il s'agit d'un cookie persistant avec une date expiration.
+
sameSite
+
Une valeur {{WebExtAPIRef("cookies.SameSiteStatus")}} qui indique l'état SameSite du cookie.
+
storeId
+
Une chaine représentant l'ID du cookie store contenant ce cookie, tel que fourni par {{WebExtAPIRef("cookies.getAllCookieStores()")}}.
+
value
+
Une chaîne représentant la valeur du cookie.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.cookies.Cookie")}}

+ +

Exemples

+ +

La plupart des méthodes de l'API cookies impliquent qu'un objet Cookie    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 Cookie.

+ +

Dans l'exemple ci-dessous, nous avons demandé tous les cookies, puis enregistré quelque-unes des valeurs de chacun des objets Cookie :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index f861ee501f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/cookies/cookiestore/index.html +++ /dev/null @@ -1,97 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type CookieStore de l'API {{WebExtAPIRef("cookies")}} représente un cookie store dans le navigateur.

- -

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.

- -

Type

- -

Les valeurs de ce type sont des objets, qui peuvent contenir les propriétés suivantes :

- -
-
id
-
Une chaîne représentant l'identification unique pour le cookie store.***
-
incognito
-
Une valeur booléenne qui indique s'il s'agit d'un magasin de cookies incognito.
-
tabIds
-
Un tableau d'entiers, qui identifie tous les onglets du navigateur qui partagent ce cookie store.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.cookies.CookieStore")}}

- -

Exemples

- -

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.

- -
function logStores(cookieStores) {
-  for(store of cookieStores) {
-    console.log(`Cookie store: ${store.id}\n Tab IDs: ${store.tabIds}`);
-  }
-}
-
-var getting = browser.cookies.getAllCookieStores();
-getting.then(logStores);
- -

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.

- -
browser.cookies.getAllCookieStores().then((stores) => {
-  var incognitoStores = stores.map(store => store.incognito);
-  console.log(`Of ${stores.length} cookie stores, ${incognitoStores.length} are incognito.`);
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/cookiestore/index.md b/files/fr/mozilla/add-ons/webextensions/api/cookies/cookiestore/index.md new file mode 100644 index 0000000000..f861ee501f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/cookiestore/index.md @@ -0,0 +1,97 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type CookieStore de l'API {{WebExtAPIRef("cookies")}} représente un cookie store dans le navigateur.

+ +

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.

+ +

Type

+ +

Les valeurs de ce type sont des objets, qui peuvent contenir les propriétés suivantes :

+ +
+
id
+
Une chaîne représentant l'identification unique pour le cookie store.***
+
incognito
+
Une valeur booléenne qui indique s'il s'agit d'un magasin de cookies incognito.
+
tabIds
+
Un tableau d'entiers, qui identifie tous les onglets du navigateur qui partagent ce cookie store.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.cookies.CookieStore")}}

+ +

Exemples

+ +

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.

+ +
function logStores(cookieStores) {
+  for(store of cookieStores) {
+    console.log(`Cookie store: ${store.id}\n Tab IDs: ${store.tabIds}`);
+  }
+}
+
+var getting = browser.cookies.getAllCookieStores();
+getting.then(logStores);
+ +

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.

+ +
browser.cookies.getAllCookieStores().then((stores) => {
+  var incognitoStores = stores.map(store => store.incognito);
+  console.log(`Of ${stores.length} cookie stores, ${incognitoStores.length} are incognito.`);
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2ced08d3b4..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/cookies/get/index.html +++ /dev/null @@ -1,119 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La méthode get() de l'API {{WebExtAPIRef("cookies")}} récupère les informations d'un seul cookie, par son nom et son URL.

- -

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 null est retourné.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getting = browser.cookies.get(
-  details                // object
-)
-
- -

Paramètres

- -
-
details
-

Un objet contenant les informations pouvant être utilisées pour récupérer un cookie. Il peut inclure les propriétés suivantes :

-
-
firstPartyDomain{{optional_inline}}
-
Une chaîne 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 Isolement de la première partie.
-
name
-
Une chaîne représentant le nom du cookie à récupérer.
-
storeId{{optional_inline}}
-
Une chaîne 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é.
-
url
-
Une chaîne 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   permissions d'hôte pour cette URL ne sont pas spécifiées dans le fichier manifeste de l'extension, l'appel de l'API échouera.
-
-
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un objet {{WebExtAPIRef('cookies.Cookie', 'Cookie')}} contenant des détails sur le cookie, ou null si le cookie n'a pas été trouvé.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.cookies.get")}}

- -

Exemples

- -

Cet exemple tente d'obtenir le cookie nommé "favourite-colour", associé à l'URL de l'onglet actuellement actif :

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/get/index.md b/files/fr/mozilla/add-ons/webextensions/api/cookies/get/index.md new file mode 100644 index 0000000000..2ced08d3b4 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/get/index.md @@ -0,0 +1,119 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La méthode get() de l'API {{WebExtAPIRef("cookies")}} récupère les informations d'un seul cookie, par son nom et son URL.

+ +

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 null est retourné.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getting = browser.cookies.get(
+  details                // object
+)
+
+ +

Paramètres

+ +
+
details
+

Un objet contenant les informations pouvant être utilisées pour récupérer un cookie. Il peut inclure les propriétés suivantes :

+
+
firstPartyDomain{{optional_inline}}
+
Une chaîne 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 Isolement de la première partie.
+
name
+
Une chaîne représentant le nom du cookie à récupérer.
+
storeId{{optional_inline}}
+
Une chaîne 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é.
+
url
+
Une chaîne 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   permissions d'hôte pour cette URL ne sont pas spécifiées dans le fichier manifeste de l'extension, l'appel de l'API échouera.
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un objet {{WebExtAPIRef('cookies.Cookie', 'Cookie')}} contenant des détails sur le cookie, ou null si le cookie n'a pas été trouvé.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.cookies.get")}}

+ +

Exemples

+ +

Cet exemple tente d'obtenir le cookie nommé "favourite-colour", associé à l'URL de l'onglet actuellement actif :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index f08e093055..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/cookies/getall/index.html +++ /dev/null @@ -1,116 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La méthode getAll() de l'API {{WebExtAPIRef("cookies")}} récupère tous les cookies d'un seul cookie store qui correspondent aux informations fournies.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getting = browser.cookies.getAll(
-  details                // object
-)
-
- -

Paramètres

- -
-
details
-

Un object contenant des détails pouvant être utilisés pour faire correspondre les cookies à extraire. Les propriétés incluses sont les suivantes (voir type de cookie pour plus d'informations sur celles-ci ) :

-
-
domain{{optional_inline}}
-
Une chaîne 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).
-
firstPartyDomain{{optional_inline}}
-
Une chaîne 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. Vous pouvez cependant passer null dans cette situation. Si vous faites cela, alors les cookies avec n'importe quelle valeur pour firstPartyDomain, ainsi que les cookies qui n'ont pas de set firstPartyDomain , seront inclus dans les résultats. Voir Isolement de la première partie.
-
name{{optional_inline}}
-
Une chaîne représentant un nom que les cookies devraient avoir.
-
path{{optional_inline}}
-
Une chaîne représentant un chemin - le chemin des cookies doit être identique à celui-ci.
-
secure{{optional_inline}}
-
Un booléen — filtre les cookies par leur propriété sécurisée, vous permettant de filtrer les cookies sécurisés contre les cookies non sécurisés.
-
session{{optional_inline}}
-
Un booléen— filtre les cookies en fonction de leur propriété de session, ce qui vous permet de filtrer les cookies de session par rapport aux cookies persistants.
-
storeId{{optional_inline}}
-
Une chaîne 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é.
-
url{{optional_inline}}
-
Une chaîne représentant une URL à laquelle les cookies récupérés doivent être associés.
-
-
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un tableau d'objets   {{WebExtAPIRef('cookies.Cookie')}} correspondant aux propriétés données dans le paramètre details. 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.cookies.getAll")}}

- -

Exemples

- -

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.

- -
function logCookies(cookies) {
-  for (let cookie of cookies) {
-    console.log(cookie.value);
-  }
-}
-
-var gettingAll = browser.cookies.getAll({
-  name: "favourite-colour"
-});
-gettingAll.then(logCookies);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/getall/index.md b/files/fr/mozilla/add-ons/webextensions/api/cookies/getall/index.md new file mode 100644 index 0000000000..f08e093055 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/getall/index.md @@ -0,0 +1,116 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La méthode getAll() de l'API {{WebExtAPIRef("cookies")}} récupère tous les cookies d'un seul cookie store qui correspondent aux informations fournies.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getting = browser.cookies.getAll(
+  details                // object
+)
+
+ +

Paramètres

+ +
+
details
+

Un object contenant des détails pouvant être utilisés pour faire correspondre les cookies à extraire. Les propriétés incluses sont les suivantes (voir type de cookie pour plus d'informations sur celles-ci ) :

+
+
domain{{optional_inline}}
+
Une chaîne 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).
+
firstPartyDomain{{optional_inline}}
+
Une chaîne 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. Vous pouvez cependant passer null dans cette situation. Si vous faites cela, alors les cookies avec n'importe quelle valeur pour firstPartyDomain, ainsi que les cookies qui n'ont pas de set firstPartyDomain , seront inclus dans les résultats. Voir Isolement de la première partie.
+
name{{optional_inline}}
+
Une chaîne représentant un nom que les cookies devraient avoir.
+
path{{optional_inline}}
+
Une chaîne représentant un chemin - le chemin des cookies doit être identique à celui-ci.
+
secure{{optional_inline}}
+
Un booléen — filtre les cookies par leur propriété sécurisée, vous permettant de filtrer les cookies sécurisés contre les cookies non sécurisés.
+
session{{optional_inline}}
+
Un booléen— filtre les cookies en fonction de leur propriété de session, ce qui vous permet de filtrer les cookies de session par rapport aux cookies persistants.
+
storeId{{optional_inline}}
+
Une chaîne 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é.
+
url{{optional_inline}}
+
Une chaîne représentant une URL à laquelle les cookies récupérés doivent être associés.
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un tableau d'objets   {{WebExtAPIRef('cookies.Cookie')}} correspondant aux propriétés données dans le paramètre details. 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.cookies.getAll")}}

+ +

Exemples

+ +

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.

+ +
function logCookies(cookies) {
+  for (let cookie of cookies) {
+    console.log(cookie.value);
+  }
+}
+
+var gettingAll = browser.cookies.getAll({
+  name: "favourite-colour"
+});
+gettingAll.then(logCookies);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 17e7e1f510..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/cookies/getallcookiestores/index.html +++ /dev/null @@ -1,94 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La méthode getAllCookieStores() de l'API {{WebExtAPIRef("cookies")}} retourne une liste de tous les cookies stores.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingStores = browser.cookies.getAllCookieStores()
-
- -

Paramètres

- -

Aucun.

- - - -

Valeur renvoyée

- -

Une Promise qui sera remplie avec un tableau d'objets {{WebExtAPIRef('cookies.CookieStore')}} représentant tous les cookies stores existants.

- -

Compatibibilité du navigateur

- -

{{Compat("webextensions.api.cookies.getAllCookieStores")}}

- -

Exemples

- -

Dans l'extrait suivant, la méthode getAllCookieStores() 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.

- -
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);
- -

Chaque membre du tableau cookieStores est un objet  {{WebExtAPIRef("cookies.CookieStore")}}.

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

- - -
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/getallcookiestores/index.md b/files/fr/mozilla/add-ons/webextensions/api/cookies/getallcookiestores/index.md new file mode 100644 index 0000000000..17e7e1f510 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/getallcookiestores/index.md @@ -0,0 +1,94 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La méthode getAllCookieStores() de l'API {{WebExtAPIRef("cookies")}} retourne une liste de tous les cookies stores.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingStores = browser.cookies.getAllCookieStores()
+
+ +

Paramètres

+ +

Aucun.

+ + + +

Valeur renvoyée

+ +

Une Promise qui sera remplie avec un tableau d'objets {{WebExtAPIRef('cookies.CookieStore')}} représentant tous les cookies stores existants.

+ +

Compatibibilité du navigateur

+ +

{{Compat("webextensions.api.cookies.getAllCookieStores")}}

+ +

Exemples

+ +

Dans l'extrait suivant, la méthode getAllCookieStores() 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.

+ +
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);
+ +

Chaque membre du tableau cookieStores est un objet  {{WebExtAPIRef("cookies.CookieStore")}}.

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+ + +
diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/index.html b/files/fr/mozilla/add-ons/webextensions/api/cookies/index.html deleted file mode 100644 index c8f1493fb3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/cookies/index.html +++ /dev/null @@ -1,169 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Permet aux extensions d'obtenir et de définir des cookies, et d'être averti quand ils changent.

- -

Pour utiliser cette API, vous devez inclure l'API permission "cookies" dans votre fichier  manifest.json, ainsi que les permissions d'hôte  pour les sites dont vous devez accéder aux cookies. Voir les permissions cookies.

- -

Permissions

- -

Pour utiliser cette API, un module complémentaire doit spécifier la  permission d'API "cookies" dans son manifest, ainsi que les permissions host 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 :

- -
-
http://*.example.com/
-
-

Un module complémentaire avec cette autorisation d'hôte peut :

- -
    -
  • Lire un cookie non sécurisé pour www.example.com, avec n'importe quel chemin.
  • -
  • Écrire un cookie ou non sécurisé pour www.example.com, avec n'importe quel chemin.
  • -
- -

Il ne peut pas :

- -
    -
  • Lire un cookie  sécurisé pour www.example.com.
  • -
-
-
http://www.example.com/
-
-

Un module complémentaire avec cette permission d'hôte peut :

- -
    -
  • Lire un cookie non sécurisé pour www.example.com, avec n'importe quel chemin.
  • -
  • Lire un cookie non sécurisé pour .example.com, avec n'importe quel chemin.
  • -
  • Écrire un cookie sécurisé ou non sécurisé pour  www.example.com avec n'importe quel chemin.
  • -
  • Écrire un cookie sécurisé ou non sécurisé pour  .example.com avec n'importe quel chemin.
  • -
- -

Il ne peut pas :

- -
    -
  • Lire ou écrire un cookie pour foo.example.com.
  • -
  • Lire ou écrire un cookie pour foo.www.example.com.
  • -
-
-
*://*.example.com/
-
-

Un module complémentaire avec çà permission d'hôtes n add-on with this host permission may:

- -
    -
  • Read or write a secure or non-secure cookie for www.example.com with any path.
  • -
-
-
- -

Isolement de la première partie

- -

Les cookies tiers sont des cookies qui sont définis par un site Web autre que celui sur lequel vous êtes actuellement. Par exemple :

- -
    -
  1. Vous visitez bbc.com. Il contient une annonce de tracker.com qui définit un cookie associé au domaine "tracker.com".
  2. -
  3. Vous visitez cnn.com. Il contient également une annonce de  tracker.com qui définit un cookie associé au domaine "tracker.com".
  4. -
  5. Finalement, les deux cookies peuvent être envoyés à tracker.com. qui peut alors comprendre que le même utilisateur a visité les deux sites.
  6. -
- -

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 bbc.com avec son cookie de cnn.com, de sorte que le tracker ne peut pas suivre un seul utilisateur sur les deux sites.

- -

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 firstPartyIsolate de l'API de privacy Notez que l'isolation de première partie est activée par défaut dans le Tor Browser.

- -

Dans l'API cookies, le domaine de première partie est représenté à l'aide de l'attribut firstPartyDomain. 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 "bbc.com" pour un cookie et "cnn.com" 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.
-
- Le {{WebExtAPIRef("cookies.get()")}}, {{WebExtAPIRef("cookies.getAll()")}}, {{WebExtAPIRef("cookies.set()")}} et {{WebExtAPIRef("cookies.remove()")}} Les API acceptent toutes une option firstPartyDomain.

- -

Lorsque l'isolation de première partie est activée, vous devez fournir cette option ou les appels de l'API échoueront. Pour get(), set(), et remove()vous devez passer une valeur de chaîne de caractères.

- -

Pour getAll(),  vous pouvez aussi passer null ici, et ceci obtiendra tous les cookies,
- qu'ils aient ou non une valeur non vide pour firstPartyDomain.

- -

Lorsque l'isolation de la première partie est désactivée, le paramètre firstPartyDomain 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  null comme firstPartyDomain pour getAll() retournera tous les cookies.

- -

Types

- -
-
{{WebExtAPIRef("cookies.Cookie")}}
-
Représente les informations sur un cookie HTTP.
-
{{WebExtAPIRef("cookies.CookieStore")}}
-
Représente un cookie store dans le navigateur.
-
{{WebExtAPIRef("cookies.OnChangedCause")}}
-
Représente la raison pour laquelle un cookie a été modifié.***
-
{{WebExtAPIRef("cookies.SameSiteStatus")}}
-
Représente le même statut du cookie sur le site.
-
- -

Méthodes

- -
-
{{WebExtAPIRef("cookies.get()")}}
-
Récupère les informations sur un cookie unique.
-
{{WebExtAPIRef("cookies.getAll()")}}
-
Récupère tous les cookies correspondant à un ensemble de filtres données.
-
{{WebExtAPIRef("cookies.set()")}}
-
Définit un cookie avec les données d'un cookie donné ; peut remplacer les cookies équivalents s'ils existent.
-
{{WebExtAPIRef("cookies.remove()")}}
-
Supprime un cookie par son nom.
-
{{WebExtAPIRef("cookies.getAllCookieStores()")}}
-
Liste tous les cookies stores existants.
-
- -

Gestionnaire d'événements

- -
-
{{WebExtAPIRef("cookies.onChanged")}}
-
Détails quand un cookie est défini ou supprimé.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.cookies")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/index.md b/files/fr/mozilla/add-ons/webextensions/api/cookies/index.md new file mode 100644 index 0000000000..c8f1493fb3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Permet aux extensions d'obtenir et de définir des cookies, et d'être averti quand ils changent.

+ +

Pour utiliser cette API, vous devez inclure l'API permission "cookies" dans votre fichier  manifest.json, ainsi que les permissions d'hôte  pour les sites dont vous devez accéder aux cookies. Voir les permissions cookies.

+ +

Permissions

+ +

Pour utiliser cette API, un module complémentaire doit spécifier la  permission d'API "cookies" dans son manifest, ainsi que les permissions host 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 :

+ +
+
http://*.example.com/
+
+

Un module complémentaire avec cette autorisation d'hôte peut :

+ +
    +
  • Lire un cookie non sécurisé pour www.example.com, avec n'importe quel chemin.
  • +
  • Écrire un cookie ou non sécurisé pour www.example.com, avec n'importe quel chemin.
  • +
+ +

Il ne peut pas :

+ +
    +
  • Lire un cookie  sécurisé pour www.example.com.
  • +
+
+
http://www.example.com/
+
+

Un module complémentaire avec cette permission d'hôte peut :

+ +
    +
  • Lire un cookie non sécurisé pour www.example.com, avec n'importe quel chemin.
  • +
  • Lire un cookie non sécurisé pour .example.com, avec n'importe quel chemin.
  • +
  • Écrire un cookie sécurisé ou non sécurisé pour  www.example.com avec n'importe quel chemin.
  • +
  • Écrire un cookie sécurisé ou non sécurisé pour  .example.com avec n'importe quel chemin.
  • +
+ +

Il ne peut pas :

+ +
    +
  • Lire ou écrire un cookie pour foo.example.com.
  • +
  • Lire ou écrire un cookie pour foo.www.example.com.
  • +
+
+
*://*.example.com/
+
+

Un module complémentaire avec çà permission d'hôtes n add-on with this host permission may:

+ +
    +
  • Read or write a secure or non-secure cookie for www.example.com with any path.
  • +
+
+
+ +

Isolement de la première partie

+ +

Les cookies tiers sont des cookies qui sont définis par un site Web autre que celui sur lequel vous êtes actuellement. Par exemple :

+ +
    +
  1. Vous visitez bbc.com. Il contient une annonce de tracker.com qui définit un cookie associé au domaine "tracker.com".
  2. +
  3. Vous visitez cnn.com. Il contient également une annonce de  tracker.com qui définit un cookie associé au domaine "tracker.com".
  4. +
  5. Finalement, les deux cookies peuvent être envoyés à tracker.com. qui peut alors comprendre que le même utilisateur a visité les deux sites.
  6. +
+ +

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 bbc.com avec son cookie de cnn.com, de sorte que le tracker ne peut pas suivre un seul utilisateur sur les deux sites.

+ +

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 firstPartyIsolate de l'API de privacy Notez que l'isolation de première partie est activée par défaut dans le Tor Browser.

+ +

Dans l'API cookies, le domaine de première partie est représenté à l'aide de l'attribut firstPartyDomain. 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 "bbc.com" pour un cookie et "cnn.com" 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.
+
+ Le {{WebExtAPIRef("cookies.get()")}}, {{WebExtAPIRef("cookies.getAll()")}}, {{WebExtAPIRef("cookies.set()")}} et {{WebExtAPIRef("cookies.remove()")}} Les API acceptent toutes une option firstPartyDomain.

+ +

Lorsque l'isolation de première partie est activée, vous devez fournir cette option ou les appels de l'API échoueront. Pour get(), set(), et remove()vous devez passer une valeur de chaîne de caractères.

+ +

Pour getAll(),  vous pouvez aussi passer null ici, et ceci obtiendra tous les cookies,
+ qu'ils aient ou non une valeur non vide pour firstPartyDomain.

+ +

Lorsque l'isolation de la première partie est désactivée, le paramètre firstPartyDomain 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  null comme firstPartyDomain pour getAll() retournera tous les cookies.

+ +

Types

+ +
+
{{WebExtAPIRef("cookies.Cookie")}}
+
Représente les informations sur un cookie HTTP.
+
{{WebExtAPIRef("cookies.CookieStore")}}
+
Représente un cookie store dans le navigateur.
+
{{WebExtAPIRef("cookies.OnChangedCause")}}
+
Représente la raison pour laquelle un cookie a été modifié.***
+
{{WebExtAPIRef("cookies.SameSiteStatus")}}
+
Représente le même statut du cookie sur le site.
+
+ +

Méthodes

+ +
+
{{WebExtAPIRef("cookies.get()")}}
+
Récupère les informations sur un cookie unique.
+
{{WebExtAPIRef("cookies.getAll()")}}
+
Récupère tous les cookies correspondant à un ensemble de filtres données.
+
{{WebExtAPIRef("cookies.set()")}}
+
Définit un cookie avec les données d'un cookie donné ; peut remplacer les cookies équivalents s'ils existent.
+
{{WebExtAPIRef("cookies.remove()")}}
+
Supprime un cookie par son nom.
+
{{WebExtAPIRef("cookies.getAllCookieStores()")}}
+
Liste tous les cookies stores existants.
+
+ +

Gestionnaire d'événements

+ +
+
{{WebExtAPIRef("cookies.onChanged")}}
+
Détails quand un cookie est défini ou supprimé.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.cookies")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

+
+ + 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 deleted file mode 100644 index a75958fd31..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/cookies/onchanged/index.html +++ /dev/null @@ -1,125 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

L'événement onChanged de l'API {{WebExtAPIRef("cookies")}} est déclenché lorsqu'un cookie est défini ou supprimé.

- -

Notez que la mise à jour des propriétés d'un cookie est implémentée en deux étapes :

- -
    -
  1. 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.
  2. -
  3. Ensuite, un nouveau cookie est écrit avec les valeurs mises à jour, généralement une seconde notification avec un {{WebExtAPIRef("cookies.OnChangedCause")}} explicite.
  4. -
- -

Syntaxe

- -
browser.cookies.onChanged.addListener(listener)
-browser.cookies.onChanged.removeListener(listener)
-browser.cookies.onChanged.hasListener(listener)
-
- -

Cet API est également disponible en tant que  browser.cookies.onChanged.*.

- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à l'événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument de l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si l'écouteur est enregistré pour cet événement. Retourne true s'il écoute, false sinon.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Une fonction de rappel qui sera appelée lorsque l'événement se produira. La fonction recevra les arguments suivants :

- -
-
changeInfo
-

Un objet contenant les détails de la modification survenue. Ses propriétés sont les suivantes :

-
-
removed
-
Un booléen défini sur true si un cookie a été supprimé et sinon  false.
-
cookie
-
Un objet {{WebExtAPIRef('cookies.Cookie')}} contenant les informations sur le cookie qui a été défini ou supprimé.
-
cause
-
Une valeur {{WebExtAPIRef('cookies.OnChangedCause')}} représentant la raison sous-jacente de la modification du cookie.
-
-
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.cookies.onChanged")}}

- -

Exemples

- -

Cet exemple écoute les événements onChanged et enregistre les détails de l'argument  changeInfo :

- -
browser.cookies.onChanged.addListener(function(changeInfo) {
-  console.log('Cookie changed: ' +
-              '\n * Cookie: ' + JSON.stringify(changeInfo.cookie) +
-              '\n * Cause: ' + changeInfo.cause +
-              '\n * Removed: ' + changeInfo.removed);
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/onchanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/cookies/onchanged/index.md new file mode 100644 index 0000000000..a75958fd31 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/onchanged/index.md @@ -0,0 +1,125 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

L'événement onChanged de l'API {{WebExtAPIRef("cookies")}} est déclenché lorsqu'un cookie est défini ou supprimé.

+ +

Notez que la mise à jour des propriétés d'un cookie est implémentée en deux étapes :

+ +
    +
  1. 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.
  2. +
  3. Ensuite, un nouveau cookie est écrit avec les valeurs mises à jour, généralement une seconde notification avec un {{WebExtAPIRef("cookies.OnChangedCause")}} explicite.
  4. +
+ +

Syntaxe

+ +
browser.cookies.onChanged.addListener(listener)
+browser.cookies.onChanged.removeListener(listener)
+browser.cookies.onChanged.hasListener(listener)
+
+ +

Cet API est également disponible en tant que  browser.cookies.onChanged.*.

+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à l'événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument de l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si l'écouteur est enregistré pour cet événement. Retourne true s'il écoute, false sinon.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Une fonction de rappel qui sera appelée lorsque l'événement se produira. La fonction recevra les arguments suivants :

+ +
+
changeInfo
+

Un objet contenant les détails de la modification survenue. Ses propriétés sont les suivantes :

+
+
removed
+
Un booléen défini sur true si un cookie a été supprimé et sinon  false.
+
cookie
+
Un objet {{WebExtAPIRef('cookies.Cookie')}} contenant les informations sur le cookie qui a été défini ou supprimé.
+
cause
+
Une valeur {{WebExtAPIRef('cookies.OnChangedCause')}} représentant la raison sous-jacente de la modification du cookie.
+
+
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.cookies.onChanged")}}

+ +

Exemples

+ +

Cet exemple écoute les événements onChanged et enregistre les détails de l'argument  changeInfo :

+ +
browser.cookies.onChanged.addListener(function(changeInfo) {
+  console.log('Cookie changed: ' +
+              '\n * Cookie: ' + JSON.stringify(changeInfo.cookie) +
+              '\n * Cause: ' + changeInfo.cause +
+              '\n * Removed: ' + changeInfo.removed);
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index fbc9df1fe3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/cookies/onchangedcause/index.html +++ /dev/null @@ -1,90 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type OnChangedCause de l'API {{WebExtAPIRef("cookies")}} représente la raison pour laquelle un cookie a été modifié.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- -
-
evicted
-
Un cookie a été automatiquement supprimé en raison d'un nettoyage de mémoire.
-
expired
-
Un cookie a été automatiquement supprimé en raison de l'expiration.
-
explicit
-
Un cookie a été inséré ou supprimé via un appel explicite à {{WebExtAPIRef("cookies.remove()")}}.
-
expired_overwrite
-
Un cookie a été remplacé par un cookie dont la date d'expiration est déjà expirée.
-
overwrite
-
Un appel à {{WebExtAPIRef("cookies.set()")}} a remplacé ce cookie par un autre.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.cookies.OnChangedCause")}}

- -

Exemples

- -

Vous pouvez écouter l'événement {{WebExtAPIRef("cookies.onChanged")}} pour être averti lorsque les cookies changent. L'écouteur reçoit un objet  changeInfo qui contient une propriété cause, dont la valeur est une chaîne OnChangeCaused :

- -
browser.cookies.onChanged.addListener(function(changeInfo) {
-  console.log('Cookie changed: ' +
-              '\n * Cookie: ' + JSON.stringify(changeInfo.cookie) +
-              '\n * Cause: ' + changeInfo.cause +
-              '\n * Removed: ' + changeInfo.removed);
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/onchangedcause/index.md b/files/fr/mozilla/add-ons/webextensions/api/cookies/onchangedcause/index.md new file mode 100644 index 0000000000..fbc9df1fe3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/onchangedcause/index.md @@ -0,0 +1,90 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type OnChangedCause de l'API {{WebExtAPIRef("cookies")}} représente la raison pour laquelle un cookie a été modifié.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ +
+
evicted
+
Un cookie a été automatiquement supprimé en raison d'un nettoyage de mémoire.
+
expired
+
Un cookie a été automatiquement supprimé en raison de l'expiration.
+
explicit
+
Un cookie a été inséré ou supprimé via un appel explicite à {{WebExtAPIRef("cookies.remove()")}}.
+
expired_overwrite
+
Un cookie a été remplacé par un cookie dont la date d'expiration est déjà expirée.
+
overwrite
+
Un appel à {{WebExtAPIRef("cookies.set()")}} a remplacé ce cookie par un autre.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.cookies.OnChangedCause")}}

+ +

Exemples

+ +

Vous pouvez écouter l'événement {{WebExtAPIRef("cookies.onChanged")}} pour être averti lorsque les cookies changent. L'écouteur reçoit un objet  changeInfo qui contient une propriété cause, dont la valeur est une chaîne OnChangeCaused :

+ +
browser.cookies.onChanged.addListener(function(changeInfo) {
+  console.log('Cookie changed: ' +
+              '\n * Cookie: ' + JSON.stringify(changeInfo.cookie) +
+              '\n * Cause: ' + changeInfo.cause +
+              '\n * Removed: ' + changeInfo.removed);
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 9127e08c1c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/cookies/remove/index.html +++ /dev/null @@ -1,118 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La méthode remove() de l'API {{WebExtAPIRef("cookies")}} supprime un cookie, compte tenu de son nom et de son URL.

- -

L'appel réussit uniquement si vous incluez la permission de l'API "cookies" dans votre fichier manifest.json, ainsi que les permissions d'hôte pour l'URL indiquée dans son manifest.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.cookies.remove(
-  details               // object
-)
-
- -

Paramètres

- -
-
details
-

Un objet contenant des informations permettant d'identifier le cookie à supprimer. Il contient les propriétés suivantes :

-
-
firstPartyDomain{{optional_inline}}
-
Une chaîne 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 Isolement de la première partie.
-
name
-
Une chaîne représenant le nom du cookie à supprimer.
-
storeId{{optional_inline}}
-
Une chaîne 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.
-
url
-
Une chaîne représentant l'URL associée au cookie. Si l'extension n'a pas de permissions d'hôte pour cette URL, l'appel de l'API échouera.
-
-
-
- -

Valeur retournée

- -

Une Promise 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 details n'a pas pu être trouvé, la promesse est remplie avec null.  Si l'appel échoue pour une raison quelconque, la promesse sera rejetée avec un message d'erreur.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.cookies.remove")}}

- -

Exemples

- -

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 :

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/remove/index.md b/files/fr/mozilla/add-ons/webextensions/api/cookies/remove/index.md new file mode 100644 index 0000000000..9127e08c1c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/remove/index.md @@ -0,0 +1,118 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La méthode remove() de l'API {{WebExtAPIRef("cookies")}} supprime un cookie, compte tenu de son nom et de son URL.

+ +

L'appel réussit uniquement si vous incluez la permission de l'API "cookies" dans votre fichier manifest.json, ainsi que les permissions d'hôte pour l'URL indiquée dans son manifest.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.cookies.remove(
+  details               // object
+)
+
+ +

Paramètres

+ +
+
details
+

Un objet contenant des informations permettant d'identifier le cookie à supprimer. Il contient les propriétés suivantes :

+
+
firstPartyDomain{{optional_inline}}
+
Une chaîne 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 Isolement de la première partie.
+
name
+
Une chaîne représenant le nom du cookie à supprimer.
+
storeId{{optional_inline}}
+
Une chaîne 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.
+
url
+
Une chaîne représentant l'URL associée au cookie. Si l'extension n'a pas de permissions d'hôte pour cette URL, l'appel de l'API échouera.
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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 details n'a pas pu être trouvé, la promesse est remplie avec null.  Si l'appel échoue pour une raison quelconque, la promesse sera rejetée avec un message d'erreur.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.cookies.remove")}}

+ +

Exemples

+ +

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 :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index d52a8c54a5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/cookies/samesitestatus/index.html +++ /dev/null @@ -1,35 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
- -

Le type SameSiteStatus de l'API {{WebExtAPIRef("cookies")}} représente des informations sur l'état SameSite d'un cookie.

- -

Type

- -

Les valeurs de ce type sont des chaînes de caractères. Les valeurs possibles sont :

- -
-
no_restriction
-
Représente un ensemble de cookies sans attribut SameSite.
-
lax
-
Correspond au SameSite=Lax
-
strict
-
Correspond à un ensemble de témoins avec SameSite=Strict
-
- -

Voir les cookies HTTP pour plus d'informations.

diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/samesitestatus/index.md b/files/fr/mozilla/add-ons/webextensions/api/cookies/samesitestatus/index.md new file mode 100644 index 0000000000..d52a8c54a5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/samesitestatus/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +
+ +

Le type SameSiteStatus de l'API {{WebExtAPIRef("cookies")}} représente des informations sur l'état SameSite d'un cookie.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes de caractères. Les valeurs possibles sont :

+ +
+
no_restriction
+
Représente un ensemble de cookies sans attribut SameSite.
+
lax
+
Correspond au SameSite=Lax
+
strict
+
Correspond à un ensemble de témoins avec SameSite=Strict
+
+ +

Voir les cookies HTTP pour plus d'informations.

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 deleted file mode 100644 index 1fbb895651..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/cookies/set/index.html +++ /dev/null @@ -1,122 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La méthode set() 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 Set-Cookie lors d'une requête à une URL donnée.

- -

L'appel réussit uniquement si vous incluez la permission de l'API "cookies" dans votre fichier manifest.json, ainsi que les permissions d'hôte 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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var setting = browser.cookies.set(
-  details               // object
-)
-
- -

Paramètres

- -
-
details
-
Un objet contenant les détails du cookie que vous souhaitez définir. Il peut avoir les propriétés suivantes :
-
domain{{optional_inline}}
-
Une chaîne représentant le domaine du cookie. S’il est omis, le cookie devient un cookie hôte uniquement.
-
expirationDate{{optional_inline}}
-
Un nombre 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.
-
firstPartyDomain{{optional_inline}}
-
Une chaîne 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 Isolement de la première partie.
-
httpOnly{{optional_inline}}
-
Un booléen qui spécifie si le cookie doit être marqué comme  HttpOnly (true), ou pas (false). S’il est omis, la valeur par défaut est false.
-
name{{optional_inline}}
-
Une chaîne représentant le nom du cookie. S’il est omis, il est vide par défaut.
-
path{{optional_inline}}
-
Une chaîne 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.
-
sameSite{{optional_inline}}
-
Une valeur {{WebExtAPIRef("cookies.SameSiteStatus")}} qui indique l’état SameSite du cookie. Si omis, la valeur par défaut 0, 'no_restriction'.
-
secure{{optional_inline}}
-
Un booléen qui spécifie si le cookie doit être marqué comme sécurisé (true), ou pas (false). S’il est omis, la valeur par défaut est false.
-
storeId{{optional_inline}}
-
Une chaîne 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.
-
url
-
Une chaîne 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.
-
value{{optional_inline}}
-
Une chaîne représentant la valeur du cookie. S’il est omis, c’est vide par défaut.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.cookies.set")}}

- -

Exemples

- -

Cet exemple définit un cookie pour le document hébergé par l'onglet actuellement actif :

- -
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"
-  });
-}
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/cookies/set/index.md b/files/fr/mozilla/add-ons/webextensions/api/cookies/set/index.md new file mode 100644 index 0000000000..1fbb895651 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/cookies/set/index.md @@ -0,0 +1,122 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La méthode set() 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 Set-Cookie lors d'une requête à une URL donnée.

+ +

L'appel réussit uniquement si vous incluez la permission de l'API "cookies" dans votre fichier manifest.json, ainsi que les permissions d'hôte 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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var setting = browser.cookies.set(
+  details               // object
+)
+
+ +

Paramètres

+ +
+
details
+
Un objet contenant les détails du cookie que vous souhaitez définir. Il peut avoir les propriétés suivantes :
+
domain{{optional_inline}}
+
Une chaîne représentant le domaine du cookie. S’il est omis, le cookie devient un cookie hôte uniquement.
+
expirationDate{{optional_inline}}
+
Un nombre 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.
+
firstPartyDomain{{optional_inline}}
+
Une chaîne 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 Isolement de la première partie.
+
httpOnly{{optional_inline}}
+
Un booléen qui spécifie si le cookie doit être marqué comme  HttpOnly (true), ou pas (false). S’il est omis, la valeur par défaut est false.
+
name{{optional_inline}}
+
Une chaîne représentant le nom du cookie. S’il est omis, il est vide par défaut.
+
path{{optional_inline}}
+
Une chaîne 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.
+
sameSite{{optional_inline}}
+
Une valeur {{WebExtAPIRef("cookies.SameSiteStatus")}} qui indique l’état SameSite du cookie. Si omis, la valeur par défaut 0, 'no_restriction'.
+
secure{{optional_inline}}
+
Un booléen qui spécifie si le cookie doit être marqué comme sécurisé (true), ou pas (false). S’il est omis, la valeur par défaut est false.
+
storeId{{optional_inline}}
+
Une chaîne 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.
+
url
+
Une chaîne 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.
+
value{{optional_inline}}
+
Une chaîne représentant la valeur du cookie. S’il est omis, c’est vide par défaut.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.cookies.set")}}

+ +

Exemples

+ +

Cet exemple définit un cookie pour le document hébergé par l'onglet actuellement actif :

+ +
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"
+  });
+}
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.cookies. Cette documentation est dérivée de cookies.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/index.html b/files/fr/mozilla/add-ons/webextensions/api/devtools/index.html deleted file mode 100644 index 70c32fc4f4..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/index.html +++ /dev/null @@ -1,72 +0,0 @@ ---- -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 ---- -

{{AddonSidebar}}

- -

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.

- -

Pour utiliser cette API, vous devez disposer de la permission API "devtools" spécifiée dans votre fichier manifest.json. Cette permission ne peut pas être facultative.

- -

Interfaces

- -
-
{{WebExtAPIRef("devtools.inspectedWindow")}}
-
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.
-
{{WebExtAPIRef("devtools.network")}}
-
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).
-
{{WebExtAPIRef("devtools.panels")}}
-
Créer des panneaux d'interface utilisateur qui seront affichés dans les outils de développement de l'agent utilisateur.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools")}}

- -

Note :

- -

Cette API est basé sur l'API  chrome.downloads de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/index.md new file mode 100644 index 0000000000..70c32fc4f4 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/index.md @@ -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 +--- +

{{AddonSidebar}}

+ +

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.

+ +

Pour utiliser cette API, vous devez disposer de la permission API "devtools" spécifiée dans votre fichier manifest.json. Cette permission ne peut pas être facultative.

+ +

Interfaces

+ +
+
{{WebExtAPIRef("devtools.inspectedWindow")}}
+
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.
+
{{WebExtAPIRef("devtools.network")}}
+
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).
+
{{WebExtAPIRef("devtools.panels")}}
+
Créer des panneaux d'interface utilisateur qui seront affichés dans les outils de développement de l'agent utilisateur.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools")}}

+ +

Note :

+ +

Cette API est basé sur l'API  chrome.downloads de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index b0a63e7c22..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/eval/index.html +++ /dev/null @@ -1,217 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow/eval ---- -
{{AddonSidebar()}}
- -

Exécute JavaScript dans la fenêtre à laquelle les devtools sont attachés.

- -

C'est un peu comme utiliser {{WebExtAPIRef("tabs.executeScript()")}} pour joindre un script de contenu, mais avec deux différences principales:

- -

Tout d'abord, le JavaScript peut utiliser un ensemble de commandes spéciales que les navigateurs fournissent généralement dans leur implémentation de console devtools : par exemple, en utilisant "$0" pour designer l'élément actuellement sélectionné dans l'inspecteur.

- -

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 telle qu'elle existerait si aucun script de page n'était pas chargé. 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().

- -

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.

- -

Vous ne pouvez pas appeler eval() sur les fenêtres de navigateur privilégiées telles que "about: addons".

- -

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.

- -

La fonction eval() renvoie une Promise qui résout le résultat évalué du script ou une erreur.

- -

Aides

- -

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:

- -
-
$0
-
Contient une référence à l'élément actuellement sélectionné dans l'inspecteur Devtools.
-
inspect()
-
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.
-
- -

Voir quelques exemples.

- -

Syntaxe

- -
var evaluating = browser.devtools.inspectedWindow.eval(
-  expression,       // string
-  options           // object
-)
-
- -

Paramètres

- -
-
expression
-
string. 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.
-
options{{optional_inline}}
-

object. Options pour la fonction  (Notez que Firefox ne supporte pas encore cette option), comme suit :

-
-
frameURL{{optional_inline}}
-
string. 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.
-
useContentScriptContext{{optional_inline}}
-
boolean. 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.
-
contextSecurityOrigin {{optional_inline}}
-
string. 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 useContentScriptContext.
-
-
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un tableau contenant deux éléments.

- -

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.

- -

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 :

- - - -

Compatibilité des navigateurs

- -

{{Compat("webextensions.api.devtools.inspectedWindow.eval")}}

- -

Exemples

- -

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.

- -
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", () => {
-  browser.devtools.inspectedWindow.eval(checkjQuery)
-    .then(handleResult);
-});
- -

Exemples d'aide

- -

Cela utilise l'aide de $0 pour définir la couleur d'arrière-plan de l'élément, actuellement sélectionné dans l'inspecteur :

- -
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", () => {
-  browser.devtools.inspectedWindow.eval(evalString)
-    .then(handleResult);
-});
-
- -

Cela utilise l'assistant l'inspection() pour sélectionner le premier élément <h1> dans la page:

- -
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", () => {
-  browser.devtools.inspectedWindow.eval(inspectString)
-    .then(handleResult);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/eval/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/eval/index.md new file mode 100644 index 0000000000..b0a63e7c22 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/eval/index.md @@ -0,0 +1,217 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow/eval +--- +
{{AddonSidebar()}}
+ +

Exécute JavaScript dans la fenêtre à laquelle les devtools sont attachés.

+ +

C'est un peu comme utiliser {{WebExtAPIRef("tabs.executeScript()")}} pour joindre un script de contenu, mais avec deux différences principales:

+ +

Tout d'abord, le JavaScript peut utiliser un ensemble de commandes spéciales que les navigateurs fournissent généralement dans leur implémentation de console devtools : par exemple, en utilisant "$0" pour designer l'élément actuellement sélectionné dans l'inspecteur.

+ +

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 telle qu'elle existerait si aucun script de page n'était pas chargé. 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().

+ +

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.

+ +

Vous ne pouvez pas appeler eval() sur les fenêtres de navigateur privilégiées telles que "about: addons".

+ +

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.

+ +

La fonction eval() renvoie une Promise qui résout le résultat évalué du script ou une erreur.

+ +

Aides

+ +

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:

+ +
+
$0
+
Contient une référence à l'élément actuellement sélectionné dans l'inspecteur Devtools.
+
inspect()
+
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.
+
+ +

Voir quelques exemples.

+ +

Syntaxe

+ +
var evaluating = browser.devtools.inspectedWindow.eval(
+  expression,       // string
+  options           // object
+)
+
+ +

Paramètres

+ +
+
expression
+
string. 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.
+
options{{optional_inline}}
+

object. Options pour la fonction  (Notez que Firefox ne supporte pas encore cette option), comme suit :

+
+
frameURL{{optional_inline}}
+
string. 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.
+
useContentScriptContext{{optional_inline}}
+
boolean. 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.
+
contextSecurityOrigin {{optional_inline}}
+
string. 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 useContentScriptContext.
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un tableau contenant deux éléments.

+ +

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.

+ +

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 :

+ + + +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.api.devtools.inspectedWindow.eval")}}

+ +

Exemples

+ +

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.

+ +
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", () => {
+  browser.devtools.inspectedWindow.eval(checkjQuery)
+    .then(handleResult);
+});
+ +

Exemples d'aide

+ +

Cela utilise l'aide de $0 pour définir la couleur d'arrière-plan de l'élément, actuellement sélectionné dans l'inspecteur :

+ +
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", () => {
+  browser.devtools.inspectedWindow.eval(evalString)
+    .then(handleResult);
+});
+
+ +

Cela utilise l'assistant l'inspection() pour sélectionner le premier élément <h1> dans la page:

+ +
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", () => {
+  browser.devtools.inspectedWindow.eval(inspectString)
+    .then(handleResult);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index ed589e5b7c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/index.html +++ /dev/null @@ -1,83 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow ---- -
{{AddonSidebar}}
- -
-

Note : 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 APIs de devtools de Chrome, 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  Limitations des APIs devtools.

-
- -

L'API devtools.inspectedWindow permet à un extension de devtools d'interagir avec la fenêtre sur laquelle les outils de développement sont attachés.

- -

Comme toutes les APIs de devtools, cette API n'est disponible que pour exécuter le code dans le document défini dans la clé devtools_page 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 Extension des outils de développement  pour plus d'informations.

- -

Propriétés

- -
-
devtools.inspectedWindow.tabId
-
L'ID de la fenêtre sur laquelle sont attachés les outils du développeur.
-
- -

Fonctions

- -
-
devtools.inspectedWindow.eval()
-
Evaluez certains JavaScript dans la fenêtre de destination.
-
devtools.inspectedWindow.reload()
-
Rechargez le document de la fenêtre destination.
-
- -

Comptatibilité navigateur

- -

{{Compat("webextensions.api.devtools.inspectedWindow")}}

- -

{{WebExtExamples("h2")}}

- - - -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.inspectedWindow.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/index.md new file mode 100644 index 0000000000..ed589e5b7c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/index.md @@ -0,0 +1,83 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow +--- +
{{AddonSidebar}}
+ +
+

Note : 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 APIs de devtools de Chrome, 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  Limitations des APIs devtools.

+
+ +

L'API devtools.inspectedWindow permet à un extension de devtools d'interagir avec la fenêtre sur laquelle les outils de développement sont attachés.

+ +

Comme toutes les APIs de devtools, cette API n'est disponible que pour exécuter le code dans le document défini dans la clé devtools_page 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 Extension des outils de développement  pour plus d'informations.

+ +

Propriétés

+ +
+
devtools.inspectedWindow.tabId
+
L'ID de la fenêtre sur laquelle sont attachés les outils du développeur.
+
+ +

Fonctions

+ +
+
devtools.inspectedWindow.eval()
+
Evaluez certains JavaScript dans la fenêtre de destination.
+
devtools.inspectedWindow.reload()
+
Rechargez le document de la fenêtre destination.
+
+ +

Comptatibilité navigateur

+ +

{{Compat("webextensions.api.devtools.inspectedWindow")}}

+ +

{{WebExtExamples("h2")}}

+ + + +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.inspectedWindow.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index ee1076553c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/reload/index.html +++ /dev/null @@ -1,98 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow/reload ---- -
{{AddonSidebar()}}
- -

Recharge la fenêtre à laquelle les devtools sont attachés.

- -

Syntaxe

- -
browser.devtools.inspectedWindow.reload(
-  reloadOptions       // object
-)
-
- -

Paramètres

- -
-
reloadOptions{{optional_inline}}
-

object. Options pour la fonction, comme suit

-
-
ignoreCache{{optional_inline}}
-
boolean. S'il est vrai, cela fait que le rechargement ignore le cache du navigateur (comme si l'utilisateur avait appuyé sur Shift+Ctrl+R).
-
userAgent{{optional_inline}}
-
string. Définissez un agent utilisateur personnalisé pour la page. Ici, la chaîne fournie sera envoyée dans l'en-tête de l'Agent utilisateur, et sera renvoyée par les appels à navigator.userAgent réalisé par des scripts s'exécutant sur la page.
-
injectedScript {{optional_inline}}
-
string. Injectez l'expression JavaScript donnée dans toutes les images de la page, avant tout autre script.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.inspectedWindow.reload")}}

- -

Exemples

- -

Rechargez la fenêtre inspectée, définissez l'agent utilisateur et injectez un script

- -
const reloadButton = document.querySelector("#reload-button");
-
-reloadButton.addEventListener("click", () => {
-  browser.devtools.inspectedWindow.reload({
-    injectedScript:"alert(navigator.userAgent);",
-    userAgent: "Not a real UA"
-  });
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/reload/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/reload/index.md new file mode 100644 index 0000000000..ee1076553c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/reload/index.md @@ -0,0 +1,98 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow/reload +--- +
{{AddonSidebar()}}
+ +

Recharge la fenêtre à laquelle les devtools sont attachés.

+ +

Syntaxe

+ +
browser.devtools.inspectedWindow.reload(
+  reloadOptions       // object
+)
+
+ +

Paramètres

+ +
+
reloadOptions{{optional_inline}}
+

object. Options pour la fonction, comme suit

+
+
ignoreCache{{optional_inline}}
+
boolean. S'il est vrai, cela fait que le rechargement ignore le cache du navigateur (comme si l'utilisateur avait appuyé sur Shift+Ctrl+R).
+
userAgent{{optional_inline}}
+
string. Définissez un agent utilisateur personnalisé pour la page. Ici, la chaîne fournie sera envoyée dans l'en-tête de l'Agent utilisateur, et sera renvoyée par les appels à navigator.userAgent réalisé par des scripts s'exécutant sur la page.
+
injectedScript {{optional_inline}}
+
string. Injectez l'expression JavaScript donnée dans toutes les images de la page, avant tout autre script.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.inspectedWindow.reload")}}

+ +

Exemples

+ +

Rechargez la fenêtre inspectée, définissez l'agent utilisateur et injectez un script

+ +
const reloadButton = document.querySelector("#reload-button");
+
+reloadButton.addEventListener("click", () => {
+  browser.devtools.inspectedWindow.reload({
+    injectedScript:"alert(navigator.userAgent);",
+    userAgent: "Not a real UA"
+  });
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 74bd42ba3b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/tabid/index.html +++ /dev/null @@ -1,84 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow/tabId ---- -
{{AddonSidebar()}}
- -

L'ID de {{WebExtAPIRef("tabs.Tab", "tab")}} est que cette instance des devtools est jointe, représenté comme un nombre.

- -

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 :

- -
// devtools-panel.js
-
-const scriptToAttach = "document.body.innerHTML = 'Hi from the devtools';";
-
-attachContentScriptButton.addEventListener("click", () => {
-  browser.runtime.sendMessage({
-    tabId: browser.devtools.inspectedWindow.tabId,
-    script: scriptToAttach
-  });
-});
- -
// background.js
-
-function handleMessage(request, sender, sendResponse) {
-  browser.tabs.executeScript(request.tabId, {
-    code: request.script
-  });
-}
-
-browser.runtime.onMessage.addListener(handleMessage);
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.inspectedWindow.tabId")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/tabid/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/tabid/index.md new file mode 100644 index 0000000000..74bd42ba3b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/inspectedwindow/tabid/index.md @@ -0,0 +1,84 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.inspectedWindow/tabId +--- +
{{AddonSidebar()}}
+ +

L'ID de {{WebExtAPIRef("tabs.Tab", "tab")}} est que cette instance des devtools est jointe, représenté comme un nombre.

+ +

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 :

+ +
// devtools-panel.js
+
+const scriptToAttach = "document.body.innerHTML = 'Hi from the devtools';";
+
+attachContentScriptButton.addEventListener("click", () => {
+  browser.runtime.sendMessage({
+    tabId: browser.devtools.inspectedWindow.tabId,
+    script: scriptToAttach
+  });
+});
+ +
// background.js
+
+function handleMessage(request, sender, sendResponse) {
+  browser.tabs.executeScript(request.tabId, {
+    code: request.script
+  });
+}
+
+browser.runtime.onMessage.addListener(handleMessage);
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.inspectedWindow.tabId")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 622856787a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/network/gethar/index.html +++ /dev/null @@ -1,87 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.network/getHAR ---- -
{{AddonSidebar()}}
- -

Obtenez un journal HAR pour la page chargée dans l'onglet en cours.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getting = browser.devtools.network.getHAR()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise 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 spécification HAR.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.network.getHAR")}}

- -

Exemples

- -

Consignez les URL des demandes contenues dans le journal HAR :

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.network.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/network/gethar/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/network/gethar/index.md new file mode 100644 index 0000000000..622856787a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/network/gethar/index.md @@ -0,0 +1,87 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.network/getHAR +--- +
{{AddonSidebar()}}
+ +

Obtenez un journal HAR pour la page chargée dans l'onglet en cours.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getting = browser.devtools.network.getHAR()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise 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 spécification HAR.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.network.getHAR")}}

+ +

Exemples

+ +

Consignez les URL des demandes contenues dans le journal HAR :

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.network.

+
+ + 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 deleted file mode 100644 index 77b3bfa8a7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/network/index.html +++ /dev/null @@ -1,76 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.network ---- -
{{AddonSidebar}}
- -

L'API devtools.network 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).

- -

Comme toutes les APIs de devtools, cette API est uniquement disponible pour le code exécuté dans le document défini dans la clé devtools_page du manifest.json, ou dans d'autres documents de devtools créés par l'extension (tel que le document du panneau). Voir Extension des outils de développement pour plus d'informations.

- -

Fonctions

- -
-
devtools.network.getHAR()
-
Obtenez le  journal HAR pour la page chargée dans l'onglet en cours..
-
- -

Evénements

- -
-
devtools.network.onNavigated
-
Attiré lorsque l'utilisateur navigue dans la fenêtre inspectée vers une nouvelle page.
-
devtools.network.onRequestFinished
-
Lancé lorsque la demande réseau est terminée et que ses détails sont disponibles pour l'extension.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.network")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.network.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/network/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/network/index.md new file mode 100644 index 0000000000..77b3bfa8a7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/network/index.md @@ -0,0 +1,76 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.network +--- +
{{AddonSidebar}}
+ +

L'API devtools.network 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).

+ +

Comme toutes les APIs de devtools, cette API est uniquement disponible pour le code exécuté dans le document défini dans la clé devtools_page du manifest.json, ou dans d'autres documents de devtools créés par l'extension (tel que le document du panneau). Voir Extension des outils de développement pour plus d'informations.

+ +

Fonctions

+ +
+
devtools.network.getHAR()
+
Obtenez le  journal HAR pour la page chargée dans l'onglet en cours..
+
+ +

Evénements

+ +
+
devtools.network.onNavigated
+
Attiré lorsque l'utilisateur navigue dans la fenêtre inspectée vers une nouvelle page.
+
devtools.network.onRequestFinished
+
Lancé lorsque la demande réseau est terminée et que ses détails sont disponibles pour l'extension.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.network")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.network.

+
+ + 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 deleted file mode 100644 index bc75f0ecdd..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/network/onnavigated/index.html +++ /dev/null @@ -1,102 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.network/onNavigated ---- -
{{AddonSidebar()}}
- -

Mise en place lorsque l'utilisateur navigue dans la fenêtre inspectée vers une nouvelle page

- -

Syntaxe

- -
browser.devtools.network.onNavigated.addListener(listener)
-browser.devtools.network.onNavigated.removeListener(listener)
-browser.devtools.network.onNavigated.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajouter un auditeur à cet événement.
-
removeListener(listener)
-
Arrêter d'écouter un événement. L'argument de l'auditeur est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie vrai si elle écoute, sinon faux.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lors de l'événement. La fonction passera les arguments suivants :

- -
-
url
-
string. La nouvelle URL pour la fenêtre.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.network.onNavigated")}}

- -

Exemples

- -
function handleNavigated(url) {
-  console.log(url);
-}
-
-browser.devtools.network.onNavigated.addListener(handleNavigated);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API chrome.devtools de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/network/onnavigated/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/network/onnavigated/index.md new file mode 100644 index 0000000000..bc75f0ecdd --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/network/onnavigated/index.md @@ -0,0 +1,102 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.network/onNavigated +--- +
{{AddonSidebar()}}
+ +

Mise en place lorsque l'utilisateur navigue dans la fenêtre inspectée vers une nouvelle page

+ +

Syntaxe

+ +
browser.devtools.network.onNavigated.addListener(listener)
+browser.devtools.network.onNavigated.removeListener(listener)
+browser.devtools.network.onNavigated.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajouter un auditeur à cet événement.
+
removeListener(listener)
+
Arrêter d'écouter un événement. L'argument de l'auditeur est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie vrai si elle écoute, sinon faux.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lors de l'événement. La fonction passera les arguments suivants :

+ +
+
url
+
string. La nouvelle URL pour la fenêtre.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.network.onNavigated")}}

+ +

Exemples

+ +
function handleNavigated(url) {
+  console.log(url);
+}
+
+browser.devtools.network.onNavigated.addListener(handleNavigated);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.devtools de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 10f287569b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/network/onrequestfinished/index.html +++ /dev/null @@ -1,111 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.network/onRequestFinished ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'une requête réseau est terminée et que ses détails sont disponibles pour l'extension.

- -

La requête est donnée en tant qu'objet d'entrée HAR, qui est également doté d'une méthode getContent() asynchrone qui récupère le contenu du corps de la réponse.

- -

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 moniteur réseau du navigateur au moins une fois.

- -

Syntaxe

- -
browser.devtools.network.onRequestFinished.addListener(listener)
-browser.devtools.network.onRequestFinished.removeListener(listener)
-browser.devtools.network.onRequestFinished.hasListener(listener)
-
- -

Les événements ont trois fonctions

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument de listener  est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie trues'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
request
-
object. Un objet représentant la requête. Cet objet est un seul objet d'entrée HAR. Il définit également une méthode getContent() asynchrone, qui renvoie une Promise qui se résout avec le corps de la réponse.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.network.onRequestFinished")}}

- -

Examples

- -

Ajoutez un écouteur qui consigne l'adresse IP du serveur et le corps de la réponse pour chaque requête réseau.

- -
function handleRequestFinished(request) {
-  console.log("Server IP: ", request.serverIPAddress);
-  request.getContent().then(content => {
-    console.log("Content: ", content);
-  });
-}
-
-browser.devtools.network.onRequestFinished.addListener(handleRequestFinished);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API chrome.devtools de Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/network/onrequestfinished/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/network/onrequestfinished/index.md new file mode 100644 index 0000000000..10f287569b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/network/onrequestfinished/index.md @@ -0,0 +1,111 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.network/onRequestFinished +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'une requête réseau est terminée et que ses détails sont disponibles pour l'extension.

+ +

La requête est donnée en tant qu'objet d'entrée HAR, qui est également doté d'une méthode getContent() asynchrone qui récupère le contenu du corps de la réponse.

+ +

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 moniteur réseau du navigateur au moins une fois.

+ +

Syntaxe

+ +
browser.devtools.network.onRequestFinished.addListener(listener)
+browser.devtools.network.onRequestFinished.removeListener(listener)
+browser.devtools.network.onRequestFinished.hasListener(listener)
+
+ +

Les événements ont trois fonctions

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument de listener  est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie trues'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
request
+
object. Un objet représentant la requête. Cet objet est un seul objet d'entrée HAR. Il définit également une méthode getContent() asynchrone, qui renvoie une Promise qui se résout avec le corps de la réponse.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.network.onRequestFinished")}}

+ +

Examples

+ +

Ajoutez un écouteur qui consigne l'adresse IP du serveur et le corps de la réponse pour chaque requête réseau.

+ +
function handleRequestFinished(request) {
+  console.log("Server IP: ", request.serverIPAddress);
+  request.getContent().then(content => {
+    console.log("Content: ", content);
+  });
+}
+
+browser.devtools.network.onRequestFinished.addListener(handleRequestFinished);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.devtools de Chromium.

+
+ + 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 deleted file mode 100644 index 4ea3a37efb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/create/index.html +++ /dev/null @@ -1,109 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/create ---- -
{{AddonSidebar()}}
- -

Ajoute un nouveau panneau aux devtools.

- -

Cette fonction prend : un titre, une URL vers un fichier d'icône et une URL vers un fichier HTML. Il crée un nouveau panneau dans les devtools, dont le contenu est spécifié par le fichier HTML. Il renvoie une Promise qui résout un objet ExtensionPanel représentant le nouveau panneau.

- -

Syntaxe

- -
var creating = browser.devtools.panels.create(
-  title,       // string
-  iconPath,    // string
-  pagePath     // string
-)
-
- -

Parametères

- -
-
title
-
string. 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.
-
iconPath
-
string. 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").
-
pagePath
-
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 Extention des outils de développement.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un objet ExtensionPanel représentant le nouveau panneau.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.create")}}

- -

Exemples

- -

Créer un nouveau panneau, et ajoute des auditeurs à ces événements onShown et  onHidden :

- -
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) => {
-  newPanel.onShown.addListener(handleShown);
-  newPanel.onHidden.addListener(handleHidden);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/create/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/create/index.md new file mode 100644 index 0000000000..4ea3a37efb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/create/index.md @@ -0,0 +1,109 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/create +--- +
{{AddonSidebar()}}
+ +

Ajoute un nouveau panneau aux devtools.

+ +

Cette fonction prend : un titre, une URL vers un fichier d'icône et une URL vers un fichier HTML. Il crée un nouveau panneau dans les devtools, dont le contenu est spécifié par le fichier HTML. Il renvoie une Promise qui résout un objet ExtensionPanel représentant le nouveau panneau.

+ +

Syntaxe

+ +
var creating = browser.devtools.panels.create(
+  title,       // string
+  iconPath,    // string
+  pagePath     // string
+)
+
+ +

Parametères

+ +
+
title
+
string. 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.
+
iconPath
+
string. 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").
+
pagePath
+
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 Extention des outils de développement.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un objet ExtensionPanel représentant le nouveau panneau.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.create")}}

+ +

Exemples

+ +

Créer un nouveau panneau, et ajoute des auditeurs à ces événements onShown et  onHidden :

+ +
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) => {
+  newPanel.onShown.addListener(handleShown);
+  newPanel.onHidden.addListener(handleHidden);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 13429a0e32..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elements/index.html +++ /dev/null @@ -1,28 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/elements ---- -
{{AddonSidebar()}}
- -

Un objet ElementsPanel qui représente l'inspecteur HTML/CSS du navigateur

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.elements", 10)}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elements/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elements/index.md new file mode 100644 index 0000000000..13429a0e32 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elements/index.md @@ -0,0 +1,28 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/elements +--- +
{{AddonSidebar()}}
+ +

Un objet ElementsPanel qui représente l'inspecteur HTML/CSS du navigateur

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.elements", 10)}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+
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 deleted file mode 100644 index 5725db54ca..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/createsidebarpane/index.html +++ /dev/null @@ -1,107 +0,0 @@ ---- -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 -original_slug: >- - Mozilla/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel/createSidebarPane ---- -
{{AddonSidebar()}}
- -

Ajoute un nouveau volet à la barre latérale dans l'inspecteur HTML / CSS.

- -

L'inspecteur HTML / CSS, appelé l'inspecteur de page dans Firefox et le panneau éléments 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.

- -

La fonction createSidebarPane() 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 :

- -

- -

Cette fonction prend un argument, qui est une chaîne représentant le titre du volet. Il renvoie une Promise qui se résout en un objet ExtensionSidebarPane représentant le nouveau volet. Vous pouvez utiliser cet objet pour définir le contenu et le comportement du volet.

- -

Syntaxe

- -
var creating = browser.devtools.panels.elements.createSidebarPane(
-  title       // string
-)
-
- -

Paramètres

- -
-
title
-
string. 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.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un objet ExtensionSidebarPane représentant le nouveau volet.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.ElementsPanel.createSidebarPane", 10)}}

- -

Exemples

- -

Créez un nouveau volet et remplissez-le avec un objet JSON. Vous pouvez exécuter ce code dans un script chargé par la page devtools.

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/createsidebarpane/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/createsidebarpane/index.md new file mode 100644 index 0000000000..5725db54ca --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/createsidebarpane/index.md @@ -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 +original_slug: >- + Mozilla/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel/createSidebarPane +--- +
{{AddonSidebar()}}
+ +

Ajoute un nouveau volet à la barre latérale dans l'inspecteur HTML / CSS.

+ +

L'inspecteur HTML / CSS, appelé l'inspecteur de page dans Firefox et le panneau éléments 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.

+ +

La fonction createSidebarPane() 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 :

+ +

+ +

Cette fonction prend un argument, qui est une chaîne représentant le titre du volet. Il renvoie une Promise qui se résout en un objet ExtensionSidebarPane représentant le nouveau volet. Vous pouvez utiliser cet objet pour définir le contenu et le comportement du volet.

+ +

Syntaxe

+ +
var creating = browser.devtools.panels.elements.createSidebarPane(
+  title       // string
+)
+
+ +

Paramètres

+ +
+
title
+
string. 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.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un objet ExtensionSidebarPane représentant le nouveau volet.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.ElementsPanel.createSidebarPane", 10)}}

+ +

Exemples

+ +

Créez un nouveau volet et remplissez-le avec un objet JSON. Vous pouvez exécuter ce code dans un script chargé par la page devtools.

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+
+ + 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 deleted file mode 100644 index cb9b7b24be..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/index.html +++ /dev/null @@ -1,74 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel ---- -
{{AddonSidebar()}}
- -

Un ElementsPanel 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.

- -

Fonctions

- -
-
devtools.panels.ElementsPanel.createSidebarPane()
-
Crée un volet dans la barre latérale de l'inspecteur.
-
- -

Evénements

- -
-
devtools.panels.ElementsPanel.onSelectionChanged
-
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".
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.ElementsPanel", 10)}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/index.md new file mode 100644 index 0000000000..cb9b7b24be --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/index.md @@ -0,0 +1,74 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel +--- +
{{AddonSidebar()}}
+ +

Un ElementsPanel 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.

+ +

Fonctions

+ +
+
devtools.panels.ElementsPanel.createSidebarPane()
+
Crée un volet dans la barre latérale de l'inspecteur.
+
+ +

Evénements

+ +
+
devtools.panels.ElementsPanel.onSelectionChanged
+
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".
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.ElementsPanel", 10)}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+
+ + 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 deleted file mode 100644 index d04a11bf65..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/onselectionchanged/index.html +++ /dev/null @@ -1,74 +0,0 @@ ---- -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 -original_slug: >- - Mozilla/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel/onSelectionChanged ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.devtools.panels.elements.onSelectionChanged.addListener(listener)
-browser.devtools.panels.elements.onSelectionChanged.removeListener(listener)
-browser.devtools.panels.elements.onSelectionChanged.hasListener(listener)
-
- -

L'événement a trois fonctions :

- -
-
addListener(listener)
-
Ajoute une écoute à cet événement.
-
removeListener(listener)
-
Arrête une écoute à l'événement. L'argument de l'auditeur est un auditeur supprimer.
-
hasListener(listener)
-
Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie la valeur Vrai si elle l'écoute, sinon Faux.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lors de l'événement. La fonction ne passera pas d'arguments.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.ElementsPanel.onSelectionChanged", 10)}}

- -

Exemples

- -

Ecoutez la sélection des événements modifiés, et enregistrez le contenu du texte de l'élément nouvellement sélectionné :

- -
function handleSelectedElement() {
-  browser.devtools.inspectedWindow.eval("$0.textContent")
-    .then((result) => {
-      console.log(result[0]);
-    });
-}
-
-browser.devtools.panels.elements.onSelectionChanged.addListener(handleSelectedElement);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/onselectionchanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/onselectionchanged/index.md new file mode 100644 index 0000000000..d04a11bf65 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/elementspanel/onselectionchanged/index.md @@ -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 +original_slug: >- + Mozilla/Add-ons/WebExtensions/API/devtools.panels/ElementsPanel/onSelectionChanged +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.devtools.panels.elements.onSelectionChanged.addListener(listener)
+browser.devtools.panels.elements.onSelectionChanged.removeListener(listener)
+browser.devtools.panels.elements.onSelectionChanged.hasListener(listener)
+
+ +

L'événement a trois fonctions :

+ +
+
addListener(listener)
+
Ajoute une écoute à cet événement.
+
removeListener(listener)
+
Arrête une écoute à l'événement. L'argument de l'auditeur est un auditeur supprimer.
+
hasListener(listener)
+
Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie la valeur Vrai si elle l'écoute, sinon Faux.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lors de l'événement. La fonction ne passera pas d'arguments.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.ElementsPanel.onSelectionChanged", 10)}}

+ +

Exemples

+ +

Ecoutez la sélection des événements modifiés, et enregistrez le contenu du texte de l'élément nouvellement sélectionné :

+ +
function handleSelectedElement() {
+  browser.devtools.inspectedWindow.eval("$0.textContent")
+    .then((result) => {
+      console.log(result[0]);
+    });
+}
+
+browser.devtools.panels.elements.onSelectionChanged.addListener(handleSelectedElement);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.

+
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 deleted file mode 100644 index 8dc65df859..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionpanel/index.html +++ /dev/null @@ -1,92 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionPanel ---- -
{{AddonSidebar()}}
- -

Une ExtensionPanel représente un panneau ajouté aux devtools. C'est la résolution de la Promise renvoyé par browser.devtools.panels.create().

- -

Type

- -

Les valeurs de ce type sont des objets. Définissez deux événements, onShown et onHidden.

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.ExtensionPanel")}}

- -

Exemples

- -

Ce code crée un nouveau panneau, puis ajoute des gestionnaires pour ces événements onShown et onHidden.

- -
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) => {
-  newPanel.onShown.addListener(handleShown);
-  newPanel.onHidden.addListener(handleHidden);
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionpanel/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionpanel/index.md new file mode 100644 index 0000000000..8dc65df859 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionpanel/index.md @@ -0,0 +1,92 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionPanel +--- +
{{AddonSidebar()}}
+ +

Une ExtensionPanel représente un panneau ajouté aux devtools. C'est la résolution de la Promise renvoyé par browser.devtools.panels.create().

+ +

Type

+ +

Les valeurs de ce type sont des objets. Définissez deux événements, onShown et onHidden.

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.ExtensionPanel")}}

+ +

Exemples

+ +

Ce code crée un nouveau panneau, puis ajoute des gestionnaires pour ces événements onShown et onHidden.

+ +
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) => {
+  newPanel.onShown.addListener(handleShown);
+  newPanel.onHidden.addListener(handleHidden);
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index d56f4b58fc..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/index.html +++ /dev/null @@ -1,90 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane ---- -
{{AddonSidebar}}
- -

L'objet ExtensionSidebarPane représente un volet qu'une extension a ajouté à la barre latérale dans l'inspecteur HTML/CSS du navigateur.

- -

- -

Pour créer un ExtensionSidebarPane, appelez la fonction browser.devtools.panels.elements.createSidebarane().

- -

Fonctions

- -
-
devtools.panels.ExtensionSidebarPane.setExpression()
-
-

É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.

-
-
devtools.panels.ExtensionSidebarPane.setObject()
-
-

Définit un objet JSON qui sera affiché dans le volet de la barre latérale.

-
-
devtools.panels.ExtensionSidebarPane.setPage()
-
-

Charge la page pointée par l'URL fournie.

-
-
- -

Evénements

- -
-
devtools.panels.ExtensionSidebarPane.onShown
-
Lancé lorsque le volet latéral est affiché.
-
devtools.panels.ExtensionSidebarPane.onHidden
-
Lancé lorsque le volet de la barre latérale est masqué.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane", 10)}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/index.md new file mode 100644 index 0000000000..d56f4b58fc --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/index.md @@ -0,0 +1,90 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane +--- +
{{AddonSidebar}}
+ +

L'objet ExtensionSidebarPane représente un volet qu'une extension a ajouté à la barre latérale dans l'inspecteur HTML/CSS du navigateur.

+ +

+ +

Pour créer un ExtensionSidebarPane, appelez la fonction browser.devtools.panels.elements.createSidebarane().

+ +

Fonctions

+ +
+
devtools.panels.ExtensionSidebarPane.setExpression()
+
+

É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.

+
+
devtools.panels.ExtensionSidebarPane.setObject()
+
+

Définit un objet JSON qui sera affiché dans le volet de la barre latérale.

+
+
devtools.panels.ExtensionSidebarPane.setPage()
+
+

Charge la page pointée par l'URL fournie.

+
+
+ +

Evénements

+ +
+
devtools.panels.ExtensionSidebarPane.onShown
+
Lancé lorsque le volet latéral est affiché.
+
devtools.panels.ExtensionSidebarPane.onHidden
+
Lancé lorsque le volet de la barre latérale est masqué.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane", 10)}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+
+ + 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 deleted file mode 100644 index ac7d1e0aaa..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/onhidden/index.html +++ /dev/null @@ -1,80 +0,0 @@ ---- -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 -original_slug: >- - Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/onHidden ---- -
{{AddonSidebar()}}
- -

Appelé lorsque le volet de la barre latérale est masqué, suite à l'abandon de l'utilisateur.

- -

Syntaxe

- -
browser.devtools.panels.onHidden.addListener(listener)
-browser.devtools.panels.onHidden.removeListener(listener)
-browser.devtools.panels.onHidden.hasListener(listener)
-
- -

Les événements ont trois fonctions:

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrête d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si listener est enregistré pour cet événement. Renvoie true s'il écoute,  sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction appelée lorsque cet événement se produit. Cette fonction sera passée sans arguments.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.onHidden", 10)}}

- -

Exemples

- -

Créez un volet de barre latérale et journal afficher et masquer les événements.

- -
function onCreated(sidebarPane) {
-
-  sidebarPane.onShown.addListener(() => {
-    console.log("Shown");
-  });
-
-  sidebarPane.onHidden.addListener(() => {
-    console.log("Hidden");
-  });
-
-}
-
-browser.devtools.panels.elements.createSidebarPane("My pane").then(onCreated);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/onhidden/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/onhidden/index.md new file mode 100644 index 0000000000..ac7d1e0aaa --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/onhidden/index.md @@ -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 +original_slug: >- + Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/onHidden +--- +
{{AddonSidebar()}}
+ +

Appelé lorsque le volet de la barre latérale est masqué, suite à l'abandon de l'utilisateur.

+ +

Syntaxe

+ +
browser.devtools.panels.onHidden.addListener(listener)
+browser.devtools.panels.onHidden.removeListener(listener)
+browser.devtools.panels.onHidden.hasListener(listener)
+
+ +

Les événements ont trois fonctions:

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrête d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si listener est enregistré pour cet événement. Renvoie true s'il écoute,  sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction appelée lorsque cet événement se produit. Cette fonction sera passée sans arguments.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.onHidden", 10)}}

+ +

Exemples

+ +

Créez un volet de barre latérale et journal afficher et masquer les événements.

+ +
function onCreated(sidebarPane) {
+
+  sidebarPane.onShown.addListener(() => {
+    console.log("Shown");
+  });
+
+  sidebarPane.onHidden.addListener(() => {
+    console.log("Hidden");
+  });
+
+}
+
+browser.devtools.panels.elements.createSidebarPane("My pane").then(onCreated);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+
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 deleted file mode 100644 index e1338a1d19..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/onshown/index.html +++ /dev/null @@ -1,77 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/onShown ---- -
{{AddonSidebar()}}
- -

Lancé lorsque le volet latéral devient visible suite à un changement d'utilisateur.

- -

Syntaxe

- -
browser.devtools.panels.onShown.addListener(listener)
-browser.devtools.panels.onShown.removeListener(listener)
-browser.devtools.panels.onShown.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument de listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction sera passée sans arguments.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.onShown", 10)}}

- -

Exemples

- -

Créez un volet de barre latérale et journal afficher et masquer les événements.

- -
function onCreated(sidebarPane) {
-
-  sidebarPane.onShown.addListener(() => {
-    console.log("Shown");
-  });
-
-  sidebarPane.onHidden.addListener(() => {
-    console.log("Hidden");
-  });
-
-}
-
-browser.devtools.panels.elements.createSidebarPane("My pane").then(onCreated);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/onshown/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/onshown/index.md new file mode 100644 index 0000000000..e1338a1d19 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/onshown/index.md @@ -0,0 +1,77 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/onShown +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque le volet latéral devient visible suite à un changement d'utilisateur.

+ +

Syntaxe

+ +
browser.devtools.panels.onShown.addListener(listener)
+browser.devtools.panels.onShown.removeListener(listener)
+browser.devtools.panels.onShown.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument de listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction sera passée sans arguments.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.onShown", 10)}}

+ +

Exemples

+ +

Créez un volet de barre latérale et journal afficher et masquer les événements.

+ +
function onCreated(sidebarPane) {
+
+  sidebarPane.onShown.addListener(() => {
+    console.log("Shown");
+  });
+
+  sidebarPane.onHidden.addListener(() => {
+    console.log("Hidden");
+  });
+
+}
+
+browser.devtools.panels.elements.createSidebarPane("My pane").then(onCreated);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+
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 deleted file mode 100644 index 0098ac9f7a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setexpression/index.html +++ /dev/null @@ -1,106 +0,0 @@ ---- -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 -original_slug: >- - Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setExpression ---- -
{{AddonSidebar()}}
- -

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.

- -

Le contexte d'exécution de l'expression est le même que celui de inspectedWindow.eval().

- -

 Les objets JSON et les noeuds DOM sont affichés en tant qu'arborescence extensible, comme dans la visionneuse jSON dans Firefox. Vous pouvez éventuellement spécifier une chaîne rootTitle : elle sera affichée comme le titre de la racine de l'arbre.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var evaluating = browser.devtools.panels.setExpression(
-  expression,       // string
-  rootTitle         // string
-)
-
- -

Paramètres

- -
-
expression
-
string. L'expression à évaluer.
-
rootTitle {{optional_inline}}
-
string. Le titre de la racine de l'arbre dans lequel les résultats sont affichés.
-
- -

Valeur retournée

- -

Une Promise sera remplie sans arguments, une fois l'expression évaluée.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.setExpression", 10)}}

- -

Exemples

- -

Ce code crée un volet de barre latérale qui affiche le tagName de l'élément actuellement sélectionné :

- -
function onCreated(sidebarPane) {
-
-  browser.devtools.panels.elements.onSelectionChanged.addListener(() => {
-    const exp = "$0 && $0.tagName";
-    const title = "Selected Element tagName";
-    sidebarPane.setExpression(exp, title);
-  });
-
-}
-
-browser.devtools.panels.elements.createSidebarPane("My pane").then(onCreated);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setexpression/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setexpression/index.md new file mode 100644 index 0000000000..0098ac9f7a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setexpression/index.md @@ -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 +original_slug: >- + Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setExpression +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Le contexte d'exécution de l'expression est le même que celui de inspectedWindow.eval().

+ +

 Les objets JSON et les noeuds DOM sont affichés en tant qu'arborescence extensible, comme dans la visionneuse jSON dans Firefox. Vous pouvez éventuellement spécifier une chaîne rootTitle : elle sera affichée comme le titre de la racine de l'arbre.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var evaluating = browser.devtools.panels.setExpression(
+  expression,       // string
+  rootTitle         // string
+)
+
+ +

Paramètres

+ +
+
expression
+
string. L'expression à évaluer.
+
rootTitle {{optional_inline}}
+
string. Le titre de la racine de l'arbre dans lequel les résultats sont affichés.
+
+ +

Valeur retournée

+ +

Une Promise sera remplie sans arguments, une fois l'expression évaluée.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.setExpression", 10)}}

+ +

Exemples

+ +

Ce code crée un volet de barre latérale qui affiche le tagName de l'élément actuellement sélectionné :

+ +
function onCreated(sidebarPane) {
+
+  browser.devtools.panels.elements.onSelectionChanged.addListener(() => {
+    const exp = "$0 && $0.tagName";
+    const title = "Selected Element tagName";
+    sidebarPane.setExpression(exp, title);
+  });
+
+}
+
+browser.devtools.panels.elements.createSidebarPane("My pane").then(onCreated);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+
+ + 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 deleted file mode 100644 index dda73e1faa..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setobject/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -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 -original_slug: >- - Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setObject ---- -
{{AddonSidebar()}}
- -

Affiche un objet JSON dans le volet de la barre latérale de l'extension.

- -

L'objet est affiché en tant qu'arborescence extensible, comme dans le JSON viewer dans Firefox. Vous pouvez éventuellement spécifier une chaîne rootTitle : elle sera affichée comme le titre de la racine de l'arbre.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var setting = browser.devtools.panels.setObject(
-  jsonObject,       // string, array, or JSON object
-  rootTitle         // string
-)
-
- -

Paramètres

- -
-
jsonObject
-
String ou Array ou Object. L'objet à afficher. S'il s'agit d'un objet JSON-serialized, donc les propriétés comme les fonctions seront omises.
-
rootTitle {{optional_inline}}
-
String. Le titre de la racine de l'arbre dans lequel l'objet est affiché.
-
- -

Valeur retournée

- -

Une Promise qui sera accomplie sans arguments, une fois l'objet défini.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.setObject", 10)}}

- -

Exemples

- -

Créez un nouveau volet et remplissez-le avec un objet JSON. Vous pouvez exécuter ce code dans un script chargé par la page devtools. de votre extension

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setobject/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setobject/index.md new file mode 100644 index 0000000000..dda73e1faa --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setobject/index.md @@ -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 +original_slug: >- + Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setObject +--- +
{{AddonSidebar()}}
+ +

Affiche un objet JSON dans le volet de la barre latérale de l'extension.

+ +

L'objet est affiché en tant qu'arborescence extensible, comme dans le JSON viewer dans Firefox. Vous pouvez éventuellement spécifier une chaîne rootTitle : elle sera affichée comme le titre de la racine de l'arbre.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var setting = browser.devtools.panels.setObject(
+  jsonObject,       // string, array, or JSON object
+  rootTitle         // string
+)
+
+ +

Paramètres

+ +
+
jsonObject
+
String ou Array ou Object. L'objet à afficher. S'il s'agit d'un objet JSON-serialized, donc les propriétés comme les fonctions seront omises.
+
rootTitle {{optional_inline}}
+
String. Le titre de la racine de l'arbre dans lequel l'objet est affiché.
+
+ +

Valeur retournée

+ +

Une Promise qui sera accomplie sans arguments, une fois l'objet défini.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.setObject", 10)}}

+ +

Exemples

+ +

Créez un nouveau volet et remplissez-le avec un objet JSON. Vous pouvez exécuter ce code dans un script chargé par la page devtools. de votre extension

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+
+ + 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 deleted file mode 100644 index 7d3651cbeb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setpage/index.html +++ /dev/null @@ -1,86 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setPage ---- -

Définit une page HTML à afficher dans le volet latéral.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
browser.devtools.panels.setPage(
-  path // string containing relative path to page
-)
-
- -

Paramètres

- -
-
extensionPageURL
-
string. Le chemin relatif d'une page HTML à afficher dans la barre latérale.
-
- -

Valeur retournée

- -

Une Promise qui sera tenue sans arguments, une fois l'URL définie.

- -

La page sélectionnée ne sera pas chargée tant que l'utilisateur n'aura pas sélectionné la barre latérale devtools.

- -

Exemples

- -

Créez un nouveau volet et remplissez-le d'une page HTML. Vous pouvez exécuter ce code dans un script chargé par la page devtools de votre extension.

- -
function onCreated(sidebarPane) {
-  sidebarPane.setPage('sidebar/sidebar.html');
-}
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.setPage", 10)}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setpage/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setpage/index.md new file mode 100644 index 0000000000..7d3651cbeb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/extensionsidebarpane/setpage/index.md @@ -0,0 +1,86 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/ExtensionSidebarPane/setPage +--- +

Définit une page HTML à afficher dans le volet latéral.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
browser.devtools.panels.setPage(
+  path // string containing relative path to page
+)
+
+ +

Paramètres

+ +
+
extensionPageURL
+
string. Le chemin relatif d'une page HTML à afficher dans la barre latérale.
+
+ +

Valeur retournée

+ +

Une Promise qui sera tenue sans arguments, une fois l'URL définie.

+ +

La page sélectionnée ne sera pas chargée tant que l'utilisateur n'aura pas sélectionné la barre latérale devtools.

+ +

Exemples

+ +

Créez un nouveau volet et remplissez-le d'une page HTML. Vous pouvez exécuter ce code dans un script chargé par la page devtools de votre extension.

+ +
function onCreated(sidebarPane) {
+  sidebarPane.setPage('sidebar/sidebar.html');
+}
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.ExtensionSidebarPane.setPage", 10)}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+
+ + 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 deleted file mode 100644 index b144733c9b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels ---- -
{{AddonSidebar}}
- -
-

Note : Bien que les API soient basées sur les APIs de devtools de Chrome, 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  Limitations des APIs devtools.

-
- -

L'API devtools.panels permet à une extension devtools de définir son interface utilisateur à l'intérieur de la fenêtre devtools.

- -

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".

- -

Avec l'API devtools.panels, vous pouvez créer de nouveaux panneaux dans la fenêtre des devtools.

- -

Comme toutes les API de devtools, cette API est uniquement disponible pour le code exécuté dans le document défini dans la clé devtools_page du manifest.json, ou dans d'autres documents de déploiement créés par une extension (tel que le document du panneau). Voir Extension des outils de développement pour plus for d'informations.

- -

Types

- -
-
devtools.panels.ElementsPanel
-
Représente l'inspecteur HTML/CSS dans le devtools du navigateur
-
devtools.panels.ExtensionPanel
-
Représente un panneau de déploiement créé par l'extension.
-
devtools.panels.ExtensionSidebarPane
-
Représente un volet ajouté par une extension à l'inspecteur HTML/CC dans les devtools du navigateur.
-
- -

Propriétés

- -
-
devtools.panels.elements
-
Une référence à un objet ElementsPanel.
-
devtools.panels.themeName
-
Le nom du thème actuel des devtools.
-
- -

Fonctions

- -
-
devtools.panels.create()
-
Créé un nouveau panneau de développement
-
- -

Evénements

- -
-
devtools.panels.onThemeChanged
-
Mise en place lorsque le thème Devtools change.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels", 2)}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/index.md new file mode 100644 index 0000000000..b144733c9b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/index.md @@ -0,0 +1,104 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels +--- +
{{AddonSidebar}}
+ +
+

Note : Bien que les API soient basées sur les APIs de devtools de Chrome, 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  Limitations des APIs devtools.

+
+ +

L'API devtools.panels permet à une extension devtools de définir son interface utilisateur à l'intérieur de la fenêtre devtools.

+ +

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".

+ +

Avec l'API devtools.panels, vous pouvez créer de nouveaux panneaux dans la fenêtre des devtools.

+ +

Comme toutes les API de devtools, cette API est uniquement disponible pour le code exécuté dans le document défini dans la clé devtools_page du manifest.json, ou dans d'autres documents de déploiement créés par une extension (tel que le document du panneau). Voir Extension des outils de développement pour plus for d'informations.

+ +

Types

+ +
+
devtools.panels.ElementsPanel
+
Représente l'inspecteur HTML/CSS dans le devtools du navigateur
+
devtools.panels.ExtensionPanel
+
Représente un panneau de déploiement créé par l'extension.
+
devtools.panels.ExtensionSidebarPane
+
Représente un volet ajouté par une extension à l'inspecteur HTML/CC dans les devtools du navigateur.
+
+ +

Propriétés

+ +
+
devtools.panels.elements
+
Une référence à un objet ElementsPanel.
+
devtools.panels.themeName
+
Le nom du thème actuel des devtools.
+
+ +

Fonctions

+ +
+
devtools.panels.create()
+
Créé un nouveau panneau de développement
+
+ +

Evénements

+ +
+
devtools.panels.onThemeChanged
+
Mise en place lorsque le thème Devtools change.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels", 2)}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 757f74684b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/onthemechanged/index.html +++ /dev/null @@ -1,71 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/onThemeChanged ---- -
{{AddonSidebar()}}
- -

Remplacement quand le thème de devtools change

- -

Syntaxe

- -
browser.devtools.panels.onThemeChanged.addListener(listener)
-browser.devtools.panels.onThemeChanged.removeListener(listener)
-browser.devtools.panels.onThemeChanged.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un auditeur à cet événement
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument de l'auditeur est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie Vrai si elle écoute, sinon Faux.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Function qui sera appelée lors de l'événement. La fonction passera les arguments suivants :

- -
-
themeName
-
string. Nom du nouveau thème : ce sera l'une des valeurs autorisées pour  devtools.panels.themeName.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.onThemeChanged")}}

- -

Exemples

- -
browser.devtools.panels.onThemeChanged.addListener((newThemeName) => {
-  console.log(`New theme: ${newThemeName}`);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/onthemechanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/onthemechanged/index.md new file mode 100644 index 0000000000..757f74684b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/onthemechanged/index.md @@ -0,0 +1,71 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/onThemeChanged +--- +
{{AddonSidebar()}}
+ +

Remplacement quand le thème de devtools change

+ +

Syntaxe

+ +
browser.devtools.panels.onThemeChanged.addListener(listener)
+browser.devtools.panels.onThemeChanged.removeListener(listener)
+browser.devtools.panels.onThemeChanged.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un auditeur à cet événement
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument de l'auditeur est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie Vrai si elle écoute, sinon Faux.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Function qui sera appelée lors de l'événement. La fonction passera les arguments suivants :

+ +
+
themeName
+
string. Nom du nouveau thème : ce sera l'une des valeurs autorisées pour  devtools.panels.themeName.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.onThemeChanged")}}

+ +

Exemples

+ +
browser.devtools.panels.onThemeChanged.addListener((newThemeName) => {
+  console.log(`New theme: ${newThemeName}`);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 12aab2c1b1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/themename/index.html +++ /dev/null @@ -1,38 +0,0 @@ ---- -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 -original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/themeName ---- -
{{AddonSidebar()}}
- -

Le nom du thème de devtools actuellement sélectionné.

- -

Il s'agit d'une chaîne dont les valeurs possibles sont :

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.devtools.panels.themeName")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.devtools.panels.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/themename/index.md b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/themename/index.md new file mode 100644 index 0000000000..12aab2c1b1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/devtools/panels/themename/index.md @@ -0,0 +1,38 @@ +--- +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 +original_slug: Mozilla/Add-ons/WebExtensions/API/devtools.panels/themeName +--- +
{{AddonSidebar()}}
+ +

Le nom du thème de devtools actuellement sélectionné.

+ +

Il s'agit d'une chaîne dont les valeurs possibles sont :

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.devtools.panels.themeName")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.devtools.panels.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
diff --git a/files/fr/mozilla/add-ons/webextensions/api/dns/index.html b/files/fr/mozilla/add-ons/webextensions/api/dns/index.html deleted file mode 100644 index aaac9b867d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/dns/index.html +++ /dev/null @@ -1,31 +0,0 @@ ---- -title: dns -slug: Mozilla/Add-ons/WebExtensions/API/dns -tags: - - API - - Add-ons - - DNS - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/API/dns ---- -
{{AddonSidebar}}
- -
Active une extension pour résoudre les noms de domaine.
- -
- -
Pour utiliser cette API, une extension doit demander la permission "dns" permission dans son fichier manifest.json .
- -

Fonctions

- -
-
{{WebExtAPIRef("dns.resolve()")}}
-
Résout le nom d'hôte donné en un enregistrement DNS
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.dns")}}

- -

{{WebExtExamples("h2")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/dns/index.md b/files/fr/mozilla/add-ons/webextensions/api/dns/index.md new file mode 100644 index 0000000000..aaac9b867d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/dns/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +
Active une extension pour résoudre les noms de domaine.
+ +
+ +
Pour utiliser cette API, une extension doit demander la permission "dns" permission dans son fichier manifest.json .
+ +

Fonctions

+ +
+
{{WebExtAPIRef("dns.resolve()")}}
+
Résout le nom d'hôte donné en un enregistrement DNS
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.dns")}}

+ +

{{WebExtExamples("h2")}}

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 deleted file mode 100644 index 55a746e426..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/dns/resolve/index.html +++ /dev/null @@ -1,94 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Résout le nom d'hôte donné en un enregistrement DNS.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var resolving = browser.dns.resolve(
-  hostname,    // string
-  flags        // array of string
-)
-
- -

Paramètres

- -
-
hostname
-
string. Le nom d'hôte à résoudre.
-
flags {{optional_inline}}
-

array de string. Drapeaux pour modifier la façon dont le nom d'hôte est résolu. Tous les indicateurs omis sont par défaut à false. Vous pouvez passer zéro ou plusieurs des indicateurs suivants :

-
    -
  • "allow_name_collisions": autorise les résultats de collision de noms qui sont normalement filtrés.
  • -
  • "bypass_cache": Supprime le cache de recherche DNS interne.
  • -
  • "canonical_name": Le nom canonique de l'hôte spécifié sera interrogé.
  • -
  • "disable_ipv4": Seules les adresses IPv6 seront renvoyées.
  • -
  • "disable_ipv6": Seules les adresses IPv4 seront renvoyées.
  • -
  • "disable_trr": 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 DNS-over-HTTPS dédié.
  • -
  • "offline": seuls les littéraux et les entrées mises en cache seront renvoyés.
  • -
  • "priority_low": La priorité est donnée à la requête. Si "priority_medium" est également donné, la requête est prioritaire.
  • -
  • "priority_medium": La priorité est donnée à la requête. Si "priority_low" est également donné, la requête est prioritaire
  • -
  • "speculate": 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.
  • -
-
-
- -

Valeur retournée

- -

A Promise qui sera remplie avec un objet DNSRecord object. Cet objet peut contenir les propriétés suivantes :

- -
-
addresses
-
array of string. Les adresses IP associées à cet enregistrement DNS.
-
canonicalName
-
string. Le nom canonique de cet enregistrement. Ceci n'est inclus dans la réponse que si le drapeau "canonical_name"a été passé à  resolve().
-
isTRR
-
boolean: true si l'enregistrement a été récupéré à l'aide d'un TRR (Trusted Recursive Resolver).
-
- -

Exemples

- -
function resolved(record) {
-  console.log(record.addresses);
-}
-
-let resolving = browser.dns.resolve("example.com");
-resolving.then(resolved);
-
-// > e.g. Array [ "73.284.240.12" ]
-
- -

Contournez le cache et demandez le nom canonique:

- -
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);
-
-// > e.g. xyz.us-west-2.elb.amazonaws.com
-// > e.g. Array [ "78.18.187.134", "34.79.135.234" ]
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.dns.resolve")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/dns/resolve/index.md b/files/fr/mozilla/add-ons/webextensions/api/dns/resolve/index.md new file mode 100644 index 0000000000..55a746e426 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/dns/resolve/index.md @@ -0,0 +1,94 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Résout le nom d'hôte donné en un enregistrement DNS.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var resolving = browser.dns.resolve(
+  hostname,    // string
+  flags        // array of string
+)
+
+ +

Paramètres

+ +
+
hostname
+
string. Le nom d'hôte à résoudre.
+
flags {{optional_inline}}
+

array de string. Drapeaux pour modifier la façon dont le nom d'hôte est résolu. Tous les indicateurs omis sont par défaut à false. Vous pouvez passer zéro ou plusieurs des indicateurs suivants :

+
    +
  • "allow_name_collisions": autorise les résultats de collision de noms qui sont normalement filtrés.
  • +
  • "bypass_cache": Supprime le cache de recherche DNS interne.
  • +
  • "canonical_name": Le nom canonique de l'hôte spécifié sera interrogé.
  • +
  • "disable_ipv4": Seules les adresses IPv6 seront renvoyées.
  • +
  • "disable_ipv6": Seules les adresses IPv4 seront renvoyées.
  • +
  • "disable_trr": 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 DNS-over-HTTPS dédié.
  • +
  • "offline": seuls les littéraux et les entrées mises en cache seront renvoyés.
  • +
  • "priority_low": La priorité est donnée à la requête. Si "priority_medium" est également donné, la requête est prioritaire.
  • +
  • "priority_medium": La priorité est donnée à la requête. Si "priority_low" est également donné, la requête est prioritaire
  • +
  • "speculate": 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.
  • +
+
+
+ +

Valeur retournée

+ +

A Promise qui sera remplie avec un objet DNSRecord object. Cet objet peut contenir les propriétés suivantes :

+ +
+
addresses
+
array of string. Les adresses IP associées à cet enregistrement DNS.
+
canonicalName
+
string. Le nom canonique de cet enregistrement. Ceci n'est inclus dans la réponse que si le drapeau "canonical_name"a été passé à  resolve().
+
isTRR
+
boolean: true si l'enregistrement a été récupéré à l'aide d'un TRR (Trusted Recursive Resolver).
+
+ +

Exemples

+ +
function resolved(record) {
+  console.log(record.addresses);
+}
+
+let resolving = browser.dns.resolve("example.com");
+resolving.then(resolved);
+
+// > e.g. Array [ "73.284.240.12" ]
+
+ +

Contournez le cache et demandez le nom canonique:

+ +
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);
+
+// > e.g. xyz.us-west-2.elb.amazonaws.com
+// > e.g. Array [ "78.18.187.134", "34.79.135.234" ]
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.dns.resolve")}}

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 deleted file mode 100644 index fe7a263f39..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/acceptdanger/index.html +++ /dev/null @@ -1,84 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction acceptDanger() de l'API {{WebExtAPIRef("downloads")}} invite l'utilisateur à accepter ou à annuler un téléchargement potentiellement dangereux.

- -

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).

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var prompting = browser.downloads.acceptDanger(
-  downloadId      // integer
-)
-
- -

Parameters

- -
-
downloadId
-
Un integer représentant l'id de {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} en question.
-
- -

Valeur retournée

- -

Une Promise. Lorsque la boîte de dialogue se ferme, la promesse sera remplie sans arguments.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.acceptDanger")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/acceptdanger/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/acceptdanger/index.md new file mode 100644 index 0000000000..fe7a263f39 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/acceptdanger/index.md @@ -0,0 +1,84 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction acceptDanger() de l'API {{WebExtAPIRef("downloads")}} invite l'utilisateur à accepter ou à annuler un téléchargement potentiellement dangereux.

+ +

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).

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var prompting = browser.downloads.acceptDanger(
+  downloadId      // integer
+)
+
+ +

Parameters

+ +
+
downloadId
+
Un integer représentant l'id de {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} en question.
+
+ +

Valeur retournée

+ +

Une Promise. Lorsque la boîte de dialogue se ferme, la promesse sera remplie sans arguments.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.acceptDanger")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 43edabfce3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/booleandelta/index.html +++ /dev/null @@ -1,72 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type BooleanDelta de l'API {{WebExtAPIRef("downloads")}} représente la différence entre deux booléens.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
current{{optional_inline}}
-
Un boolean représentant la valeur booléenne actuelle.
-
previous{{optional_inline}}
-
Un boolean représentant la valeur booléenne précédente.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.BooleanDelta")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/booleandelta/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/booleandelta/index.md new file mode 100644 index 0000000000..43edabfce3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/booleandelta/index.md @@ -0,0 +1,72 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type BooleanDelta de l'API {{WebExtAPIRef("downloads")}} représente la différence entre deux booléens.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
current{{optional_inline}}
+
Un boolean représentant la valeur booléenne actuelle.
+
previous{{optional_inline}}
+
Un boolean représentant la valeur booléenne précédente.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.BooleanDelta")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 5a2bb1d7e9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/cancel/index.html +++ /dev/null @@ -1,99 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction cancel() 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..

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var canceling = browser.downloads.cancel(
-  downloadId      // integer
-)
-
- -

Paramètres

- -
-
downloadId
-
integer. L'identifiant du téléchargement à annuler.
-
- -

Valeur retournée

- -

Une Promise. 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.cancel")}}

- -

Exemples

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/cancel/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/cancel/index.md new file mode 100644 index 0000000000..5a2bb1d7e9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/cancel/index.md @@ -0,0 +1,99 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction cancel() 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..

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var canceling = browser.downloads.cancel(
+  downloadId      // integer
+)
+
+ +

Paramètres

+ +
+
downloadId
+
integer. L'identifiant du téléchargement à annuler.
+
+ +

Valeur retournée

+ +

Une Promise. 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.cancel")}}

+ +

Exemples

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 7f96700ba8..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/dangertype/index.html +++ /dev/null @@ -1,91 +0,0 @@ ---- -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 ---- -

{{AddonSidebar()}}

- -

Le type DangerType 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..

- -

Une propriété de danger {{WebExtAPIRef('downloads.DownloadItem')}} contiendra une chaîne tirée des valeurs définies dans ce type.

- -
-

Note : Ces constantes de chaîne ne changeront jamais, mais l'ensemble de DangerTypes peut changer.

-
- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- -
-
file
-
Le nom de fichier du téléchargement est suspect.
-
url
-
L'URL du téléchargement est connue pour être malveillante.
-
content
-
Le fichier téléchargé est connu pour être malveillant.
-
uncommon
-
L'URL du téléchargement n'est pas généralement téléchargée.
-
host
-
Le téléchargement provenait d'un hôte connu pour distribuer des binaires malveillants.
-
unwanted
-
Le téléchargement est potentiellement indésirable ou dangereux..
-
safe
-
Le téléchargement ne présente aucun danger connu pour l'ordinateur de l'utilisateur.
-
accepted
-
L'utilisateur a accepté le téléchargement dangereux.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.DangerType")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/dangertype/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/dangertype/index.md new file mode 100644 index 0000000000..7f96700ba8 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/dangertype/index.md @@ -0,0 +1,91 @@ +--- +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 +--- +

{{AddonSidebar()}}

+ +

Le type DangerType 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..

+ +

Une propriété de danger {{WebExtAPIRef('downloads.DownloadItem')}} contiendra une chaîne tirée des valeurs définies dans ce type.

+ +
+

Note : Ces constantes de chaîne ne changeront jamais, mais l'ensemble de DangerTypes peut changer.

+
+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ +
+
file
+
Le nom de fichier du téléchargement est suspect.
+
url
+
L'URL du téléchargement est connue pour être malveillante.
+
content
+
Le fichier téléchargé est connu pour être malveillant.
+
uncommon
+
L'URL du téléchargement n'est pas généralement téléchargée.
+
host
+
Le téléchargement provenait d'un hôte connu pour distribuer des binaires malveillants.
+
unwanted
+
Le téléchargement est potentiellement indésirable ou dangereux..
+
safe
+
Le téléchargement ne présente aucun danger connu pour l'ordinateur de l'utilisateur.
+
accepted
+
L'utilisateur a accepté le téléchargement dangereux.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.DangerType")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 6dde623ac5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/doubledelta/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type DoubleDelta de l'API {{WebExtAPIRef("downloads")}} représente la différence entre deux doubles.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
current{{optional_inline}}
-
Un number représentant la double valeur actuelle.
-
previous{{optional_inline}}
-
Un number représentant la valeur double précédente.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.DoubleDelta")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/doubledelta/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/doubledelta/index.md new file mode 100644 index 0000000000..6dde623ac5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/doubledelta/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type DoubleDelta de l'API {{WebExtAPIRef("downloads")}} représente la différence entre deux doubles.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
current{{optional_inline}}
+
Un number représentant la double valeur actuelle.
+
previous{{optional_inline}}
+
Un number représentant la valeur double précédente.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.DoubleDelta")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index ff6364769b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/download/index.html +++ /dev/null @@ -1,142 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction download() de l'API {{WebExtAPIRef("downloads")}} télécharge le fichier, compte tenu de son URL et d'autres préférences optionnelles.

- - - -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var downloading = browser.downloads.download(
-  options                   // object
-)
-
- -

Paramètres

- -
-
options
-

Un object 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 :

-
-
allowHttpErrors{{optional_inline}}
-

Un tag booléen 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 false. Lorsqu'il est défini à :

-
    -
  • false, le téléchargement est annulé lorsqu'il rencontre une erreur HTTP.
  • -
  • true, 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.
  • -
-
-
body{{optional_inline}}
-
Un string représentant le corps du message de la requête.
-
conflictAction{{optional_inline}}
-
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é).
-
filename{{optional_inline}}
-
Un string 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  (../) 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.
-
headers{{optional_inline}}
-
Si l'URL utilise les protocoles HTTP ou HTTPS, un array d'objects 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 name des clés et soit la value, soit la valeur binaryValue. Les en-têtes interdits par XMLHttpRequest et fetch ne peuvent pas être spécifiés, cependant, Firefox 70 et les versions ultérieures permettent d'utiliser l'en-tête Referer. Tenter d'utiliser un en-tête interdit provoque une erreur.
-
incognito{{optional_inline}}
-
Un boolean: 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.
-
method{{optional_inline}}
-
Un string représentant la méthode HTTP à utiliser si l'url utilise le protocole HTTP[S]. Cela peut être "GET" ou "POST".
-
saveAs{{optional_inline}}
-
-

Un boolean 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 (true), ou non (false).

- -

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 browser.download.useDownloadDir dans about:config).

- -
-

Note : Firefox pour Android provoque une erreur si saveAs est à  true. Le paramètre est ignoré lorsque saveAs est false ou non inclus.

-
-
-
url
-
Un string représentant l'URL à télécharger.
-
-
-
- -

Valeur retournée

- -

Une Promise. Si le téléchargement a démarré avec succès, la promesse sera remplie avec l'id de la nouvelle {{WebExtAPIRef("downloads.DownloadItem")}}. Sinon, la promesse sera rejetée avec un message d'erreur venant de  {{WebExtAPIRef("downloads.InterruptReason")}}.

- -

Si vous utilisez URL.createObjectURL() pour télécharger des données créées en JavaScript et que vous voulez révoquer l'URL de l'objet (avec revokeObjectURL) plus tard (comme il est fortement recommandé), vous devez le faire après le téléchargement. Pour ce faire, écoutez l'événement downloads.onChanged.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.download")}}

- -

Examples

- -

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 uniquify conflictAction.

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/download/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/download/index.md new file mode 100644 index 0000000000..ff6364769b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/download/index.md @@ -0,0 +1,142 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction download() de l'API {{WebExtAPIRef("downloads")}} télécharge le fichier, compte tenu de son URL et d'autres préférences optionnelles.

+ + + +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var downloading = browser.downloads.download(
+  options                   // object
+)
+
+ +

Paramètres

+ +
+
options
+

Un object 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 :

+
+
allowHttpErrors{{optional_inline}}
+

Un tag booléen 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 false. Lorsqu'il est défini à :

+
    +
  • false, le téléchargement est annulé lorsqu'il rencontre une erreur HTTP.
  • +
  • true, 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.
  • +
+
+
body{{optional_inline}}
+
Un string représentant le corps du message de la requête.
+
conflictAction{{optional_inline}}
+
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é).
+
filename{{optional_inline}}
+
Un string 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  (../) 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.
+
headers{{optional_inline}}
+
Si l'URL utilise les protocoles HTTP ou HTTPS, un array d'objects 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 name des clés et soit la value, soit la valeur binaryValue. Les en-têtes interdits par XMLHttpRequest et fetch ne peuvent pas être spécifiés, cependant, Firefox 70 et les versions ultérieures permettent d'utiliser l'en-tête Referer. Tenter d'utiliser un en-tête interdit provoque une erreur.
+
incognito{{optional_inline}}
+
Un boolean: 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.
+
method{{optional_inline}}
+
Un string représentant la méthode HTTP à utiliser si l'url utilise le protocole HTTP[S]. Cela peut être "GET" ou "POST".
+
saveAs{{optional_inline}}
+
+

Un boolean 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 (true), ou non (false).

+ +

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 browser.download.useDownloadDir dans about:config).

+ +
+

Note : Firefox pour Android provoque une erreur si saveAs est à  true. Le paramètre est ignoré lorsque saveAs est false ou non inclus.

+
+
+
url
+
Un string représentant l'URL à télécharger.
+
+
+
+ +

Valeur retournée

+ +

Une Promise. Si le téléchargement a démarré avec succès, la promesse sera remplie avec l'id de la nouvelle {{WebExtAPIRef("downloads.DownloadItem")}}. Sinon, la promesse sera rejetée avec un message d'erreur venant de  {{WebExtAPIRef("downloads.InterruptReason")}}.

+ +

Si vous utilisez URL.createObjectURL() pour télécharger des données créées en JavaScript et que vous voulez révoquer l'URL de l'objet (avec revokeObjectURL) plus tard (comme il est fortement recommandé), vous devez le faire après le téléchargement. Pour ce faire, écoutez l'événement downloads.onChanged.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.download")}}

+ +

Examples

+ +

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 uniquify conflictAction.

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+
+ + 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 deleted file mode 100644 index 98fcbe438f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/downloaditem/index.html +++ /dev/null @@ -1,109 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type DownloadItem de l'API {{WebExtAPIRef("downloads")}} représente un fichier téléchargé.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
byExtensionId{{optional_inline}}
-
Un string 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.
-
byExtensionName{{optional_inline}}
-
Un string 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.
-
bytesReceived
-
Un number 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.
-
canResume
-
Un boolean indiquant si un téléchargement actuellement interrompu (par exemple en pause) peut être repris à partir du point où il a été interrompu (true), ou non (false).
-
danger
-
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')}}.
-
endTime{{optional_inline}}
-
Un string (au format ISO 8601) 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é.
-
error{{optional_inline}}
-
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.
-
estimatedEndTime{{optional_inline}}
-
Un string (au format ISO 8601) 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  DownloadItem qui est passé dans {{WebExtAPIRef("downloads.onCreated")}}).
-
exists
-
Un boolean indiquant si un fichier téléchargé existe toujours (true) ou non (false). 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.
-
filename
-
Un string représentant le chemin local absolu du fichier.
-
fileSize
-
Un number 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.
-
id
-
Un integer représentant un identifiant unique pour le fichier téléchargé qui est persistant entre les sessions du navigateur.
-
incognito
-
Un boolean qui indique si le téléchargement est enregistré dans l'historique du navigateur (false), ou non (true).
-
mime
-
Un string représentant le type MIME du fichier téléchargé.
-
paused
-
Un boolean 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 true, sinon false.
-
referrer
-
Un string représentant le référent du fichier téléchargé.
-
startTime
-
Un string (au format ISO 8601) représentant le nombre de millisecondes entre l'époque UNIX et le début du téléchargement.
-
state
-
Un string Indique si le téléchargement progresse, est interrompu ou terminé. Les valeurs possibles sont définies dans le type {{WebExtAPIRef('downloads.State')}}.
-
totalBytes
-
Un number 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..
-
url
-
Un string représentant l'URL absolue à partir de laquelle le fichier a été téléchargé.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.DownloadItem")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/downloaditem/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/downloaditem/index.md new file mode 100644 index 0000000000..98fcbe438f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/downloaditem/index.md @@ -0,0 +1,109 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type DownloadItem de l'API {{WebExtAPIRef("downloads")}} représente un fichier téléchargé.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
byExtensionId{{optional_inline}}
+
Un string 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.
+
byExtensionName{{optional_inline}}
+
Un string 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.
+
bytesReceived
+
Un number 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.
+
canResume
+
Un boolean indiquant si un téléchargement actuellement interrompu (par exemple en pause) peut être repris à partir du point où il a été interrompu (true), ou non (false).
+
danger
+
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')}}.
+
endTime{{optional_inline}}
+
Un string (au format ISO 8601) 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é.
+
error{{optional_inline}}
+
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.
+
estimatedEndTime{{optional_inline}}
+
Un string (au format ISO 8601) 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  DownloadItem qui est passé dans {{WebExtAPIRef("downloads.onCreated")}}).
+
exists
+
Un boolean indiquant si un fichier téléchargé existe toujours (true) ou non (false). 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.
+
filename
+
Un string représentant le chemin local absolu du fichier.
+
fileSize
+
Un number 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.
+
id
+
Un integer représentant un identifiant unique pour le fichier téléchargé qui est persistant entre les sessions du navigateur.
+
incognito
+
Un boolean qui indique si le téléchargement est enregistré dans l'historique du navigateur (false), ou non (true).
+
mime
+
Un string représentant le type MIME du fichier téléchargé.
+
paused
+
Un boolean 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 true, sinon false.
+
referrer
+
Un string représentant le référent du fichier téléchargé.
+
startTime
+
Un string (au format ISO 8601) représentant le nombre de millisecondes entre l'époque UNIX et le début du téléchargement.
+
state
+
Un string Indique si le téléchargement progresse, est interrompu ou terminé. Les valeurs possibles sont définies dans le type {{WebExtAPIRef('downloads.State')}}.
+
totalBytes
+
Un number 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..
+
url
+
Un string représentant l'URL absolue à partir de laquelle le fichier a été téléchargé.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.DownloadItem")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 8e3071fb70..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadquery/index.html +++ /dev/null @@ -1,120 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type DownloadQuery 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.

- -

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.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
query{{optional_inline}}
-
Un tableau dechaines. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont le nom de fichier ou l'URL contient toutes les chaînes données. Vous pouvez également inclure des termes commençant par un titet (-) — ces termes ne doivent pas figurer dans le nom du fichier ou l'url de l'élément à inclure.
-
startedBefore{{optional_inline}}
-
Un {{WebExtAPIRef('downloads.DownloadTime', "DownloadTime")}}. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} qui a démarré avant l'heure indiquée.
-
startedAfter{{optional_inline}}
-
Un {{WebExtAPIRef('downloads.DownloadTime', "DownloadTime")}}. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} qui a démarré après l'heure indiquée.
-
endedBefore{{optional_inline}}
-
Un {{WebExtAPIRef('downloads.DownloadTime', "DownloadTime")}}. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} qui s'est terminé avant l'heure indiquée.
-
endedAfter{{optional_inline}}
-
Un {{WebExtAPIRef('downloads.DownloadTime', "DownloadTime")}}. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} qui s'est terminé après l'heure indiquée.
-
totalBytesGreater{{optional_inline}}
-
Un number représentant un nombre d'octets. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont le  totalBytes est supérieur au nombre donné.
-
totalBytesLess{{optional_inline}}
-
Un number représentant un nombre d'octets. Inclure seulement  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont le totalBytes est inférieur au nombre donné.
-
filenameRegex{{optional_inline}}
-
Un string représentant une expression régulière. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont le nom du fichier correspond à l'expression régulière donnée..
-
urlRegex{{optional_inline}}
-
Un string représentant une expression régulière. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont la valeur d'url correspond à l'expression régulière donnée..
-
limit{{optional_inline}}
-
Un integer représentant un nombre de résultats. Incluez uniquement le nombre spécifié de {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}}.
-
orderBy{{optional_inline}}
-
Un tableaude chaînes représentant les propriétés  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} les résultats de la recherche doivent être tirés par exemple, en incluant startTime puis totalBytes 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 -startTime.
-
id{{optional_inline}}
-
Un integer représentant l'ID du {{WebExtAPIRef("downloads.DownloadItem")}} que vous souhaitez interroger.
-
url{{optional_inline}}
-
Un string représentant l'URL absolue à partir de laquelle le téléchargement a été initié, avant toute redirection.
-
filename{{optional_inline}}
-
Un string représentant le chemin local absolu du fichier téléchargé que vous souhaitez interroger.
-
danger{{optional_inline}}
-
Une chaîne représentant un {{WebExtAPIRef('downloads.DangerType')}} — inclut uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur de danger .
-
mime{{optional_inline}}
-
Un string représentant un type MIME. Incluez uniquement  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur mime.
-
startTime{{optional_inline}}
-
Un string représentant une heure au format ISO 8601. Incluez seulement  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur  startTime.
-
endTime{{optional_inline}}
-
Un string représentant une heure au format ISO 8601. Inclure uniquement sera limité à {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur endTime.
-
state{{optional_inline}}
-
Un string représentant un téléchargement {{WebExtAPIRef('downloads.State')}} (in_progress, interrupted, or complete). Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur d' état.
-
paused{{optional_inline}}
-
Un boolean 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 (true), ou non (false). inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur de pause.
-
error{{optional_inline}}
-
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'  erreur .
-
bytesReceived{{optional_inline}}
-
Un number 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 bytesReceived.
-
totalBytes{{optional_inline}}
-
Un number 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  totalBytes.
-
fileSize{{optional_inline}}
-
number. Nombre d'octets dans le fichier entier après la décompression, ou -1 si inconnu. Un nombre représentant le nombre total d'octets dans le fichier après la décompression. Inclure seulement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur fileSize.
-
exists{{optional_inline}}
-
Un boolean si un fichier téléchargé existe toujours (true) ou non (false). Inclure seulement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur existe.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.DownloadQuery")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadquery/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadquery/index.md new file mode 100644 index 0000000000..8e3071fb70 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadquery/index.md @@ -0,0 +1,120 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type DownloadQuery 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.

+ +

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.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
query{{optional_inline}}
+
Un tableau dechaines. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont le nom de fichier ou l'URL contient toutes les chaînes données. Vous pouvez également inclure des termes commençant par un titet (-) — ces termes ne doivent pas figurer dans le nom du fichier ou l'url de l'élément à inclure.
+
startedBefore{{optional_inline}}
+
Un {{WebExtAPIRef('downloads.DownloadTime', "DownloadTime")}}. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} qui a démarré avant l'heure indiquée.
+
startedAfter{{optional_inline}}
+
Un {{WebExtAPIRef('downloads.DownloadTime', "DownloadTime")}}. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} qui a démarré après l'heure indiquée.
+
endedBefore{{optional_inline}}
+
Un {{WebExtAPIRef('downloads.DownloadTime', "DownloadTime")}}. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} qui s'est terminé avant l'heure indiquée.
+
endedAfter{{optional_inline}}
+
Un {{WebExtAPIRef('downloads.DownloadTime', "DownloadTime")}}. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} qui s'est terminé après l'heure indiquée.
+
totalBytesGreater{{optional_inline}}
+
Un number représentant un nombre d'octets. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont le  totalBytes est supérieur au nombre donné.
+
totalBytesLess{{optional_inline}}
+
Un number représentant un nombre d'octets. Inclure seulement  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont le totalBytes est inférieur au nombre donné.
+
filenameRegex{{optional_inline}}
+
Un string représentant une expression régulière. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont le nom du fichier correspond à l'expression régulière donnée..
+
urlRegex{{optional_inline}}
+
Un string représentant une expression régulière. Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} dont la valeur d'url correspond à l'expression régulière donnée..
+
limit{{optional_inline}}
+
Un integer représentant un nombre de résultats. Incluez uniquement le nombre spécifié de {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}}.
+
orderBy{{optional_inline}}
+
Un tableaude chaînes représentant les propriétés  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} les résultats de la recherche doivent être tirés par exemple, en incluant startTime puis totalBytes 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 -startTime.
+
id{{optional_inline}}
+
Un integer représentant l'ID du {{WebExtAPIRef("downloads.DownloadItem")}} que vous souhaitez interroger.
+
url{{optional_inline}}
+
Un string représentant l'URL absolue à partir de laquelle le téléchargement a été initié, avant toute redirection.
+
filename{{optional_inline}}
+
Un string représentant le chemin local absolu du fichier téléchargé que vous souhaitez interroger.
+
danger{{optional_inline}}
+
Une chaîne représentant un {{WebExtAPIRef('downloads.DangerType')}} — inclut uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur de danger .
+
mime{{optional_inline}}
+
Un string représentant un type MIME. Incluez uniquement  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur mime.
+
startTime{{optional_inline}}
+
Un string représentant une heure au format ISO 8601. Incluez seulement  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur  startTime.
+
endTime{{optional_inline}}
+
Un string représentant une heure au format ISO 8601. Inclure uniquement sera limité à {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur endTime.
+
state{{optional_inline}}
+
Un string représentant un téléchargement {{WebExtAPIRef('downloads.State')}} (in_progress, interrupted, or complete). Inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur d' état.
+
paused{{optional_inline}}
+
Un boolean 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 (true), ou non (false). inclure uniquement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur de pause.
+
error{{optional_inline}}
+
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'  erreur .
+
bytesReceived{{optional_inline}}
+
Un number 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 bytesReceived.
+
totalBytes{{optional_inline}}
+
Un number 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  totalBytes.
+
fileSize{{optional_inline}}
+
number. Nombre d'octets dans le fichier entier après la décompression, ou -1 si inconnu. Un nombre représentant le nombre total d'octets dans le fichier après la décompression. Inclure seulement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur fileSize.
+
exists{{optional_inline}}
+
Un boolean si un fichier téléchargé existe toujours (true) ou non (false). Inclure seulement {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}} avec cette valeur existe.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.DownloadQuery")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index a956cd5a93..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadtime/index.html +++ /dev/null @@ -1,77 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type DownloadTime de l'API {{WebExtAPIRef("downloads")}} représente le temps nécessaire au téléchargement.

- -

Type

- -

Un DownloadTime peut être l'un de trois types différents :

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.DownloadTime")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadtime/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadtime/index.md new file mode 100644 index 0000000000..a956cd5a93 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/downloadtime/index.md @@ -0,0 +1,77 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type DownloadTime de l'API {{WebExtAPIRef("downloads")}} représente le temps nécessaire au téléchargement.

+ +

Type

+ +

Un DownloadTime peut être l'un de trois types différents :

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.DownloadTime")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 353f70f26a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/drag/index.html +++ /dev/null @@ -1,78 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction  drag() de l'API {{WebExtAPIRef("downloads")}} initie le glissement du fichier téléchargé vers une autre application.

- -

Syntaxe

- -
chrome.downloads.drag(
-  downloadId // integer
-)
-
- -

Cette API est également disponible en tant que browser.downloads.drag().

- -

Paramètres

- -
-
downloadId
-
Un integer représentant l'id du {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} ein question.
-
- -

Browser compatibility

- -

{{Compat("webextensions.api.downloads.drag")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/drag/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/drag/index.md new file mode 100644 index 0000000000..353f70f26a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/drag/index.md @@ -0,0 +1,78 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction  drag() de l'API {{WebExtAPIRef("downloads")}} initie le glissement du fichier téléchargé vers une autre application.

+ +

Syntaxe

+ +
chrome.downloads.drag(
+  downloadId // integer
+)
+
+ +

Cette API est également disponible en tant que browser.downloads.drag().

+ +

Paramètres

+ +
+
downloadId
+
Un integer représentant l'id du {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} ein question.
+
+ +

Browser compatibility

+ +

{{Compat("webextensions.api.downloads.drag")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 44d9d1fe46..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/erase/index.html +++ /dev/null @@ -1,121 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction erase() 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.

- -

Pour supprimer les fichiers du disque, vous devez utiliser {{WebExtAPIRef("downloads.removeFile()")}}.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -
-

Note : 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 erase(). 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.

-
- -

Syntaxe

- -
var erasing = browser.downloads.erase(
-  query                    // DownloadQuery
-)
-
- -

Paramètres

- -
-
query
-
Un objet {{WebExtAPIRef('downloads.DownloadQuery')}}.
-
- -

Valeur retournée

- -

Une Promise. 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.erase")}}

- -

Exemples

- -

Effacer le téléchargement le plus récent :

- -
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);
- -

Tout effacer :

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/erase/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/erase/index.md new file mode 100644 index 0000000000..44d9d1fe46 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/erase/index.md @@ -0,0 +1,121 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction erase() 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.

+ +

Pour supprimer les fichiers du disque, vous devez utiliser {{WebExtAPIRef("downloads.removeFile()")}}.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +
+

Note : 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 erase(). 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.

+
+ +

Syntaxe

+ +
var erasing = browser.downloads.erase(
+  query                    // DownloadQuery
+)
+
+ +

Paramètres

+ +
+
query
+
Un objet {{WebExtAPIRef('downloads.DownloadQuery')}}.
+
+ +

Valeur retournée

+ +

Une Promise. 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.erase")}}

+ +

Exemples

+ +

Effacer le téléchargement le plus récent :

+ +
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);
+ +

Tout effacer :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 6d1c4c0709..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/filenameconflictaction/index.html +++ /dev/null @@ -1,77 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type FilenameConflictAction 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.

- -

Ce type définit les valeurs pouvant être utilisées pour la propriété conflictAction du paramètre d'options {{WebExtAPIRef("downloads.download")}}.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- -
-
"uniquify"
-
Le navigateur modifiera le nom de fichier pour le rendre unique.
-
"overwrite"
-
Le navigateur écrase l'ancien fichier avec le fichier nouvellement téléchargé.
-
"prompt"
-
Le navigateur invitera l'utilisateur, lui demandant de choisir s'il souhaite l'uniquifier ou l'écraser.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.FilenameConflictAction")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/filenameconflictaction/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/filenameconflictaction/index.md new file mode 100644 index 0000000000..6d1c4c0709 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/filenameconflictaction/index.md @@ -0,0 +1,77 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type FilenameConflictAction 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.

+ +

Ce type définit les valeurs pouvant être utilisées pour la propriété conflictAction du paramètre d'options {{WebExtAPIRef("downloads.download")}}.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ +
+
"uniquify"
+
Le navigateur modifiera le nom de fichier pour le rendre unique.
+
"overwrite"
+
Le navigateur écrase l'ancien fichier avec le fichier nouvellement téléchargé.
+
"prompt"
+
Le navigateur invitera l'utilisateur, lui demandant de choisir s'il souhaite l'uniquifier ou l'écraser.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.FilenameConflictAction")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 7fb93c5494..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/getfileicon/index.html +++ /dev/null @@ -1,121 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction getFileIcon() de l'API {{WebExtAPIRef("downloads")}} récupère une icône pour le téléchargement spécifié.

- -

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é.

- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingIcon = browser.downloads.getFileIcon(
-  downloadId,           // integer
-  options               // optional object
-)
-
- -

Paramètres

- -
-
downloadId
-
Un integer eprésentant l'ID du téléchargement.
-
options{{optional_inline}}
-

Un object d'options représentant les préférences pour l'icône à extraire. Il peut prendre les propriétés suivantes :

-
-
size{{optional_inline}}
-
Un integer 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.
-
-
-
- -

Valeur retournée

- -

Une Promise. 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.getFileIcon")}}

- -

Exemples

- -

Cet exemple enregistre l'URL de l'icône pour le téléchargement le plus récent :

- -
function gotIcon(iconUrl) {
-  console.log(iconUrl);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-function getIcon(downloadItems) {
-    if (downloadItems.length > 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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/getfileicon/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/getfileicon/index.md new file mode 100644 index 0000000000..7fb93c5494 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/getfileicon/index.md @@ -0,0 +1,121 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction getFileIcon() de l'API {{WebExtAPIRef("downloads")}} récupère une icône pour le téléchargement spécifié.

+ +

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é.

+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingIcon = browser.downloads.getFileIcon(
+  downloadId,           // integer
+  options               // optional object
+)
+
+ +

Paramètres

+ +
+
downloadId
+
Un integer eprésentant l'ID du téléchargement.
+
options{{optional_inline}}
+

Un object d'options représentant les préférences pour l'icône à extraire. Il peut prendre les propriétés suivantes :

+
+
size{{optional_inline}}
+
Un integer 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.
+
+
+
+ +

Valeur retournée

+ +

Une Promise. 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.getFileIcon")}}

+ +

Exemples

+ +

Cet exemple enregistre l'URL de l'icône pour le téléchargement le plus récent :

+ +
function gotIcon(iconUrl) {
+  console.log(iconUrl);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+function getIcon(downloadItems) {
+    if (downloadItems.length > 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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/index.html b/files/fr/mozilla/add-ons/webextensions/api/downloads/index.html deleted file mode 100644 index 3a5af5f188..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/index.html +++ /dev/null @@ -1,132 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

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.

- -

Pour utiliser cette API, vous devez disposer de l' API permission "downloads" spécifiée dans votre fichier manifest.json.

- -

Types

- -
-
{{WebExtAPIRef("downloads.FilenameConflictAction")}}
-
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.
-
{{WebExtAPIRef("downloads.InterruptReason")}}
-
Définit un ensemble de raisons possibles pour lesquelles un téléchargement a été interrompu.
-
{{WebExtAPIRef("downloads.DangerType")}}
-
Définit un ensemble d'avertissements communs des dangers possibles associés aux fichiers téléchargeables.
-
{{WebExtAPIRef("downloads.State")}}
-
Définit différents états dans lesquels un téléchargement en cours peut être.
-
{{WebExtAPIRef("downloads.DownloadItem")}}
-
Représente un fichier téléchargé.
-
{{WebExtAPIRef("downloads.StringDelta")}}
-
Représente la différence entre deux chaînes.
-
{{WebExtAPIRef("downloads.DoubleDelta")}}
-
Représente la différence entre deux doubles.
-
{{WebExtAPIRef("downloads.BooleanDelta")}}
-
Représente la différence entre deux booléens.
-
{{WebExtAPIRef("downloads.DownloadTime")}}
-
Représente le temps nécessaire au téléchargement pour terminer.
-
{{WebExtAPIRef("downloads.DownloadQuery")}}
-
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.
-
- -

Fonctions

- -
-
{{WebExtAPIRef("downloads.download()")}}
-
Télécharge un fichier, compte tenu de son URL et d'autres préférences optionnelles.
-
{{WebExtAPIRef("downloads.search()")}}
-
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.
-
{{WebExtAPIRef("downloads.pause()")}}
-
Suspend un téléchargement.
-
{{WebExtAPIRef("downloads.resume()")}}
-
Reprend un téléchargement suspendu.
-
{{WebExtAPIRef("downloads.cancel()")}}
-
Annule un téléchargement.
-
{{WebExtAPIRef("downloads.getFileIcon()")}}
-
Récupère une icône pour le téléchargement spécifié.
-
{{WebExtAPIRef("downloads.open()")}}
-
Ouvre le fichier téléchargé avec son application associée.
-
{{WebExtAPIRef("downloads.show()")}}
-
Ouvre l'application du gestionnaire de fichiers de la plateforme pour afficher le fichier téléchargé dans son dossier conteneur.
-
{{WebExtAPIRef("downloads.showDefaultFolder()")}}
-
Ouvre l'application du gestionnaire de fichiers de la plateforme pour afficher le dossier de téléchargements par défaut.
-
{{WebExtAPIRef("downloads.erase()")}}
-
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.
-
{{WebExtAPIRef("downloads.removeFile()")}}
-
Supprime un fichier téléchargé du disque, mais pas de l'historique de téléchargement du navigateur.
-
{{WebExtAPIRef("downloads.acceptDanger()")}}
-
Invite l'utilisateur à accepter ou annuler un téléchargement dangereux.
-
{{WebExtAPIRef("downloads.drag()")}}
-
Lance le glissement du fichier téléchargé vers une autre application.
-
{{WebExtAPIRef("downloads.setShelfEnabled()")}}
-
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.
-
- -

Evénements

- -
-
{{WebExtAPIRef("downloads.onCreated")}}
-
Se déclenche avec l'objet {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} lorsqu'un téléchargement commence.
-
{{WebExtAPIRef("downloads.onErased")}}
-
Se déclenche avec downloadId lorsqu'un téléchargement est effacé de l'historique.
-
{{WebExtAPIRef("downloads.onChanged")}}
-
Lorsque l'une des propriétés de {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} sauf les changements bytesReceived, cet événement se déclenche avec le downloadId et un objet contenant les propriétés qui ont changé.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/index.md new file mode 100644 index 0000000000..3a5af5f188 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

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.

+ +

Pour utiliser cette API, vous devez disposer de l' API permission "downloads" spécifiée dans votre fichier manifest.json.

+ +

Types

+ +
+
{{WebExtAPIRef("downloads.FilenameConflictAction")}}
+
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.
+
{{WebExtAPIRef("downloads.InterruptReason")}}
+
Définit un ensemble de raisons possibles pour lesquelles un téléchargement a été interrompu.
+
{{WebExtAPIRef("downloads.DangerType")}}
+
Définit un ensemble d'avertissements communs des dangers possibles associés aux fichiers téléchargeables.
+
{{WebExtAPIRef("downloads.State")}}
+
Définit différents états dans lesquels un téléchargement en cours peut être.
+
{{WebExtAPIRef("downloads.DownloadItem")}}
+
Représente un fichier téléchargé.
+
{{WebExtAPIRef("downloads.StringDelta")}}
+
Représente la différence entre deux chaînes.
+
{{WebExtAPIRef("downloads.DoubleDelta")}}
+
Représente la différence entre deux doubles.
+
{{WebExtAPIRef("downloads.BooleanDelta")}}
+
Représente la différence entre deux booléens.
+
{{WebExtAPIRef("downloads.DownloadTime")}}
+
Représente le temps nécessaire au téléchargement pour terminer.
+
{{WebExtAPIRef("downloads.DownloadQuery")}}
+
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.
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("downloads.download()")}}
+
Télécharge un fichier, compte tenu de son URL et d'autres préférences optionnelles.
+
{{WebExtAPIRef("downloads.search()")}}
+
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.
+
{{WebExtAPIRef("downloads.pause()")}}
+
Suspend un téléchargement.
+
{{WebExtAPIRef("downloads.resume()")}}
+
Reprend un téléchargement suspendu.
+
{{WebExtAPIRef("downloads.cancel()")}}
+
Annule un téléchargement.
+
{{WebExtAPIRef("downloads.getFileIcon()")}}
+
Récupère une icône pour le téléchargement spécifié.
+
{{WebExtAPIRef("downloads.open()")}}
+
Ouvre le fichier téléchargé avec son application associée.
+
{{WebExtAPIRef("downloads.show()")}}
+
Ouvre l'application du gestionnaire de fichiers de la plateforme pour afficher le fichier téléchargé dans son dossier conteneur.
+
{{WebExtAPIRef("downloads.showDefaultFolder()")}}
+
Ouvre l'application du gestionnaire de fichiers de la plateforme pour afficher le dossier de téléchargements par défaut.
+
{{WebExtAPIRef("downloads.erase()")}}
+
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.
+
{{WebExtAPIRef("downloads.removeFile()")}}
+
Supprime un fichier téléchargé du disque, mais pas de l'historique de téléchargement du navigateur.
+
{{WebExtAPIRef("downloads.acceptDanger()")}}
+
Invite l'utilisateur à accepter ou annuler un téléchargement dangereux.
+
{{WebExtAPIRef("downloads.drag()")}}
+
Lance le glissement du fichier téléchargé vers une autre application.
+
{{WebExtAPIRef("downloads.setShelfEnabled()")}}
+
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.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("downloads.onCreated")}}
+
Se déclenche avec l'objet {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} lorsqu'un téléchargement commence.
+
{{WebExtAPIRef("downloads.onErased")}}
+
Se déclenche avec downloadId lorsqu'un téléchargement est effacé de l'historique.
+
{{WebExtAPIRef("downloads.onChanged")}}
+
Lorsque l'une des propriétés de {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} sauf les changements bytesReceived, cet événement se déclenche avec le downloadId et un objet contenant les propriétés qui ont changé.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index fa29a664f6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/interruptreason/index.html +++ /dev/null @@ -1,117 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type InteruptReason de l'API {{WebExtAPIRef("downloads")}} définit un ensemble de raisons possibles pour lesquelles un téléchargement a été interrompu.

- -

Une propriété {{WebExtAPIRef('downloads.DownloadItem')}} d'erreur contiendra une chaîne tirée des valeurs définies dans ce type.

- -

Type

- -

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:

- -

Erreurs liées au fichier :

- - - -

Erreurs liées au réseau :

- - - -

Erreurs liées au serveur :

- - - -

Erreurs liées à l'utilisateur :

- - - -

Divers :

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.InterruptReason")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/interruptreason/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/interruptreason/index.md new file mode 100644 index 0000000000..fa29a664f6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/interruptreason/index.md @@ -0,0 +1,117 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type InteruptReason de l'API {{WebExtAPIRef("downloads")}} définit un ensemble de raisons possibles pour lesquelles un téléchargement a été interrompu.

+ +

Une propriété {{WebExtAPIRef('downloads.DownloadItem')}} d'erreur contiendra une chaîne tirée des valeurs définies dans ce type.

+ +

Type

+ +

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:

+ +

Erreurs liées au fichier :

+ + + +

Erreurs liées au réseau :

+ + + +

Erreurs liées au serveur :

+ + + +

Erreurs liées à l'utilisateur :

+ + + +

Divers :

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.InterruptReason")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 5637ace775..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/onchanged/index.html +++ /dev/null @@ -1,148 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

L'événement onChanged() de l'API {{WebExtAPIRef("downloads")}} est déclenché lorsque l'une des propriétés de {{WebExtAPIRef('downloads.DownloadItem')}} change (à l'exception de bytesReceived).

- -

L'écouteur reçoit un fichier downloadDelta en tant que paramètre — un objet contenant le downloadId de l'objet {{WebExtAPIRef('downloads.DownloadItem')}} en question, plus le statut de toutes les propriétés qui ont changé.

- -

Syntaxe

- -
browser.downloads.onChanged.addListener(listener)
-browser.downloads.onChanged.removeListener(listener)
-browser.downloads.onChanged.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si un listener donné est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Parameters

- -
-
callback
-
-

Une fonction de rappel qui sera appelée lorsque cet événement se produira. Cette fonction recevra les arguments suivants :

- -
-
downloadDelta
-
Un objet 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.
-
-
-
- -

Objets supplémentaires

- -

downloadDelta

- -

L'objet downloadDelta a les propriétés suivantes disponibles :

- -
-
id
-
Un integer représentant l'identifiant de l'id  {{WebExtAPIRef('downloads.DownloadItem')}} qui a changé.
-
url{{optional_inline}}
-
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant une modification d'une  url {{WebExtAPIRef('downloads.DownloadItem')}}.
-
filename{{optional_inline}}
-
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un filename {{WebExtAPIRef('downloads.DownloadItem')}}
-
danger{{optional_inline}}
-
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un danger {{WebExtAPIRef('downloads.DownloadItem')}}.
-
mime{{optional_inline}}
-
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un mime {{WebExtAPIRef('downloads.DownloadItem')}}
-
startTime{{optional_inline}}
-
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un startTime {{WebExtAPIRef('downloads.DownloadItem')}}.
-
endTime{{optional_inline}}
-
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un  endTime {{WebExtAPIRef('downloads.DownloadItem')}}.
-
state{{optional_inline}}
-
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un état {{WebExtAPIRef('downloads.DownloadItem')}}
-
canResume{{optional_inline}}
-
Un objet {{WebExtAPIRef('downloads.BooleanDelta')}} décrivant un changement dans un état {{WebExtAPIRef('downloads.DownloadItem')}} canResume.
-
paused{{optional_inline}}
-
Un objet {{WebExtAPIRef('downloads.BooleanDelta')}} décrivant un changement dans un état en pause {{WebExtAPIRef('downloads.DownloadItem')}}.
-
error{{optional_inline}}
-
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un état d'erreur {{WebExtAPIRef('downloads.DownloadItem')}}.
-
totalBytes{{optional_inline}}
-
Un objet {{WebExtAPIRef('downloads.DoubleDelta')}} décrivant un changement dans un totalBytes {{WebExtAPIRef('downloads.DownloadItem')}}.
-
fileSize{{optional_inline}}
-
Un objet  {{WebExtAPIRef('downloads.DoubleDelta')}} décrivant une modification d'un  fileSize {{WebExtAPIRef('downloads.DownloadItem')}}.
-
exists{{optional_inline}}
-
Un objet {{WebExtAPIRef('downloads.BooleanDelta')}} décrivant un changement dans un état {{WebExtAPIRef('downloads.DownloadItem')}}.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.onChanged")}}

- -

Exemples

- -

Enregistrez un message lorsque les téléchargements sont terminés :

- -
function handleChanged(delta) {
-  if (delta.state && delta.state.current === "complete") {
-    console.log(`Download ${delta.id} has completed.`);
-  }
-}
-
-browser.downloads.onChanged.addListener(handleChanged);
- -

{{WebExtExamples}}

- -

Note :

- -

This API is based on Chromium's chrome.downloads API.

- -

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/onchanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/onchanged/index.md new file mode 100644 index 0000000000..5637ace775 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/onchanged/index.md @@ -0,0 +1,148 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

L'événement onChanged() de l'API {{WebExtAPIRef("downloads")}} est déclenché lorsque l'une des propriétés de {{WebExtAPIRef('downloads.DownloadItem')}} change (à l'exception de bytesReceived).

+ +

L'écouteur reçoit un fichier downloadDelta en tant que paramètre — un objet contenant le downloadId de l'objet {{WebExtAPIRef('downloads.DownloadItem')}} en question, plus le statut de toutes les propriétés qui ont changé.

+ +

Syntaxe

+ +
browser.downloads.onChanged.addListener(listener)
+browser.downloads.onChanged.removeListener(listener)
+browser.downloads.onChanged.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si un listener donné est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Parameters

+ +
+
callback
+
+

Une fonction de rappel qui sera appelée lorsque cet événement se produira. Cette fonction recevra les arguments suivants :

+ +
+
downloadDelta
+
Un objet 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.
+
+
+
+ +

Objets supplémentaires

+ +

downloadDelta

+ +

L'objet downloadDelta a les propriétés suivantes disponibles :

+ +
+
id
+
Un integer représentant l'identifiant de l'id  {{WebExtAPIRef('downloads.DownloadItem')}} qui a changé.
+
url{{optional_inline}}
+
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant une modification d'une  url {{WebExtAPIRef('downloads.DownloadItem')}}.
+
filename{{optional_inline}}
+
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un filename {{WebExtAPIRef('downloads.DownloadItem')}}
+
danger{{optional_inline}}
+
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un danger {{WebExtAPIRef('downloads.DownloadItem')}}.
+
mime{{optional_inline}}
+
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un mime {{WebExtAPIRef('downloads.DownloadItem')}}
+
startTime{{optional_inline}}
+
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un startTime {{WebExtAPIRef('downloads.DownloadItem')}}.
+
endTime{{optional_inline}}
+
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un  endTime {{WebExtAPIRef('downloads.DownloadItem')}}.
+
state{{optional_inline}}
+
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un état {{WebExtAPIRef('downloads.DownloadItem')}}
+
canResume{{optional_inline}}
+
Un objet {{WebExtAPIRef('downloads.BooleanDelta')}} décrivant un changement dans un état {{WebExtAPIRef('downloads.DownloadItem')}} canResume.
+
paused{{optional_inline}}
+
Un objet {{WebExtAPIRef('downloads.BooleanDelta')}} décrivant un changement dans un état en pause {{WebExtAPIRef('downloads.DownloadItem')}}.
+
error{{optional_inline}}
+
Un objet {{WebExtAPIRef('downloads.StringDelta')}} décrivant un changement dans un état d'erreur {{WebExtAPIRef('downloads.DownloadItem')}}.
+
totalBytes{{optional_inline}}
+
Un objet {{WebExtAPIRef('downloads.DoubleDelta')}} décrivant un changement dans un totalBytes {{WebExtAPIRef('downloads.DownloadItem')}}.
+
fileSize{{optional_inline}}
+
Un objet  {{WebExtAPIRef('downloads.DoubleDelta')}} décrivant une modification d'un  fileSize {{WebExtAPIRef('downloads.DownloadItem')}}.
+
exists{{optional_inline}}
+
Un objet {{WebExtAPIRef('downloads.BooleanDelta')}} décrivant un changement dans un état {{WebExtAPIRef('downloads.DownloadItem')}}.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.onChanged")}}

+ +

Exemples

+ +

Enregistrez un message lorsque les téléchargements sont terminés :

+ +
function handleChanged(delta) {
+  if (delta.state && delta.state.current === "complete") {
+    console.log(`Download ${delta.id} has completed.`);
+  }
+}
+
+browser.downloads.onChanged.addListener(handleChanged);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

This API is based on Chromium's chrome.downloads API.

+ +

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.

+
+ + 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 deleted file mode 100644 index 5039805f8c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/oncreated/index.html +++ /dev/null @@ -1,108 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

L'événement onCreated() 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.

- -

L'écouteur reçoit l'objet {{WebExtAPIRef('downloads.DownloadItem')}} en question en tant que paramètre.

- -

Syntaxe

- -
browser.downloads.onCreated.addListener(listener)
-browser.downloads.onCreated.removeListener(listener)
-browser.downloads.onCreated.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si un listener donné est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
function
-
-

Une fonction de rappel qui sera appelée lorsque cet événement se produira. Cette fonction recevra les arguments suivants :

- -
-
downloadItem
-
L'objet {{WebExtAPIRef('downloads.DownloadItem')}} en question.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.onCreated")}}

- -

Exemples

- -

Consignez l'URL des éléments au fur et à mesure qu'ils sont téléchargés :

- -
function handleCreated(item) {
-  console.log(item.url);
-}
-
-browser.downloads.onCreated.addListener(handleCreated);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/oncreated/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/oncreated/index.md new file mode 100644 index 0000000000..5039805f8c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/oncreated/index.md @@ -0,0 +1,108 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

L'événement onCreated() 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.

+ +

L'écouteur reçoit l'objet {{WebExtAPIRef('downloads.DownloadItem')}} en question en tant que paramètre.

+ +

Syntaxe

+ +
browser.downloads.onCreated.addListener(listener)
+browser.downloads.onCreated.removeListener(listener)
+browser.downloads.onCreated.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si un listener donné est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
function
+
+

Une fonction de rappel qui sera appelée lorsque cet événement se produira. Cette fonction recevra les arguments suivants :

+ +
+
downloadItem
+
L'objet {{WebExtAPIRef('downloads.DownloadItem')}} en question.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.onCreated")}}

+ +

Exemples

+ +

Consignez l'URL des éléments au fur et à mesure qu'ils sont téléchargés :

+ +
function handleCreated(item) {
+  console.log(item.url);
+}
+
+browser.downloads.onCreated.addListener(handleCreated);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index dd6619721b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/onerased/index.html +++ /dev/null @@ -1,113 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

L'événement onErased() de l'API {{WebExtAPIRef("downloads")}} se déclenche lorsqu'un téléchargement est effacé de l'historique du navigateur.

- -

L'écouteur reçoit le paramètre downloadId de l'objet {{WebExtAPIRef('downloads.DownloadItem')}}  en question en tant que paramètre.

- -

Syntaxe

- -
browser.downloads.onErased.addListener(listener)
-browser.downloads.onErased.removeListener(listener)
-browser.downloads.onErased.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer..
-
hasListener(listener)
-
Vérifie si un listener donné est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Une fonction de rappel qui sera appelée lorsque cet événement se produira. Cette fonction recevra les arguments suivants :

- -
-
downloadId
-
Un integer représentant l'id du {{WebExtAPIRef('downloads.DownloadItem')}} qui a été effacé.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.onErased")}}

- -

Exemples

- -

Ajoute un écouteur pour les événements onErased , puis effacez le téléchargement le plus récent :

- -
function handleErased(item) {
-  console.log(`Erased: ${item}`);
-}
-
-browser.downloads.onErased.addListener(handleErased);
-
-var erasing = browser.downloads.erase({
-  limit: 1,
-  orderBy: ["-startTime"]
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/onerased/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/onerased/index.md new file mode 100644 index 0000000000..dd6619721b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/onerased/index.md @@ -0,0 +1,113 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

L'événement onErased() de l'API {{WebExtAPIRef("downloads")}} se déclenche lorsqu'un téléchargement est effacé de l'historique du navigateur.

+ +

L'écouteur reçoit le paramètre downloadId de l'objet {{WebExtAPIRef('downloads.DownloadItem')}}  en question en tant que paramètre.

+ +

Syntaxe

+ +
browser.downloads.onErased.addListener(listener)
+browser.downloads.onErased.removeListener(listener)
+browser.downloads.onErased.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer..
+
hasListener(listener)
+
Vérifie si un listener donné est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Une fonction de rappel qui sera appelée lorsque cet événement se produira. Cette fonction recevra les arguments suivants :

+ +
+
downloadId
+
Un integer représentant l'id du {{WebExtAPIRef('downloads.DownloadItem')}} qui a été effacé.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.onErased")}}

+ +

Exemples

+ +

Ajoute un écouteur pour les événements onErased , puis effacez le téléchargement le plus récent :

+ +
function handleErased(item) {
+  console.log(`Erased: ${item}`);
+}
+
+browser.downloads.onErased.addListener(handleErased);
+
+var erasing = browser.downloads.erase({
+  limit: 1,
+  orderBy: ["-startTime"]
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 336cacc837..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/open/index.html +++ /dev/null @@ -1,110 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction open() 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.

- -

Pour utiliser cette fonction dans votre extension, vous devez demander la permission manifest "downloads.open", ainsi que la permission "downloads". En outre, vous pouvez uniquement appeler cette fonction à l'intérieur du gestionnaire pour une action utilisateur.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var opening = browser.downloads.open(
-  downloadId      // integer
-)
-
- -

Paramètres

- -
-
downloadId
-
Un integer représentant l'id du {{WebExtAPIRef("downloads.DownloadItem")}} que vous voulez ouvrir.
-
- -

Valeur retournée

- -

Une Promise. 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.open")}}

- -

Exemples

- -

Cet exemple ouvre l'élément le plus récemment téléchargé :

- -
function onOpened() {
-  console.log(`Opened download item`);
-}
-
-function onError(error) {
-  console.log(`Error opening item: ${error}`);
-}
-
-function openDownload(downloadItems) {
-    if (downloadItems.length > 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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/open/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/open/index.md new file mode 100644 index 0000000000..336cacc837 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/open/index.md @@ -0,0 +1,110 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction open() 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.

+ +

Pour utiliser cette fonction dans votre extension, vous devez demander la permission manifest "downloads.open", ainsi que la permission "downloads". En outre, vous pouvez uniquement appeler cette fonction à l'intérieur du gestionnaire pour une action utilisateur.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var opening = browser.downloads.open(
+  downloadId      // integer
+)
+
+ +

Paramètres

+ +
+
downloadId
+
Un integer représentant l'id du {{WebExtAPIRef("downloads.DownloadItem")}} que vous voulez ouvrir.
+
+ +

Valeur retournée

+ +

Une Promise. 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.open")}}

+ +

Exemples

+ +

Cet exemple ouvre l'élément le plus récemment téléchargé :

+ +
function onOpened() {
+  console.log(`Opened download item`);
+}
+
+function onError(error) {
+  console.log(`Error opening item: ${error}`);
+}
+
+function openDownload(downloadItems) {
+    if (downloadItems.length > 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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2a72e562eb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/pause/index.html +++ /dev/null @@ -1,94 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction pause() de l'API {{WebExtAPIRef("downloads")}} interrompt un téléchargement.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var pausing = browser.downloads.pause(
-  downloadId      // integer
-)
-
- -

Paramètres

- -
-
downloadId
-
Un integer représetant l'id du téléchargement à mettre en pause.
-
- -

Valeur retournée

- -

Une Promise. 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.pause")}}

- -

Exemples

- -
function onPaused() {
-  console.log(`Paused download`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var pausing = browser.downloads.pause(downloadId);
-pausing.then(onPaused, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/pause/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/pause/index.md new file mode 100644 index 0000000000..2a72e562eb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/pause/index.md @@ -0,0 +1,94 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction pause() de l'API {{WebExtAPIRef("downloads")}} interrompt un téléchargement.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var pausing = browser.downloads.pause(
+  downloadId      // integer
+)
+
+ +

Paramètres

+ +
+
downloadId
+
Un integer représetant l'id du téléchargement à mettre en pause.
+
+ +

Valeur retournée

+ +

Une Promise. 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.pause")}}

+ +

Exemples

+ +
function onPaused() {
+  console.log(`Paused download`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var pausing = browser.downloads.pause(downloadId);
+pausing.then(onPaused, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 4bc3a2a440..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/removefile/index.html +++ /dev/null @@ -1,116 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction removeFile() de l'API {{WebExtAPIRef("downloads")}} supprime un fichier téléchargé du disque.

- -

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 exists sera false.

- -

Pour supprimer un fichier de l'historique des téléchargements, vous devez utiliser  {{WebExtAPIRef("downloads.erase()")}}.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -
-

Note : Si vous souhaitez supprimer un fichier téléchargé du disque et l'effacer de l'historique, vous devez appeler removeFile() avant d'appeler {{WebExtAPIRef("downloads.erase()")}}. Si vous l'essayez dans l'autre sens, vous obtiendrez une erreur lors de l'appel de removeFile(), car le navigateur n'aura plus d'enregistrement du téléchargement.

-
- -

Syntaxe

- -
var removing = browser.downloads.removeFile(
-  downloadId      // integer
-)
-
- -

Paramètres

- -
-
downloadId
-
Un integer représentant l'identifiant de  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} que vous souhaitez supprimer du disque.
-
- -

Valeur retournée

- -

Une Promise. 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.removeFile")}}

- -

Exemples

- -

Supprimer le dernier fichier téléchargé :

- -
function onRemoved() {
-  console.log(`Removed item`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-function remove(downloadItems) {
-  if (downloadItems.length > 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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/removefile/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/removefile/index.md new file mode 100644 index 0000000000..4bc3a2a440 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/removefile/index.md @@ -0,0 +1,116 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction removeFile() de l'API {{WebExtAPIRef("downloads")}} supprime un fichier téléchargé du disque.

+ +

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 exists sera false.

+ +

Pour supprimer un fichier de l'historique des téléchargements, vous devez utiliser  {{WebExtAPIRef("downloads.erase()")}}.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +
+

Note : Si vous souhaitez supprimer un fichier téléchargé du disque et l'effacer de l'historique, vous devez appeler removeFile() avant d'appeler {{WebExtAPIRef("downloads.erase()")}}. Si vous l'essayez dans l'autre sens, vous obtiendrez une erreur lors de l'appel de removeFile(), car le navigateur n'aura plus d'enregistrement du téléchargement.

+
+ +

Syntaxe

+ +
var removing = browser.downloads.removeFile(
+  downloadId      // integer
+)
+
+ +

Paramètres

+ +
+
downloadId
+
Un integer représentant l'identifiant de  {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} que vous souhaitez supprimer du disque.
+
+ +

Valeur retournée

+ +

Une Promise. 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.removeFile")}}

+ +

Exemples

+ +

Supprimer le dernier fichier téléchargé :

+ +
function onRemoved() {
+  console.log(`Removed item`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+function remove(downloadItems) {
+  if (downloadItems.length > 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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 61ff022edf..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/resume/index.html +++ /dev/null @@ -1,97 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction resume() 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 resume() échouera si le téléchargement n'est pas actif: par exemple, parce qu'il a fini le téléchargement.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var resuming = browser.downloads.resume(
-  downloadId      // integer
-)
-
- -

Paramètres

- -
-
downloadId
-
Un integer représentant l'id du téléchargement à reprendre.
-
- -

Valeur retournée

- -

Une Promise. 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.resume")}}

- -

Exemples

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/resume/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/resume/index.md new file mode 100644 index 0000000000..61ff022edf --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/resume/index.md @@ -0,0 +1,97 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction resume() 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 resume() échouera si le téléchargement n'est pas actif: par exemple, parce qu'il a fini le téléchargement.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var resuming = browser.downloads.resume(
+  downloadId      // integer
+)
+
+ +

Paramètres

+ +
+
downloadId
+
Un integer représentant l'id du téléchargement à reprendre.
+
+ +

Valeur retournée

+ +

Une Promise. 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.resume")}}

+ +

Exemples

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 5f7fa9d84c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/search/index.html +++ /dev/null @@ -1,166 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction search() 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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var searching = browser.downloads.search(query);
-
- -

Paramètres

- -
-
query
-
Un objet {{WebExtAPIRef('downloads.DownloadQuery')}}.
-
- -

Return value

- -

Une Promise. La promise est remplie avec un tableau d'objets {{WebExtAPIRef('downloads.DownloadItem')}} qui correspondent aux critères donnés.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.search")}}

- -

Exemples

- -

En général, vous restreignez les éléments récupérés à l'aide du paramètre de requête.

- -

Obtenez les téléchargements correspondant à "query"

- -
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);
- -

Obtenez un article spécifique

- -

Pour obtenir un {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}}, la méthode la plus simple consiste à définir uniquement le champ id, comme indiqué dans l'extrait ci-dessous :

- -
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);
-
- -

Obtenez tous les téléchargements

- -

Si vous voulez renvoyer tout {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}}, définissez la query sur un objet vide.

- -
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);
- -

Obtenez le téléchargement le plus récent

- -

Vous pouvez obtenir le téléchargement le plus récent en spécifiant les paramètres de recherche suivants :

- -
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);
- -

Vous pouvez voir ce code en action par exemple dans notre dernier téléchargement.

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/search/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/search/index.md new file mode 100644 index 0000000000..5f7fa9d84c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/search/index.md @@ -0,0 +1,166 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction search() 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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var searching = browser.downloads.search(query);
+
+ +

Paramètres

+ +
+
query
+
Un objet {{WebExtAPIRef('downloads.DownloadQuery')}}.
+
+ +

Return value

+ +

Une Promise. La promise est remplie avec un tableau d'objets {{WebExtAPIRef('downloads.DownloadItem')}} qui correspondent aux critères donnés.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.search")}}

+ +

Exemples

+ +

En général, vous restreignez les éléments récupérés à l'aide du paramètre de requête.

+ +

Obtenez les téléchargements correspondant à "query"

+ +
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);
+ +

Obtenez un article spécifique

+ +

Pour obtenir un {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}}, la méthode la plus simple consiste à définir uniquement le champ id, comme indiqué dans l'extrait ci-dessous :

+ +
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);
+
+ +

Obtenez tous les téléchargements

+ +

Si vous voulez renvoyer tout {{WebExtAPIRef("downloads.DownloadItem", "DownloadItems")}}, définissez la query sur un objet vide.

+ +
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);
+ +

Obtenez le téléchargement le plus récent

+ +

Vous pouvez obtenir le téléchargement le plus récent en spécifiant les paramètres de recherche suivants :

+ +
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);
+ +

Vous pouvez voir ce code en action par exemple dans notre dernier téléchargement.

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e3a1a60755..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/setshelfenabled/index.html +++ /dev/null @@ -1,82 +0,0 @@ ---- -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 ---- -

{{AddonSidebar()}}

- -

La fonction  setShelfEnabled() 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.

- -

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é.

- -
-

Note : Pour utiliser cette fonction dans votre extension, vous devez demander la permission manifest, "downloads.shelf", ainsi que la permission "downloads".

-
- -

Syntaxe

- -
chrome.downloads.setShelfEnabled(enabled);
-
- -

Cette API est également disponible en tant que  browser.downloads.setShelfEnabled().

- -

Paramètres

- -
-
enabled
-
Un boolean l'état que vous souhaitez définir setShelfEnabled() à — true pour activer et false pour désactiver.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.setShelfEnabled")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/setshelfenabled/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/setshelfenabled/index.md new file mode 100644 index 0000000000..e3a1a60755 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/setshelfenabled/index.md @@ -0,0 +1,82 @@ +--- +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 +--- +

{{AddonSidebar()}}

+ +

La fonction  setShelfEnabled() 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.

+ +

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é.

+ +
+

Note : Pour utiliser cette fonction dans votre extension, vous devez demander la permission manifest, "downloads.shelf", ainsi que la permission "downloads".

+
+ +

Syntaxe

+ +
chrome.downloads.setShelfEnabled(enabled);
+
+ +

Cette API est également disponible en tant que  browser.downloads.setShelfEnabled().

+ +

Paramètres

+ +
+
enabled
+
Un boolean l'état que vous souhaitez définir setShelfEnabled() à — true pour activer et false pour désactiver.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.setShelfEnabled")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 6e995496ef..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/show/index.html +++ /dev/null @@ -1,109 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction show() 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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var showing = browser.downloads.show(
-  downloadId             // integer
-)
-
- -

Paramètes

- -
-
downloadId
-
Un integer représentant l'ID du {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} à afficher.
-
- -

Valeur retournée

- -

Une Promise. 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.show")}}

- -

Exemples

- -

Cet exemple montre l'élément le plus récemment téléchargé :

- -
function onShowing(success) {
-  console.log(`Showing download item: ${success}`);
-}
-
-function onError(error) {
-  console.log(`Error opening item: ${error}`);
-}
-
-function openDownload(downloadItems) {
-    if (downloadItems.length > 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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/show/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/show/index.md new file mode 100644 index 0000000000..6e995496ef --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/show/index.md @@ -0,0 +1,109 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction show() 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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var showing = browser.downloads.show(
+  downloadId             // integer
+)
+
+ +

Paramètes

+ +
+
downloadId
+
Un integer représentant l'ID du {{WebExtAPIRef("downloads.DownloadItem", "DownloadItem")}} à afficher.
+
+ +

Valeur retournée

+ +

Une Promise. 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.show")}}

+ +

Exemples

+ +

Cet exemple montre l'élément le plus récemment téléchargé :

+ +
function onShowing(success) {
+  console.log(`Showing download item: ${success}`);
+}
+
+function onError(error) {
+  console.log(`Error opening item: ${error}`);
+}
+
+function openDownload(downloadItems) {
+    if (downloadItems.length > 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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 110f2e13a7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/showdefaultfolder/index.html +++ /dev/null @@ -1,81 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La fonction showDefaultFolder() de l'API {{WebExtAPIRef("downloads")}} ouvre le dossier de téléchargement par défaut dans le gestionnaire de fichiers de la plateforme.

- -

Syntaxe

- -
browser.downloads.showDefaultFolder();
-
- -

Paramètres

-

Aucun

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.showDefaultFolder")}}

- -

Exemples

- -

L'extrait suivant contient un bouton d'affichage qui, lorsqu'il est cliqué, appelle showDefaultFolder() pour ouvrir le dossier de téléchargement par défaut dans le gestionnaire de fichiers de la plateforme :

- -
var showBtn = document.querySelector('.show');
-
-showBtn.onclick = function() {
-  browser.downloads.showDefaultFolder();
-}
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/showdefaultfolder/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/showdefaultfolder/index.md new file mode 100644 index 0000000000..110f2e13a7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/showdefaultfolder/index.md @@ -0,0 +1,81 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La fonction showDefaultFolder() de l'API {{WebExtAPIRef("downloads")}} ouvre le dossier de téléchargement par défaut dans le gestionnaire de fichiers de la plateforme.

+ +

Syntaxe

+ +
browser.downloads.showDefaultFolder();
+
+ +

Paramètres

+

Aucun

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.showDefaultFolder")}}

+ +

Exemples

+ +

L'extrait suivant contient un bouton d'affichage qui, lorsqu'il est cliqué, appelle showDefaultFolder() pour ouvrir le dossier de téléchargement par défaut dans le gestionnaire de fichiers de la plateforme :

+ +
var showBtn = document.querySelector('.show');
+
+showBtn.onclick = function() {
+  browser.downloads.showDefaultFolder();
+}
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e266b1a584..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/state/index.html +++ /dev/null @@ -1,81 +0,0 @@ ---- -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 ---- -

{{AddonSidebar()}}

- -

Le type d'état de l'API {{WebExtAPIRef("downloads")}} définit différents états dans lesquels un téléchargement en cours peut se trouver.

- -

Une propriété d'state {{WebExtAPIRef('downloads.DownloadItem')}}  contiendra une chaîne tirée des valeurs définies dans ce type.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- -
-
in_progress
-
Le navigateur reçoit actuellement les données de téléchargement du serveur .
-
interrupted
-
Une erreur a rompu la connexion avec le serveur.
-
complete
-
Le téléchargement s'est terminé avec succès.
-
- -
-

Note : Ces constantes de chaîne ne changeront jamais, mais de nouvelles constantes peuvent être ajoutées.

-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.State")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/state/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/state/index.md new file mode 100644 index 0000000000..e266b1a584 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/state/index.md @@ -0,0 +1,81 @@ +--- +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 +--- +

{{AddonSidebar()}}

+ +

Le type d'état de l'API {{WebExtAPIRef("downloads")}} définit différents états dans lesquels un téléchargement en cours peut se trouver.

+ +

Une propriété d'state {{WebExtAPIRef('downloads.DownloadItem')}}  contiendra une chaîne tirée des valeurs définies dans ce type.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ +
+
in_progress
+
Le navigateur reçoit actuellement les données de téléchargement du serveur .
+
interrupted
+
Une erreur a rompu la connexion avec le serveur.
+
complete
+
Le téléchargement s'est terminé avec succès.
+
+ +
+

Note : Ces constantes de chaîne ne changeront jamais, mais de nouvelles constantes peuvent être ajoutées.

+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.State")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 793fcafab1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/downloads/stringdelta/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type StringDelta de l'API {{WebExtAPIRef("downloads")}} représente la différence entre deux chaînes.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes:

- -
-
current{{optional_inline}}
-
Un string représentant la valeur de chaîne actuelle.
-
previous{{optional_inline}}
-
Un string représentant la valeur de chaîne précédente.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.downloads.StringDelta")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.downloads.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/downloads/stringdelta/index.md b/files/fr/mozilla/add-ons/webextensions/api/downloads/stringdelta/index.md new file mode 100644 index 0000000000..793fcafab1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/downloads/stringdelta/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type StringDelta de l'API {{WebExtAPIRef("downloads")}} représente la différence entre deux chaînes.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes:

+ +
+
current{{optional_inline}}
+
Un string représentant la valeur de chaîne actuelle.
+
previous{{optional_inline}}
+
Un string représentant la valeur de chaîne précédente.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.downloads.StringDelta")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.downloads.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 3f54172b95..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/events/event/index.html +++ /dev/null @@ -1,85 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet qui permet l'ajout et la suppression d'écouteurs pour un événement de navigateur.

- -

Type

- -

Les valeurs de ce type sont des objets.

- -

Méthodes

- -
-
{{WebExtAPIRef("events.Event.addListener()")}}
-
Enregistre un rappel d'écouteur d'événement sur un événement.
-
{{WebExtAPIRef("events.Event.removeListener()")}}
-
Désinscrit un rappel d'écouteur d'événement d'un événement.
-
{{WebExtAPIRef("events.Event.hasListener()")}}
-
Teste l'état d'enregistrement d'un écouteur.
-
{{WebExtAPIRef("events.Event.hasListeners()")}}
-
Teste si des écouteurs sont enregistrés pour l'événement.
-
{{WebExtAPIRef("events.Event.addRules()")}}
-
Enregistre les règles pour gérer les événements.
-
{{WebExtAPIRef("events.Event.getRules()")}}
-
Renvoie les règles actuellement enregistrées.
-
{{WebExtAPIRef("events.Event.removeRules()")}}
-
Annule l'inscription des règles actuellement enregistrées.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.events.Event")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.events. Cette documentation est dérivée de events.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/events/event/index.md b/files/fr/mozilla/add-ons/webextensions/api/events/event/index.md new file mode 100644 index 0000000000..3f54172b95 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/events/event/index.md @@ -0,0 +1,85 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet qui permet l'ajout et la suppression d'écouteurs pour un événement de navigateur.

+ +

Type

+ +

Les valeurs de ce type sont des objets.

+ +

Méthodes

+ +
+
{{WebExtAPIRef("events.Event.addListener()")}}
+
Enregistre un rappel d'écouteur d'événement sur un événement.
+
{{WebExtAPIRef("events.Event.removeListener()")}}
+
Désinscrit un rappel d'écouteur d'événement d'un événement.
+
{{WebExtAPIRef("events.Event.hasListener()")}}
+
Teste l'état d'enregistrement d'un écouteur.
+
{{WebExtAPIRef("events.Event.hasListeners()")}}
+
Teste si des écouteurs sont enregistrés pour l'événement.
+
{{WebExtAPIRef("events.Event.addRules()")}}
+
Enregistre les règles pour gérer les événements.
+
{{WebExtAPIRef("events.Event.getRules()")}}
+
Renvoie les règles actuellement enregistrées.
+
{{WebExtAPIRef("events.Event.removeRules()")}}
+
Annule l'inscription des règles actuellement enregistrées.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.events.Event")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.events. Cette documentation est dérivée de events.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/events/index.html b/files/fr/mozilla/add-ons/webextensions/api/events/index.html deleted file mode 100644 index 92ea678ab3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/events/index.html +++ /dev/null @@ -1,72 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Types communs utilisés par les API qui distribuent les événements.

- -

Types

- -
-
{{WebExtAPIRef("events.Rule")}}
-
Description d'une règle déclarative pour gérer les événements.
-
{{WebExtAPIRef("events.Event")}}
-
Un objet qui permet l'ajout et la suppression d'écouteurs pour un événement Chrome.
-
{{WebExtAPIRef("events.UrlFilter")}}
-
Filtre les URL pour différents critères. Si un critère donné correspond, alors tout le filtre correspond.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.events")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.events. Cette documentation est dérivée de events.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/events/index.md b/files/fr/mozilla/add-ons/webextensions/api/events/index.md new file mode 100644 index 0000000000..92ea678ab3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/events/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Types communs utilisés par les API qui distribuent les événements.

+ +

Types

+ +
+
{{WebExtAPIRef("events.Rule")}}
+
Description d'une règle déclarative pour gérer les événements.
+
{{WebExtAPIRef("events.Event")}}
+
Un objet qui permet l'ajout et la suppression d'écouteurs pour un événement Chrome.
+
{{WebExtAPIRef("events.UrlFilter")}}
+
Filtre les URL pour différents critères. Si un critère donné correspond, alors tout le filtre correspond.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.events")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.events. Cette documentation est dérivée de events.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index cda840f67f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/events/rule/index.html +++ /dev/null @@ -1,79 +0,0 @@ ---- -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 ---- -

{{AddonSidebar()}}

- -

Description d'une règle déclarative pour la gestion des événements.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
id{{optional_inline}}
-
string. Identifiant facultatif permettant de référencer cette règle.
-
tags{{optional_inline}}
-
array of string. Les balises peuvent être utilisées pour annoter des règles et effectuer des opérations sur des ensembles de règles.
-
conditions
-
array de any. Liste des conditions qui peuvent déclencher les actions.
-
actions
-
array de any. Liste des actions qui sont déclenchées si l'une des conditions est remplie.
-
priority{{optional_inline}}
-
integer. Priorité optionnelle de cette règle. Par défaut à 100.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.events.Rule")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.events. Cette documentation est dérivée de events.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/events/rule/index.md b/files/fr/mozilla/add-ons/webextensions/api/events/rule/index.md new file mode 100644 index 0000000000..cda840f67f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/events/rule/index.md @@ -0,0 +1,79 @@ +--- +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 +--- +

{{AddonSidebar()}}

+ +

Description d'une règle déclarative pour la gestion des événements.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
id{{optional_inline}}
+
string. Identifiant facultatif permettant de référencer cette règle.
+
tags{{optional_inline}}
+
array of string. Les balises peuvent être utilisées pour annoter des règles et effectuer des opérations sur des ensembles de règles.
+
conditions
+
array de any. Liste des conditions qui peuvent déclencher les actions.
+
actions
+
array de any. Liste des actions qui sont déclenchées si l'une des conditions est remplie.
+
priority{{optional_inline}}
+
integer. Priorité optionnelle de cette règle. Par défaut à 100.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.events.Rule")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.events. Cette documentation est dérivée de events.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 0b1cb82297..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/events/urlfilter/index.html +++ /dev/null @@ -1,140 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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 Array d'UrlFilters. Par exemple, les écouteurs  webNavigation peuvent être ajoutés avec un filtre qui est un objet avec une seule propriété url qui est un Array de UrlFilters, par exemple {url:[UrlFilter,UrlFilter,...]}. 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ù.

- -

Tous les critères sont sensibles à la casse.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes:

- -

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, "org." correspondra à "https://borg.com" mais pas "https://example.org". Pour faire correspondre ces modèles, utilisez hostSuffix.

- -
-
hostContains{{optional_inline}}
-

string. Correspond si le hostname de l'URL contient la chaîne donnée.

-
    -
  • Pour tester si un composant de nom d'hôte commence par "foo", utilisez  ".foo". Cela correspond à "www.foobar.com" et "foo.com", car un point implicite est ajouté au début du nom d'hôte.
  • -
  • Pour tester si un composant de nom d'hôte se termine par "foo", utilisez "foo.".
  • -
  • Pour tester si un composant de nom d'hôte correspond exactement à "foo", utilisez ".foo.".
  • -
-
-
hostEquals{{optional_inline}}
-
string. Correspond si le nom d'hôte de l'URL est égal à une chaîne spécifiée.
-
hostPrefix{{optional_inline}}
-
string. Correspond si le nom d'hôte de l'URL commence par une chaîne spécifiée.
-
hostSuffix{{optional_inline}}
-

string. Correspond si le nom d'hôte de l'URL se termine par une chaîne spécifiée.

-
    -
  • Exemple: ".example.com" correspond à "http://www.example.com/", mais pas à "http://example.com/".
  • -
  • Exemple: "example.com" correspond à "http://www.example.com/", et  "http://fakeexample.com/".
  • -
-
-
pathContains{{optional_inline}}
-
string. Correspond si le segment de chemin de l'URL contient une chaîne spécifiée.
-
pathEquals{{optional_inline}}
-
string. Correspond si le segment de chemin de l'URL est égal à une chaîne spécifiée.
-
pathPrefix{{optional_inline}}
-
string. Correspond si le segment de chemin de l'URL commence par une chaîne spécifiée.
-
pathSuffix{{optional_inline}}
-
string. Correspond si le segment de chemin de l'URL se termine par une chaîne spécifiée.
-
queryContains{{optional_inline}}
-
string. Correspond si le segment de requête de l'URL contient une chaîne spécifiée.
-
queryEquals{{optional_inline}}
-
string. Correspond si le segment de requête de l'URL est égal à une chaîne spécifiée.
-
queryPrefix{{optional_inline}}
-
string. Correspond si le segment de requête de l'URL commence par une chaîne spécifiée.
-
querySuffix{{optional_inline}}
-
string. Correspond si le segment de requête de l'URL se termine par une chaîne spécifiée.
-
urlContains{{optional_inline}}
-
string. 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.
-
urlEquals{{optional_inline}}
-
string. 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.
-
urlMatches{{optional_inline}}
-

string. Correspond si l'URL (sans l'identificateur de fragment) correspond à une  expression régulière. Les numéros de port sont supprimés de l'URL s'ils correspondent au numéro de port par défaut.

-
    -
  • Par exemple : urlMatches: "^[^:]*:(?://)?(?:[^/]*\\.)?mozilla\\.org/.*$" correspond "http://mozilla.org/", "https://developer.mozilla.org/", "ftp://foo.mozilla.org/", mais pas "https://developer.fakemozilla.org/".
  • -
-
-
originAndPathMatches{{optional_inline}}
-
string. Correspond si l'URL sans segment de requête et l'identificateur de fragment correspondent à une expression régulière 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.
-
urlPrefix{{optional_inline}}
-

string. 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.

-
    -
  • Exemple: "https://developer" correspond "https://developer.mozilla.org/" et  "https://developers.facebook.com/".
  • -
-
-
urlSuffix{{optional_inline}}
-
string. 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 "com/" correspond "https://example.com", mais pas "com".
-
schemas{{optional_inline}}
-

array of string. 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.

-
    -
  • Exemple: ["https"] correspond uniquement aux URL HTTPS.
  • -
-
-
ports{{optional_inline}}
-

array de (integer ou array of integer). 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.

-
    -
  • Par exemple: [80, 443, [1000, 1200]] correspond à toutes les demandes sur les ports 80, 443, et dans la plage 1000-1200.
  • -
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.events.UrlFilter")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.events. Cette documentation est dérivée de events.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/events/urlfilter/index.md b/files/fr/mozilla/add-ons/webextensions/api/events/urlfilter/index.md new file mode 100644 index 0000000000..0b1cb82297 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/events/urlfilter/index.md @@ -0,0 +1,140 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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 Array d'UrlFilters. Par exemple, les écouteurs  webNavigation peuvent être ajoutés avec un filtre qui est un objet avec une seule propriété url qui est un Array de UrlFilters, par exemple {url:[UrlFilter,UrlFilter,...]}. 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ù.

+ +

Tous les critères sont sensibles à la casse.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes:

+ +

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, "org." correspondra à "https://borg.com" mais pas "https://example.org". Pour faire correspondre ces modèles, utilisez hostSuffix.

+ +
+
hostContains{{optional_inline}}
+

string. Correspond si le hostname de l'URL contient la chaîne donnée.

+
    +
  • Pour tester si un composant de nom d'hôte commence par "foo", utilisez  ".foo". Cela correspond à "www.foobar.com" et "foo.com", car un point implicite est ajouté au début du nom d'hôte.
  • +
  • Pour tester si un composant de nom d'hôte se termine par "foo", utilisez "foo.".
  • +
  • Pour tester si un composant de nom d'hôte correspond exactement à "foo", utilisez ".foo.".
  • +
+
+
hostEquals{{optional_inline}}
+
string. Correspond si le nom d'hôte de l'URL est égal à une chaîne spécifiée.
+
hostPrefix{{optional_inline}}
+
string. Correspond si le nom d'hôte de l'URL commence par une chaîne spécifiée.
+
hostSuffix{{optional_inline}}
+

string. Correspond si le nom d'hôte de l'URL se termine par une chaîne spécifiée.

+
    +
  • Exemple: ".example.com" correspond à "http://www.example.com/", mais pas à "http://example.com/".
  • +
  • Exemple: "example.com" correspond à "http://www.example.com/", et  "http://fakeexample.com/".
  • +
+
+
pathContains{{optional_inline}}
+
string. Correspond si le segment de chemin de l'URL contient une chaîne spécifiée.
+
pathEquals{{optional_inline}}
+
string. Correspond si le segment de chemin de l'URL est égal à une chaîne spécifiée.
+
pathPrefix{{optional_inline}}
+
string. Correspond si le segment de chemin de l'URL commence par une chaîne spécifiée.
+
pathSuffix{{optional_inline}}
+
string. Correspond si le segment de chemin de l'URL se termine par une chaîne spécifiée.
+
queryContains{{optional_inline}}
+
string. Correspond si le segment de requête de l'URL contient une chaîne spécifiée.
+
queryEquals{{optional_inline}}
+
string. Correspond si le segment de requête de l'URL est égal à une chaîne spécifiée.
+
queryPrefix{{optional_inline}}
+
string. Correspond si le segment de requête de l'URL commence par une chaîne spécifiée.
+
querySuffix{{optional_inline}}
+
string. Correspond si le segment de requête de l'URL se termine par une chaîne spécifiée.
+
urlContains{{optional_inline}}
+
string. 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.
+
urlEquals{{optional_inline}}
+
string. 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.
+
urlMatches{{optional_inline}}
+

string. Correspond si l'URL (sans l'identificateur de fragment) correspond à une  expression régulière. Les numéros de port sont supprimés de l'URL s'ils correspondent au numéro de port par défaut.

+
    +
  • Par exemple : urlMatches: "^[^:]*:(?://)?(?:[^/]*\\.)?mozilla\\.org/.*$" correspond "http://mozilla.org/", "https://developer.mozilla.org/", "ftp://foo.mozilla.org/", mais pas "https://developer.fakemozilla.org/".
  • +
+
+
originAndPathMatches{{optional_inline}}
+
string. Correspond si l'URL sans segment de requête et l'identificateur de fragment correspondent à une expression régulière 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.
+
urlPrefix{{optional_inline}}
+

string. 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.

+
    +
  • Exemple: "https://developer" correspond "https://developer.mozilla.org/" et  "https://developers.facebook.com/".
  • +
+
+
urlSuffix{{optional_inline}}
+
string. 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 "com/" correspond "https://example.com", mais pas "com".
+
schemas{{optional_inline}}
+

array of string. 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.

+
    +
  • Exemple: ["https"] correspond uniquement aux URL HTTPS.
  • +
+
+
ports{{optional_inline}}
+

array de (integer ou array of integer). 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.

+
    +
  • Par exemple: [80, 443, [1000, 1200]] correspond à toutes les demandes sur les ports 80, 443, et dans la plage 1000-1200.
  • +
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.events.UrlFilter")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.events. Cette documentation est dérivée de events.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 3553786765..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/getbackgroundpage/index.html +++ /dev/null @@ -1,96 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Alias de {{WebExtAPIRef("runtime.getBackgroundPage()")}}.

- -
-

Note : 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)}}.

-
- -

Syntaxe

- -
var page = browser.extension.getBackgroundPage()
-
- -

Paramètres

- -

Aucun

- -

Valeur retournée

- -

object. Window de la page d'arrière plan.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extension.getBackgroundPage")}}

- -

Exemples

- -

Supposons un  script d'arrière plan définisse une fonction foo():

- -
// background.js
-
-function foo() {
-  console.log("I'm defined in background.js");
-}
- -

Un script exécuté dans un popup peut appeler cette fonction directement comme ceci :

- -
// popup.js
-
-var page = browser.extension.getBackgroundPage();
-page.foo(); // -> "I'm defined in background.js"
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/getbackgroundpage/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/getbackgroundpage/index.md new file mode 100644 index 0000000000..3553786765 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/getbackgroundpage/index.md @@ -0,0 +1,96 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Alias de {{WebExtAPIRef("runtime.getBackgroundPage()")}}.

+ +
+

Note : 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)}}.

+
+ +

Syntaxe

+ +
var page = browser.extension.getBackgroundPage()
+
+ +

Paramètres

+ +

Aucun

+ +

Valeur retournée

+ +

object. Window de la page d'arrière plan.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extension.getBackgroundPage")}}

+ +

Exemples

+ +

Supposons un  script d'arrière plan définisse une fonction foo():

+ +
// background.js
+
+function foo() {
+  console.log("I'm defined in background.js");
+}
+ +

Un script exécuté dans un popup peut appeler cette fonction directement comme ceci :

+ +
// popup.js
+
+var page = browser.extension.getBackgroundPage();
+page.foo(); // -> "I'm defined in background.js"
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index ba0457a170..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/getextensiontabs/index.html +++ /dev/null @@ -1,86 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

Attention : Cette méthode a été dépréciée. Utilisez {{WebExtAPIRef("extension.getViews()")}} à la place.

-
- -

Renvoie un tableau des objets de la Window JavaScriptpour chacun des onglets qui s'exécutent dans l'extension actuelle. Si windowId est spécifié, renvoie uniquement les objets Window des onglets attachés à la fenêtre spécifiée.

- -

Syntaxe

- -
chrome.extension.getExtensionTabs(
-  windowId // optional integer
-)
-
- -

Cette API est également disponible en tant que browser.extension.getExtensionTabs().

- -

Paramètres

- -
-
windowId{{optional_inline}}
-
integer.
-
- -

Valeur retournée

- -

array of object. Tableau d'objets de fenêtre globaux

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extension.getExtensionTabs")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/getextensiontabs/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/getextensiontabs/index.md new file mode 100644 index 0000000000..ba0457a170 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/getextensiontabs/index.md @@ -0,0 +1,86 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

Attention : Cette méthode a été dépréciée. Utilisez {{WebExtAPIRef("extension.getViews()")}} à la place.

+
+ +

Renvoie un tableau des objets de la Window JavaScriptpour chacun des onglets qui s'exécutent dans l'extension actuelle. Si windowId est spécifié, renvoie uniquement les objets Window des onglets attachés à la fenêtre spécifiée.

+ +

Syntaxe

+ +
chrome.extension.getExtensionTabs(
+  windowId // optional integer
+)
+
+ +

Cette API est également disponible en tant que browser.extension.getExtensionTabs().

+ +

Paramètres

+ +
+
windowId{{optional_inline}}
+
integer.
+
+ +

Valeur retournée

+ +

array of object. Tableau d'objets de fenêtre globaux

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extension.getExtensionTabs")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index f6193a83d2..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/geturl/index.html +++ /dev/null @@ -1,92 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -
-

Attention : Cette fonction est obsolète. Veuillez utiliser runtime.getURL.

-
- -

Convertit un chemin relatif dans le répertoire d'installation d'une extension en une URL complète.

- -

Syntaxe

- -
browser.extension.getURL(
-  path // string
-)
-
- -

Paramètres

- -
-
path
-
string. Un chemin vers une ressource dans une extension exprimée par rapport à son répertoire d'installation.
-
- -

Valeur retournée

- -

string. The fully-qualified URL to the resource.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extension.getURL")}}

- -

Exemples

- -

Donné un fichier empaqueté avec l'add-on à "beasts/frog.html", obtenez l'URL complète comme ceci :

- -
var fullURL = browser.extension.getURL("beasts/frog.html");
-
-// -> something like:
-// moz-extension://2c127fa4-62c7-7e4f-90e5-472b45eecfdc/beasts/frog.html
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/geturl/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/geturl/index.md new file mode 100644 index 0000000000..f6193a83d2 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/geturl/index.md @@ -0,0 +1,92 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +
+

Attention : Cette fonction est obsolète. Veuillez utiliser runtime.getURL.

+
+ +

Convertit un chemin relatif dans le répertoire d'installation d'une extension en une URL complète.

+ +

Syntaxe

+ +
browser.extension.getURL(
+  path // string
+)
+
+ +

Paramètres

+ +
+
path
+
string. Un chemin vers une ressource dans une extension exprimée par rapport à son répertoire d'installation.
+
+ +

Valeur retournée

+ +

string. The fully-qualified URL to the resource.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extension.getURL")}}

+ +

Exemples

+ +

Donné un fichier empaqueté avec l'add-on à "beasts/frog.html", obtenez l'URL complète comme ceci :

+ +
var fullURL = browser.extension.getURL("beasts/frog.html");
+
+// -> something like:
+// moz-extension://2c127fa4-62c7-7e4f-90e5-472b45eecfdc/beasts/frog.html
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index ce895776ea..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/getviews/index.html +++ /dev/null @@ -1,114 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Renvoie un tableau des objets Window pour chacune des pages exécutées dans l'extension en cours. Cela inclut, par exemple :

- - - -

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.

- -

Syntaxe

- -
var windows = browser.extension.getViews(
-  fetchProperties // optional object
-)
-
- -

Paramètres

- -
-
fetchProperties{{optional_inline}}
-

object.

-
-
type{{optional_inline}}
-
string. Un {{WebExtAPIRef('extension.ViewType')}} indiquant le type de vue à obtenir. Si omis, cette fonction renvoie toutes les vues.
-
windowId{{optional_inline}}
-
integer. La fenêtre pour restreindre la recherche. Si omis, cette fonction renvoie toutes les vues.
-
-
-
- -

Valeur retournée

- -

array of object. Un tableau d'objets Window.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extension.getViews")}}

- -

Exemples

- -

Obtenez toutes les fenêtres appartenant à cette extension et consignez leurs URL :

- -
var windows = browser.extension.getViews();
-
-for (var extensionWindow of windows) {
-  console.log(extensionWindow.location.href);
-}
- -

Obtenez uniquement des fenêtres dans les onglets du navigateur hébergeant du contenu fourni avec l'extension :

- -
var windows = browser.extension.getViews({type: "tab"});
- -

Obtenir seulement des fenêtres dans les popups :

- -
var windows = browser.extension.getViews({type: "popup"});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/getviews/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/getviews/index.md new file mode 100644 index 0000000000..ce895776ea --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/getviews/index.md @@ -0,0 +1,114 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Renvoie un tableau des objets Window pour chacune des pages exécutées dans l'extension en cours. Cela inclut, par exemple :

+ + + +

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.

+ +

Syntaxe

+ +
var windows = browser.extension.getViews(
+  fetchProperties // optional object
+)
+
+ +

Paramètres

+ +
+
fetchProperties{{optional_inline}}
+

object.

+
+
type{{optional_inline}}
+
string. Un {{WebExtAPIRef('extension.ViewType')}} indiquant le type de vue à obtenir. Si omis, cette fonction renvoie toutes les vues.
+
windowId{{optional_inline}}
+
integer. La fenêtre pour restreindre la recherche. Si omis, cette fonction renvoie toutes les vues.
+
+
+
+ +

Valeur retournée

+ +

array of object. Un tableau d'objets Window.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extension.getViews")}}

+ +

Exemples

+ +

Obtenez toutes les fenêtres appartenant à cette extension et consignez leurs URL :

+ +
var windows = browser.extension.getViews();
+
+for (var extensionWindow of windows) {
+  console.log(extensionWindow.location.href);
+}
+ +

Obtenez uniquement des fenêtres dans les onglets du navigateur hébergeant du contenu fourni avec l'extension :

+ +
var windows = browser.extension.getViews({type: "tab"});
+ +

Obtenir seulement des fenêtres dans les popups :

+ +
var windows = browser.extension.getViews({type: "popup"});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/index.html b/files/fr/mozilla/add-ons/webextensions/api/extension/index.html deleted file mode 100644 index d395507242..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/index.html +++ /dev/null @@ -1,109 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Utilitaires liés à votre extension. Obtenez des URL vers des packages de ressources avec votre extension, récupérez l'objet Window 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 runtime.

- -

Types

- -
-
{{WebExtAPIRef("extension.ViewType")}}
-
Le type de vue d'extension.
-
- -

Propriétés

- -
-
{{WebExtAPIRef("extension.lastError")}}
-
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 indéfini.
-
{{WebExtAPIRef("extension.inIncognitoContext")}}
-
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'.
-
- -

Fonctions

- -
-
{{WebExtAPIRef("extension.getBackgroundPage()")}}
-
Renvoie l'objet Window 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.
-
{{WebExtAPIRef("extension.getExtensionTabs()")}} {{deprecated_inline}}
-
Renvoie un tableau des objets de la Window JavaScript pour chacun des onglets qui s'exécutent dans l'extension actuelle.
-
{{WebExtAPIRef("extension.getURL()")}} {{deprecated_inline}}
-
Convertit un chemin relatif dans un répertoire d'installation d'extension en une URL complète.
-
{{WebExtAPIRef("extension.getViews()")}}
-
Renvoie un tableau des objets Window pour chacune des pages exécutées dans l'extension en cours.
-
{{WebExtAPIRef("extension.isAllowedIncognitoAccess()")}}
-
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").
-
{{WebExtAPIRef("extension.isAllowedFileSchemeAccess()")}}
-
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').***
-
{{WebExtAPIRef("extension.sendRequest()")}} {{deprecated_inline}}
-
Envoie une seule requête aux autres écouteurs de l'extension.
-
{{WebExtAPIRef("extension.setUpdateUrlData()")}}
-
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.
-
- -

Evénements

- -
-
{{WebExtAPIRef("extension.onRequest")}} {{deprecated_inline}}
-
Lancé lorsqu'une requête est envoyée par un processus d'extension ou un script de contenu.
-
{{WebExtAPIRef("extension.onRequestExternal")}} {{deprecated_inline}}
-
Lancé lorsqu'une requête est envoyée depuis une autre extension.
-
- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.extension")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/index.md new file mode 100644 index 0000000000..d395507242 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Utilitaires liés à votre extension. Obtenez des URL vers des packages de ressources avec votre extension, récupérez l'objet Window 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 runtime.

+ +

Types

+ +
+
{{WebExtAPIRef("extension.ViewType")}}
+
Le type de vue d'extension.
+
+ +

Propriétés

+ +
+
{{WebExtAPIRef("extension.lastError")}}
+
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 indéfini.
+
{{WebExtAPIRef("extension.inIncognitoContext")}}
+
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'.
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("extension.getBackgroundPage()")}}
+
Renvoie l'objet Window 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.
+
{{WebExtAPIRef("extension.getExtensionTabs()")}} {{deprecated_inline}}
+
Renvoie un tableau des objets de la Window JavaScript pour chacun des onglets qui s'exécutent dans l'extension actuelle.
+
{{WebExtAPIRef("extension.getURL()")}} {{deprecated_inline}}
+
Convertit un chemin relatif dans un répertoire d'installation d'extension en une URL complète.
+
{{WebExtAPIRef("extension.getViews()")}}
+
Renvoie un tableau des objets Window pour chacune des pages exécutées dans l'extension en cours.
+
{{WebExtAPIRef("extension.isAllowedIncognitoAccess()")}}
+
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").
+
{{WebExtAPIRef("extension.isAllowedFileSchemeAccess()")}}
+
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').***
+
{{WebExtAPIRef("extension.sendRequest()")}} {{deprecated_inline}}
+
Envoie une seule requête aux autres écouteurs de l'extension.
+
{{WebExtAPIRef("extension.setUpdateUrlData()")}}
+
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.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("extension.onRequest")}} {{deprecated_inline}}
+
Lancé lorsqu'une requête est envoyée par un processus d'extension ou un script de contenu.
+
{{WebExtAPIRef("extension.onRequestExternal")}} {{deprecated_inline}}
+
Lancé lorsqu'une requête est envoyée depuis une autre extension.
+
+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.extension")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 51ed61c055..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/inincognitocontext/index.html +++ /dev/null @@ -1,62 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Valeur booléenne, 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é..

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extension.inIncognitoContext")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/inincognitocontext/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/inincognitocontext/index.md new file mode 100644 index 0000000000..51ed61c055 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/inincognitocontext/index.md @@ -0,0 +1,62 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Valeur booléenne, 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é..

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extension.inIncognitoContext")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2d809c86ca..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedfileschemeaccess/index.html +++ /dev/null @@ -1,92 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Renvoie true si l'extension peut accéder au schéma "file://", sinon false.
- -
- -
-

C'est une fonction asynchrone qui renvoie une Promise.

-
- -

Syntaxe

- -
var isAllowed = browser.extension.isAllowedFileSchemeAccess()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui sera remplie avec un booléen : true si l'extension est autorisée à accéder aux URLs "file://", sinon false.

- -

Firefox retournera toujours false.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extension.isAllowedFileSchemeAccess")}}

- -

Exemples

- -
function logIsAllowed(answer) {
-  console.log(`Is allowed: ${answer}`);
-}
-
-var isAllowed = browser.extension.isAllowedFileSchemeAccess();
-isAllowed.then(logIsAllowed);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedfileschemeaccess/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedfileschemeaccess/index.md new file mode 100644 index 0000000000..2d809c86ca --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedfileschemeaccess/index.md @@ -0,0 +1,92 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Renvoie true si l'extension peut accéder au schéma "file://", sinon false.
+ +
+ +
+

C'est une fonction asynchrone qui renvoie une Promise.

+
+ +

Syntaxe

+ +
var isAllowed = browser.extension.isAllowedFileSchemeAccess()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un booléen : true si l'extension est autorisée à accéder aux URLs "file://", sinon false.

+ +

Firefox retournera toujours false.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extension.isAllowedFileSchemeAccess")}}

+ +

Exemples

+ +
function logIsAllowed(answer) {
+  console.log(`Is allowed: ${answer}`);
+}
+
+var isAllowed = browser.extension.isAllowedFileSchemeAccess();
+isAllowed.then(logIsAllowed);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index f39e1f60f5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedincognitoaccess/index.html +++ /dev/null @@ -1,86 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Vérifiez si l'extension est autorisée à accéder aux onglets ouverts en mode "navigation privée".

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var isAllowed = browser.extension.isAllowedIncognitoAccess()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui sera remplie avec un booléen : true si l'extension est autorisée à accéder aux onglets privés, sinon false.

- -

Exemples

- -
function logIsAllowed(answer) {
-  console.log(`Is allowed: ${answer}`);
-}
-
-var isAllowed = browser.extension.isAllowedIncognitoAccess();
-isAllowed.then(logIsAllowed);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extension.isAllowedIncognitoAccess")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedincognitoaccess/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedincognitoaccess/index.md new file mode 100644 index 0000000000..f39e1f60f5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/isallowedincognitoaccess/index.md @@ -0,0 +1,86 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Vérifiez si l'extension est autorisée à accéder aux onglets ouverts en mode "navigation privée".

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var isAllowed = browser.extension.isAllowedIncognitoAccess()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un booléen : true si l'extension est autorisée à accéder aux onglets privés, sinon false.

+ +

Exemples

+ +
function logIsAllowed(answer) {
+  console.log(`Is allowed: ${answer}`);
+}
+
+var isAllowed = browser.extension.isAllowedIncognitoAccess();
+isAllowed.then(logIsAllowed);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extension.isAllowedIncognitoAccess")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index b82a280082..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/lasterror/index.html +++ /dev/null @@ -1,62 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un alias de {{WebExtAPIRef("runtime.lastError")}}.

- -

Compatibilité du navoigateur

- -

{{Compat("webextensions.api.extension.lastError")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/lasterror/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/lasterror/index.md new file mode 100644 index 0000000000..b82a280082 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/lasterror/index.md @@ -0,0 +1,62 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un alias de {{WebExtAPIRef("runtime.lastError")}}.

+ +

Compatibilité du navoigateur

+ +

{{Compat("webextensions.api.extension.lastError")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 0c086700e6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/onrequest/index.html +++ /dev/null @@ -1,115 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

Attention : Ceci n'est pas implémenté dans Firefox car il est obsolète depuis Chrome 33. Veuillez utiliser runtime.onMessageExternal à la place.

-
- -

Lancé lorsqu'une requête est envoyée par un processus d'extension ou un script de contenu.

- -

Syntaxe

- -
chrome.extension.onRequest.addListener(function(
-  request,         // optional any
-  sender,          // runtime.MessageSender
-  function() {...} // function
-) {...})
-chrome.extension.onRequest.removeListener(listener)
-chrome.extension.onRequest.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- - - -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
request
-
any. La requête envoyée par le script appelant.
-
- -
-
sender
-
{{WebExtAPIRef('runtime.MessageSender')}}.
-
- -
-
sendResponse
-
function. 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 onRequest dans le même document, un seul peut envoyer une réponse.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extension.onRequest")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/onrequest/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/onrequest/index.md new file mode 100644 index 0000000000..0c086700e6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/onrequest/index.md @@ -0,0 +1,115 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

Attention : Ceci n'est pas implémenté dans Firefox car il est obsolète depuis Chrome 33. Veuillez utiliser runtime.onMessageExternal à la place.

+
+ +

Lancé lorsqu'une requête est envoyée par un processus d'extension ou un script de contenu.

+ +

Syntaxe

+ +
chrome.extension.onRequest.addListener(function(
+  request,         // optional any
+  sender,          // runtime.MessageSender
+  function() {...} // function
+) {...})
+chrome.extension.onRequest.removeListener(listener)
+chrome.extension.onRequest.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ + + +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
request
+
any. La requête envoyée par le script appelant.
+
+ +
+
sender
+
{{WebExtAPIRef('runtime.MessageSender')}}.
+
+ +
+
sendResponse
+
function. 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 onRequest dans le même document, un seul peut envoyer une réponse.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extension.onRequest")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2831227760..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/onrequestexternal/index.html +++ /dev/null @@ -1,114 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

Attention : Ceci n'est pas implémenté dans Firefox car il est obsolète depuis Chrome 33. Veuillez utiliser runtime.onMessageExternal à la place.

-
- -

Lancé lorsqu'une requête est envoyée depuis une autre extension.

- -

Syntaxe

- -
chrome.extension.onRequestExternal.addListener(function(
-  request,         // optional any
-  sender,          // runtime.MessageSender
-  function() {...} // function
-) {...})
-chrome.extension.onRequestExternal.removeListener(listener)
-chrome.extension.onRequestExternal.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
request
-
any. La requête envoyée par le script appelant.
-
- -
-
sender
-
{{WebExtAPIRef('runtime.MessageSender')}}.
-
- -
-
sendResponse
-
function. 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.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extension.onRequestExternal")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/onrequestexternal/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/onrequestexternal/index.md new file mode 100644 index 0000000000..2831227760 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/onrequestexternal/index.md @@ -0,0 +1,114 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

Attention : Ceci n'est pas implémenté dans Firefox car il est obsolète depuis Chrome 33. Veuillez utiliser runtime.onMessageExternal à la place.

+
+ +

Lancé lorsqu'une requête est envoyée depuis une autre extension.

+ +

Syntaxe

+ +
chrome.extension.onRequestExternal.addListener(function(
+  request,         // optional any
+  sender,          // runtime.MessageSender
+  function() {...} // function
+) {...})
+chrome.extension.onRequestExternal.removeListener(listener)
+chrome.extension.onRequestExternal.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
request
+
any. La requête envoyée par le script appelant.
+
+ +
+
sender
+
{{WebExtAPIRef('runtime.MessageSender')}}.
+
+ +
+
sendResponse
+
function. 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.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extension.onRequestExternal")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 192237b73d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/sendrequest/index.html +++ /dev/null @@ -1,93 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}{{Deprecated_Header}} -
-

Attention : Cette méthode est dépréciée. utilisez {{WebExtAPIRef("runtime.sendMessage")}} à la place.

-
-
- -

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

- -

Syntaxe

- -
chrome.extension.sendRequest(
-  extensionId,             // optional string
-  request,                 // any
-  function(response) {...} // optional function
-)
-
- -

Cette API est également disponible en tant que browser.extension.sendRequest() dans une version qui renvoie une promise.

- -

Paramètres

- -
-
extensionId{{Optional_Inline}}
-
string. L'ID d'extension de l'extension à laquelle vous souhaitez vous connecter. Si omis, la valeur par défaut est votre propre extension.
-
request
-
any.
-
responseCallback{{Optional_Inline}}
-

function. La fonction est passée les arguments suivants :

-
-
response
-
any. 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.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extension.sendRequest")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/sendrequest/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/sendrequest/index.md new file mode 100644 index 0000000000..192237b73d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/sendrequest/index.md @@ -0,0 +1,93 @@ +--- +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 +--- +
{{AddonSidebar}}{{Deprecated_Header}} +
+

Attention : Cette méthode est dépréciée. utilisez {{WebExtAPIRef("runtime.sendMessage")}} à la place.

+
+
+ +

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

+ +

Syntaxe

+ +
chrome.extension.sendRequest(
+  extensionId,             // optional string
+  request,                 // any
+  function(response) {...} // optional function
+)
+
+ +

Cette API est également disponible en tant que browser.extension.sendRequest() dans une version qui renvoie une promise.

+ +

Paramètres

+ +
+
extensionId{{Optional_Inline}}
+
string. L'ID d'extension de l'extension à laquelle vous souhaitez vous connecter. Si omis, la valeur par défaut est votre propre extension.
+
request
+
any.
+
responseCallback{{Optional_Inline}}
+

function. La fonction est passée les arguments suivants :

+
+
response
+
any. 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.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extension.sendRequest")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index da7624dbfb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/setupdateurldata/index.html +++ /dev/null @@ -1,78 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.extension.setUpdateUrlData(
-  data // string
-)
-
- -

Paramètres

- -
-
data
-
string.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extension.setUpdateUrlData")}}

- -

Exemples

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/setupdateurldata/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/setupdateurldata/index.md new file mode 100644 index 0000000000..da7624dbfb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/setupdateurldata/index.md @@ -0,0 +1,78 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.extension.setUpdateUrlData(
+  data // string
+)
+
+ +

Paramètres

+ +
+
data
+
string.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extension.setUpdateUrlData")}}

+ +

Exemples

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 71bbc2a589..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extension/viewtype/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type de vue de l'extension.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont : "tab", "popup", "sidebar".

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extension.ViewType")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extension/viewtype/index.md b/files/fr/mozilla/add-ons/webextensions/api/extension/viewtype/index.md new file mode 100644 index 0000000000..71bbc2a589 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extension/viewtype/index.md @@ -0,0 +1,66 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type de vue de l'extension.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont : "tab", "popup", "sidebar".

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extension.ViewType")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.extension. Cette documentation est dérivée de extension.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index b2833df7f7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imagedetails/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Details sur le format et la qualité de l'image.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
format{{optional_inline}}
-
{{WebExtAPIRef('extensionTypes.ImageFormat')}}. Le format du résultat de l'image. Par défaut est "png".
-
quality{{optional_inline}}
-
integer. Quand le format est "jpeg", 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  encoderOptions sur HTMLCanvasElement.toDataURL(). 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.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extensionTypes.ImageDetails")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basé sur l'API Chromium chrome.extensionTypes . Cette documentation provient de extension_types.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imagedetails/index.md b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imagedetails/index.md new file mode 100644 index 0000000000..b2833df7f7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imagedetails/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Details sur le format et la qualité de l'image.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
format{{optional_inline}}
+
{{WebExtAPIRef('extensionTypes.ImageFormat')}}. Le format du résultat de l'image. Par défaut est "png".
+
quality{{optional_inline}}
+
integer. Quand le format est "jpeg", 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  encoderOptions sur HTMLCanvasElement.toDataURL(). 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.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extensionTypes.ImageDetails")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basé sur l'API Chromium chrome.extensionTypes . Cette documentation provient de extension_types.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 865a1392a5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imageformat/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Les valeurs de ce type sont des chaînes de caractères. Les valeurs possibles sont : "jpeg", "png".

- -

Type

- -

Les valeurs de ce type sont des chaines. Les valeurs possibles sont : "jpeg", "png".

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extensionTypes.ImageFormat")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basé sur l'API Chromium chrome.extensionTypes . Cette documentation provient de extension_types.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imageformat/index.md b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imageformat/index.md new file mode 100644 index 0000000000..865a1392a5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/imageformat/index.md @@ -0,0 +1,66 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Les valeurs de ce type sont des chaînes de caractères. Les valeurs possibles sont : "jpeg", "png".

+ +

Type

+ +

Les valeurs de ce type sont des chaines. Les valeurs possibles sont : "jpeg", "png".

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extensionTypes.ImageFormat")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basé sur l'API Chromium chrome.extensionTypes . Cette documentation provient de extension_types.json dans le code de Chromium.

+ +

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.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/index.html b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/index.html deleted file mode 100644 index 9f9ed5e250..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/index.html +++ /dev/null @@ -1,76 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Certains types communs utilisés dans d'autres APIs WebExtensions.

- -

Types

- -
-
{{WebExtAPIRef("extensionTypes.ImageDetails")}}
-
Détails sur le format et la qualité de l'image.
-
{{WebExtAPIRef("extensionTypes.ImageFormat")}}
-
Le format d'une image.
-
{{WebExtAPIRef("extensionTypes.ImageDetails")}}
-
Injecte des détails dans une page
-
{{WebExtAPIRef("extensionTypes.RunAt")}}
-
Le plus tot que le Javascript ou le CSS est injecté dans l'onglet.
-
extensionTypes.CSSOrigin
-
Indique si une feuille de style CSS injectée par tabs.insertCSS doit être traitée comme une feuille de style "auteur" ou "utilisateur".
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extensionTypes")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basé sur l'API Chromium chrome.extensionTypes . Cette documentation provient de extension_types.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/index.md b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/index.md new file mode 100644 index 0000000000..9f9ed5e250 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Certains types communs utilisés dans d'autres APIs WebExtensions.

+ +

Types

+ +
+
{{WebExtAPIRef("extensionTypes.ImageDetails")}}
+
Détails sur le format et la qualité de l'image.
+
{{WebExtAPIRef("extensionTypes.ImageFormat")}}
+
Le format d'une image.
+
{{WebExtAPIRef("extensionTypes.ImageDetails")}}
+
Injecte des détails dans une page
+
{{WebExtAPIRef("extensionTypes.RunAt")}}
+
Le plus tot que le Javascript ou le CSS est injecté dans l'onglet.
+
extensionTypes.CSSOrigin
+
Indique si une feuille de style CSS injectée par tabs.insertCSS doit être traitée comme une feuille de style "auteur" ou "utilisateur".
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extensionTypes")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basé sur l'API Chromium chrome.extensionTypes . Cette documentation provient de extension_types.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 4282d1c192..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/injectdetails/index.html +++ /dev/null @@ -1,24 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Ce type est donné en tant que paramètre aux méthodes tabs.executeScript(), tabs.insertCSS(), et tabs.removeCSS() . Pour plus de détails sur ses propriétés et leur utilisation, consultez les pages de documentation de ces méthodes :

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/injectdetails/index.md b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/injectdetails/index.md new file mode 100644 index 0000000000..4282d1c192 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/injectdetails/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Ce type est donné en tant que paramètre aux méthodes tabs.executeScript(), tabs.insertCSS(), et tabs.removeCSS() . Pour plus de détails sur ses propriétés et leur utilisation, consultez les pages de documentation de ces méthodes :

+ + 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 deleted file mode 100644 index b5555c76b9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/runat/index.html +++ /dev/null @@ -1,74 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le plus tot que le Javascript ou CSS sera injecté dans l'onglet.

- -

Type

- -

Les valeurs de ce type sont des chaines. Les valeurs possibles sont : "document_start", "document_end", "document_idle".

- - - -

La valeur par défaut est "document_idle".

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.extensionTypes.RunAt")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basé sur l'API Chromium chrome.extensionTypes . Cette documentation provient de extension_types.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/runat/index.md b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/runat/index.md new file mode 100644 index 0000000000..b5555c76b9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/extensiontypes/runat/index.md @@ -0,0 +1,74 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le plus tot que le Javascript ou CSS sera injecté dans l'onglet.

+ +

Type

+ +

Les valeurs de ce type sont des chaines. Les valeurs possibles sont : "document_start", "document_end", "document_idle".

+ + + +

La valeur par défaut est "document_idle".

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.extensionTypes.RunAt")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basé sur l'API Chromium chrome.extensionTypes . Cette documentation provient de extension_types.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 5ad2c288ab..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/find/find/index.html +++ /dev/null @@ -1,290 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Recherche du texte dans un onglet.

- -

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..

- -

Vous pouvez rendre la recherche sensible à la casse et la faire correspondre uniquement à des mots entiers.

- -

Par défaut, la fonction renvoie juste le nombre de correspondances trouvées. En transmettant les options includeRangeData et  includeRectData, vous pouvez obtenir plus d'informations sur l'emplacement des correspondances dans l'onglet cible.

- -

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 find seront mis en surbrillance, jusqu'à ce que quelqu'un appelle find().

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
browser.find.find(
-  queryphrase,       // string
-  options            // optional object
-)
-
- -

Paramètres

- -
-
queryphrase
-
string. Le texte à rechercher
-
options{{optional_inline}}
-
-

object. Un objet spécifiant des options supplémentaires. Il peut prendre l'une des propriétés suivantes, toutes facultatives :

- -
-
tabId
-
integer. ID de l'onglet à rechercher. Par défaut à l'onglet actif
-
caseSensitive
-
boolean. Si true, la recherche est sensible à la casse. Par défault à  false.
-
entireWord
-
boolean. Comparaison seulement entre les mots entiers : ainsi "Tok" ne sera pas comparé dans "Tokyo". Par défaut à false.
-
includeRangeData
-
boolean. Inclure les groupes de données dans la réponse, which describe where in the page DOM the match was found. Defaults to false.
-
includeRectData
-
boolean. 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 à false.
-
-
-
- -

Valeur retournée

- -

  Une Promise qui sera remplie avec un objet contenant jusqu'à trois propriétés :

- -
-
count
-
integer. Le nombre de résultat trouvés.
-
rangeData{{optional_inline}}
-
-

array. Si includeRangeData a été donné dans le paramètre  options, cette propriété sera incluse. Il est fourni sous la forme d'un tableau d'objets RangeData, un pour chaque correspondance. Chaque objet RangeData 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.

- -

Les élements correspondent aux éléments données dans rectData, donc rangeData[i] décrit la même correspondance que  rectData[i].

- -

Chaque RangeData contient les propriétés suivantes :

- -
-
framePos
-
L'index de l'image contenant la correspondance. 0 correspond à une fenêtre parente. Notez que l'ordre des objets dans un tableau  rangeData s'alignera séquentiellement avec l'ordre des index d'images : par exemple, framePos pour la première séquence d'objets rangeData sera 0, framePos pour la séquence suivante sera 1, et ainsi de suite.
-
startTextNodePos
-
La position ordinale du noeud de texte dans lequel la correspondance a démarrée.
-
endTextNodePos
-
La position ordinale du noeud de texte dans lequel la correspondance s'est terminée.
-
startOffset
-
La position de la chaîne de caractères ordinale du début du mot correspondant dans le noeud texte de début.
-
endOffset
-
La position de la chaîne de caractères ordinale de la fin du mot trouvé dans le nœud de texte final.
-
-
-
rectData{{optional_inline}}
-
-

array. Si includeRectData a été donné dans les paramètres des options, cette propriété sera incluse. C'est un tableau d'objets RectData . 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..

- -

Chaque objet RectData contient des données rectangle pour une seule correspondance. Il a deux propriétés :

- -
-
rectsAndTexts
-
Un objet contenant deux propriétés, les deux tableaux : -
    -
  • rectList: un tableau d'objets ayant chacun quatre propriétés entières : top, left, bottom, right. Ceux-ci décrivent un rectangle par rapport à la partie supérieure gauche de la fenêtre.
  • -
  • textList:  un tableau de chaînes, correspondant au tableau  rectList. L'entrée de textList[i] contient la partie du match délimitée par le rectangle de rectList[i].
  • -
- -

Par exemple, considérons une partie d'une page Web qui ressemble à ceci :

- -

Si vous recherchez "You may", la comparaison doit être décrit par deux rectangles :

- -

Dans le cas, dans le RectData qui décrit cette correspondance, rectsAndTexts.rectList et rectsAndTexts.textList auront chacun 2 éléments.

- -
    -
  • textList[0] contiendra "You ", et rectList[0] contiendra son rectangle de délimitation.
  • -
  • textList[1] contiendra "may", et rectList[1] contiendra son rectangle de délimitation.
  • -
-
-
text
-
Le texte complet de comparaison, "You may" dans l'exemple ci-dessus.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.find.find", 10)}}

- -

Exemples

- -

Exemples basics

- -

Recherchez "banana" dans l'onglet actif, log le nombre de correspondances et mettez-les en surbrillance :

- -
function found(results) {
-  console.log(`There were: ${results.count} matches.`);
-  if (results.count > 0) {
-    browser.find.highlightResults();
-  }
-}
-
-browser.find.find("banana").then(found);
- -

Rechercher "banana" dans tous les onglets (notez que cela nécessite la  permission "tabs", car il accède à tab.url):

- -
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);
- -

Utilisation de rangeData

- -

Dans cet exemple, l'extension utilise rangeData pour obtenir le contexte dans lequel la correspondance a été trouvée. Le contexte est le  textContent 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 textContent de tous les noeuds étendus.

- -

Notez que pour des raisons de simplicité, cet exemple ne gère pas les pages contenant des cadres. Pour cela, vous devez divisez rangeData en groupes, un par frame, et executer le script dans chaque image.

- -

Le script d'arrière plan :

- -
// 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) => {
-  browser.find.find("example", {includeRangeData: true}).then(getContexts);
-});
-
- -

Le script de contenu :

- -
/**
- * 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 < range.endTextNodePos) {
-      pos++;
-      context += nodes[pos].textContent;
-    }
-    contexts.push(context);
-  }
-  return contexts;
-}
-
-browser.runtime.onMessage.addListener((message, sender, sendResponse) => {
-  sendResponse(getContexts(message.ranges));
-});
-
- -

Utiliser rectData

- -

Dans cet exemple, l'extensions utilise rectData pour comparer "redact", en ajoutant des DIVs noires au dessus de leurs rectangles de délimitation :

- -

Notez qu'il y a plusieurs façons, c'est une mauvaise façon d'atteindre les pages.

- -

Le script d'arrière-plan :

- -
// 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) => {
-  browser.find.find("banana", {includeRectData: true}).then(redact);
-});
-
- -

Le script de contenu :

- -
// 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) => {
-  redactAll(message.rects);
-});
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/find/find/index.md b/files/fr/mozilla/add-ons/webextensions/api/find/find/index.md new file mode 100644 index 0000000000..5ad2c288ab --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/find/find/index.md @@ -0,0 +1,290 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Recherche du texte dans un onglet.

+ +

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..

+ +

Vous pouvez rendre la recherche sensible à la casse et la faire correspondre uniquement à des mots entiers.

+ +

Par défaut, la fonction renvoie juste le nombre de correspondances trouvées. En transmettant les options includeRangeData et  includeRectData, vous pouvez obtenir plus d'informations sur l'emplacement des correspondances dans l'onglet cible.

+ +

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 find seront mis en surbrillance, jusqu'à ce que quelqu'un appelle find().

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
browser.find.find(
+  queryphrase,       // string
+  options            // optional object
+)
+
+ +

Paramètres

+ +
+
queryphrase
+
string. Le texte à rechercher
+
options{{optional_inline}}
+
+

object. Un objet spécifiant des options supplémentaires. Il peut prendre l'une des propriétés suivantes, toutes facultatives :

+ +
+
tabId
+
integer. ID de l'onglet à rechercher. Par défaut à l'onglet actif
+
caseSensitive
+
boolean. Si true, la recherche est sensible à la casse. Par défault à  false.
+
entireWord
+
boolean. Comparaison seulement entre les mots entiers : ainsi "Tok" ne sera pas comparé dans "Tokyo". Par défaut à false.
+
includeRangeData
+
boolean. Inclure les groupes de données dans la réponse, which describe where in the page DOM the match was found. Defaults to false.
+
includeRectData
+
boolean. 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 à false.
+
+
+
+ +

Valeur retournée

+ +

  Une Promise qui sera remplie avec un objet contenant jusqu'à trois propriétés :

+ +
+
count
+
integer. Le nombre de résultat trouvés.
+
rangeData{{optional_inline}}
+
+

array. Si includeRangeData a été donné dans le paramètre  options, cette propriété sera incluse. Il est fourni sous la forme d'un tableau d'objets RangeData, un pour chaque correspondance. Chaque objet RangeData 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.

+ +

Les élements correspondent aux éléments données dans rectData, donc rangeData[i] décrit la même correspondance que  rectData[i].

+ +

Chaque RangeData contient les propriétés suivantes :

+ +
+
framePos
+
L'index de l'image contenant la correspondance. 0 correspond à une fenêtre parente. Notez que l'ordre des objets dans un tableau  rangeData s'alignera séquentiellement avec l'ordre des index d'images : par exemple, framePos pour la première séquence d'objets rangeData sera 0, framePos pour la séquence suivante sera 1, et ainsi de suite.
+
startTextNodePos
+
La position ordinale du noeud de texte dans lequel la correspondance a démarrée.
+
endTextNodePos
+
La position ordinale du noeud de texte dans lequel la correspondance s'est terminée.
+
startOffset
+
La position de la chaîne de caractères ordinale du début du mot correspondant dans le noeud texte de début.
+
endOffset
+
La position de la chaîne de caractères ordinale de la fin du mot trouvé dans le nœud de texte final.
+
+
+
rectData{{optional_inline}}
+
+

array. Si includeRectData a été donné dans les paramètres des options, cette propriété sera incluse. C'est un tableau d'objets RectData . 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..

+ +

Chaque objet RectData contient des données rectangle pour une seule correspondance. Il a deux propriétés :

+ +
+
rectsAndTexts
+
Un objet contenant deux propriétés, les deux tableaux : +
    +
  • rectList: un tableau d'objets ayant chacun quatre propriétés entières : top, left, bottom, right. Ceux-ci décrivent un rectangle par rapport à la partie supérieure gauche de la fenêtre.
  • +
  • textList:  un tableau de chaînes, correspondant au tableau  rectList. L'entrée de textList[i] contient la partie du match délimitée par le rectangle de rectList[i].
  • +
+ +

Par exemple, considérons une partie d'une page Web qui ressemble à ceci :

+ +

Si vous recherchez "You may", la comparaison doit être décrit par deux rectangles :

+ +

Dans le cas, dans le RectData qui décrit cette correspondance, rectsAndTexts.rectList et rectsAndTexts.textList auront chacun 2 éléments.

+ +
    +
  • textList[0] contiendra "You ", et rectList[0] contiendra son rectangle de délimitation.
  • +
  • textList[1] contiendra "may", et rectList[1] contiendra son rectangle de délimitation.
  • +
+
+
text
+
Le texte complet de comparaison, "You may" dans l'exemple ci-dessus.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.find.find", 10)}}

+ +

Exemples

+ +

Exemples basics

+ +

Recherchez "banana" dans l'onglet actif, log le nombre de correspondances et mettez-les en surbrillance :

+ +
function found(results) {
+  console.log(`There were: ${results.count} matches.`);
+  if (results.count > 0) {
+    browser.find.highlightResults();
+  }
+}
+
+browser.find.find("banana").then(found);
+ +

Rechercher "banana" dans tous les onglets (notez que cela nécessite la  permission "tabs", car il accède à tab.url):

+ +
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);
+ +

Utilisation de rangeData

+ +

Dans cet exemple, l'extension utilise rangeData pour obtenir le contexte dans lequel la correspondance a été trouvée. Le contexte est le  textContent 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 textContent de tous les noeuds étendus.

+ +

Notez que pour des raisons de simplicité, cet exemple ne gère pas les pages contenant des cadres. Pour cela, vous devez divisez rangeData en groupes, un par frame, et executer le script dans chaque image.

+ +

Le script d'arrière plan :

+ +
// 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) => {
+  browser.find.find("example", {includeRangeData: true}).then(getContexts);
+});
+
+ +

Le script de contenu :

+ +
/**
+ * 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 < range.endTextNodePos) {
+      pos++;
+      context += nodes[pos].textContent;
+    }
+    contexts.push(context);
+  }
+  return contexts;
+}
+
+browser.runtime.onMessage.addListener((message, sender, sendResponse) => {
+  sendResponse(getContexts(message.ranges));
+});
+
+ +

Utiliser rectData

+ +

Dans cet exemple, l'extensions utilise rectData pour comparer "redact", en ajoutant des DIVs noires au dessus de leurs rectangles de délimitation :

+ +

Notez qu'il y a plusieurs façons, c'est une mauvaise façon d'atteindre les pages.

+ +

Le script d'arrière-plan :

+ +
// 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) => {
+  browser.find.find("banana", {includeRectData: true}).then(redact);
+});
+
+ +

Le script de contenu :

+ +
// 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) => {
+  redactAll(message.rects);
+});
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 06cd245a98..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/find/highlightresults/index.html +++ /dev/null @@ -1,51 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Souligne les résultats d'un précédent appel à {{WebExtAPIRef("find.find()")}}.

- -

Lorsqu'une extension appelle find(), les correspondances ne sont pas automatiquement mises en surbrillance, mais elles sont stockées par le navigateur. Appelez highlightResults() pour les mettre en surbrillance.

- -

Notez que les résultats stockés sont globaux pour toutes les extensions, par exemple, si l'extension appelle find("apple"), alors si l'extensions B appelle find("banana"), alors si l'extensions A appelle  highlightResults(), le résultat pour "banana" sera mis en évidence.

- -

Syntaxe

- -
browser.find.highlightResults()
-
- -

Paramètres

- -

Aucun.

- -

Valeur retournée

- -

Aucune.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.find.highlightResults", 10)}}

- -

Exemples

- -

Recherchez "banana" dans l'onglet actif, notez le nombre de correspondances et mettez-les en surbrillance :

- -
function found(results) {
-  console.log(`There were: ${results.count} matches.`);
-  if (results.count > 0) {
-    browser.find.highlightResults();
-  }
-}
-
-browser.find.find("banana").then(found);
diff --git a/files/fr/mozilla/add-ons/webextensions/api/find/highlightresults/index.md b/files/fr/mozilla/add-ons/webextensions/api/find/highlightresults/index.md new file mode 100644 index 0000000000..06cd245a98 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/find/highlightresults/index.md @@ -0,0 +1,51 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Souligne les résultats d'un précédent appel à {{WebExtAPIRef("find.find()")}}.

+ +

Lorsqu'une extension appelle find(), les correspondances ne sont pas automatiquement mises en surbrillance, mais elles sont stockées par le navigateur. Appelez highlightResults() pour les mettre en surbrillance.

+ +

Notez que les résultats stockés sont globaux pour toutes les extensions, par exemple, si l'extension appelle find("apple"), alors si l'extensions B appelle find("banana"), alors si l'extensions A appelle  highlightResults(), le résultat pour "banana" sera mis en évidence.

+ +

Syntaxe

+ +
browser.find.highlightResults()
+
+ +

Paramètres

+ +

Aucun.

+ +

Valeur retournée

+ +

Aucune.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.find.highlightResults", 10)}}

+ +

Exemples

+ +

Recherchez "banana" dans l'onglet actif, notez le nombre de correspondances et mettez-les en surbrillance :

+ +
function found(results) {
+  console.log(`There were: ${results.count} matches.`);
+  if (results.count > 0) {
+    browser.find.highlightResults();
+  }
+}
+
+browser.find.find("banana").then(found);
diff --git a/files/fr/mozilla/add-ons/webextensions/api/find/index.html b/files/fr/mozilla/add-ons/webextensions/api/find/index.html deleted file mode 100644 index ac20ee5539..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/find/index.html +++ /dev/null @@ -1,32 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Trouve un texte dans une page web, et met en évidence les correspondances.

- -

Pour utiliser cette API, vous devez disposez de la permission "find".

- -

Fonctions

- -
-
{{WebExtAPIRef("find.find()")}}
-
Trouver du texte dans une page web.
-
{{WebExtAPIRef("find.highlightResults()")}}
-
Mettez en surbrillance le dernier jeu de correspondance trouvé.
-
{{WebExtAPIRef("find.removeHighlighting()")}}
-
Supprimez toute mise en évidence.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.find", 1, 1)}} {{WebExtExamples("h2")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/find/index.md b/files/fr/mozilla/add-ons/webextensions/api/find/index.md new file mode 100644 index 0000000000..ac20ee5539 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/find/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Trouve un texte dans une page web, et met en évidence les correspondances.

+ +

Pour utiliser cette API, vous devez disposez de la permission "find".

+ +

Fonctions

+ +
+
{{WebExtAPIRef("find.find()")}}
+
Trouver du texte dans une page web.
+
{{WebExtAPIRef("find.highlightResults()")}}
+
Mettez en surbrillance le dernier jeu de correspondance trouvé.
+
{{WebExtAPIRef("find.removeHighlighting()")}}
+
Supprimez toute mise en évidence.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.find", 1, 1)}} {{WebExtExamples("h2")}}

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 deleted file mode 100644 index 0f914d6550..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/find/removehighlighting/index.html +++ /dev/null @@ -1,39 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.find.removeHighlighting()
-
- -

Paramètres

- -

Aucun

- -

Valeur retournée

- -

Aucune.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.find.removeHighlighting", 10)}}

- -

Exemples

- -
browser.find.removeHighlighting();
-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/find/removehighlighting/index.md b/files/fr/mozilla/add-ons/webextensions/api/find/removehighlighting/index.md new file mode 100644 index 0000000000..0f914d6550 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/find/removehighlighting/index.md @@ -0,0 +1,39 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.find.removeHighlighting()
+
+ +

Paramètres

+ +

Aucun

+ +

Valeur retournée

+ +

Aucune.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.find.removeHighlighting", 10)}}

+ +

Exemples

+ +
browser.find.removeHighlighting();
+
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 deleted file mode 100644 index 089ce53843..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/addurl/index.html +++ /dev/null @@ -1,147 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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".

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var addingUrl = browser.history.addUrl(
-  details         // object
-)
-
- -

Paramètres

- -
-
details
-

object. Objet contenant l'URL à ajouter.

-
-
url
-
string. L'URL à ajouter.
-
title{{optional_inline}}
-
string: Le titre de la page. Si ce n'est pas fourni, le titre sera enregistré comme null.
-
transition{{optional_inline}}
-
{{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é.
-
visitTime{{optional_inline}}
-
number ou string ou object. Cela peut être représenté par: un objet Date, une  chaîne de date ISO 8601, 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.
-
-
-
- -

Valeur retournée

- -

Une Promise sera rempli sans paramètres lorsque l'élément a été ajouté.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history.addUrl")}}

- -

Exemples

- -

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 :

- -
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);
- -

Ajouter un enregistrement d'une visite à "https://example.org", mais lui donner une visitTime de 24 heures dans le passé, et une transition  "typed":

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/addurl/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/addurl/index.md new file mode 100644 index 0000000000..089ce53843 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/addurl/index.md @@ -0,0 +1,147 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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".

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var addingUrl = browser.history.addUrl(
+  details         // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Objet contenant l'URL à ajouter.

+
+
url
+
string. L'URL à ajouter.
+
title{{optional_inline}}
+
string: Le titre de la page. Si ce n'est pas fourni, le titre sera enregistré comme null.
+
transition{{optional_inline}}
+
{{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é.
+
visitTime{{optional_inline}}
+
number ou string ou object. Cela peut être représenté par: un objet Date, une  chaîne de date ISO 8601, 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.
+
+
+
+ +

Valeur retournée

+ +

Une Promise sera rempli sans paramètres lorsque l'élément a été ajouté.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history.addUrl")}}

+ +

Exemples

+ +

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 :

+ +
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);
+ +

Ajouter un enregistrement d'une visite à "https://example.org", mais lui donner une visitTime de 24 heures dans le passé, et une transition  "typed":

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 924eb064e1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/deleteall/index.html +++ /dev/null @@ -1,94 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Supprime toutes les visites de l'historique du navigateur.

- -

Cette fonction déclenche {{WebExtAPIRef("history.onVisitRemoved")}} une seule fois, avec  allHistory défini sur true et un argument urls vide.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var deletingAll = browser.history.deleteAll()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise sera remplie sans paramètre lorsque tout l'historique a été supprimé.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history.deleteAll")}}

- -

Exemples

- -

Supprimer tout l'historique lorsque l'utilisateur clique sur une action du navigateur :

- -
function onDeleteAll() {
-  console.log("Deleted all history");
-}
-
-function deleteAllHistory() {
-  var deletingAll = browser.history.deleteAll();
-  deletingAll.then(onDeleteAll);
-}
-
-deleteAllHistory();
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/deleteall/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/deleteall/index.md new file mode 100644 index 0000000000..924eb064e1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/deleteall/index.md @@ -0,0 +1,94 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Supprime toutes les visites de l'historique du navigateur.

+ +

Cette fonction déclenche {{WebExtAPIRef("history.onVisitRemoved")}} une seule fois, avec  allHistory défini sur true et un argument urls vide.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var deletingAll = browser.history.deleteAll()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise sera remplie sans paramètre lorsque tout l'historique a été supprimé.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history.deleteAll")}}

+ +

Exemples

+ +

Supprimer tout l'historique lorsque l'utilisateur clique sur une action du navigateur :

+ +
function onDeleteAll() {
+  console.log("Deleted all history");
+}
+
+function deleteAllHistory() {
+  var deletingAll = browser.history.deleteAll();
+  deletingAll.then(onDeleteAll);
+}
+
+deleteAllHistory();
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 732978f38f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/deleterange/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var deletingRange = browser.history.deleteRange(
-  range           // object
-)
-
- -

Paramètres

- -
-
range
-

object. Spécification de la plage de temps pour laquelle supprimer des visites.

-
-
startTime
-
number ou string ou object. Une valeur indiquant une date et une heure. Cela peut être représenté par: un objet Date, une chaîne de de date ISO 8601, ou le nombre de millisecondes depuis l'époque. Spécifie l'heure de début de la plage.
-
endTime
-
number ou string ou object. Une valeur indiquant une date et une heure. Cela peut être représenté par: un objet Date, une chaîne de date ISO 8601, ou le nombre de millisecondes depuis l'époque. Spécifie l'heure de fin de la plage.
-
-
-
- -

Valeur retournée

- -

Une Promise sera remplie sans paramètre lorsque la plage a été supprimée.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history.deleteRange")}}

- -

Exemples

- -

Supprimer toutes les visites effectuées à la dernière minute :

- -
const MINUTE = 60 * 1000;
-
-function oneMinuteAgo() {
-  return Date.now() - MINUTE;
-}
-
-browser.history.deleteRange({
-  startTime: oneMinuteAgo(),
-  endTime: Date.now()
-});
- -

{{WebExtExamples}}

- -

Note :

- -

This API is based on Chromium's chrome.history API. This documentation is derived from history.json in the Chromium code.

- -

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/deleterange/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/deleterange/index.md new file mode 100644 index 0000000000..732978f38f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/deleterange/index.md @@ -0,0 +1,104 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var deletingRange = browser.history.deleteRange(
+  range           // object
+)
+
+ +

Paramètres

+ +
+
range
+

object. Spécification de la plage de temps pour laquelle supprimer des visites.

+
+
startTime
+
number ou string ou object. Une valeur indiquant une date et une heure. Cela peut être représenté par: un objet Date, une chaîne de de date ISO 8601, ou le nombre de millisecondes depuis l'époque. Spécifie l'heure de début de la plage.
+
endTime
+
number ou string ou object. Une valeur indiquant une date et une heure. Cela peut être représenté par: un objet Date, une chaîne de date ISO 8601, ou le nombre de millisecondes depuis l'époque. Spécifie l'heure de fin de la plage.
+
+
+
+ +

Valeur retournée

+ +

Une Promise sera remplie sans paramètre lorsque la plage a été supprimée.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history.deleteRange")}}

+ +

Exemples

+ +

Supprimer toutes les visites effectuées à la dernière minute :

+ +
const MINUTE = 60 * 1000;
+
+function oneMinuteAgo() {
+  return Date.now() - MINUTE;
+}
+
+browser.history.deleteRange({
+  startTime: oneMinuteAgo(),
+  endTime: Date.now()
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

This API is based on Chromium's chrome.history API. This documentation is derived from history.json in the Chromium code.

+ +

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.

+
+ + 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 deleted file mode 100644 index 18259c9485..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/deleteurl/index.html +++ /dev/null @@ -1,139 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Supprime toutes les visites à l'URL donnée de l'historique du navigateur.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var deletingUrl = browser.history.deleteUrl(
-  details         // object
-)
-
- -

Paramètres

- -
-
details
-

object. Objet contenant l'URL dont les visites doivent être supprimées.

-
-
url
-
string. L'URL dont les visites doivent être supprimées.
-
-
-
- -

Valeur retournée

- -

Une Promise sera remplie sans paramètres lorsque les visites auront été supprimées.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history.deleteUrl")}}

- -

Exemples

- -

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()")}}:

- -
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);
- -

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 :

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/deleteurl/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/deleteurl/index.md new file mode 100644 index 0000000000..18259c9485 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/deleteurl/index.md @@ -0,0 +1,139 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Supprime toutes les visites à l'URL donnée de l'historique du navigateur.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var deletingUrl = browser.history.deleteUrl(
+  details         // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Objet contenant l'URL dont les visites doivent être supprimées.

+
+
url
+
string. L'URL dont les visites doivent être supprimées.
+
+
+
+ +

Valeur retournée

+ +

Une Promise sera remplie sans paramètres lorsque les visites auront été supprimées.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history.deleteUrl")}}

+ +

Exemples

+ +

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()")}}:

+ +
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);
+ +

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 :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index c33457b87d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/getvisits/index.html +++ /dev/null @@ -1,116 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Récupère des informations sur toutes les visites de l'URL donnée.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getting = browser.history.getVisits(
-  details                // object
-)
-
- -

Paramètres

- -
-
details
-

object.

-
-
url
-
string. L'URL pour laquelle récupérer les informations de visite.
-
-
-
- -

valeur retournée

- -

Une Promise sera remplie avec un tableau d'objets {{WebExtAPIRef('history.VisitItem')}} représentant chacun une visite à l'URL donnée. Les visites sont triées dans l'ordre chronologique inverse.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history.getVisits")}}

- -

Exemples

- -

Liste toutes les visites de la page la plus récemment visitée :

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/getvisits/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/getvisits/index.md new file mode 100644 index 0000000000..c33457b87d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/getvisits/index.md @@ -0,0 +1,116 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Récupère des informations sur toutes les visites de l'URL donnée.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getting = browser.history.getVisits(
+  details                // object
+)
+
+ +

Paramètres

+ +
+
details
+

object.

+
+
url
+
string. L'URL pour laquelle récupérer les informations de visite.
+
+
+
+ +

valeur retournée

+ +

Une Promise sera remplie avec un tableau d'objets {{WebExtAPIRef('history.VisitItem')}} représentant chacun une visite à l'URL donnée. Les visites sont triées dans l'ordre chronologique inverse.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history.getVisits")}}

+ +

Exemples

+ +

Liste toutes les visites de la page la plus récemment visitée :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 0e9da92609..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/historyitem/index.html +++ /dev/null @@ -1,81 +0,0 @@ ---- -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 ---- -

{{AddonSidebar()}}

- -

Un objet HistoryItem fournit des informations sur une page dans l'historique du navigateur.

- -

Type

- -

C'est un objet avec les propriétés suivantes :

- -
-
id
-
string. Identifiant unique pour l'article.
-
url {{optional_inline}}
-
string. L'URL de la page.
-
title {{optional_inline}}
-
string. Le titre de la page.
-
lastVisitTime {{optional_inline}}
-
number. Date et heure du dernier chargement de la page, représentée en millisecondes depuis l'époque.
-
visitCount {{optional_inline}}
-
number. Le nombre de fois que l'utilisateur a visité la page.
-
typedCount {{optional_inline}}
-
number. Le nombre de fois que l'utilisateur a navigué sur cette page en tapant l'adresse.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history.HistoryItem")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/historyitem/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/historyitem/index.md new file mode 100644 index 0000000000..0e9da92609 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/historyitem/index.md @@ -0,0 +1,81 @@ +--- +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 +--- +

{{AddonSidebar()}}

+ +

Un objet HistoryItem fournit des informations sur une page dans l'historique du navigateur.

+ +

Type

+ +

C'est un objet avec les propriétés suivantes :

+ +
+
id
+
string. Identifiant unique pour l'article.
+
url {{optional_inline}}
+
string. L'URL de la page.
+
title {{optional_inline}}
+
string. Le titre de la page.
+
lastVisitTime {{optional_inline}}
+
number. Date et heure du dernier chargement de la page, représentée en millisecondes depuis l'époque.
+
visitCount {{optional_inline}}
+
number. Le nombre de fois que l'utilisateur a visité la page.
+
typedCount {{optional_inline}}
+
number. Le nombre de fois que l'utilisateur a navigué sur cette page en tapant l'adresse.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history.HistoryItem")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/index.html b/files/fr/mozilla/add-ons/webextensions/api/history/index.html deleted file mode 100644 index ff8c4ff2eb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/index.html +++ /dev/null @@ -1,132 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Utilisez l'API historique pour interargir avec l'historique du navigateur.

- -

Si vous recherchez des informations sur l'historique de session du navigateur, consultez l'interface historique.

- -
-

Note : Les téléchargements sont traités comme des objets HistoryItem. Par conséquent, des événements tels que history.onVisited seront également déclenchés pour les téléchargements.

-
- -

L'historique du navigateur est un enregistrement chronologique des pages que l'utilisateur a visitées. l'API d'historique vous permet de :

- - - -

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 :

- - - -

Pour utiliser cette API, une extension doit demander la permission "history" dans le fichier  manifest.json.

- -

Types

- -
-
{{WebExtAPIRef("history.TransitionType")}}
-
Décrit comment le navigateur a navigué vers une page particulière.
-
{{WebExtAPIRef("history.HistoryItem")}}
-
-

Fournit des informations sur une page particulière dans l'historique du navigateur.

-
-
{{WebExtAPIRef("history.VisitItem")}}
-
-

Décrit une seule visite sur une page.

-
-
- -

Fonctions

- -
-
{{WebExtAPIRef("history.search()")}}
-
Recherche dans l'historique du navigateur les objets history.HistoryItem correspondant aux critères donnés.
-
{{WebExtAPIRef("history.getVisits()")}}
-
Récupère des informations sur les visites sur une page donnée.
-
{{WebExtAPIRef("history.addUrl()")}}
-
Ajoute un enregistrement à l'historique du navigateur d'une visite sur la page donnée.
-
{{WebExtAPIRef("history.deleteUrl()")}}
-
Supprime toutes les visites à l'URL donnée de l'historique du navigateur.
-
{{WebExtAPIRef("history.deleteRange()")}}
-
Supprime toutes les visites aux pages que l'utilisateur a effectuées pendant la période donnée.
-
{{WebExtAPIRef("history.deleteAll()")}}
-
Supprime toutes les visites de l'historique du navigateur.
-
- -

Evénements

- -
-
{{WebExtAPIRef("history.onTitleChanged")}}
-
-
Lancé lorsque le titre d'une page visitée par l'utilisateur est enregistré.
-
-
{{WebExtAPIRef("history.onVisited")}}
-
Lancé chaque fois que l'utilisateur visite une page, en fournissant les données {{WebExtAPIRef("history.HistoryItem")}} pour cette page.
-
{{WebExtAPIRef("history.onVisitRemoved")}}
-
-

Lancé lorsqu'une URL est complètement supprimée de l'historique du navigateur.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/index.md new file mode 100644 index 0000000000..ff8c4ff2eb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/index.md @@ -0,0 +1,132 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

Utilisez l'API historique pour interargir avec l'historique du navigateur.

+ +

Si vous recherchez des informations sur l'historique de session du navigateur, consultez l'interface historique.

+ +
+

Note : Les téléchargements sont traités comme des objets HistoryItem. Par conséquent, des événements tels que history.onVisited seront également déclenchés pour les téléchargements.

+
+ +

L'historique du navigateur est un enregistrement chronologique des pages que l'utilisateur a visitées. l'API d'historique vous permet de :

+ + + +

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 :

+ + + +

Pour utiliser cette API, une extension doit demander la permission "history" dans le fichier  manifest.json.

+ +

Types

+ +
+
{{WebExtAPIRef("history.TransitionType")}}
+
Décrit comment le navigateur a navigué vers une page particulière.
+
{{WebExtAPIRef("history.HistoryItem")}}
+
+

Fournit des informations sur une page particulière dans l'historique du navigateur.

+
+
{{WebExtAPIRef("history.VisitItem")}}
+
+

Décrit une seule visite sur une page.

+
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("history.search()")}}
+
Recherche dans l'historique du navigateur les objets history.HistoryItem correspondant aux critères donnés.
+
{{WebExtAPIRef("history.getVisits()")}}
+
Récupère des informations sur les visites sur une page donnée.
+
{{WebExtAPIRef("history.addUrl()")}}
+
Ajoute un enregistrement à l'historique du navigateur d'une visite sur la page donnée.
+
{{WebExtAPIRef("history.deleteUrl()")}}
+
Supprime toutes les visites à l'URL donnée de l'historique du navigateur.
+
{{WebExtAPIRef("history.deleteRange()")}}
+
Supprime toutes les visites aux pages que l'utilisateur a effectuées pendant la période donnée.
+
{{WebExtAPIRef("history.deleteAll()")}}
+
Supprime toutes les visites de l'historique du navigateur.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("history.onTitleChanged")}}
+
+
Lancé lorsque le titre d'une page visitée par l'utilisateur est enregistré.
+
+
{{WebExtAPIRef("history.onVisited")}}
+
Lancé chaque fois que l'utilisateur visite une page, en fournissant les données {{WebExtAPIRef("history.HistoryItem")}} pour cette page.
+
{{WebExtAPIRef("history.onVisitRemoved")}}
+
+

Lancé lorsqu'une URL est complètement supprimée de l'historique du navigateur.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index aa3124d95e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/ontitlechanged/index.html +++ /dev/null @@ -1,115 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Lancé lorsque le titre d'une page visitée par l'utilisateur est enregistré.
- -
- -
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ù history.onVisited est envoyé.
- -
- -
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 history.onTitleChanged.
- -

Syntaxe

- -
browser.history.onTitleChanged.addListener(listener)
-browser.history.onTitleChanged.removeListener(listener)
-browser.history.onTitleChanged.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener argument est l'écouteur à supprimer
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Function that will be called when this event occurs. The function will be passed an object with the following properties:

- -
-
url
-
String. URL of the page visited.
-
title
-
String. Title of the page visited.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history.onTitleChanged")}}

- -

Exemples

- -

Écoutez les événements de changement de titre et consignez l'URL et le titre des pages visitées

- -
function handleTitleChanged(item) {
-  console.log(item.title);
-  console.log(item.url);
-}
-
-browser.history.onTitleChanged.addListener(handleTitleChanged);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/ontitlechanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/ontitlechanged/index.md new file mode 100644 index 0000000000..aa3124d95e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/ontitlechanged/index.md @@ -0,0 +1,115 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Lancé lorsque le titre d'une page visitée par l'utilisateur est enregistré.
+ +
+ +
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ù history.onVisited est envoyé.
+ +
+ +
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 history.onTitleChanged.
+ +

Syntaxe

+ +
browser.history.onTitleChanged.addListener(listener)
+browser.history.onTitleChanged.removeListener(listener)
+browser.history.onTitleChanged.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener argument est l'écouteur à supprimer
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Function that will be called when this event occurs. The function will be passed an object with the following properties:

+ +
+
url
+
String. URL of the page visited.
+
title
+
String. Title of the page visited.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history.onTitleChanged")}}

+ +

Exemples

+ +

Écoutez les événements de changement de titre et consignez l'URL et le titre des pages visitées

+ +
function handleTitleChanged(item) {
+  console.log(item.title);
+  console.log(item.url);
+}
+
+browser.history.onTitleChanged.addListener(handleTitleChanged);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 20a507a95d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/onvisited/index.html +++ /dev/null @@ -1,111 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.history.onVisited.addListener(listener)
-browser.history.onVisited.removeListener(listener)
-browser.history.onVisited.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
result
-
-

{{WebExtAPIRef('history.HistoryItem')}}. Un objet représentant l'élément dans l'historique du navigateur.

- -

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 HistoryItem.title contiendra l'ancien titre de la page. Si le navigateur n'a pas d'enregistrement de l'ancien titre de la page, alors HistoryItem.title sera vide. Pour obtenir les titres des pages dès qu'ils sont connus, écoutez  {{WebExtAPIRef("history.onTitleChanged")}}.

-
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history.onVisited")}}

- -

Exemples

- -

Écoutez les visites et consignez l'URL et l'heure de visite.

- -
function onVisited(historyItem) {
-  console.log(historyItem.url);
-  console.log(new Date(historyItem.lastVisitTime));
-}
-
-browser.history.onVisited.addListener(onVisited);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/onvisited/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/onvisited/index.md new file mode 100644 index 0000000000..20a507a95d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/onvisited/index.md @@ -0,0 +1,111 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.history.onVisited.addListener(listener)
+browser.history.onVisited.removeListener(listener)
+browser.history.onVisited.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
result
+
+

{{WebExtAPIRef('history.HistoryItem')}}. Un objet représentant l'élément dans l'historique du navigateur.

+ +

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 HistoryItem.title contiendra l'ancien titre de la page. Si le navigateur n'a pas d'enregistrement de l'ancien titre de la page, alors HistoryItem.title sera vide. Pour obtenir les titres des pages dès qu'ils sont connus, écoutez  {{WebExtAPIRef("history.onTitleChanged")}}.

+
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history.onVisited")}}

+ +

Exemples

+ +

Écoutez les visites et consignez l'URL et l'heure de visite.

+ +
function onVisited(historyItem) {
+  console.log(historyItem.url);
+  console.log(new Date(historyItem.lastVisitTime));
+}
+
+browser.history.onVisited.addListener(onVisited);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 57e2a4a063..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/onvisitremoved/index.html +++ /dev/null @@ -1,117 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'une page est complètement supprimée de l'historique du navigateur.

- - - -

Syntaxe

- -
browser.history.onVisitRemoved.addListener(listener)
-browser.history.onVisitRemoved.removeListener(listener)
-browser.history.onVisitRemoved.hasListener(listener)
-
- -

Les événements ont trois fonctions:

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction sera passée l'argument suivant :

-
-
removed
-

object. Détails de l'enlèvement. C'est un objet contenant deux propriétés: un booléen allHistory et un tableau urls.

-
    -
  • Si cet événement se déclenche parce qu'il est clair, allHistory sera true et urls sera un tableau vide.
  • -
  • Dans le cas contraire,  allHistory sera false et urls contiendront un qui est l'URL de la page supprimée.
  • -
-
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history.onVisitRemoved")}}

- -

Exemples

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/onvisitremoved/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/onvisitremoved/index.md new file mode 100644 index 0000000000..57e2a4a063 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/onvisitremoved/index.md @@ -0,0 +1,117 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'une page est complètement supprimée de l'historique du navigateur.

+ + + +

Syntaxe

+ +
browser.history.onVisitRemoved.addListener(listener)
+browser.history.onVisitRemoved.removeListener(listener)
+browser.history.onVisitRemoved.hasListener(listener)
+
+ +

Les événements ont trois fonctions:

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction sera passée l'argument suivant :

+
+
removed
+

object. Détails de l'enlèvement. C'est un objet contenant deux propriétés: un booléen allHistory et un tableau urls.

+
    +
  • Si cet événement se déclenche parce qu'il est clair, allHistory sera true et urls sera un tableau vide.
  • +
  • Dans le cas contraire,  allHistory sera false et urls contiendront un qui est l'URL de la page supprimée.
  • +
+
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history.onVisitRemoved")}}

+ +

Exemples

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 9538c36511..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/search/index.html +++ /dev/null @@ -1,150 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Recherche dans l'historique du navigateur les objets {{WebExtAPIRef("history.HistoryItem")}} correspondant aux critères donnés.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var searching = browser.history.search(
-  query                  // object
-)
-
- -

Paramètres

- -
-
query
-

Un objet qui indique ce qu'il faut rechercher dans l'historique du navigateur. Cet objet a les champs suivants :

-
-
text
-

string. 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.

-

Par exemple, considérez cet article :

-

URL: "http://example.org"

-

Title: "Example Domain"

-
"http"              -> matches
-"domain"            -> matches
-"MAIN ample"        -> matches
-"main tt"           -> matches
-"main https"        -> does not match
-

Spécifiez une chaîne vide ("") pour récupérer tous les objets {{WebExtAPIRef("history.HistoryItem")}} qui répondent à tous les autres critères.

-
startTime {{optional_inline}}
-
number ou string ou object. Une valeur indiquant une date et une heure. Cela peut être représenté par :  un objet Date, une chaîne de date ISO 8601, ou le nombre de millisecondes depuis l'époque. Si elle est fournie, cette option exclut les résultats dont lastVisitTime est antérieure à cette heure. Si elle est omise, la recherche est limitée aux dernières 24 heures.
-
endTime {{optional_inline}}
-
number ou string ou object. Une valeur indiquant une date et une heure. Cela peut être représenté par : un objet Date, une chaîne de date ISO 8601, ou le nombre de millisecondes depuis l'époque. Si elle est fournie, cette option exclut les résultats dont lastVisitTime est postérieur à cette fois. Si elle est omise, toutes les entrées sont prises en compte à partir de l'heure de début.
-
maxResults {{optional_inline}}
-
number. 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 maxResults inférieure à 1.
-
-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

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 :

- -
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);
- -

Logs the URL and last visit time for all history items ever visited:

- -
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);
- -

Consigne l'URL et la dernière visite de la dernière visite sur une page contenant la chaîne "mozilla" :

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history.search")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/search/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/search/index.md new file mode 100644 index 0000000000..9538c36511 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/search/index.md @@ -0,0 +1,150 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Recherche dans l'historique du navigateur les objets {{WebExtAPIRef("history.HistoryItem")}} correspondant aux critères donnés.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var searching = browser.history.search(
+  query                  // object
+)
+
+ +

Paramètres

+ +
+
query
+

Un objet qui indique ce qu'il faut rechercher dans l'historique du navigateur. Cet objet a les champs suivants :

+
+
text
+

string. 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.

+

Par exemple, considérez cet article :

+

URL: "http://example.org"

+

Title: "Example Domain"

+
"http"              -> matches
+"domain"            -> matches
+"MAIN ample"        -> matches
+"main tt"           -> matches
+"main https"        -> does not match
+

Spécifiez une chaîne vide ("") pour récupérer tous les objets {{WebExtAPIRef("history.HistoryItem")}} qui répondent à tous les autres critères.

+
startTime {{optional_inline}}
+
number ou string ou object. Une valeur indiquant une date et une heure. Cela peut être représenté par :  un objet Date, une chaîne de date ISO 8601, ou le nombre de millisecondes depuis l'époque. Si elle est fournie, cette option exclut les résultats dont lastVisitTime est antérieure à cette heure. Si elle est omise, la recherche est limitée aux dernières 24 heures.
+
endTime {{optional_inline}}
+
number ou string ou object. Une valeur indiquant une date et une heure. Cela peut être représenté par : un objet Date, une chaîne de date ISO 8601, ou le nombre de millisecondes depuis l'époque. Si elle est fournie, cette option exclut les résultats dont lastVisitTime est postérieur à cette fois. Si elle est omise, toutes les entrées sont prises en compte à partir de l'heure de début.
+
maxResults {{optional_inline}}
+
number. 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 maxResults inférieure à 1.
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

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 :

+ +
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);
+ +

Logs the URL and last visit time for all history items ever visited:

+ +
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);
+ +

Consigne l'URL et la dernière visite de la dernière visite sur une page contenant la chaîne "mozilla" :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history.search")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index c64743e6f1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/transitiontype/index.html +++ /dev/null @@ -1,91 +0,0 @@ ---- -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 ---- -

{{AddonSidebar()}}

- -

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

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- -
-
"link"
-
L'utilisateur a cliqué sur un lien dans une autre page.
-
"typed"
-
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é".
-
"auto_bookmark"
-
L'utilisateur a cliqué sur un signet ou un élément dans l'historique du navigateur.
-
"auto_subframe"
-
Les iframes imbriqués qui sont automatiquement chargés par leur parent.
-
"manual_subframe"
-
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.
-
"generated"
-
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.
-
"auto_toplevel"
-
La page a été passée à la ligne de commande ou est la page de démarrage.
-
"form_submit"
-
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.
-
"reload"
-
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.
-
"keyword"
-
L'URL a été générée à l'aide d'une recherche par mot clé configuré par l'utilisateur.
-
"keyword_generated"
-
Correspond à une visite générée pour un mot clé.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history.TransitionType")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/transitiontype/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/transitiontype/index.md new file mode 100644 index 0000000000..c64743e6f1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/transitiontype/index.md @@ -0,0 +1,91 @@ +--- +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 +--- +

{{AddonSidebar()}}

+ +

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

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ +
+
"link"
+
L'utilisateur a cliqué sur un lien dans une autre page.
+
"typed"
+
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é".
+
"auto_bookmark"
+
L'utilisateur a cliqué sur un signet ou un élément dans l'historique du navigateur.
+
"auto_subframe"
+
Les iframes imbriqués qui sont automatiquement chargés par leur parent.
+
"manual_subframe"
+
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.
+
"generated"
+
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.
+
"auto_toplevel"
+
La page a été passée à la ligne de commande ou est la page de démarrage.
+
"form_submit"
+
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.
+
"reload"
+
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.
+
"keyword"
+
L'URL a été générée à l'aide d'une recherche par mot clé configuré par l'utilisateur.
+
"keyword_generated"
+
Correspond à une visite générée pour un mot clé.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history.TransitionType")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 5a0b34fdd2..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/history/visititem/index.html +++ /dev/null @@ -1,79 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet décrivant une seule visite sur une page.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
id
-
string. L'identifiant unique du {{WebExtAPIRef("history.HistoryItem")}} associé à cette visite.
-
visitId
-
string. L'identifiant unique pour cette visite.
-
visitTime{{optional_inline}}
-
number. Lorsque cette visite s'est produite, représentée en millisecondes depuis l'époque.
-
referringVisitId
-
string. L'ID de visite du référent.
-
transition
-
{{WebExtAPIRef('history.TransitionType')}}. Décrit comment le navigateur a navigué vers la page à cette occasion.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.history.VisitItem")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/history/visititem/index.md b/files/fr/mozilla/add-ons/webextensions/api/history/visititem/index.md new file mode 100644 index 0000000000..5a0b34fdd2 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/history/visititem/index.md @@ -0,0 +1,79 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet décrivant une seule visite sur une page.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
id
+
string. L'identifiant unique du {{WebExtAPIRef("history.HistoryItem")}} associé à cette visite.
+
visitId
+
string. L'identifiant unique pour cette visite.
+
visitTime{{optional_inline}}
+
number. Lorsque cette visite s'est produite, représentée en millisecondes depuis l'époque.
+
referringVisitId
+
string. L'ID de visite du référent.
+
transition
+
{{WebExtAPIRef('history.TransitionType')}}. Décrit comment le navigateur a navigué vers la page à cette occasion.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.history.VisitItem")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.history. Cette documentation est dérivée de history.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 3d0ab33444..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/i18n/detectlanguage/index.html +++ /dev/null @@ -1,112 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Détecte la langue du texte fourni à l'aide du détecteur de langue compact (CLD).

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var detectingLanguages = browser.i18n.detectLanguage(
-  text                  // string
-)
-
- -

Paramètres

- -
-
text
-
string. Chaîne d'entrée de l'utilisateur à traduire.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un objet résultat. L'objet résultat a deux propriétés :

- -
-
isReliable
-
boolean. Si la langue a été détectée de manière fiable.
-
languages
-

array d'objets, dont chacun a deux propriétés:

-
-
language
-
{{WebExtAPIRef('i18n.LanguageCode')}}. La langue détectée.
-
percentage
-
integer. Le pourcentage de la chaîne d'entrée qui était dans la langue détectée.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.i18n.detectLanguage")}}

- -

Exemples

- -
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);
-
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.i18n. Cette documentation est dérivée de i18n.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/detectlanguage/index.md b/files/fr/mozilla/add-ons/webextensions/api/i18n/detectlanguage/index.md new file mode 100644 index 0000000000..3d0ab33444 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/detectlanguage/index.md @@ -0,0 +1,112 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Détecte la langue du texte fourni à l'aide du détecteur de langue compact (CLD).

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var detectingLanguages = browser.i18n.detectLanguage(
+  text                  // string
+)
+
+ +

Paramètres

+ +
+
text
+
string. Chaîne d'entrée de l'utilisateur à traduire.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un objet résultat. L'objet résultat a deux propriétés :

+ +
+
isReliable
+
boolean. Si la langue a été détectée de manière fiable.
+
languages
+

array d'objets, dont chacun a deux propriétés:

+
+
language
+
{{WebExtAPIRef('i18n.LanguageCode')}}. La langue détectée.
+
percentage
+
integer. Le pourcentage de la chaîne d'entrée qui était dans la langue détectée.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.i18n.detectLanguage")}}

+ +

Exemples

+ +
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);
+
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.i18n. Cette documentation est dérivée de i18n.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index ff37745f2c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/i18n/getacceptlanguages/index.html +++ /dev/null @@ -1,90 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient les accept-languages 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')}}.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingAcceptLanguages = browser.i18n.getAcceptLanguages()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui sera remplie avec un array d'objets {{WebExtAPIRef('i18n.LanguageCode')}}.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.i18n.getAcceptLanguages")}}

- -

Exemples

- -
function onGot(languages) {
-  console.log(languages);
-  //e.g. Array [ "en-US", "en" ]
-}
-
-var gettingAcceptLanguages = browser.i18n.getAcceptLanguages();
-gettingAcceptLanguages.then(onGot);
-
- - - -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.i18n. Cette documentation est dérivée de i18n.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/getacceptlanguages/index.md b/files/fr/mozilla/add-ons/webextensions/api/i18n/getacceptlanguages/index.md new file mode 100644 index 0000000000..ff37745f2c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/getacceptlanguages/index.md @@ -0,0 +1,90 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient les accept-languages 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')}}.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingAcceptLanguages = browser.i18n.getAcceptLanguages()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un array d'objets {{WebExtAPIRef('i18n.LanguageCode')}}.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.i18n.getAcceptLanguages")}}

+ +

Exemples

+ +
function onGot(languages) {
+  console.log(languages);
+  //e.g. Array [ "en-US", "en" ]
+}
+
+var gettingAcceptLanguages = browser.i18n.getAcceptLanguages();
+gettingAcceptLanguages.then(onGot);
+
+ + + +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.i18n. Cette documentation est dérivée de i18n.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2d023fb195..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/i18n/getmessage/index.html +++ /dev/null @@ -1,115 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient la chaîne localisée pour le message spécifié.

- -

Syntaxe

- -
browser.i18n.getMessage(
-  messageName,  // string
-  substitutions // optional any
-)
-
- -

Paramètres

- -
-
messageName
-

string. Le nom du message, tel que spécifié dans le fichier messages.json. Si le message ne peut pas être trouvé dans messages.json :

-
    -
  • Firefox renvoie "" et enregistre une erreur.
  • -
  • Chrome renvoie "" et n'enregistre pas d'erreur.
  • -
-
-
substitutions{{optional_inline}}
-
string ou array de string. Une chaîne de substitution unique ou un tableau de chaînes de substitution. Dans Chrome, si vous fournissez plus de 9 chaînes de substitution, getMessage() renvoie undefined.
-
- -

Valeur retournée

- -

string. Message localisé pour les paramètres régionaux en cours.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.i18n.getMessage")}}

- -

Exemples

- -

Obtenez la chaîne localisée pour "messageContent", avec target.url substitué :

- -
var message = browser.i18n.getMessage("messageContent", target.url);
-console.log(message);
-
- -

Cela fonctionnerait avec un fichier _locales/en/messages.json contenant :

- -
{
-  "messageContent": {
-    "message": "You clicked $URL$.",
-    "description": "Tells the user which link they clicked.",
-    "placeholders": {
-      "url" : {
-        "content" : "$1",
-        "example" : "https://developer.mozilla.org"
-      }
-    }
-  }
-}
- -

Si target.url est "https://developer.mozilla.org", alors la valeur de message, dans la locale "en", serait :

- -
"You clicked https://developer.mozilla.org."
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.i18n. Cette documentation est dérivée de i18n.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/getmessage/index.md b/files/fr/mozilla/add-ons/webextensions/api/i18n/getmessage/index.md new file mode 100644 index 0000000000..2d023fb195 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/getmessage/index.md @@ -0,0 +1,115 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient la chaîne localisée pour le message spécifié.

+ +

Syntaxe

+ +
browser.i18n.getMessage(
+  messageName,  // string
+  substitutions // optional any
+)
+
+ +

Paramètres

+ +
+
messageName
+

string. Le nom du message, tel que spécifié dans le fichier messages.json. Si le message ne peut pas être trouvé dans messages.json :

+
    +
  • Firefox renvoie "" et enregistre une erreur.
  • +
  • Chrome renvoie "" et n'enregistre pas d'erreur.
  • +
+
+
substitutions{{optional_inline}}
+
string ou array de string. Une chaîne de substitution unique ou un tableau de chaînes de substitution. Dans Chrome, si vous fournissez plus de 9 chaînes de substitution, getMessage() renvoie undefined.
+
+ +

Valeur retournée

+ +

string. Message localisé pour les paramètres régionaux en cours.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.i18n.getMessage")}}

+ +

Exemples

+ +

Obtenez la chaîne localisée pour "messageContent", avec target.url substitué :

+ +
var message = browser.i18n.getMessage("messageContent", target.url);
+console.log(message);
+
+ +

Cela fonctionnerait avec un fichier _locales/en/messages.json contenant :

+ +
{
+  "messageContent": {
+    "message": "You clicked $URL$.",
+    "description": "Tells the user which link they clicked.",
+    "placeholders": {
+      "url" : {
+        "content" : "$1",
+        "example" : "https://developer.mozilla.org"
+      }
+    }
+  }
+}
+ +

Si target.url est "https://developer.mozilla.org", alors la valeur de message, dans la locale "en", serait :

+ +
"You clicked https://developer.mozilla.org."
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.i18n. Cette documentation est dérivée de i18n.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 882ed3c4ee..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/i18n/getuilanguage/index.html +++ /dev/null @@ -1,82 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.i18n.getUILanguage()
-
- -

Paramètres

- -

Aucun

- -

Valeur retournée

- -

string. Le code de langue de l'interface utilisateur du navigateur en tant que  {{WebExtAPIRef("i18n.LanguageCode")}}.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.i18n.getUILanguage")}}

- -

Exemples

- -
var uiLanguage = browser.i18n.getUILanguage();
-console.log(uiLanguage);
-
-//e.g. "fr"
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.i18n. Cette documentation est dérivée de i18n.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/getuilanguage/index.md b/files/fr/mozilla/add-ons/webextensions/api/i18n/getuilanguage/index.md new file mode 100644 index 0000000000..882ed3c4ee --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/getuilanguage/index.md @@ -0,0 +1,82 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.i18n.getUILanguage()
+
+ +

Paramètres

+ +

Aucun

+ +

Valeur retournée

+ +

string. Le code de langue de l'interface utilisateur du navigateur en tant que  {{WebExtAPIRef("i18n.LanguageCode")}}.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.i18n.getUILanguage")}}

+ +

Exemples

+ +
var uiLanguage = browser.i18n.getUILanguage();
+console.log(uiLanguage);
+
+//e.g. "fr"
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.i18n. Cette documentation est dérivée de i18n.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/index.html b/files/fr/mozilla/add-ons/webextensions/api/i18n/index.html deleted file mode 100644 index 7e04021ff9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/i18n/index.html +++ /dev/null @@ -1,57 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

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 En-tete "Accept-Language".

- -

Pour plus de détails sur l'utilisation de i18n pour votre extension, voir :

- - - -

Types

- -
-
{{WebExtAPIRef("i18n.LanguageCode")}}
-
Une balise de langue telle que "en-US" ou "fr".
-
- -

Fonctions

- -
-
{{WebExtAPIRef("i18n.getAcceptLanguages()")}}
-
Obtient les accept-languages 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')}}.
-
{{WebExtAPIRef("i18n.getMessage()")}}
-
Obtient la chaîne localisée pour le message spécifié.
-
{{WebExtAPIRef("i18n.getUILanguage()")}}
-
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.
-
{{WebExtAPIRef("i18n.detectLanguage()")}}
-
Détecte la langue du texte fourni en utilisant le détecteur de langue compact.
-
- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.api.i18n")}}

- -

{{WebExtExamples("h2")}}

- -
-

Note : - Cette API est basée sur l'API Chromium chrome.i18n. Cette documentation est dérivée de i18n.json dans le code de Chromium.
-
- Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/index.md b/files/fr/mozilla/add-ons/webextensions/api/i18n/index.md new file mode 100644 index 0000000000..7e04021ff9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

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 En-tete "Accept-Language".

+ +

Pour plus de détails sur l'utilisation de i18n pour votre extension, voir :

+ + + +

Types

+ +
+
{{WebExtAPIRef("i18n.LanguageCode")}}
+
Une balise de langue telle que "en-US" ou "fr".
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("i18n.getAcceptLanguages()")}}
+
Obtient les accept-languages 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')}}.
+
{{WebExtAPIRef("i18n.getMessage()")}}
+
Obtient la chaîne localisée pour le message spécifié.
+
{{WebExtAPIRef("i18n.getUILanguage()")}}
+
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.
+
{{WebExtAPIRef("i18n.detectLanguage()")}}
+
Détecte la langue du texte fourni en utilisant le détecteur de langue compact.
+
+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.api.i18n")}}

+ +

{{WebExtExamples("h2")}}

+ +
+

Note : + Cette API est basée sur l'API Chromium chrome.i18n. Cette documentation est dérivée de i18n.json dans le code de Chromium.
+
+ Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 45f3e263a6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/i18n/languagecode/index.html +++ /dev/null @@ -1,67 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Une balise de langue telle que "en-US" ou "fr".

- -

Type

- -

Les valeurs de ce type sont des chaînes.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.i18n.LanguageCode")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.i18n. Cette documentation est dérivée de i18n.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/languagecode/index.md b/files/fr/mozilla/add-ons/webextensions/api/i18n/languagecode/index.md new file mode 100644 index 0000000000..45f3e263a6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/languagecode/index.md @@ -0,0 +1,67 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Une balise de langue telle que "en-US" ou "fr".

+ +

Type

+ +

Les valeurs de ce type sont des chaînes.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.i18n.LanguageCode")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.i18n. Cette documentation est dérivée de i18n.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index b6b48d94e3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/i18n/locale-specific_message_reference/index.html +++ /dev/null @@ -1,129 +0,0 @@ ---- -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 ---- -

{{AddonSidebar()}}

- -

Chaque extension internationalisée a au moins un fichier nommé messages.json qui fournit des chaînes spécifiques aux paramètres régionaux. Cette page décrit le format des fichiers messages.json.

- -
-

Note : Pour plus d'informations sur l'internationalisation de vos extensions, consultez notre guide i18n.

-
- -

Exemple messages.json

- -

Le code suivant montre un exemple de fichier messages.json file, tiré de notre extension d'exemple notify-link-clicks-i18n. Seuls les champs "name" et "message" ont obligatoires.

- -
{
-  "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"
-      }
-    }
-  }
-}
- -

Placement

- -

Vos fichiers messages.json doivent être placés dans des répertoires nommés d'après les paramètres régionaux que chacun supporte — en, de, ja, etc. Ceux-ci doivent être placés dans un répertoire appelé _locales, à l'intérieur de la racine de votre extension.

- -

Détails des membres

- -

Cette section décrit chaque membre qui peut apparaître dans un fichier messages.json.

- -

name

- -

Chaque membre de niveau supérieur est nommé d'après le nom de la chaîne de message que vous localisez, par exemple "extensionName" ou "notificationContent" 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é.

- -

Le nom peut inclure les caractères suivants :

- - - -

Note : Vous ne devez pas définir les noms commençant par @@. Ces noms sont réservés aux messages prédéfinis.

- -

message

- -

Au moins, cette propriété doit être définie pour chaque chaîne. Le membre "message" contient une chaîne localisée qui peut contenir {{anch("placeholders")}}. Vous pouvez utiliser :

- - - -

Autres points à noter :

- - - -

description

- -

{{optional_inline}}

- -

Le membre "description" 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.

- -

placeholders

- -

{{optional_inline}}

- -

Le membre "placeholders" 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.

- -

Chaque définition de sous-chaîne d'espace réservé possède un certain nombre de valeurs :

- -
"url" : {
-  "content" : "$1",
-  "example" : "https://developer.mozilla.org"
-}
- -

Nom placeholder

- -

Le nom de l'espace réservé est utilisé pour représenter l'espace réservé dans la chaîne de substitution (par exemple "url" devient $url$). Il est insensible à la casse et peut contenir les mêmes caractères qu'une chaîne de message {{anch("name")}}.

- -

contenu

- -

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 Récupération des chaînes de messages à partir de Javascript.

- -

exemple

- -

{{optional_inline}}

- -

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.

diff --git a/files/fr/mozilla/add-ons/webextensions/api/i18n/locale-specific_message_reference/index.md b/files/fr/mozilla/add-ons/webextensions/api/i18n/locale-specific_message_reference/index.md new file mode 100644 index 0000000000..b6b48d94e3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/i18n/locale-specific_message_reference/index.md @@ -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 +--- +

{{AddonSidebar()}}

+ +

Chaque extension internationalisée a au moins un fichier nommé messages.json qui fournit des chaînes spécifiques aux paramètres régionaux. Cette page décrit le format des fichiers messages.json.

+ +
+

Note : Pour plus d'informations sur l'internationalisation de vos extensions, consultez notre guide i18n.

+
+ +

Exemple messages.json

+ +

Le code suivant montre un exemple de fichier messages.json file, tiré de notre extension d'exemple notify-link-clicks-i18n. Seuls les champs "name" et "message" ont obligatoires.

+ +
{
+  "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"
+      }
+    }
+  }
+}
+ +

Placement

+ +

Vos fichiers messages.json doivent être placés dans des répertoires nommés d'après les paramètres régionaux que chacun supporte — en, de, ja, etc. Ceux-ci doivent être placés dans un répertoire appelé _locales, à l'intérieur de la racine de votre extension.

+ +

Détails des membres

+ +

Cette section décrit chaque membre qui peut apparaître dans un fichier messages.json.

+ +

name

+ +

Chaque membre de niveau supérieur est nommé d'après le nom de la chaîne de message que vous localisez, par exemple "extensionName" ou "notificationContent" 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é.

+ +

Le nom peut inclure les caractères suivants :

+ + + +

Note : Vous ne devez pas définir les noms commençant par @@. Ces noms sont réservés aux messages prédéfinis.

+ +

message

+ +

Au moins, cette propriété doit être définie pour chaque chaîne. Le membre "message" contient une chaîne localisée qui peut contenir {{anch("placeholders")}}. Vous pouvez utiliser :

+ + + +

Autres points à noter :

+ + + +

description

+ +

{{optional_inline}}

+ +

Le membre "description" 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.

+ +

placeholders

+ +

{{optional_inline}}

+ +

Le membre "placeholders" 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.

+ +

Chaque définition de sous-chaîne d'espace réservé possède un certain nombre de valeurs :

+ +
"url" : {
+  "content" : "$1",
+  "example" : "https://developer.mozilla.org"
+}
+ +

Nom placeholder

+ +

Le nom de l'espace réservé est utilisé pour représenter l'espace réservé dans la chaîne de substitution (par exemple "url" devient $url$). Il est insensible à la casse et peut contenir les mêmes caractères qu'une chaîne de message {{anch("name")}}.

+ +

contenu

+ +

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 Récupération des chaînes de messages à partir de Javascript.

+ +

exemple

+ +

{{optional_inline}}

+ +

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.

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 deleted file mode 100644 index 6bf56f1975..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/identity/getredirecturl/index.html +++ /dev/null @@ -1,53 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Génère une URL que vous pouvez utiliser comme URL de redirection.

- -

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 applications (sinon, chaque fois que vous installerez temporairement l'extension, vous obtiendrez une URL de redirection différente).

- -

Voir Obtenir une URL de redirection pour plus d'informations sur les URL de redirection.

- -

Syntaxe

- -
var redirectURL = browser.identity.getRedirectURL()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une chaîne contenant une valeur d'URL de redirection.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.identity.getRedirectURL")}}

- -

Exemples

- -

Obtenez l'URL de redirection :

- -
var redirectURL = browser.identity.getRedirectURL();
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.identity.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/identity/getredirecturl/index.md b/files/fr/mozilla/add-ons/webextensions/api/identity/getredirecturl/index.md new file mode 100644 index 0000000000..6bf56f1975 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/identity/getredirecturl/index.md @@ -0,0 +1,53 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Génère une URL que vous pouvez utiliser comme URL de redirection.

+ +

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 applications (sinon, chaque fois que vous installerez temporairement l'extension, vous obtiendrez une URL de redirection différente).

+ +

Voir Obtenir une URL de redirection pour plus d'informations sur les URL de redirection.

+ +

Syntaxe

+ +
var redirectURL = browser.identity.getRedirectURL()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une chaîne contenant une valeur d'URL de redirection.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.identity.getRedirectURL")}}

+ +

Exemples

+ +

Obtenez l'URL de redirection :

+ +
var redirectURL = browser.identity.getRedirectURL();
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.identity.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
diff --git a/files/fr/mozilla/add-ons/webextensions/api/identity/index.html b/files/fr/mozilla/add-ons/webextensions/api/identity/index.html deleted file mode 100644 index f681457d83..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/identity/index.html +++ /dev/null @@ -1,106 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Utilisez l'API d'identité pour obtenir un code d'autorisation ou un jeton d'accès OAuth2, 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).

- -

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 :

- - - -

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.

- -

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.

- -

Pour utiliser cette API, vous devez posséder la permission de l'API "identity"

- -

Installer

- -

Il y a une certaine configuration que vous devez faire avant de publier votre extension.

- -

Obtenir l'URL de redirection

- -

L'URL de redirection 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..

- -

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 applications (sinon, chaque fois que vous installez temporairement le module complémentaire, vous obtiendrez une URL de redirection différente).

- -

Vous n'avez pas besoin d'utiliser l'URL de redirection retournée par  identity.getRedirectURL(): 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.

- -

Vous utiliserez l'URL de redirection à deux endroits :

- - - -

Enregistrement de votre extension

- -

Avant de pouvoir utiliser OAuth2 avec un fournisseur de services, vous devez enregistrer l'extension auprès du fournisseur en tant que client OAuth2.

- -

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()")}}.

- -

Fonctions

- -
-
{{WebExtAPIRef("identity.getRedirectURL()")}}
-
Obtient l'URL de redirection.
-
{{WebExtAPIRef("identity.launchWebAuthFlow()")}}
-
Lancement WAF.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.identity")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.identity.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/identity/index.md b/files/fr/mozilla/add-ons/webextensions/api/identity/index.md new file mode 100644 index 0000000000..f681457d83 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/identity/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Utilisez l'API d'identité pour obtenir un code d'autorisation ou un jeton d'accès OAuth2, 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).

+ +

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 :

+ + + +

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.

+ +

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.

+ +

Pour utiliser cette API, vous devez posséder la permission de l'API "identity"

+ +

Installer

+ +

Il y a une certaine configuration que vous devez faire avant de publier votre extension.

+ +

Obtenir l'URL de redirection

+ +

L'URL de redirection 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..

+ +

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 applications (sinon, chaque fois que vous installez temporairement le module complémentaire, vous obtiendrez une URL de redirection différente).

+ +

Vous n'avez pas besoin d'utiliser l'URL de redirection retournée par  identity.getRedirectURL(): 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.

+ +

Vous utiliserez l'URL de redirection à deux endroits :

+ + + +

Enregistrement de votre extension

+ +

Avant de pouvoir utiliser OAuth2 avec un fournisseur de services, vous devez enregistrer l'extension auprès du fournisseur en tant que client OAuth2.

+ +

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()")}}.

+ +

Fonctions

+ +
+
{{WebExtAPIRef("identity.getRedirectURL()")}}
+
Obtient l'URL de redirection.
+
{{WebExtAPIRef("identity.launchWebAuthFlow()")}}
+
Lancement WAF.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.identity")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.identity.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index ba6efa8b65..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/identity/launchwebauthflow/index.html +++ /dev/null @@ -1,121 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Effectue la première partie d'un flux OAuth2 y compris l'authentification de l'utilisateur et l'autorisation du client.

- -

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'URL de redirection et l'ID client de l'extension. Le fournisseur de service alors :

- - - -

Notez que si aucune authentification ou autorisation n'est nécessaire, cette fonction se terminera silencieusement, sans interaction de l'utilisateur.

- -

Cette fonction prend également un paramètre facultatif interactif: 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.

- -

Cette fonction renvoie une Promise: 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.

- -

S'il y a une erreur, la promesse est rejetée avec un message d'erreur. Les conditions d'erreur peuvent inclure :

- - - -

Syntaxe

- -
var authorizing = browser.identity.launchWebAuthFlow(
-  details   // object
-)
-
- -

Paramètres

- -
-
details
-

object. Options pour le flux, contenant les propriétés suivantes :

-
-
url
-
-

string. 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 :

- -
    -
  • 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 Obtenir l'URL de redirection.
  • -
-
-
interactive {{optional_inline}}
-
-

boolean. Si omis ou false, force le flux à se terminer en silence, sans interaction de l'utilisateur.

- -

Si l'utilisateur est déjà connecté et a déjà accordé l'accès pour l'extension, launchWebAuthFlow() 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), launchWebAuthFlow() invite l'utilisateur, c'est-à-dire que le flux sera interactif.

- -

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).

- -

TC'est le but de l'interactif: Si vous omettez interactif ou le définissez sur false, 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 interactif à true si vous lancez le flux en réponse à une action de l'utilisateur, et omettez le sinon.

-
-
-
-
- -

Valeur retournée

- -

Une Promise. 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. 

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.identity.launchWebAuthFlow")}}

- -

Exemples

- -

Cette fonction autorise une extension des données Google d'un utilisateur, conformément à la documentation disponible à l'adresse  https://developers.google.com/identity/protocols/OAuth2UserAgent. La validation du jeton d'accès renvoyé n'est pas affichée ici :

- -
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 += `&response_type=token`;
-  authURL += `&redirect_uri=${encodeURIComponent(redirectURL)}`;
-  authURL += `&scope=${encodeURIComponent(scopes.join(' '))}`;
-
-  return browser.identity.launchWebAuthFlow({
-    interactive: true,
-    url: authURL
-  });
-}
-
-function getAccessToken() {
-  return authorize().then(validate);
-}
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.identity.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/identity/launchwebauthflow/index.md b/files/fr/mozilla/add-ons/webextensions/api/identity/launchwebauthflow/index.md new file mode 100644 index 0000000000..ba6efa8b65 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/identity/launchwebauthflow/index.md @@ -0,0 +1,121 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Effectue la première partie d'un flux OAuth2 y compris l'authentification de l'utilisateur et l'autorisation du client.

+ +

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'URL de redirection et l'ID client de l'extension. Le fournisseur de service alors :

+ + + +

Notez que si aucune authentification ou autorisation n'est nécessaire, cette fonction se terminera silencieusement, sans interaction de l'utilisateur.

+ +

Cette fonction prend également un paramètre facultatif interactif: 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.

+ +

Cette fonction renvoie une Promise: 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.

+ +

S'il y a une erreur, la promesse est rejetée avec un message d'erreur. Les conditions d'erreur peuvent inclure :

+ + + +

Syntaxe

+ +
var authorizing = browser.identity.launchWebAuthFlow(
+  details   // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Options pour le flux, contenant les propriétés suivantes :

+
+
url
+
+

string. 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 :

+ +
    +
  • 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 Obtenir l'URL de redirection.
  • +
+
+
interactive {{optional_inline}}
+
+

boolean. Si omis ou false, force le flux à se terminer en silence, sans interaction de l'utilisateur.

+ +

Si l'utilisateur est déjà connecté et a déjà accordé l'accès pour l'extension, launchWebAuthFlow() 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), launchWebAuthFlow() invite l'utilisateur, c'est-à-dire que le flux sera interactif.

+ +

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).

+ +

TC'est le but de l'interactif: Si vous omettez interactif ou le définissez sur false, 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 interactif à true si vous lancez le flux en réponse à une action de l'utilisateur, et omettez le sinon.

+
+
+
+
+ +

Valeur retournée

+ +

Une Promise. 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. 

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.identity.launchWebAuthFlow")}}

+ +

Exemples

+ +

Cette fonction autorise une extension des données Google d'un utilisateur, conformément à la documentation disponible à l'adresse  https://developers.google.com/identity/protocols/OAuth2UserAgent. La validation du jeton d'accès renvoyé n'est pas affichée ici :

+ +
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 += `&response_type=token`;
+  authURL += `&redirect_uri=${encodeURIComponent(redirectURL)}`;
+  authURL += `&scope=${encodeURIComponent(scopes.join(' '))}`;
+
+  return browser.identity.launchWebAuthFlow({
+    interactive: true,
+    url: authURL
+  });
+}
+
+function getAccessToken() {
+  return authorize().then(validate);
+}
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.identity.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 9d9169a73f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/idle/idlestate/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Chaîne d'écrivant l'état d'inactivité du périphérique.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont : "active", "idle", "locked".

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.idle.IdleState")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.idle. Cette documentation est dérivée de idle.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/idle/idlestate/index.md b/files/fr/mozilla/add-ons/webextensions/api/idle/idlestate/index.md new file mode 100644 index 0000000000..9d9169a73f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/idle/idlestate/index.md @@ -0,0 +1,66 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Chaîne d'écrivant l'état d'inactivité du périphérique.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont : "active", "idle", "locked".

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.idle.IdleState")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.idle. Cette documentation est dérivée de idle.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/idle/index.html b/files/fr/mozilla/add-ons/webextensions/api/idle/index.html deleted file mode 100644 index 6de0d110c6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/idle/index.html +++ /dev/null @@ -1,88 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Découvrez quand le système de l'utilisateur est inactif, vérouillé ou actif.

- -

Pour utiliser cette API, vous disposez de la permission "idle" .

- -

Types

- -
-
{{WebExtAPIRef("idle.IdleState")}}
-
-

Chaîne décrivant l'état d'inactivité du périphérique

-
-
- -

Fonctions

- -
-
{{WebExtAPIRef("idle.queryState()")}}
-
Renvoie "locked" si le système est verrouillé, "idle" si l'utilisateur n'a généré aucune entrée pendant un nombre de secondes spécifié, ou sinon "active"
-
{{WebExtAPIRef("idle.setDetectionInterval()")}}
-
Définit l'intervalle utilisé pour déterminer quand le système est inactif pour les événements  {{WebExtAPIRef("idle.onStateChanged")}}.
-
- -

Evénements

- -
-
{{WebExtAPIRef("idle.onStateChanged")}}
-
Définit quand le système change d'état.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.idle")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.idle. Cette documentation est dérivée de idle.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/idle/index.md b/files/fr/mozilla/add-ons/webextensions/api/idle/index.md new file mode 100644 index 0000000000..6de0d110c6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/idle/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Découvrez quand le système de l'utilisateur est inactif, vérouillé ou actif.

+ +

Pour utiliser cette API, vous disposez de la permission "idle" .

+ +

Types

+ +
+
{{WebExtAPIRef("idle.IdleState")}}
+
+

Chaîne décrivant l'état d'inactivité du périphérique

+
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("idle.queryState()")}}
+
Renvoie "locked" si le système est verrouillé, "idle" si l'utilisateur n'a généré aucune entrée pendant un nombre de secondes spécifié, ou sinon "active"
+
{{WebExtAPIRef("idle.setDetectionInterval()")}}
+
Définit l'intervalle utilisé pour déterminer quand le système est inactif pour les événements  {{WebExtAPIRef("idle.onStateChanged")}}.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("idle.onStateChanged")}}
+
Définit quand le système change d'état.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.idle")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.idle. Cette documentation est dérivée de idle.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index bcf1605f4f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/idle/onstatechanged/index.html +++ /dev/null @@ -1,111 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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 :

- - - -

Syntaxe

- -
browser.idle.onStateChanged.addListener(listener)
-browser.idle.onStateChanged.removeListener(listener)
-browser.idle.onStateChanged.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrétez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si l' écouteur est enregistré pour cet événement. Retourne true s'il écoute, false sinon.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
newState
-
{{WebExtAPIRef('idle.IdleState')}}. Le nouvel état est inactif.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.idle.onStateChanged")}}

- -

Exemples

- -
function newState(state) {
-  console.log(`New state: ${state}`);
-}
-
-browser.idle.onStateChanged.addListener(newState);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.idle. Cette documentation est dérivée de idle.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/idle/onstatechanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/idle/onstatechanged/index.md new file mode 100644 index 0000000000..bcf1605f4f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/idle/onstatechanged/index.md @@ -0,0 +1,111 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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 :

+ + + +

Syntaxe

+ +
browser.idle.onStateChanged.addListener(listener)
+browser.idle.onStateChanged.removeListener(listener)
+browser.idle.onStateChanged.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrétez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si l' écouteur est enregistré pour cet événement. Retourne true s'il écoute, false sinon.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
newState
+
{{WebExtAPIRef('idle.IdleState')}}. Le nouvel état est inactif.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.idle.onStateChanged")}}

+ +

Exemples

+ +
function newState(state) {
+  console.log(`New state: ${state}`);
+}
+
+browser.idle.onStateChanged.addListener(newState);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.idle. Cette documentation est dérivée de idle.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 42461f4848..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/idle/querystate/index.html +++ /dev/null @@ -1,98 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Renvoie "locked" si le système est vérouillé, "inactif" si l'utilisation n'a généré aucune entrée pendant un nombre de secondes spécifié, ou "actif" dans le cas contraire.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var querying = browser.idle.queryState(
-  detectionIntervalInSeconds // integer
-)
-
- -

Paramètres

- -
-
detectionIntervalInSeconds
-
integer. Le système est considéré inactif si  detectionIntervalInSeconds secondes s'est écoulé depuis la dernière entrée utilisateur détectée.
-
- -

Valeur renvoyée

- -

Une Promise qui sera remplie avec une chaîne {{WebExtAPIRef('idle.IdleState')}}, indiquant l'état actuel.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.idle.queryState")}}

- -

Exemples

- -

Dans cet extrait simple, nous appelons queryState() et vérifions si le newState est inactif ou active, en enregistrant un message selon le cas. Comme nous avons spécifié une valeur de  detectionIntervalInSeconds de 15, un état inactif  ne sera signalé que s'il n'y a pas eu d'activité de l'utilisateur depuis au moins 15 secondes

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.idle. Cette documentation est dérivée de idle.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/idle/querystate/index.md b/files/fr/mozilla/add-ons/webextensions/api/idle/querystate/index.md new file mode 100644 index 0000000000..42461f4848 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/idle/querystate/index.md @@ -0,0 +1,98 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Renvoie "locked" si le système est vérouillé, "inactif" si l'utilisation n'a généré aucune entrée pendant un nombre de secondes spécifié, ou "actif" dans le cas contraire.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var querying = browser.idle.queryState(
+  detectionIntervalInSeconds // integer
+)
+
+ +

Paramètres

+ +
+
detectionIntervalInSeconds
+
integer. Le système est considéré inactif si  detectionIntervalInSeconds secondes s'est écoulé depuis la dernière entrée utilisateur détectée.
+
+ +

Valeur renvoyée

+ +

Une Promise qui sera remplie avec une chaîne {{WebExtAPIRef('idle.IdleState')}}, indiquant l'état actuel.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.idle.queryState")}}

+ +

Exemples

+ +

Dans cet extrait simple, nous appelons queryState() et vérifions si le newState est inactif ou active, en enregistrant un message selon le cas. Comme nous avons spécifié une valeur de  detectionIntervalInSeconds de 15, un état inactif  ne sera signalé que s'il n'y a pas eu d'activité de l'utilisateur depuis au moins 15 secondes

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.idle. Cette documentation est dérivée de idle.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 3247128749..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/idle/setdetectioninterval/index.html +++ /dev/null @@ -1,82 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

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.

- -

Syntaxe

- -
browser.idle.setDetectionInterval(
-  intervalInSeconds // integer
-)
-
- -

Paramètres

- -
-
intervalInSeconds
-
integer. 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.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.idle.setDetectionInterval")}}

- -

Exemples

- -
browser.idle.setDetectionInterval(15);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.idle. Cette documentation est dérivée de idle.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/idle/setdetectioninterval/index.md b/files/fr/mozilla/add-ons/webextensions/api/idle/setdetectioninterval/index.md new file mode 100644 index 0000000000..3247128749 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/idle/setdetectioninterval/index.md @@ -0,0 +1,82 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

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.

+ +

Syntaxe

+ +
browser.idle.setDetectionInterval(
+  intervalInSeconds // integer
+)
+
+ +

Paramètres

+ +
+
intervalInSeconds
+
integer. 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.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.idle.setDetectionInterval")}}

+ +

Exemples

+ +
browser.idle.setDetectionInterval(15);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.idle. Cette documentation est dérivée de idle.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/index.html b/files/fr/mozilla/add-ons/webextensions/api/index.html deleted file mode 100644 index fde24d4ca1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/index.html +++ /dev/null @@ -1,58 +0,0 @@ ---- -title: Les APIs JavaScript -slug: Mozilla/Add-ons/WebExtensions/API -tags: - - API - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/API ---- -
{{AddonSidebar}}
- -

Les APIs WebExtensions en JavaScript peuvent être utilisées au sein des scripts d’arrière plan de l’extension et dans tout autre document livré avec celle-ci. Ceci inclut les pop-ups relatives à une action navigateur ou action de page, barres latérales, pages d’options, ou pages de nouvel onglet. Certaines de ces APIs peuvent également être interrogées par des scripts de contenu de l’extension (voir la liste dans le guide des scripts de contenu).

- -

Pour utiliser les APIs plus puissantes, vous devez en demander la permission dans le manifest.json de votre extension.

- -

Vous pouvez accéder aux APIs en utilisant l’espace de noms browser :

- -
function afficherTabs (tabs) {
-  console.log(tabs)
-}
-
-browser.tabs.query({currentWindow: true}, afficherTabs)
- - -

De nombreuses APIs sont asynchrones et retournent une {{JSxRef("Promise")}}:

- -
function afficherCookie (c) {
-  console.log(c)
-}
-
-function afficherErreur (e) {
-  console.error(e)
-}
-
-let setCookie = browser.cookies.set(
-   {url: "https://developer.mozilla.org/"}
-);
-setCookie.then(logCookie, afficherErreur)
- - -
-

Notez que ceci est différent du système d'extension de Google Chrome, qui utilise l’espace de noms chrome à la place de browser, 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 chrome et les fonctions de rappel ainsi que browser et les promesses. Mozilla a également écrit une prothèse d’émulation (polyfill) permettant au code qui utilise browser et les promesses de fonctionner sans modification dans Chrome: https://github.com/mozilla/webextension-polyfill.

- -

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.

- -

Microsoft Edge utilise l’espace de noms browser, 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.

- -

Tous les navigateurs ne sont pas compatibles avec toutes les APIs : pour de plus amples informations, consultez la compatibilité navigateur pour les APIs JavaScript.

- -

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 boîte à outils. Par exemple, voici le premier exemple de code sur cette page fonctionnant dans la console de la boîte à outils dans Firefox Developpeur Edition :

- -

Illustration of a snippet of web extension code run from the console in the Toolbox

- -

Liste des API JavaScript

- -

Voir ci-dessous pour une liste complète des API JavaScript :

-
- -
{{SubpagesWithSummaries}}
diff --git a/files/fr/mozilla/add-ons/webextensions/api/index.md b/files/fr/mozilla/add-ons/webextensions/api/index.md new file mode 100644 index 0000000000..fde24d4ca1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/index.md @@ -0,0 +1,58 @@ +--- +title: Les APIs JavaScript +slug: Mozilla/Add-ons/WebExtensions/API +tags: + - API + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/API +--- +
{{AddonSidebar}}
+ +

Les APIs WebExtensions en JavaScript peuvent être utilisées au sein des scripts d’arrière plan de l’extension et dans tout autre document livré avec celle-ci. Ceci inclut les pop-ups relatives à une action navigateur ou action de page, barres latérales, pages d’options, ou pages de nouvel onglet. Certaines de ces APIs peuvent également être interrogées par des scripts de contenu de l’extension (voir la liste dans le guide des scripts de contenu).

+ +

Pour utiliser les APIs plus puissantes, vous devez en demander la permission dans le manifest.json de votre extension.

+ +

Vous pouvez accéder aux APIs en utilisant l’espace de noms browser :

+ +
function afficherTabs (tabs) {
+  console.log(tabs)
+}
+
+browser.tabs.query({currentWindow: true}, afficherTabs)
+ + +

De nombreuses APIs sont asynchrones et retournent une {{JSxRef("Promise")}}:

+ +
function afficherCookie (c) {
+  console.log(c)
+}
+
+function afficherErreur (e) {
+  console.error(e)
+}
+
+let setCookie = browser.cookies.set(
+   {url: "https://developer.mozilla.org/"}
+);
+setCookie.then(logCookie, afficherErreur)
+ + +
+

Notez que ceci est différent du système d'extension de Google Chrome, qui utilise l’espace de noms chrome à la place de browser, 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 chrome et les fonctions de rappel ainsi que browser et les promesses. Mozilla a également écrit une prothèse d’émulation (polyfill) permettant au code qui utilise browser et les promesses de fonctionner sans modification dans Chrome: https://github.com/mozilla/webextension-polyfill.

+ +

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.

+ +

Microsoft Edge utilise l’espace de noms browser, 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.

+ +

Tous les navigateurs ne sont pas compatibles avec toutes les APIs : pour de plus amples informations, consultez la compatibilité navigateur pour les APIs JavaScript.

+ +

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 boîte à outils. Par exemple, voici le premier exemple de code sur cette page fonctionnant dans la console de la boîte à outils dans Firefox Developpeur Edition :

+ +

Illustration of a snippet of web extension code run from the console in the Toolbox

+ +

Liste des API JavaScript

+ +

Voir ci-dessous pour une liste complète des API JavaScript :

+
+ +
{{SubpagesWithSummaries}}
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 deleted file mode 100644 index c641aa0a54..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/extensioninfo/index.html +++ /dev/null @@ -1,125 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet ExtensionInfo contenant les informations sur l'extension.

- -

Type

- -

Il s'agit d'un objet avec les propriétés suivantes :

- -
-
description
-
string. La description de l'extension, prise à partir de la clé de description du manifest.json.
-
disabledReason
-
string. Si l'extension est désactivée, la raison pour laquelle il a été désactivé. L'une des "inconnnues' or "permissions_increase".
-
enabled
-
boolean. Que l'extension soit activée ou pas.
-
homepageUrl
-
string. L'URL de la page d'accueil de l'extension, prise en compte de la clé  homepage_url du fichier manifest.json.
-
hostPermissions
-
ensemble de chaîne. Les permissions d'hôtes de l'extension.
-
icons
-

array of object. les informations sur les icônes des extensions. Un tableau d'objets, un par chaque icône. Chaque objet contient deux propriétés :

-
    -
  • size: un entier représentant la largeur et la hauteur de l'icônes en pixels.
  • -
  • url: une chaîne contenant l'url relative de l'icône, en commençant par la racine de l'extensions.
  • -
-
-
id
-
string. l'ID de l'extension.
-
installType
-

string. Une chaîne décriantn comme l'extension a été ajouté. Une des options suivantes :

-
    -
  • "admin": l'extension a été installé en raison d'une politique administrative.
  • -
  • "development": l'extension a été installé décompressé sur le disque.
  • -
  • "normal": l'extension a été installé normalement à partir du package d'installation.
  • -
  • "sideload": l'extension a été installé par un autre logiciel sur l'ordinateur de l'utilisateur.
  • -
  • "other": l'extension a été installé d'une autre manière.
  • -
-
-
mayDisable
-
boolean. Que cette extensions a été désactivé ou désinstallé par l'utilisateur.
-
name
-
string. Le nom de l'extension, pris à partir de la clé name du manifest.json.
-
offlineEnabled
-
boolean. Que les demandes de l'extensions soient prises en charge hors connexion.
-
optionsUrl
-
string. l'URL pour la page d'options de l'élément, s'il y en a un. Il s'agit d'une URL relative, à partir de la racine de l'extension.
-
permissions
-
array of string. les permissions de l'API de l'extension.
-
shortName
-
string. Une courte version du nom de l'extension, prise à partir de la clé  short_name du manifest.json.
-
type
-

string. 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 :

-
    -
  • "extension": le type d'extension la plus courante.
  • -
  • "hosted_app"
  • -
  • "packaged_app"
  • -
  • "legacy_packaged_app"
  • -
  • "theme"
  • -
-
-
updateUrl
-
string. URL pour la mise à jour de l'extension, tiré de la clé applications de manifest.json.
-
version
-
string. La version de l'extension, tiré de la clé version du manifest.json
-
versionName
-
string. Le nom descriptif pour la version de l'extension, tiré de la clé  version_name du manifest.json.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.ExtensionInfo")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/extensioninfo/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/extensioninfo/index.md new file mode 100644 index 0000000000..c641aa0a54 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/extensioninfo/index.md @@ -0,0 +1,125 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet ExtensionInfo contenant les informations sur l'extension.

+ +

Type

+ +

Il s'agit d'un objet avec les propriétés suivantes :

+ +
+
description
+
string. La description de l'extension, prise à partir de la clé de description du manifest.json.
+
disabledReason
+
string. Si l'extension est désactivée, la raison pour laquelle il a été désactivé. L'une des "inconnnues' or "permissions_increase".
+
enabled
+
boolean. Que l'extension soit activée ou pas.
+
homepageUrl
+
string. L'URL de la page d'accueil de l'extension, prise en compte de la clé  homepage_url du fichier manifest.json.
+
hostPermissions
+
ensemble de chaîne. Les permissions d'hôtes de l'extension.
+
icons
+

array of object. les informations sur les icônes des extensions. Un tableau d'objets, un par chaque icône. Chaque objet contient deux propriétés :

+
    +
  • size: un entier représentant la largeur et la hauteur de l'icônes en pixels.
  • +
  • url: une chaîne contenant l'url relative de l'icône, en commençant par la racine de l'extensions.
  • +
+
+
id
+
string. l'ID de l'extension.
+
installType
+

string. Une chaîne décriantn comme l'extension a été ajouté. Une des options suivantes :

+
    +
  • "admin": l'extension a été installé en raison d'une politique administrative.
  • +
  • "development": l'extension a été installé décompressé sur le disque.
  • +
  • "normal": l'extension a été installé normalement à partir du package d'installation.
  • +
  • "sideload": l'extension a été installé par un autre logiciel sur l'ordinateur de l'utilisateur.
  • +
  • "other": l'extension a été installé d'une autre manière.
  • +
+
+
mayDisable
+
boolean. Que cette extensions a été désactivé ou désinstallé par l'utilisateur.
+
name
+
string. Le nom de l'extension, pris à partir de la clé name du manifest.json.
+
offlineEnabled
+
boolean. Que les demandes de l'extensions soient prises en charge hors connexion.
+
optionsUrl
+
string. l'URL pour la page d'options de l'élément, s'il y en a un. Il s'agit d'une URL relative, à partir de la racine de l'extension.
+
permissions
+
array of string. les permissions de l'API de l'extension.
+
shortName
+
string. Une courte version du nom de l'extension, prise à partir de la clé  short_name du manifest.json.
+
type
+

string. 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 :

+
    +
  • "extension": le type d'extension la plus courante.
  • +
  • "hosted_app"
  • +
  • "packaged_app"
  • +
  • "legacy_packaged_app"
  • +
  • "theme"
  • +
+
+
updateUrl
+
string. URL pour la mise à jour de l'extension, tiré de la clé applications de manifest.json.
+
version
+
string. La version de l'extension, tiré de la clé version du manifest.json
+
versionName
+
string. Le nom descriptif pour la version de l'extension, tiré de la clé  version_name du manifest.json.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.ExtensionInfo")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index cffba8e9ab..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/get/index.html +++ /dev/null @@ -1,96 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Récupère un objet {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}} contenant des informations sur l'extension spécifiée.

- -

Cette API requière la permission API "management"

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingInfo = browser.management.get(
-  id                  // string
-)
-
- -

Paramètres

- -
-
id
-
string. l'ID de l'extension dont vous souhaitez récupérer les informations.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.get")}}

- -

Exemples

- -

Enregistrez le nom de l'extension dont l'ID est "my-add-on":

- -
var id = "my-add-on";
-
-function got(info) {
-  console.log(info.name);
-}
-
-var getting = browser.management.get(id);
-getting.then(got);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/get/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/get/index.md new file mode 100644 index 0000000000..cffba8e9ab --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/get/index.md @@ -0,0 +1,96 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Récupère un objet {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}} contenant des informations sur l'extension spécifiée.

+ +

Cette API requière la permission API "management"

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingInfo = browser.management.get(
+  id                  // string
+)
+
+ +

Paramètres

+ +
+
id
+
string. l'ID de l'extension dont vous souhaitez récupérer les informations.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.get")}}

+ +

Exemples

+ +

Enregistrez le nom de l'extension dont l'ID est "my-add-on":

+ +
var id = "my-add-on";
+
+function got(info) {
+  console.log(info.name);
+}
+
+var getting = browser.management.get(id);
+getting.then(got);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 03a12b36be..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/getall/index.html +++ /dev/null @@ -1,94 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Récupère un ensemble d'objets {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}}, un pour chaque extension installé.

- -

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é type de  {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}}.

- -

Cette API requiert la permission de l'API de "management"

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingAll = browser.management.getAll()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui sera rempli avec un ensemble d'objets  {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}}, un pour chaque extension installée.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.getAll")}}

- -

Exemples

- -

Enregistrez le nom de toutes les extensions installées :

- -
function gotAll(infoArray) {
-  for (info of infoArray) {
-    if (info.type == "extension") {
-      console.log(info.name);
-    }
-  }
-}
-
-var gettingAll = browser.management.getAll();
-gettingAll.then(gotAll);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/getall/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/getall/index.md new file mode 100644 index 0000000000..03a12b36be --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/getall/index.md @@ -0,0 +1,94 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Récupère un ensemble d'objets {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}}, un pour chaque extension installé.

+ +

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é type de  {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}}.

+ +

Cette API requiert la permission de l'API de "management"

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingAll = browser.management.getAll()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui sera rempli avec un ensemble d'objets  {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}}, un pour chaque extension installée.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.getAll")}}

+ +

Exemples

+ +

Enregistrez le nom de toutes les extensions installées :

+ +
function gotAll(infoArray) {
+  for (info of infoArray) {
+    if (info.type == "extension") {
+      console.log(info.name);
+    }
+  }
+}
+
+var gettingAll = browser.management.getAll();
+gettingAll.then(gotAll);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index b5a86a0eeb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbyid/index.html +++ /dev/null @@ -1,101 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Lorsque l'utilisateur installe ou met  à jour une extension, le navigateur peut avertir l'utilisateur des permissions 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.
- -
- -

Compte tenu de l'ID d'une extension, cette fonction retourne les avertisseurs de permissions comme un tableau de chaînes.

- -

Cette API requière l'API permission "management"

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingWarnings = browser.management.getPermissionWarningsById(
-  id                  // string
-)
-
- -

Paramètres

- -
-
id
-
string. ID de l'extension dont vous souhaitez récupérer les avertisseurs de permissions.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un ensemble de chaînes, chacune contenant un texte d'un avertissement de permissions.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.getPermissionWarningsById")}}

- -

Exemples

- -

Enregistrez les avertissements de permissions pour l'extension dont l'ID est "my-add-on" :

- -
var id = "my-add-on";
-
-function gotWarnings(warnings) {
-  for (warning of warnings) {
-    console.log(warning);
-  }
-}
-
-var gettingWarnings = browser.management.getPermissionWarningsById(id);
-gettingWarnings.then(gotWarnings);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

- - -
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbyid/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbyid/index.md new file mode 100644 index 0000000000..b5a86a0eeb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbyid/index.md @@ -0,0 +1,101 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Lorsque l'utilisateur installe ou met  à jour une extension, le navigateur peut avertir l'utilisateur des permissions 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.
+ +
+ +

Compte tenu de l'ID d'une extension, cette fonction retourne les avertisseurs de permissions comme un tableau de chaînes.

+ +

Cette API requière l'API permission "management"

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingWarnings = browser.management.getPermissionWarningsById(
+  id                  // string
+)
+
+ +

Paramètres

+ +
+
id
+
string. ID de l'extension dont vous souhaitez récupérer les avertisseurs de permissions.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un ensemble de chaînes, chacune contenant un texte d'un avertissement de permissions.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.getPermissionWarningsById")}}

+ +

Exemples

+ +

Enregistrez les avertissements de permissions pour l'extension dont l'ID est "my-add-on" :

+ +
var id = "my-add-on";
+
+function gotWarnings(warnings) {
+  for (warning of warnings) {
+    console.log(warning);
+  }
+}
+
+var gettingWarnings = browser.management.getPermissionWarningsById(id);
+gettingWarnings.then(gotWarnings);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+ + +
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 deleted file mode 100644 index 9090bd4a56..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbymanifest/index.html +++ /dev/null @@ -1,110 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Lorsque l'utilisateur installe ou met à jour une extension, la navigateur peut avertir l'utilisateur des permissions obligatoires. Toutes les permissions ne donnent pas lieu à des avertissements, et cela n'est pas normalisé dans les navigateurs.
- -
- -

Compte tenu du texte du fichier manifest.json, cette fonction retourne les avertisseurs de permissions qui seraient donnés pour l'extension comme un ensemble de chaines.

- -

Cette API ne requière pas l'API de permission "management".

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingWarnings = browser.management.getPermissionWarningsByManifest(
-  manifestString      // string
-)
-
- -

Paramètres

- -
-
manifestString
-
string. Chaîne contenant le fichier manifest. Cela doit être un manifest valide : par exemple, il doit contenir toutes les clés obligatoires du manifest..
-
- -

Valeur retournée

- -

Une Promise qui sera rempli avec un ensemble de chaînes, chacune contenant le texte un avertisseur de permission.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.getPermissionWarningsByManifest")}}

- -

Exemples

- -

Enregistrez les avertissements de permissions dans le fichier manifest donné :

- -
var manifest = {
-  "manifest_version": 2,
-  "name": "test",
-  "version": "1.0",
-  "permissions": ["management", "<all_urls>"]
-}
-
-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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbymanifest/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbymanifest/index.md new file mode 100644 index 0000000000..9090bd4a56 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/getpermissionwarningsbymanifest/index.md @@ -0,0 +1,110 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Lorsque l'utilisateur installe ou met à jour une extension, la navigateur peut avertir l'utilisateur des permissions obligatoires. Toutes les permissions ne donnent pas lieu à des avertissements, et cela n'est pas normalisé dans les navigateurs.
+ +
+ +

Compte tenu du texte du fichier manifest.json, cette fonction retourne les avertisseurs de permissions qui seraient donnés pour l'extension comme un ensemble de chaines.

+ +

Cette API ne requière pas l'API de permission "management".

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingWarnings = browser.management.getPermissionWarningsByManifest(
+  manifestString      // string
+)
+
+ +

Paramètres

+ +
+
manifestString
+
string. Chaîne contenant le fichier manifest. Cela doit être un manifest valide : par exemple, il doit contenir toutes les clés obligatoires du manifest..
+
+ +

Valeur retournée

+ +

Une Promise qui sera rempli avec un ensemble de chaînes, chacune contenant le texte un avertisseur de permission.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.getPermissionWarningsByManifest")}}

+ +

Exemples

+ +

Enregistrez les avertissements de permissions dans le fichier manifest donné :

+ +
var manifest = {
+  "manifest_version": 2,
+  "name": "test",
+  "version": "1.0",
+  "permissions": ["management", "<all_urls>"]
+}
+
+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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e035a6fc23..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/getself/index.html +++ /dev/null @@ -1,88 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Récupère un objet {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}} contenant les informations de l'extension appelée.

- -

Cette API ne requière pas l' API de permission "management".

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingSelf = browser.management.getSelf()
-
- -

Paramètres

- -

Aucun.

- -

Valeur retournée

- -

Une Promise qui sera remplie avec un objet {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}}, contenant les informations sur l'extension.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.getSelf")}}

- -

Exemples

- -

Enregistrez le nom de l'extension :

- -
function gotSelf(info) {
-  console.log("Add-on name: " + info.name);
-}
-
-var gettingSelf = browser.management.getSelf();
-gettingSelf.then(gotSelf);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/getself/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/getself/index.md new file mode 100644 index 0000000000..e035a6fc23 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/getself/index.md @@ -0,0 +1,88 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Récupère un objet {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}} contenant les informations de l'extension appelée.

+ +

Cette API ne requière pas l' API de permission "management".

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingSelf = browser.management.getSelf()
+
+ +

Paramètres

+ +

Aucun.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un objet {{WebExtAPIRef("management.ExtensionInfo", "ExtensionInfo")}}, contenant les informations sur l'extension.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.getSelf")}}

+ +

Exemples

+ +

Enregistrez le nom de l'extension :

+ +
function gotSelf(info) {
+  console.log("Add-on name: " + info.name);
+}
+
+var gettingSelf = browser.management.getSelf();
+gettingSelf.then(gotSelf);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/index.html b/files/fr/mozilla/add-ons/webextensions/api/management/index.html deleted file mode 100644 index 6d92a0e452..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/index.html +++ /dev/null @@ -1,113 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Obtenez les éléments sur les modules complémentaires installés.

- -

Avec l'API de gestion vous pouvez :

- - - -

La plupart de ces opérations requièrent les permissions d'APIs de gestion. Les opérations qui ne fournissent pas d'accès à d'autres modules complémentaires ne nécessitent pas de permissions.

- -

Types

- -
-
{{WebExtAPIRef("management.ExtensionInfo")}}
-
Un objet contenant des informations sur un module complémentaire installé.
-
- -

Fonctions

- -
-
{{WebExtAPIRef("management.getAll()")}}
-
Renvoie des informations sur tous les modules complémentaires installés
-
{{WebExtAPIRef("management.get()")}}
-
Renvoie des informations sur un module complémentaire particulier, compte tenu de son ID.
-
{{WebExtAPIRef("management.getSelf()")}}
-
Renvoie des informations sur l'appel du module complémentaire.
-
{{WebExtAPIRef("management.install()")}}
-
Installe un thème particulier, étant donné son URL à l'adresse  addons.mozilla.org.
-
{{WebExtAPIRef("management.uninstall()")}}
-
Désinstalle un module complémenaire particulier, compte tenu de son ID.
-
{{WebExtAPIRef("management.uninstallSelf()")}}
-
Désinstalle l'appel d'un module complémentaire.
-
{{WebExtAPIRef("management.getPermissionWarningsById()")}}
-
Obtenez l'ensemble des alertes des permissions particulièrement pour un module complémentaire, compte tenu de son ID.
-
{{WebExtAPIRef("management.getPermissionWarningsByManifest()")}}
-
Obtenez l'ensemble des alertes de permission qui seraient affichés pour la chaîne de manifest donnée.
-
{{WebExtAPIRef("management.setEnabled()")}}
-
Activer / désactiver un module complémentaire, compte tenu de son ID.
-
- -

Evénements

-
-
{{WebExtAPIRef("management.onInstalled")}}
-
Action quand un module complémentaire est installé.
-
{{WebExtAPIRef("management.onUninstalled")}}
-
Action quand un module complémentaire est désinstallé.
-
{{WebExtAPIRef("management.onEnabled")}}
-
Action quand un module complémentaire est activé.
-
{{WebExtAPIRef("management.onDisabled")}}
-
Action quand un module complémenaire est désactivé.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/index.md new file mode 100644 index 0000000000..6d92a0e452 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/index.md @@ -0,0 +1,113 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

Obtenez les éléments sur les modules complémentaires installés.

+ +

Avec l'API de gestion vous pouvez :

+ + + +

La plupart de ces opérations requièrent les permissions d'APIs de gestion. Les opérations qui ne fournissent pas d'accès à d'autres modules complémentaires ne nécessitent pas de permissions.

+ +

Types

+ +
+
{{WebExtAPIRef("management.ExtensionInfo")}}
+
Un objet contenant des informations sur un module complémentaire installé.
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("management.getAll()")}}
+
Renvoie des informations sur tous les modules complémentaires installés
+
{{WebExtAPIRef("management.get()")}}
+
Renvoie des informations sur un module complémentaire particulier, compte tenu de son ID.
+
{{WebExtAPIRef("management.getSelf()")}}
+
Renvoie des informations sur l'appel du module complémentaire.
+
{{WebExtAPIRef("management.install()")}}
+
Installe un thème particulier, étant donné son URL à l'adresse  addons.mozilla.org.
+
{{WebExtAPIRef("management.uninstall()")}}
+
Désinstalle un module complémenaire particulier, compte tenu de son ID.
+
{{WebExtAPIRef("management.uninstallSelf()")}}
+
Désinstalle l'appel d'un module complémentaire.
+
{{WebExtAPIRef("management.getPermissionWarningsById()")}}
+
Obtenez l'ensemble des alertes des permissions particulièrement pour un module complémentaire, compte tenu de son ID.
+
{{WebExtAPIRef("management.getPermissionWarningsByManifest()")}}
+
Obtenez l'ensemble des alertes de permission qui seraient affichés pour la chaîne de manifest donnée.
+
{{WebExtAPIRef("management.setEnabled()")}}
+
Activer / désactiver un module complémentaire, compte tenu de son ID.
+
+ +

Evénements

+
+
{{WebExtAPIRef("management.onInstalled")}}
+
Action quand un module complémentaire est installé.
+
{{WebExtAPIRef("management.onUninstalled")}}
+
Action quand un module complémentaire est désinstallé.
+
{{WebExtAPIRef("management.onEnabled")}}
+
Action quand un module complémentaire est activé.
+
{{WebExtAPIRef("management.onDisabled")}}
+
Action quand un module complémenaire est désactivé.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index d17ff0cb12..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/install/index.html +++ /dev/null @@ -1,83 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Installe et active une extension de thème à partir de l'URL donnée.
- -
- -

Cette API nécessite la permission de l'API "management" et ne fonctionnera qu'avec des thèmes signés.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
let {id} = await browser.management.install({url});
-
- -

Paramètres

- -
-
options
-
Un objet qui inclut l'URL du fichier XPI du thème à addons.mozilla.org et un hachage facultatif du fichier XPI, en utilisant sha256 ou plus.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un objet, contenant l'ExtensionID défini pour le thème dans manifest.json.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.install")}}

- -

Exemples

- -

Parcourez une liste de thèmes :

- -
"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(() => {
-    let id = themes.indexOf(current);
-    install(themes[(id + 1) % themes.length]);
-});
-
-for (let url of themes) {
-    browser.menus.create({
-        title: url,
-        onclick: () => install(url),
-        contexts: ["browser_action"],
-    });
-}
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/install/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/install/index.md new file mode 100644 index 0000000000..d17ff0cb12 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/install/index.md @@ -0,0 +1,83 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Installe et active une extension de thème à partir de l'URL donnée.
+ +
+ +

Cette API nécessite la permission de l'API "management" et ne fonctionnera qu'avec des thèmes signés.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
let {id} = await browser.management.install({url});
+
+ +

Paramètres

+ +
+
options
+
Un objet qui inclut l'URL du fichier XPI du thème à addons.mozilla.org et un hachage facultatif du fichier XPI, en utilisant sha256 ou plus.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un objet, contenant l'ExtensionID défini pour le thème dans manifest.json.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.install")}}

+ +

Exemples

+ +

Parcourez une liste de thèmes :

+ +
"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(() => {
+    let id = themes.indexOf(current);
+    install(themes[(id + 1) % themes.length]);
+});
+
+for (let url of themes) {
+    browser.menus.create({
+        title: url,
+        onclick: () => install(url),
+        contexts: ["browser_action"],
+    });
+}
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 02415286ee..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/ondisabled/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Action quand l'extension est désactivée.

- -

L'API requière l'API de permission "management".

- -

Syntaxe

- -
browser.management.onDisabled.addListener(listener)
-browser.management.onDisabled.removeListener(listener)
-browser.management.onDisabled.hasListener(listener)
-
- -

Les événement ont trois fonctions :

- -
-
addListener(callback)
-
Ajoutez un auditeur à cet événement.
-
removeListener(listener)
-
L'argument de l'auditeur est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifie si l'auditeur est enregistré à l'événement. Renvoie true s'il est à l'écoute, sinon false .
-
- -

addListener syntaxe

- -

Paramètres

- -
-
function
-
-

Fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera par l'argument suivant :

- -
-
info
-
ExtensionInfo: informations de l'extension qui a été désactivé
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.onDisabled")}}

- -

Exemples

- -

Enregistrez les noms des extensions lorsqu'ils sont désactivés.

- -
browser.management.onDisabled.addListener((info) => {
-  console.log(info.name + " was disabled");
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/ondisabled/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/ondisabled/index.md new file mode 100644 index 0000000000..02415286ee --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/ondisabled/index.md @@ -0,0 +1,104 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Action quand l'extension est désactivée.

+ +

L'API requière l'API de permission "management".

+ +

Syntaxe

+ +
browser.management.onDisabled.addListener(listener)
+browser.management.onDisabled.removeListener(listener)
+browser.management.onDisabled.hasListener(listener)
+
+ +

Les événement ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoutez un auditeur à cet événement.
+
removeListener(listener)
+
L'argument de l'auditeur est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifie si l'auditeur est enregistré à l'événement. Renvoie true s'il est à l'écoute, sinon false .
+
+ +

addListener syntaxe

+ +

Paramètres

+ +
+
function
+
+

Fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera par l'argument suivant :

+ +
+
info
+
ExtensionInfo: informations de l'extension qui a été désactivé
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.onDisabled")}}

+ +

Exemples

+ +

Enregistrez les noms des extensions lorsqu'ils sont désactivés.

+ +
browser.management.onDisabled.addListener((info) => {
+  console.log(info.name + " was disabled");
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2528feb6d3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/onenabled/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

L'auditeur de l'événement appelé lorsque l'événement enabled est déclenché, indiquant qu'un add-on est maintenant activé.

- -

L'API requière l'API de permission "management"

- -

Syntaxe

- -
browser.management.onEnabled.addListener(listener)
-browser.management.onEnabled.removeListener(listener)
-browser.management.onEnabled.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoutez un auditeur à cet événement.
-
removeListener(listener)
-
L'argument de l'auditeur est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifie si l'auditeur est enregistré à l'événement. Renvoie true s'il est à l'écoute, sinon false .
-
- -

addListener syntaxe

- -

Parameters

- -
-
function
-
-

Fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera par l'argument suivant :

- -
-
info
-
ExtensionInfo: informations de l'extension qui a été désinstallé.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.onEnabled")}}

- -

Exemples

- -

Enregistrez les noms des extensions lorsqu'ils sont activés :

- -
browser.management.onEnabled.addListener((info) => {
-  console.log(info.name + " was enabled");
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/onenabled/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/onenabled/index.md new file mode 100644 index 0000000000..2528feb6d3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/onenabled/index.md @@ -0,0 +1,104 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

L'auditeur de l'événement appelé lorsque l'événement enabled est déclenché, indiquant qu'un add-on est maintenant activé.

+ +

L'API requière l'API de permission "management"

+ +

Syntaxe

+ +
browser.management.onEnabled.addListener(listener)
+browser.management.onEnabled.removeListener(listener)
+browser.management.onEnabled.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoutez un auditeur à cet événement.
+
removeListener(listener)
+
L'argument de l'auditeur est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifie si l'auditeur est enregistré à l'événement. Renvoie true s'il est à l'écoute, sinon false .
+
+ +

addListener syntaxe

+ +

Parameters

+ +
+
function
+
+

Fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera par l'argument suivant :

+ +
+
info
+
ExtensionInfo: informations de l'extension qui a été désinstallé.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.onEnabled")}}

+ +

Exemples

+ +

Enregistrez les noms des extensions lorsqu'ils sont activés :

+ +
browser.management.onEnabled.addListener((info) => {
+  console.log(info.name + " was enabled");
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 38e9192289..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/oninstalled/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Action quand une extension est installée.

- -

Cette API requière l'API de permission "management".

- -

Syntaxe

- -
browser.management.onInstalled.addListener(listener)
-browser.management.onInstalled.removeListener(listener)
-browser.management.onInstalled.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajout un auditeur à l'événement.
-
removeListener(listener)
-
Arrêtez d'écouvter l'événement. L'argument de l'auditeur est un auditeur à supprimer.
-
hasListener(listener)
-
Vérifie si un auditeur est enregistré pour cet événement. Renvoie vrai si elle est à l'écoute, sinon faux .
-
- -

addListener syntaxe

- -

Paramètres

- -
-
function
-
-

fonction de rappel qui sera appelée quand l'événement se produira. La fonction passera l'argument suivant :

- -
-
info
-
ExtensionInfo: informations sur l'extension qui a été installée.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.onInstalled")}}

- -

Exemples

- -

Enregistrez les noms des extensions lorsqu'ils sont installés :

- -
browser.management.onInstalled.addListener((info) => {
-  console.log(info.name + " was installed");
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

- - -
diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/oninstalled/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/oninstalled/index.md new file mode 100644 index 0000000000..38e9192289 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/oninstalled/index.md @@ -0,0 +1,104 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Action quand une extension est installée.

+ +

Cette API requière l'API de permission "management".

+ +

Syntaxe

+ +
browser.management.onInstalled.addListener(listener)
+browser.management.onInstalled.removeListener(listener)
+browser.management.onInstalled.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajout un auditeur à l'événement.
+
removeListener(listener)
+
Arrêtez d'écouvter l'événement. L'argument de l'auditeur est un auditeur à supprimer.
+
hasListener(listener)
+
Vérifie si un auditeur est enregistré pour cet événement. Renvoie vrai si elle est à l'écoute, sinon faux .
+
+ +

addListener syntaxe

+ +

Paramètres

+ +
+
function
+
+

fonction de rappel qui sera appelée quand l'événement se produira. La fonction passera l'argument suivant :

+ +
+
info
+
ExtensionInfo: informations sur l'extension qui a été installée.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.onInstalled")}}

+ +

Exemples

+ +

Enregistrez les noms des extensions lorsqu'ils sont installés :

+ +
browser.management.onInstalled.addListener((info) => {
+  console.log(info.name + " was installed");
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+ + +
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 deleted file mode 100644 index d6e3700786..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/onuninstalled/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Action quand une extension est désinstallée.

- -

L'API requière l'API de permission "management".

- -

Syntaxe

- -
browser.management.onUninstalled.addListener(listener)
-browser.management.onUninstalled.removeListener(listener)
-browser.management.onUninstalled.hasListener(listener)
-
- -

Les événement ont trois fonctions :

- -
-
addListener(callback)
-
Ajoutez un auditeur à cet événement.
-
removeListener(listener)
-
L'argument de l'auditeur est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifie si l'auditeur est enregistré à l'événement. Renvoie true s'il est à l'écoute, sinon false .
-
- -

addListener syntaxe

- -

Paramètres

- -
-
function
-
-

Fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera par l'argument suivant :

- -
-
info
-
ExtensionInfo: informations de l'extension qui a été désinstallé.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.onUninstalled")}}

- -

Exemples

- -

Enregistrez les noms des extensions lorsqu'ils sont désinstallés :

- -
browser.management.onUninstalled.addListener((info) => {
-  console.log(info.name + " was uninstalled");
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/onuninstalled/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/onuninstalled/index.md new file mode 100644 index 0000000000..d6e3700786 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/onuninstalled/index.md @@ -0,0 +1,104 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Action quand une extension est désinstallée.

+ +

L'API requière l'API de permission "management".

+ +

Syntaxe

+ +
browser.management.onUninstalled.addListener(listener)
+browser.management.onUninstalled.removeListener(listener)
+browser.management.onUninstalled.hasListener(listener)
+
+ +

Les événement ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoutez un auditeur à cet événement.
+
removeListener(listener)
+
L'argument de l'auditeur est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifie si l'auditeur est enregistré à l'événement. Renvoie true s'il est à l'écoute, sinon false .
+
+ +

addListener syntaxe

+ +

Paramètres

+ +
+
function
+
+

Fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera par l'argument suivant :

+ +
+
info
+
ExtensionInfo: informations de l'extension qui a été désinstallé.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.onUninstalled")}}

+ +

Exemples

+ +

Enregistrez les noms des extensions lorsqu'ils sont désinstallés :

+ +
browser.management.onUninstalled.addListener((info) => {
+  console.log(info.name + " was uninstalled");
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 08727d7904..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/setenabled/index.html +++ /dev/null @@ -1,103 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Active ou désactive l'extension ajoutée.

- -

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.

- -

Cette API requière l'API permission "management".

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var settingEnabled = browser.management.setEnabled(
-  id,              // string
-  enabled         // boolean
-)
-
- -

Paramètres

- -
-
id
-
string. ID de l'extension pour activer ou désactiver.
-
enabled
-
boolean. Que ce soit pour active ou désactiver l'extension.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie sans arguments lorsque l'extension a été désactivé ou activé.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.setEnabled")}}

- -

Exemples

- -

Actviez / Désactivez l'option pour l'extension dont l'ID est "my-add-on":

- -
var id = "my-add-on";
-
-function toggleEnabled(id) {
-  var getting = browser.management.get(id);
-  getting.then((info) => {
-    browser.management.setEnabled(id, !info.enabled);
-  });
-}
-
-toggleEnabled(id);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/setenabled/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/setenabled/index.md new file mode 100644 index 0000000000..08727d7904 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/setenabled/index.md @@ -0,0 +1,103 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Active ou désactive l'extension ajoutée.

+ +

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.

+ +

Cette API requière l'API permission "management".

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var settingEnabled = browser.management.setEnabled(
+  id,              // string
+  enabled         // boolean
+)
+
+ +

Paramètres

+ +
+
id
+
string. ID de l'extension pour activer ou désactiver.
+
enabled
+
boolean. Que ce soit pour active ou désactiver l'extension.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie sans arguments lorsque l'extension a été désactivé ou activé.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.setEnabled")}}

+ +

Exemples

+ +

Actviez / Désactivez l'option pour l'extension dont l'ID est "my-add-on":

+ +
var id = "my-add-on";
+
+function toggleEnabled(id) {
+  var getting = browser.management.get(id);
+  getting.then((info) => {
+    browser.management.setEnabled(id, !info.enabled);
+  });
+}
+
+toggleEnabled(id);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index c478300f08..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/uninstall/index.html +++ /dev/null @@ -1,105 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Désinstalle une extension, compte tenu de son ID.

- -

Cette API requiert l'API de permission. "management"

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var uninstalling = browser.management.uninstall(
-  id,                  // string
-  options              // object
-)
-
- -

Paramètres

- -
-
id
-
string. ID de l'extensions à désinstaller.
-
options{{optional_inline}}
-

object. l'objet qui peut contenir une propriété unique, showConfirmDialog. Si showConfirmDialog est true, le navigateur affiche une boie de dialogue demandant à l'utilisateur de confirmer que le complément doit être désinstallé.

-
    -
  • Si id est l'ID de l'extension appelant, showConfirmDialog est par défaut à false.
  • -
  • Si id est l'ID d'une extension différente, cette option est ignorée et la boite de dialogue de confirmation s'affche toujours.
  • -
-
-
- -

Valeur retournée

- -

Une Promise qui sera rejetée avec un message d'erreur si l'utilisateur a annulé la désintallatiion.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.uninstall")}}

- -

Exemples

- -

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.

- -

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.

- -
var id = "my-addon-id";
-
-function onCanceled(error) {
-  console.log(`Uninstall canceled: ${error}`);
-}
-
-var uninstalling = browser.management.uninstall(id);
-uninstalling.then(null, onCanceled);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/uninstall/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/uninstall/index.md new file mode 100644 index 0000000000..c478300f08 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/uninstall/index.md @@ -0,0 +1,105 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Désinstalle une extension, compte tenu de son ID.

+ +

Cette API requiert l'API de permission. "management"

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var uninstalling = browser.management.uninstall(
+  id,                  // string
+  options              // object
+)
+
+ +

Paramètres

+ +
+
id
+
string. ID de l'extensions à désinstaller.
+
options{{optional_inline}}
+

object. l'objet qui peut contenir une propriété unique, showConfirmDialog. Si showConfirmDialog est true, le navigateur affiche une boie de dialogue demandant à l'utilisateur de confirmer que le complément doit être désinstallé.

+
    +
  • Si id est l'ID de l'extension appelant, showConfirmDialog est par défaut à false.
  • +
  • Si id est l'ID d'une extension différente, cette option est ignorée et la boite de dialogue de confirmation s'affche toujours.
  • +
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera rejetée avec un message d'erreur si l'utilisateur a annulé la désintallatiion.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.uninstall")}}

+ +

Exemples

+ +

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.

+ +

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.

+ +
var id = "my-addon-id";
+
+function onCanceled(error) {
+  console.log(`Uninstall canceled: ${error}`);
+}
+
+var uninstalling = browser.management.uninstall(id);
+uninstalling.then(null, onCanceled);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 983c91b346..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/management/uninstallself/index.html +++ /dev/null @@ -1,117 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Désinstalle l'appel de l'extension.

- -

Cette API ne requiert pas la permission API "management"

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var uninstallingSelf = browser.management.uninstallSelf(
-  options              // object
-)
-
- -

Paramètres

- -
-
options{{optional_inline}}
-

object. L'objet qui peut comporter deux propriétés, toutes deux facultatives :

-
-
showConfirmDialog{{optional_inline}}
-
Boolean. Si showConfirmDialog est true, le navigateur  affiche la boite  de dialogue demandant à l'utilisateur de confirmer que le complément doit être désinstallé. Par défaut à false.
-
dialogMessage{{optional_inline}}
-
String. Un message supplémentaire qui sera affiché dans la boite de dialogue de confirmation.
-
-
-
- -

Valeur retournée

- -

Une Promise qui sera rejetée avec un message d'erreur si l'utilisateur a annulé la désinstallation.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.management.uninstallSelf")}}

- -

Exemples

- -

Désinsallez l'extension, en demandant à l'utilisateur de confirmer. Dans le rappel, vérifiez si l'utilisateur a annulé la désinstallation.

- -

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.

- -
function onCanceled(error) {
-  console.log(`Canceled: ${error}`);
-}
-
-var uninstalling = browser.management.uninstallSelf({
-  showConfirmDialog: true
-});
-
-uninstalling.then(null, onCanceled);
- -

Le même, mais aussi l'ajout d'un message personnalisé à la boite de dialogue :

- -
function onCanceled(error) {
-  console.log(`Canceled: ${error}`);
-}
-
-var uninstalling = browser.management.uninstallSelf({
-  showConfirmDialog: true,
-  dialogMessage: "Testing self-uninstall"
-});
-
-uninstalling.then(null, onCanceled);
-

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/management/uninstallself/index.md b/files/fr/mozilla/add-ons/webextensions/api/management/uninstallself/index.md new file mode 100644 index 0000000000..983c91b346 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/management/uninstallself/index.md @@ -0,0 +1,117 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Désinstalle l'appel de l'extension.

+ +

Cette API ne requiert pas la permission API "management"

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var uninstallingSelf = browser.management.uninstallSelf(
+  options              // object
+)
+
+ +

Paramètres

+ +
+
options{{optional_inline}}
+

object. L'objet qui peut comporter deux propriétés, toutes deux facultatives :

+
+
showConfirmDialog{{optional_inline}}
+
Boolean. Si showConfirmDialog est true, le navigateur  affiche la boite  de dialogue demandant à l'utilisateur de confirmer que le complément doit être désinstallé. Par défaut à false.
+
dialogMessage{{optional_inline}}
+
String. Un message supplémentaire qui sera affiché dans la boite de dialogue de confirmation.
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera rejetée avec un message d'erreur si l'utilisateur a annulé la désinstallation.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.management.uninstallSelf")}}

+ +

Exemples

+ +

Désinsallez l'extension, en demandant à l'utilisateur de confirmer. Dans le rappel, vérifiez si l'utilisateur a annulé la désinstallation.

+ +

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.

+ +
function onCanceled(error) {
+  console.log(`Canceled: ${error}`);
+}
+
+var uninstalling = browser.management.uninstallSelf({
+  showConfirmDialog: true
+});
+
+uninstalling.then(null, onCanceled);
+ +

Le même, mais aussi l'ajout d'un message personnalisé à la boite de dialogue :

+ +
function onCanceled(error) {
+  console.log(`Canceled: ${error}`);
+}
+
+var uninstalling = browser.management.uninstallSelf({
+  showConfirmDialog: true,
+  dialogMessage: "Testing self-uninstall"
+});
+
+uninstalling.then(null, onCanceled);
+

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.management. Cette documentation est dérivée de management.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 29765ce11e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/action_menu_top_level_limit/index.html +++ /dev/null @@ -1,64 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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é.

- -

Sa valeur est de 6 pour Firefox et Chrome.

- -

Pour la compatibilité avec d'autres navigateurs, Firefox rend cette propriété disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.menus.ACTION_MENU_TOP_LEVEL_LIMIT", 10)}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/action_menu_top_level_limit/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/action_menu_top_level_limit/index.md new file mode 100644 index 0000000000..29765ce11e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/action_menu_top_level_limit/index.md @@ -0,0 +1,64 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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é.

+ +

Sa valeur est de 6 pour Firefox et Chrome.

+ +

Pour la compatibilité avec d'autres navigateurs, Firefox rend cette propriété disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.menus.ACTION_MENU_TOP_LEVEL_LIMIT", 10)}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

+
+ + 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 deleted file mode 100644 index 9f8c8c824c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/contexttype/index.html +++ /dev/null @@ -1,100 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Les différents contextes dans lesquels un élément de menu peut apparaître.

- -

Type

- -

Les valeurs de ce type sont des chaînes. L'élément est affiché lorsque le contexte donné s'applique. Les valeurs possibles sont :

- -
-
all
-
La spécification de "tous" équivaut à la combinaison de tous les autres contextes, à l'exception de 'bookmark', 'tab' et 'tools_menu'.
-
audio
-
S'applique lorsque l'utilisateur clique sur le contexte d'un élément audio.
-
bookmark
-
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 (<kbd>Ctrl</kbd> + <kbd>B</kbd>) et la fenêtre Bibliothèque (<kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>B</kbd>). Ces deux derniers sont supportés à partir de Firefox 66. Nécessite la permission d'API dans le manifest.
-
browser_action
-
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.
-
editable
-
S'applique lorsque l'utilisateur clique en contexte sur un élément modifiable, comme un textarea.
-
frame
-
S'applique lorsque l'utilisateur clique sur le contexte dans une iframe imbriqué.
-
image
-
S'applique lorsque l'utilisateur clique sur le contexte d'une image.
-
link
-
S'applique lorsque l'utilisateur clique en contexte sur un lien.
-
page
-
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 iframe imbriqué ou un lien).
-
page_action
-
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.
-
password
-
S'applique lorsque l'utilisateur clique en contexte sur un élément d'entrée de mot de passe.
-
selection
-
S'applique lorsqu'une partie de la page est sélectionnée.
-
tab
-
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). Depuis Firefox 63, cliquer sur l'élément du menu d'un onglet accorde la permission activeTab pour l'onglet cliqué, même si ce n'est pas l'onglet actuellement actif.
-
tools_menu
-
L'élément sera ajouté au menu des outils du navigateur. Notez que ceci n'est disponible que si vous accédez à ContextType via l'espace de nom des menus. Il n'est pas disponible si vous y accédez via l'espace de noms contextMenus.
-
video
-
S'applique lorsque l'utilisateur clique sur le contexte d'un élément video.
-
- -

Notez que "launcher" n'est pas supporté.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.menus.ContextType", 10)}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/contexttype/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/contexttype/index.md new file mode 100644 index 0000000000..9f8c8c824c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/contexttype/index.md @@ -0,0 +1,100 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Les différents contextes dans lesquels un élément de menu peut apparaître.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. L'élément est affiché lorsque le contexte donné s'applique. Les valeurs possibles sont :

+ +
+
all
+
La spécification de "tous" équivaut à la combinaison de tous les autres contextes, à l'exception de 'bookmark', 'tab' et 'tools_menu'.
+
audio
+
S'applique lorsque l'utilisateur clique sur le contexte d'un élément audio.
+
bookmark
+
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 (<kbd>Ctrl</kbd> + <kbd>B</kbd>) et la fenêtre Bibliothèque (<kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>B</kbd>). Ces deux derniers sont supportés à partir de Firefox 66. Nécessite la permission d'API dans le manifest.
+
browser_action
+
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.
+
editable
+
S'applique lorsque l'utilisateur clique en contexte sur un élément modifiable, comme un textarea.
+
frame
+
S'applique lorsque l'utilisateur clique sur le contexte dans une iframe imbriqué.
+
image
+
S'applique lorsque l'utilisateur clique sur le contexte d'une image.
+
link
+
S'applique lorsque l'utilisateur clique en contexte sur un lien.
+
page
+
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 iframe imbriqué ou un lien).
+
page_action
+
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.
+
password
+
S'applique lorsque l'utilisateur clique en contexte sur un élément d'entrée de mot de passe.
+
selection
+
S'applique lorsqu'une partie de la page est sélectionnée.
+
tab
+
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). Depuis Firefox 63, cliquer sur l'élément du menu d'un onglet accorde la permission activeTab pour l'onglet cliqué, même si ce n'est pas l'onglet actuellement actif.
+
tools_menu
+
L'élément sera ajouté au menu des outils du navigateur. Notez que ceci n'est disponible que si vous accédez à ContextType via l'espace de nom des menus. Il n'est pas disponible si vous y accédez via l'espace de noms contextMenus.
+
video
+
S'applique lorsque l'utilisateur clique sur le contexte d'un élément video.
+
+ +

Notez que "launcher" n'est pas supporté.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.menus.ContextType", 10)}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

+
+ + 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 deleted file mode 100644 index 412c463af9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/create/index.html +++ /dev/null @@ -1,221 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Crée un nouvel élément de menu, avec un objet d'options définissant les propriétés de l'élément.

- -

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.

- -

Pour la compatibilité avec d'autres navigateurs, Firefox rend cette méthode disponible via l'espace noms contextMenus ainsi que l'espace de noms des menus. Notez cependant qu'il n'est pas possible de créer des éléments de menu d'outils (contexts: ["tools_menu"]) en utilisant l'espace de noms contextMenus.

- -

Syntaxe

- -
browser.menus.create(
-  createProperties, // object
-  function() {...}  // optional function
-)
-
- -

Paramètres

- -
-
createProperties
-

object. Propriétés pour le nouvel élément de menu.

-
-
checked {{optional_inline}}
-
boolean. L'état initial d'une case à cocher ou d'un élément radio : true pour selected et false pour non sélectionné. Un seul élément radio peut être sélectionné à la fois dans un groupe donné d'éléments radio.
-
command {{optional_inline}}
-
-

string. Chaîne décrivant une action à effectuer lorsque l'utilisateur clique sur l'élément. Les valeurs possibles sont:

- -
    -
  • "_execute_browser_action": simule un clic sur l'action du navigateur de l'extension, en ouvrant son popup s'il en a un
  • -
  • "_execute_page_action": simule un clic sur l'action de la page de l'extension, en ouvrant son popup s'il en a un
  • -
  • "_execute_sidebar_action": ouvre la barre latérale de l'extension
  • -
- -

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 onClicked.

-
-
contexts {{optional_inline}}
-
-

array de {{WebExtAPIRef('menus.ContextType')}}. Tableau des contextes dans lesquels cet élément de menu apparaîtra. Si cette option est omise :

- -
    -
  • Si l'élément parent a des contextes définis, alors cet élément héritera des contextes de ses parents
  • -
  • sinon, l'élément reçoit un tableau de contexte de ["page"].
  • -
-
-
documentUrlPatterns {{optional_inline}}
-
array de string. Vous permet de restreindre l'élément à appliquer uniquement aux documents dont l'URL correspond à l'un des motifs données. Cela s'applique également aux cadres.
-
enabled {{optional_inline}}
-
boolean. Si cet élément de menu est activé ou désactivé. Par défaut à true.
-
icons {{optional_inline}}
-
-

object. 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 :

- -
"icons": {
-      "16": "path/to/geo-16.png",
-      "32": "path/to/geo-32.png"
-    }
- -

Vous pouvez également spécifier une seule icône SVG, qui sera mise à l'échelle de manière appropriée :

- -
"icons": {
-      "16": "path/to/geo.svg"
-    }
- -
-

Note : L'élément de menu de niveau supérieur utilise les icônes spécifiées dans le manifest plutôt que ce qui est spécifié avec cette touche.

-
-
-
id {{optional_inline}}
-
string. Identifiant unique à attribuer à cet élément Obligatoire pour les pages d'événement. Ne peut pas être identique à un autre ID pour cette extension.
-
onclick {{optional_inline}}
-
function. 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')}}.
-
parentId {{optional_inline}}
-
integer ou string. 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.
-
targetUrlPatterns {{optional_inline}}
-
array de string. Similaire à documentUrlPatterns, mais vous permet de filtrer en fonction du href des balises d'ancrage et de l'attribut src 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.
-
title {{optional_inline}}
-
-

string. Le texte à afficher dans l'article. Obligatoire sauf si le type est "separator".

- -

Vous pouvez utiliser "%s" 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 titre 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".

- -

Si le titre contient une esperluette "&" 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 :

- -
    -
  • 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, "&&" est utilisé pour afficher une seule esperluette.
  • -
  • 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.
  • -
  • 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.
  • -
- -

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 "&A et &B" seront affichés comme "A et B" et "A" comme clé d'accès.

-
-
type {{optional_inline}}
-
{{WebExtAPIRef('menus.ItemType')}}. Le type d'élément de menu : "normal", "checkbox", "radio", "separator". Par défault à "normal".
-
viewType {{optional_inline}}
-
{{WebExtAPIRef('extension.ViewType')}}. 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 viewType.
-
visible {{optional_inline}}
-
boolean. Si l'élément est affiché dans le menu. Par défaut, la valeur est true.
-
-
-
callback {{optional_inline}}
-
function. 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')}}.
-
- -

Valeur retournée

- -

integer ou string. L'ID de l'article nouvellement créé.

- -

Exemples

- -

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

- -
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);
-  }
-});
- -

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 permission activeTab.

- -
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
-    });
-  }
-});
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.menus.create", 10)}}

- -

Note :

- -

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/create/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/create/index.md new file mode 100644 index 0000000000..412c463af9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/create/index.md @@ -0,0 +1,221 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Crée un nouvel élément de menu, avec un objet d'options définissant les propriétés de l'élément.

+ +

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.

+ +

Pour la compatibilité avec d'autres navigateurs, Firefox rend cette méthode disponible via l'espace noms contextMenus ainsi que l'espace de noms des menus. Notez cependant qu'il n'est pas possible de créer des éléments de menu d'outils (contexts: ["tools_menu"]) en utilisant l'espace de noms contextMenus.

+ +

Syntaxe

+ +
browser.menus.create(
+  createProperties, // object
+  function() {...}  // optional function
+)
+
+ +

Paramètres

+ +
+
createProperties
+

object. Propriétés pour le nouvel élément de menu.

+
+
checked {{optional_inline}}
+
boolean. L'état initial d'une case à cocher ou d'un élément radio : true pour selected et false pour non sélectionné. Un seul élément radio peut être sélectionné à la fois dans un groupe donné d'éléments radio.
+
command {{optional_inline}}
+
+

string. Chaîne décrivant une action à effectuer lorsque l'utilisateur clique sur l'élément. Les valeurs possibles sont:

+ +
    +
  • "_execute_browser_action": simule un clic sur l'action du navigateur de l'extension, en ouvrant son popup s'il en a un
  • +
  • "_execute_page_action": simule un clic sur l'action de la page de l'extension, en ouvrant son popup s'il en a un
  • +
  • "_execute_sidebar_action": ouvre la barre latérale de l'extension
  • +
+ +

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 onClicked.

+
+
contexts {{optional_inline}}
+
+

array de {{WebExtAPIRef('menus.ContextType')}}. Tableau des contextes dans lesquels cet élément de menu apparaîtra. Si cette option est omise :

+ +
    +
  • Si l'élément parent a des contextes définis, alors cet élément héritera des contextes de ses parents
  • +
  • sinon, l'élément reçoit un tableau de contexte de ["page"].
  • +
+
+
documentUrlPatterns {{optional_inline}}
+
array de string. Vous permet de restreindre l'élément à appliquer uniquement aux documents dont l'URL correspond à l'un des motifs données. Cela s'applique également aux cadres.
+
enabled {{optional_inline}}
+
boolean. Si cet élément de menu est activé ou désactivé. Par défaut à true.
+
icons {{optional_inline}}
+
+

object. 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 :

+ +
"icons": {
+      "16": "path/to/geo-16.png",
+      "32": "path/to/geo-32.png"
+    }
+ +

Vous pouvez également spécifier une seule icône SVG, qui sera mise à l'échelle de manière appropriée :

+ +
"icons": {
+      "16": "path/to/geo.svg"
+    }
+ +
+

Note : L'élément de menu de niveau supérieur utilise les icônes spécifiées dans le manifest plutôt que ce qui est spécifié avec cette touche.

+
+
+
id {{optional_inline}}
+
string. Identifiant unique à attribuer à cet élément Obligatoire pour les pages d'événement. Ne peut pas être identique à un autre ID pour cette extension.
+
onclick {{optional_inline}}
+
function. 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')}}.
+
parentId {{optional_inline}}
+
integer ou string. 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.
+
targetUrlPatterns {{optional_inline}}
+
array de string. Similaire à documentUrlPatterns, mais vous permet de filtrer en fonction du href des balises d'ancrage et de l'attribut src 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.
+
title {{optional_inline}}
+
+

string. Le texte à afficher dans l'article. Obligatoire sauf si le type est "separator".

+ +

Vous pouvez utiliser "%s" 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 titre 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".

+ +

Si le titre contient une esperluette "&" 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 :

+ +
    +
  • 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, "&&" est utilisé pour afficher une seule esperluette.
  • +
  • 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.
  • +
  • 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.
  • +
+ +

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 "&A et &B" seront affichés comme "A et B" et "A" comme clé d'accès.

+
+
type {{optional_inline}}
+
{{WebExtAPIRef('menus.ItemType')}}. Le type d'élément de menu : "normal", "checkbox", "radio", "separator". Par défault à "normal".
+
viewType {{optional_inline}}
+
{{WebExtAPIRef('extension.ViewType')}}. 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 viewType.
+
visible {{optional_inline}}
+
boolean. Si l'élément est affiché dans le menu. Par défaut, la valeur est true.
+
+
+
callback {{optional_inline}}
+
function. 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')}}.
+
+ +

Valeur retournée

+ +

integer ou string. L'ID de l'article nouvellement créé.

+ +

Exemples

+ +

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

+ +
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);
+  }
+});
+ +

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 permission activeTab.

+ +
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
+    });
+  }
+});
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.menus.create", 10)}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

+
+ + 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 deleted file mode 100644 index bae8cfe9ca..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/createproperties/index.html +++ /dev/null @@ -1,128 +0,0 @@ ---- -title: createProperties -slug: Mozilla/Add-ons/WebExtensions/API/menus/createProperties -translation_of: Mozilla/Add-ons/WebExtensions/API/menus/createProperties ---- -

{{AddonSidebar()}}

- -

Un object 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.

- -
-
checked {{optional_inline}}
-
boolean. The initial state of a checkbox or radio item: true for selected and false for unselected. Only one radio item can be selected at a time in a given group of radio items.
-
command {{optional_inline}}
-
-

string. String describing an action that should be taken when the user clicks the item. Possible values are:

- -
    -
  • "_execute_browser_action": simulate a click on the extension's browser action, opening its popup if it has one
  • -
  • "_execute_page_action": simulate a click on the extension's page action, opening its popup if it has one
  • -
  • "_execute_sidebar_action": open the extension's sidebar
  • -
- -

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 onClicked fires.

-
-
contexts {{optional_inline}}
-
-

array of {{WebExtAPIRef('menus.ContextType')}}. Array of contexts in which this menu item will appear. If this option is omitted:

- -
    -
  • if the item's parent has contexts set, then this item will inherit its parent's contexts
  • -
  • otherwise, the item is given a context array of ["page"].
  • -
-
-
documentUrlPatterns {{optional_inline}}
-
array of string. Lets you restrict the item to apply only to documents whose URL matches one of the given match patterns. This applies to frames as well.
-
enabled {{optional_inline}}
-
boolean. Whether this menu item is enabled or disabled. Defaults to true.
-
icons {{optional_inline}}
-
-

object. 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:

- -
"icons": {
-      "16": "path/to/geo-16.png",
-      "32": "path/to/geo-32.png"
-    }
- -

Alternatively, you can specify a single SVG icon, and it will be scaled appropriately:

- -
"icons": {
-      "16": "path/to/geo.svg"
-    }
- -
-

Note : The top-level menu item uses the icons specified in the manifest rather than what is specified with this key.

-
-
-
id {{optional_inline}}
-
string. The unique ID to assign to this item. Mandatory for event pages. Cannot be the same as another ID for this extension.
-
onclick {{optional_inline}}
-
function. 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')}}.
-
parentId {{optional_inline}}
-
integer or string. 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.
-
targetUrlPatterns {{optional_inline}}
-
array of string. Similar to documentUrlPatterns, but lets you filter based on the href of anchor tags and the src attribute of img/audio/video tags. This parameter supports any URL scheme, even those that are usually not allowed in a match pattern.
-
title {{optional_inline}}
-
-

string. The text to be displayed in the item. Mandatory unless type is "separator".

- -

You can use "%s" 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 title 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".

- -

If the title contains an ampersand "&" 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:

- -
    -
  • If the next character is also an ampersand: then a single ampersand will be displayed and no access key will be set. In effect, "&&" is used to display a single ampersand.
  • -
  • If the next characters are the interpolation directive "%s": then the ampersand will not be displayed and no access key will be set.
  • -
  • If the ampersand is the last character in the title: then the ampersand will not be displayed and no access key will be set.
  • -
- -

Only the first ampersand will be used to set an access key: subsequent ampersands will not be displayed but will not set keys. So "&A and &B" will be shown as "A and B" and set "A" as the access key.

-
-
type {{optional_inline}}
-
{{WebExtAPIRef('menus.ItemType')}}. The type of menu item: "normal", "checkbox", "radio", "separator". Defaults to "normal".
-
viewTypes {{optional_inline}}
-
{{WebExtAPIRef('extension.ViewType')}}. List of view types where the menu item will be shown. Defaults to any view, including those without a viewType.
-
visible {{optional_inline}}
-
boolean. Whether the item is shown in the menu. Defaults to true.
-
- -

Browser compatibility

- -

{{Compat("webextensions.api.menus.createProperties", 10)}}

- -

{{WebExtExamples}}

- -

Note :

- -

This API is based on Chromium's chrome.contextMenus API. This documentation is derived from context_menus.json in the Chromium code.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/createproperties/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/createproperties/index.md new file mode 100644 index 0000000000..bae8cfe9ca --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/createproperties/index.md @@ -0,0 +1,128 @@ +--- +title: createProperties +slug: Mozilla/Add-ons/WebExtensions/API/menus/createProperties +translation_of: Mozilla/Add-ons/WebExtensions/API/menus/createProperties +--- +

{{AddonSidebar()}}

+ +

Un object 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.

+ +
+
checked {{optional_inline}}
+
boolean. The initial state of a checkbox or radio item: true for selected and false for unselected. Only one radio item can be selected at a time in a given group of radio items.
+
command {{optional_inline}}
+
+

string. String describing an action that should be taken when the user clicks the item. Possible values are:

+ +
    +
  • "_execute_browser_action": simulate a click on the extension's browser action, opening its popup if it has one
  • +
  • "_execute_page_action": simulate a click on the extension's page action, opening its popup if it has one
  • +
  • "_execute_sidebar_action": open the extension's sidebar
  • +
+ +

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 onClicked fires.

+
+
contexts {{optional_inline}}
+
+

array of {{WebExtAPIRef('menus.ContextType')}}. Array of contexts in which this menu item will appear. If this option is omitted:

+ +
    +
  • if the item's parent has contexts set, then this item will inherit its parent's contexts
  • +
  • otherwise, the item is given a context array of ["page"].
  • +
+
+
documentUrlPatterns {{optional_inline}}
+
array of string. Lets you restrict the item to apply only to documents whose URL matches one of the given match patterns. This applies to frames as well.
+
enabled {{optional_inline}}
+
boolean. Whether this menu item is enabled or disabled. Defaults to true.
+
icons {{optional_inline}}
+
+

object. 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:

+ +
"icons": {
+      "16": "path/to/geo-16.png",
+      "32": "path/to/geo-32.png"
+    }
+ +

Alternatively, you can specify a single SVG icon, and it will be scaled appropriately:

+ +
"icons": {
+      "16": "path/to/geo.svg"
+    }
+ +
+

Note : The top-level menu item uses the icons specified in the manifest rather than what is specified with this key.

+
+
+
id {{optional_inline}}
+
string. The unique ID to assign to this item. Mandatory for event pages. Cannot be the same as another ID for this extension.
+
onclick {{optional_inline}}
+
function. 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')}}.
+
parentId {{optional_inline}}
+
integer or string. 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.
+
targetUrlPatterns {{optional_inline}}
+
array of string. Similar to documentUrlPatterns, but lets you filter based on the href of anchor tags and the src attribute of img/audio/video tags. This parameter supports any URL scheme, even those that are usually not allowed in a match pattern.
+
title {{optional_inline}}
+
+

string. The text to be displayed in the item. Mandatory unless type is "separator".

+ +

You can use "%s" 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 title 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".

+ +

If the title contains an ampersand "&" 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:

+ +
    +
  • If the next character is also an ampersand: then a single ampersand will be displayed and no access key will be set. In effect, "&&" is used to display a single ampersand.
  • +
  • If the next characters are the interpolation directive "%s": then the ampersand will not be displayed and no access key will be set.
  • +
  • If the ampersand is the last character in the title: then the ampersand will not be displayed and no access key will be set.
  • +
+ +

Only the first ampersand will be used to set an access key: subsequent ampersands will not be displayed but will not set keys. So "&A and &B" will be shown as "A and B" and set "A" as the access key.

+
+
type {{optional_inline}}
+
{{WebExtAPIRef('menus.ItemType')}}. The type of menu item: "normal", "checkbox", "radio", "separator". Defaults to "normal".
+
viewTypes {{optional_inline}}
+
{{WebExtAPIRef('extension.ViewType')}}. List of view types where the menu item will be shown. Defaults to any view, including those without a viewType.
+
visible {{optional_inline}}
+
boolean. Whether the item is shown in the menu. Defaults to true.
+
+ +

Browser compatibility

+ +

{{Compat("webextensions.api.menus.createProperties", 10)}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

This API is based on Chromium's chrome.contextMenus API. This documentation is derived from context_menus.json in the Chromium code.

+
+ + 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 deleted file mode 100644 index 3965d1355d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/gettargetelement/index.html +++ /dev/null @@ -1,74 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Renvoie l'élément pour un targetElementId donné

- -

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  info.targetElementId donnée, à condition que l'élément existe toujours dans le document où la méthode est appelée.

- -

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 targetElementId expire lorsque l'utilisateur ouvre un autre menu contextuel.

- -
-

Note: menus.getTargetElement 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).

-
- -


- Une extension nécessite la permission "menus" pour utiliser cette API

- -

Syntaxe

- -
let elem = browser.menus.getTargetElement(targetElementId);
-
- -

Paramètres

- -
-
targetElementId
-
La propriété de l'objet {{WebExtAPIRef("menus.OnClickData")}} passé au gestionnaire {{WebExtAPIRef("menus.onClicked")}}ou à l'événement {{WebExtAPIRef("menus.onShown")}}.
-
- -

Valeur retournée

- -

L'élément auquel se réfère le paramètre targetElementId. Si le paramètre targetElementId n'est pas valide, La méthode retourne null.

- -

Exemples

- -

L'exemple suivant utilise la méthode getTargetElement pour obtenir l'élément auquel se réfère la propriété info.targetElementId puis le supprime.

- -
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();`,
-    });
-  },
-});
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.menus.getTargetElement")}}

- -

voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/gettargetelement/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/gettargetelement/index.md new file mode 100644 index 0000000000..3965d1355d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/gettargetelement/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Renvoie l'élément pour un targetElementId donné

+ +

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  info.targetElementId donnée, à condition que l'élément existe toujours dans le document où la méthode est appelée.

+ +

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 targetElementId expire lorsque l'utilisateur ouvre un autre menu contextuel.

+ +
+

Note: menus.getTargetElement 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).

+
+ +


+ Une extension nécessite la permission "menus" pour utiliser cette API

+ +

Syntaxe

+ +
let elem = browser.menus.getTargetElement(targetElementId);
+
+ +

Paramètres

+ +
+
targetElementId
+
La propriété de l'objet {{WebExtAPIRef("menus.OnClickData")}} passé au gestionnaire {{WebExtAPIRef("menus.onClicked")}}ou à l'événement {{WebExtAPIRef("menus.onShown")}}.
+
+ +

Valeur retournée

+ +

L'élément auquel se réfère le paramètre targetElementId. Si le paramètre targetElementId n'est pas valide, La méthode retourne null.

+ +

Exemples

+ +

L'exemple suivant utilise la méthode getTargetElement pour obtenir l'élément auquel se réfère la propriété info.targetElementId puis le supprime.

+ +
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();`,
+    });
+  },
+});
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.menus.getTargetElement")}}

+ +

voir aussi

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/index.html b/files/fr/mozilla/add-ons/webextensions/api/menus/index.html deleted file mode 100644 index d6bfc9eebc..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/index.html +++ /dev/null @@ -1,203 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Ajoutez des éléments au système de menus du navigateur.

- -

Cette API est modélisée dans l'API "contextMenus" de Chrome, qui permet aux extensions Chrome d'ajouter des éléments au menu contextuel du navigateur. L'API browser.menus ajoute quelques fonctionnalités à l'API de Chrome.

- -

Avant Firefox 55, cette API s'appelait à l'origine contextMenus, et ce nom a été retenu comme alias. Vous pouvez donc utiliser contextMenus pour écrire du code qui fonctionne dans Firefox et dans d'autres navigateurs.

- -

Pour utiliser cette API, vous devez avoir la permission des  menus. vous pouvez également utiliser l'alias contextMenus à la place des menus, mais si vous le faites, vous devez accéder aux API sous le nom browser.contextMenus à la place.

- -

Excepté que menus.getTargetElement(), cette API ne peut pas être utilisée à partir de scripts de contenu.

- -

Créer des éléments de menu

- -

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é.

- -

É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.

- -

Vous pouvez créer quatre types différents d'élément de menu, en fonction de la valeur de la propriété type que vous fournissez dans les options de create():

- - - -

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:

- -

- -

Icônes

- -

Si vous avez spécifié des icônes pour votre extension à l'aide de la clé de manifest "icons", 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 :

- -

- -

Uniquement pour les éléments d'un sous-menu, vous pouvez spécifier des icônes personnalisées en passant l'option icons à {{WebExtAPIRef("menus.create()")}} :

- -

- -

Exemple

- -

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.

- -

Vous pouvez créer un sous-menu comme celui-ci en utilisant du code comme :

- -
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);
- -

Types

- -
-
{{WebExtAPIRef("menus.ContextType")}}
-
Les différents contextes dans lesquels un menu peut apparaître.
-
{{WebExtAPIRef("menus.ItemType")}}
-
Le type d'élément de menu : "normal", "checkbox", "radio", "separator".
-
{{WebExtAPIRef("menus.OnClickData")}}
-
Informations envoyées lorsqu'un élément de menu est cliqué.
-
- -

Propriétés

- -
-
{{WebExtAPIRef("menus.ACTION_MENU_TOP_LEVEL_LIMIT")}}
-
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".
-
- -

Functions

- -
-
{{WebExtAPIRef("menus.create()")}}
-
Crée un nouvel élément de menu.
-
{{WebExtApiRef("menus.getTargetElement()")}}
-
Retourne l'élément pour un info.targetElementId donné
-
{{WebExtApiRef("menus.overrideContext()")}}
-
Masquer tous les éléments de menu par défaut de Firefox en faveur d'une interface utilisateur de menu contextuel personnalisé.
-
{{WebExtAPIRef("menus.refresh()")}}
-
Mettre à jour un menu actuellement affiché.
-
{{WebExtAPIRef("menus.remove()")}}
-
Supprime un élément de menu.
-
{{WebExtAPIRef("menus.removeAll()")}}
-
Supprime tous les éléments de menu ajoutés par cette extension.
-
{{WebExtAPIRef("menus.update()")}}
-
Met à jour un élément de menu précédemment créé.
-
- -

Evénements

- -
-
{{WebExtAPIRef("menus.onClicked")}}
-
Lancé lorsqu'un élément de menu est cliqué.
-
{{WebExtAPIRef("menus.onHidden")}}
-
Lancé lorsque le navigateur cache un menu.
-
{{WebExtAPIRef("menus.onShown")}}
-
Lancé lorsque le navigateur affiche un menu.
-
- -

Compatibilité du navigateur

- -

{{ Compat("webextensions.api.menus", 1, "true") }}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/index.md new file mode 100644 index 0000000000..d6bfc9eebc --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Ajoutez des éléments au système de menus du navigateur.

+ +

Cette API est modélisée dans l'API "contextMenus" de Chrome, qui permet aux extensions Chrome d'ajouter des éléments au menu contextuel du navigateur. L'API browser.menus ajoute quelques fonctionnalités à l'API de Chrome.

+ +

Avant Firefox 55, cette API s'appelait à l'origine contextMenus, et ce nom a été retenu comme alias. Vous pouvez donc utiliser contextMenus pour écrire du code qui fonctionne dans Firefox et dans d'autres navigateurs.

+ +

Pour utiliser cette API, vous devez avoir la permission des  menus. vous pouvez également utiliser l'alias contextMenus à la place des menus, mais si vous le faites, vous devez accéder aux API sous le nom browser.contextMenus à la place.

+ +

Excepté que menus.getTargetElement(), cette API ne peut pas être utilisée à partir de scripts de contenu.

+ +

Créer des éléments de menu

+ +

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é.

+ +

É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.

+ +

Vous pouvez créer quatre types différents d'élément de menu, en fonction de la valeur de la propriété type que vous fournissez dans les options de create():

+ + + +

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:

+ +

+ +

Icônes

+ +

Si vous avez spécifié des icônes pour votre extension à l'aide de la clé de manifest "icons", 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 :

+ +

+ +

Uniquement pour les éléments d'un sous-menu, vous pouvez spécifier des icônes personnalisées en passant l'option icons à {{WebExtAPIRef("menus.create()")}} :

+ +

+ +

Exemple

+ +

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.

+ +

Vous pouvez créer un sous-menu comme celui-ci en utilisant du code comme :

+ +
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);
+ +

Types

+ +
+
{{WebExtAPIRef("menus.ContextType")}}
+
Les différents contextes dans lesquels un menu peut apparaître.
+
{{WebExtAPIRef("menus.ItemType")}}
+
Le type d'élément de menu : "normal", "checkbox", "radio", "separator".
+
{{WebExtAPIRef("menus.OnClickData")}}
+
Informations envoyées lorsqu'un élément de menu est cliqué.
+
+ +

Propriétés

+ +
+
{{WebExtAPIRef("menus.ACTION_MENU_TOP_LEVEL_LIMIT")}}
+
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".
+
+ +

Functions

+ +
+
{{WebExtAPIRef("menus.create()")}}
+
Crée un nouvel élément de menu.
+
{{WebExtApiRef("menus.getTargetElement()")}}
+
Retourne l'élément pour un info.targetElementId donné
+
{{WebExtApiRef("menus.overrideContext()")}}
+
Masquer tous les éléments de menu par défaut de Firefox en faveur d'une interface utilisateur de menu contextuel personnalisé.
+
{{WebExtAPIRef("menus.refresh()")}}
+
Mettre à jour un menu actuellement affiché.
+
{{WebExtAPIRef("menus.remove()")}}
+
Supprime un élément de menu.
+
{{WebExtAPIRef("menus.removeAll()")}}
+
Supprime tous les éléments de menu ajoutés par cette extension.
+
{{WebExtAPIRef("menus.update()")}}
+
Met à jour un élément de menu précédemment créé.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("menus.onClicked")}}
+
Lancé lorsqu'un élément de menu est cliqué.
+
{{WebExtAPIRef("menus.onHidden")}}
+
Lancé lorsque le navigateur cache un menu.
+
{{WebExtAPIRef("menus.onShown")}}
+
Lancé lorsque le navigateur affiche un menu.
+
+ +

Compatibilité du navigateur

+ +

{{ Compat("webextensions.api.menus", 1, "true") }}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

+
+ + 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 deleted file mode 100644 index 070bc6a36a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/itemtype/index.html +++ /dev/null @@ -1,79 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type d'élément de menu.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont:

- -
-
normal
-
Un élément de menu qui affiche simplement une étiquette.
-
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 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.

-
-
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  {{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é.

-
-
separator
-
Une ligne séparant un groupe d'éléments.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.menus.ItemType", 10)}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/itemtype/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/itemtype/index.md new file mode 100644 index 0000000000..070bc6a36a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/itemtype/index.md @@ -0,0 +1,79 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type d'élément de menu.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont:

+ +
+
normal
+
Un élément de menu qui affiche simplement une étiquette.
+
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 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.

+
+
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  {{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é.

+
+
separator
+
Une ligne séparant un groupe d'éléments.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.menus.ItemType", 10)}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

+
+ + 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 deleted file mode 100644 index a0385e964c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/onclickdata/index.html +++ /dev/null @@ -1,103 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Informations transmises à l'écouteur d'événement {{WebExtAPIRef("menus.onClicked")}} lorsque vous cliquez sur un élément de menu.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
bookmarkId {{optional_inline}}
-
string. L'ID du signet dans lequel le menu contextuel a été cliqué.***
-
button {{optional_inline}}
-
integer. Quel bouton de la souris a été enfoncé. Les valeurs sont les mêmes que pour  MouseEvent.button.
-
checked {{optional_inline}}
-
boolean. Un flag indiquant si une case à cocher ou un élément radio a été vérifié après avoir été cliqué.
-
editable
-
boolean. Un indicateur indiquant si l'élément est modifiable: par exemple, s'il s'agit d'un textarea.
-
frameId {{optional_inline}}
-
integer. 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 tools_menu ou tab context), frameId n'est pas défini.
-
frameUrl {{optional_inline}}
-
string. L'URL du cadre de l'élément sur lequel le menu contextuel a été cliqué, s'il était dans un cadre
-
linkText {{optional_inline}}
-
string. 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.
-
linkUrl {{optional_inline}}
-
string. Si l'élément est un lien, l'URL vers laquelle il pointe.
-
mediaType {{optional_inline}}
-
string. Une de "image", "video", ou "audio" si le menu contextuel a été activé sur l'un de ces types d'éléments.
-
menuItemId
-
integer ou string. ID de l'élément de menu sur lequel vous avez cliqué.
-
modifiers
-
Array destring. 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.
-
pageUrl {{optional_inline}}
-
string. 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.
-
parentMenuItemId {{optional_inline}}
-
integer ou string. L'ID parent, le cas échéant, pour l'élément cliqué.
-
selectionText {{optional_inline}}
-
string. Si du texte a été sélectionné dans la page, il contient le texte sélectionné.
-
srcUrl {{optional_inline}}
-
string. Sera présent pour les éléments avec une URL "src".
-
targetElementId{{optional_inline}}
-
integer. 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 id de l'élément page.
-
viewType {{optional_inline}}
-
{{WebExtAPIRef("extension.ViewType", "ViewType")}}. Le type de vue de l'extension.
-
wasChecked {{optional_inline}}
-
boolean. Un indicateur indiquant si une case à cocher ou un élément radio a été vérifié avant d'avoir cliqué.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.menus.OnClickData", 10)}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/onclickdata/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/onclickdata/index.md new file mode 100644 index 0000000000..a0385e964c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/onclickdata/index.md @@ -0,0 +1,103 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Informations transmises à l'écouteur d'événement {{WebExtAPIRef("menus.onClicked")}} lorsque vous cliquez sur un élément de menu.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
bookmarkId {{optional_inline}}
+
string. L'ID du signet dans lequel le menu contextuel a été cliqué.***
+
button {{optional_inline}}
+
integer. Quel bouton de la souris a été enfoncé. Les valeurs sont les mêmes que pour  MouseEvent.button.
+
checked {{optional_inline}}
+
boolean. Un flag indiquant si une case à cocher ou un élément radio a été vérifié après avoir été cliqué.
+
editable
+
boolean. Un indicateur indiquant si l'élément est modifiable: par exemple, s'il s'agit d'un textarea.
+
frameId {{optional_inline}}
+
integer. 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 tools_menu ou tab context), frameId n'est pas défini.
+
frameUrl {{optional_inline}}
+
string. L'URL du cadre de l'élément sur lequel le menu contextuel a été cliqué, s'il était dans un cadre
+
linkText {{optional_inline}}
+
string. 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.
+
linkUrl {{optional_inline}}
+
string. Si l'élément est un lien, l'URL vers laquelle il pointe.
+
mediaType {{optional_inline}}
+
string. Une de "image", "video", ou "audio" si le menu contextuel a été activé sur l'un de ces types d'éléments.
+
menuItemId
+
integer ou string. ID de l'élément de menu sur lequel vous avez cliqué.
+
modifiers
+
Array destring. 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.
+
pageUrl {{optional_inline}}
+
string. 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.
+
parentMenuItemId {{optional_inline}}
+
integer ou string. L'ID parent, le cas échéant, pour l'élément cliqué.
+
selectionText {{optional_inline}}
+
string. Si du texte a été sélectionné dans la page, il contient le texte sélectionné.
+
srcUrl {{optional_inline}}
+
string. Sera présent pour les éléments avec une URL "src".
+
targetElementId{{optional_inline}}
+
integer. 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 id de l'élément page.
+
viewType {{optional_inline}}
+
{{WebExtAPIRef("extension.ViewType", "ViewType")}}. Le type de vue de l'extension.
+
wasChecked {{optional_inline}}
+
boolean. Un indicateur indiquant si une case à cocher ou un élément radio a été vérifié avant d'avoir cliqué.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.menus.OnClickData", 10)}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

+
+ + 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 deleted file mode 100644 index df69d648c9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/onclicked/index.html +++ /dev/null @@ -1,116 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'un élément de menu est cliqué.

- -

Pour la compatibilité avec les autres navigateurs, Firefox rend cet événement disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

- -

Syntaxe

- -
browser.menus.onClicked.addListener(listener)
-browser.menus.onClicked.removeListener(listener)
-browser.menus.onClicked.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
info
-
{{WebExtAPIRef('menus.OnClickData')}}. Informations sur l'élément cliqué et le contexte dans lequel le clic s'est produit.
-
- -
-
tab
-
{{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.
-
-
-
- -

Compatibilté du navigateur

- -

{{Compat("webextensions.api.menus.onClicked", 10)}}

- -

Exemples

- -

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 :

- -
browser.menus.create({
-  id: "click-me",
-  title: "Click me!",
-  contexts: ["all"]
-});
-
-browser.menus.onClicked.addListener((info, tab) => {
-  console.log("Item " + info.menuItemId + " clicked " +
-              "in tab " + tab.id);
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/onclicked/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/onclicked/index.md new file mode 100644 index 0000000000..df69d648c9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/onclicked/index.md @@ -0,0 +1,116 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'un élément de menu est cliqué.

+ +

Pour la compatibilité avec les autres navigateurs, Firefox rend cet événement disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

+ +

Syntaxe

+ +
browser.menus.onClicked.addListener(listener)
+browser.menus.onClicked.removeListener(listener)
+browser.menus.onClicked.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
info
+
{{WebExtAPIRef('menus.OnClickData')}}. Informations sur l'élément cliqué et le contexte dans lequel le clic s'est produit.
+
+ +
+
tab
+
{{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.
+
+
+
+ +

Compatibilté du navigateur

+ +

{{Compat("webextensions.api.menus.onClicked", 10)}}

+ +

Exemples

+ +

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 :

+ +
browser.menus.create({
+  id: "click-me",
+  title: "Click me!",
+  contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener((info, tab) => {
+  console.log("Item " + info.menuItemId + " clicked " +
+              "in tab " + tab.id);
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

+
+ + 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 deleted file mode 100644 index d2e1c3fd8c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/onhidden/index.html +++ /dev/null @@ -1,68 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

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.

- -

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é.

- -

Firefox rend cet événement disponible via l'espace de noms contextMenus ainsi que l'espace de nom des menus.

- -

Syntaxe

- -
browser.menus.onHidden.addListener(listener)
-browser.menus.onHidden.removeListener(listener)
-browser.menus.onHidden.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener  est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, false sinon.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction sera transmise sans paramètre.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.menus.onHidden", 10)}}

- -

Exemples

- -

Cet exemple enregistre simplement un message chaque fois qu'un menu est masqué :

- -
function hidden() {
-  console.log("Menu was hidden");
-}
-
-browser.menus.onHidden.addListener(hidden);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/onhidden/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/onhidden/index.md new file mode 100644 index 0000000000..d2e1c3fd8c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/onhidden/index.md @@ -0,0 +1,68 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

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.

+ +

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é.

+ +

Firefox rend cet événement disponible via l'espace de noms contextMenus ainsi que l'espace de nom des menus.

+ +

Syntaxe

+ +
browser.menus.onHidden.addListener(listener)
+browser.menus.onHidden.removeListener(listener)
+browser.menus.onHidden.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener  est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, false sinon.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction sera transmise sans paramètre.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.menus.onHidden", 10)}}

+ +

Exemples

+ +

Cet exemple enregistre simplement un message chaque fois qu'un menu est masqué :

+ +
function hidden() {
+  console.log("Menu was hidden");
+}
+
+browser.menus.onHidden.addListener(hidden);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 9765d30086..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/onshown/index.html +++ /dev/null @@ -1,151 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsque le navigateur a montré un menu.

- -

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 onShown puis appellera {{WebExtAPIRef("menus.refresh()")}} pour mettre à jour le menu lui-même.

- -

Le gestionnaire peut ajouter, supprimer ou mettre à jour des éléments de menu.

- -

Par exemple, l'extension d'exemple menu-labelled-open  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 onShown et refresh() 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.

- -

Notez qu'une extension ne devrait pas prendre trop de temps avant d'appeler refresh(), sinon la mise à jour sera visible par l'utilisateur.

- -

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 permission de l'hôte.

- -

Si le gestionnaire onShown 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 :

- -
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;
-});
- -

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 :

- -
browser.menus.onShown.addListener(async function(info, tab) {
-  browser.menus.update(menuId, ...);
-   // Note: Not waiting for returned promise.
-  browser.menus.refresh();
-});
- -

Toutefois, si vous appelez ces API de manière asynchrone, vous devez effectuer la vérification suivante :

- -
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();
-});
- -

Firefox rend cet événement disponible via l'espace de noms contextMenus ainsi que l'espace de nom des menus.

- -

Syntaxe

- -
browser.menus.onShown.addListener(listener)
-browser.menus.onShown.removeListener(listener)
-browser.menus.onShown.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si le listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
info
-
-

Object. Ceci est juste comme l'objet {{WebExtAPIRef('menus.OnClickData')}}, sauf qu'il contient deux propriétés supplémentaires:

- -
    -
  • contexts: un tableau de tous les {{WebExtAPIRef("menus.ContextType", "contexts")}} applicables à ce menu.
  • -
  • menuIds: un tableau d'ID de tous les éléments de menu appartenant à cette extension qui sont affichés dans ce menu.
  • -
- -

En comparaison avec menus.OnClickData, l'objet info omet également les propriétés menuItemId et modifiers, car bien sûr, celles-ci ne sont pas disponibles tant qu'un élément de menu n'a pas été sélectionné.

- -

Les propriétés contexts, menuIds, frameId, et editable modifiables sont toujours fournis. Toutes les autres propriétés dans info sont uniquement fournies si l'extension a la permission d'hôte pour la page.

-
-
- -
-
tab
-
{{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.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.menus.onShown", 10)}}

- -

Exemples

- -

Cet exemple permet d'afficher le menu contextuel sur un lien, puis met à jour l'élément de menu openLabelledId avec le nom d'hôte du lien :

- -
function updateMenuItem(linkHostname) {
-  browser.menus.update(openLabelledId, {
-    title: `Open (${linkHostname})`
-  });
-  browser.menus.refresh();
-}
-
-browser.menus.onShown.addListener(info => {
-  if (!info.linkUrl) {
-    return;
-  }
-  let linkElement = document.createElement("a");
-  linkElement.href = info.linkUrl;
-  updateMenuItem(linkElement.hostname);
-});
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/onshown/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/onshown/index.md new file mode 100644 index 0000000000..9765d30086 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/onshown/index.md @@ -0,0 +1,151 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque le navigateur a montré un menu.

+ +

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 onShown puis appellera {{WebExtAPIRef("menus.refresh()")}} pour mettre à jour le menu lui-même.

+ +

Le gestionnaire peut ajouter, supprimer ou mettre à jour des éléments de menu.

+ +

Par exemple, l'extension d'exemple menu-labelled-open  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 onShown et refresh() 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.

+ +

Notez qu'une extension ne devrait pas prendre trop de temps avant d'appeler refresh(), sinon la mise à jour sera visible par l'utilisateur.

+ +

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 permission de l'hôte.

+ +

Si le gestionnaire onShown 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 :

+ +
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;
+});
+ +

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 :

+ +
browser.menus.onShown.addListener(async function(info, tab) {
+  browser.menus.update(menuId, ...);
+   // Note: Not waiting for returned promise.
+  browser.menus.refresh();
+});
+ +

Toutefois, si vous appelez ces API de manière asynchrone, vous devez effectuer la vérification suivante :

+ +
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();
+});
+ +

Firefox rend cet événement disponible via l'espace de noms contextMenus ainsi que l'espace de nom des menus.

+ +

Syntaxe

+ +
browser.menus.onShown.addListener(listener)
+browser.menus.onShown.removeListener(listener)
+browser.menus.onShown.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si le listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
info
+
+

Object. Ceci est juste comme l'objet {{WebExtAPIRef('menus.OnClickData')}}, sauf qu'il contient deux propriétés supplémentaires:

+ +
    +
  • contexts: un tableau de tous les {{WebExtAPIRef("menus.ContextType", "contexts")}} applicables à ce menu.
  • +
  • menuIds: un tableau d'ID de tous les éléments de menu appartenant à cette extension qui sont affichés dans ce menu.
  • +
+ +

En comparaison avec menus.OnClickData, l'objet info omet également les propriétés menuItemId et modifiers, car bien sûr, celles-ci ne sont pas disponibles tant qu'un élément de menu n'a pas été sélectionné.

+ +

Les propriétés contexts, menuIds, frameId, et editable modifiables sont toujours fournis. Toutes les autres propriétés dans info sont uniquement fournies si l'extension a la permission d'hôte pour la page.

+
+
+ +
+
tab
+
{{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.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.menus.onShown", 10)}}

+ +

Exemples

+ +

Cet exemple permet d'afficher le menu contextuel sur un lien, puis met à jour l'élément de menu openLabelledId avec le nom d'hôte du lien :

+ +
function updateMenuItem(linkHostname) {
+  browser.menus.update(openLabelledId, {
+    title: `Open (${linkHostname})`
+  });
+  browser.menus.refresh();
+}
+
+browser.menus.onShown.addListener(info => {
+  if (!info.linkUrl) {
+    return;
+  }
+  let linkElement = document.createElement("a");
+  linkElement.href = info.linkUrl;
+  updateMenuItem(linkElement.hostname);
+});
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 739b9acbd5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/overridecontext/index.html +++ /dev/null @@ -1,44 +0,0 @@ ---- -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 ---- -

{{AddonSidebar}}

- -

Masquer tous les éléments de menu par défaut de Firefox en faveur d'un menu contextuel personnalisé.

- -

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.

- -

Pour appeler cette méthode, votre extension doit avoir la permission menus.overrideContext.

- -

Syntaxe

- -
browser.menus.overrideContext(
-  contextOptions // object
-)
- -

Paramètres

- -
-
contextOptions
-

object. Options sur la façon dont les menus contextuels seront remplacés.

-
-
showDefaults {{optional_inline}}
-
boolean. S'il faut également inclure les éléments de menu par défaut dans le menu.
-
context {{optional_inline}}
-
string. Le ContextType à surcharger, pour autoriser les éléments de menu d'autres extensions dans le menu. Actuellement, seuls 'bookmark' et 'tab' sont supportés. showDefaults ne peut pas être utilisé avec cette option.
-
bookmarkId {{optional_inline}}
-
string. Requis lorsque le contexte est  'bookmark'. Nécessite la permission  'bookmark'.
-
tabId {{optional_inline}}
-
integer. Requis lorsque le contexte est 'tab'. Nécessite la permission 'tabs'.
-
-
-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/overridecontext/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/overridecontext/index.md new file mode 100644 index 0000000000..739b9acbd5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/overridecontext/index.md @@ -0,0 +1,44 @@ +--- +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 +--- +

{{AddonSidebar}}

+ +

Masquer tous les éléments de menu par défaut de Firefox en faveur d'un menu contextuel personnalisé.

+ +

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.

+ +

Pour appeler cette méthode, votre extension doit avoir la permission menus.overrideContext.

+ +

Syntaxe

+ +
browser.menus.overrideContext(
+  contextOptions // object
+)
+ +

Paramètres

+ +
+
contextOptions
+

object. Options sur la façon dont les menus contextuels seront remplacés.

+
+
showDefaults {{optional_inline}}
+
boolean. S'il faut également inclure les éléments de menu par défaut dans le menu.
+
context {{optional_inline}}
+
string. Le ContextType à surcharger, pour autoriser les éléments de menu d'autres extensions dans le menu. Actuellement, seuls 'bookmark' et 'tab' sont supportés. showDefaults ne peut pas être utilisé avec cette option.
+
bookmarkId {{optional_inline}}
+
string. Requis lorsque le contexte est  'bookmark'. Nécessite la permission  'bookmark'.
+
tabId {{optional_inline}}
+
integer. Requis lorsque le contexte est 'tab'. Nécessite la permission 'tabs'.
+
+
+
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 deleted file mode 100644 index 925305277d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/refresh/index.html +++ /dev/null @@ -1,64 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Actualise un menu affiché.

- -

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.

- -

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.

- -

Firefox rend cette fonction disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
browser.menus.refresh()
-
- -

Paramètres

- -

Aucun.

- -

Valeur retournée

- -

Une Promise qui se réalise sans arguments.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.menus.refresh", 10)}}

- -

Exemples

- -

Cet exemple permet d'afficher le menu contextuel sur un lien, puis met à jour l'élément de menu openLabelledId menu item avec le nom d'hôte du lien :

- -
function updateMenuItem(linkHostname) {
-  browser.menus.update(openLabelledId, {
-    title: `Open (${linkHostname})`
-  });
-  browser.menus.refresh();
-}
-
-browser.menus.onShown.addListener(info => {
-  if (!info.linkUrl) {
-    return;
-  }
-  let linkElement = document.createElement("a");
-  linkElement.href = info.linkUrl;
-  updateMenuItem(linkElement.hostname);
-});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/refresh/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/refresh/index.md new file mode 100644 index 0000000000..925305277d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/refresh/index.md @@ -0,0 +1,64 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Actualise un menu affiché.

+ +

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.

+ +

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.

+ +

Firefox rend cette fonction disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
browser.menus.refresh()
+
+ +

Paramètres

+ +

Aucun.

+ +

Valeur retournée

+ +

Une Promise qui se réalise sans arguments.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.menus.refresh", 10)}}

+ +

Exemples

+ +

Cet exemple permet d'afficher le menu contextuel sur un lien, puis met à jour l'élément de menu openLabelledId menu item avec le nom d'hôte du lien :

+ +
function updateMenuItem(linkHostname) {
+  browser.menus.update(openLabelledId, {
+    title: `Open (${linkHostname})`
+  });
+  browser.menus.refresh();
+}
+
+browser.menus.onShown.addListener(info => {
+  if (!info.linkUrl) {
+    return;
+  }
+  let linkElement = document.createElement("a");
+  linkElement.href = info.linkUrl;
+  updateMenuItem(linkElement.hostname);
+});
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index e3084010cf..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/remove/index.html +++ /dev/null @@ -1,107 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Supprime un élément de menu.

- -

Pour la compatibilité avec d'autres navigateurs, Firefox rend cette méthode disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.menus.remove(
-  menuItemId      // integer or string
-)
-
- -

Parameters

- -
-
menuItemId
-
integer or string. The ID of the menu item to remove.
-
- -

Valeur retournée

- -

Une Promise 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é).

- -

Exemples

- -

Cette extension ajoute un élément de menu intitulé "Remove me!". Si vous cliquez sur l'élément, l'extension le supprime.

- -
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);
-  }
-});
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.menus.remove", 10)}}

- -

Note :

- -

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/remove/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/remove/index.md new file mode 100644 index 0000000000..e3084010cf --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/remove/index.md @@ -0,0 +1,107 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Supprime un élément de menu.

+ +

Pour la compatibilité avec d'autres navigateurs, Firefox rend cette méthode disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.menus.remove(
+  menuItemId      // integer or string
+)
+
+ +

Parameters

+ +
+
menuItemId
+
integer or string. The ID of the menu item to remove.
+
+ +

Valeur retournée

+ +

Une Promise 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é).

+ +

Exemples

+ +

Cette extension ajoute un élément de menu intitulé "Remove me!". Si vous cliquez sur l'élément, l'extension le supprime.

+ +
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);
+  }
+});
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.menus.remove", 10)}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

+
+ + 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 deleted file mode 100644 index 5654a5e15c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/removeall/index.html +++ /dev/null @@ -1,105 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Supprime tous les éléments de menu ajoutés par l'extension.

- -

Pour la compatibilité avec d'autres navigateurs, Firefox rend cette méthode disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.menus.removeAll()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui sera remplie sans argument lorsque tous les éléments ont été supprimés.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.menus.removeAll", 10)}}

- -

Exemples

- -

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 removeAll().

- -
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);
-  }
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/removeall/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/removeall/index.md new file mode 100644 index 0000000000..5654a5e15c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/removeall/index.md @@ -0,0 +1,105 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Supprime tous les éléments de menu ajoutés par l'extension.

+ +

Pour la compatibilité avec d'autres navigateurs, Firefox rend cette méthode disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.menus.removeAll()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie sans argument lorsque tous les éléments ont été supprimés.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.menus.removeAll", 10)}}

+ +

Exemples

+ +

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 removeAll().

+ +
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);
+  }
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

+
+ + 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 deleted file mode 100644 index 762d21d228..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/menus/update/index.html +++ /dev/null @@ -1,191 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Met à jour un élément de menu précédemment créé.

- -

Pour la compatibilité avec d'autres navigateurs, Firefox rend cette méthode disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var updating = browser.menus.update(
-  id,               // integer or string
-  updateProperties // object
-)
-
- -

Paramètres

- -
-
id
-
integer ou string. L'ID de l'article à mettre à jour.
-
updateProperties
-

object. Les propriétés à mettre à jour. Identique à l'objet createProperties passé à  {{WebExtAPIRef("menus.create()", "menus.create()")}}, sauf que l'id ne peut être défini. En outre, les icônes 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.

-
-
checked {{optional_inline}}
-
boolean. L'état initial d'une case à cocher ou d'un élément radio : true fpour sélectionné et false pour non sélectionné. Un seul élément radio peut être sélectionné à la fois dans un groupe donné d'éléments radio.
-
command {{optional_inline}}
-
-

string. Chaîne décrivant une action qui doit être effectuée lorsque l'utilisateur clique sur l'élément. Les valeurs possibles sont :

- -
    -
  • "_execute_browser_action": simuler un clic sur l'action du navigateur de l'extension, en ouvrant son popup s'il en a un
  • -
  • "_execute_page_action": simuler un clic sur l'action de la page de l'extension, en ouvrant son popup si elle en a une
  • -
  • "_execute_sidebar_action": ouvre la barre latérale de l'extension
  • -
- -

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 onClicked.

-
-
contexts {{optional_inline}}
-
-

array de {{WebExtAPIRef('menus.ContextType')}}. Tableau des contextes dans lesquels cet élément de menu apparaîtra. Si cette option est omise :

- -
    -
  • si le parent de l'élément a des contextes définis, alors cet élément héritera des contextes de son parent
  • -
  • sinon, l'élément reçoit un tableau de contexte de ["page"].
  • -
-
-
documentUrlPatterns {{optional_inline}}
-
array de string. Vous permet de limiter l'élément à s'appliquer uniquement aux documents dont l'URL correspond à l'un des éléments motifs de données. Ceci s'applique également aux cadres.
-
enabled {{optional_inline}}
-
boolean. Si cet élément de menu est activé ou désactivé. La valeur par défaut est true.
-
icons {{optional_inline}}
-
-

object. 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 :

- -
"icons": {
-      "16": "path/to/geo-16.png",
-      "32": "path/to/geo-32.png"
-    }
- -

Alternativement, vous pouvez spécifier une seule icône SVG, et elle sera mise à l'échelle de manière appropriée :

- -
"icons": {
-      "16": "path/to/geo.svg"
-    }
- -
-

Note : The top-level menu item uses the icons specified in the manifest rather than what is specified with this key.

-
-
-
id {{optional_inline}}
-
string. 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.
-
onclick {{optional_inline}}
-
function. 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')}}.
-
parentId {{optional_inline}}
-
integer ou string. 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.
-
targetUrlPatterns {{optional_inline}}
-
array de string. Similairer à documentUrlPatterns, mais vous permet de filtrer en fonction de la href des balises d'ancre et l'attribut src 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.
-
title {{optional_inline}}
-
-

string. Le texte à afficher dans le poste. Obligatoire sauf si le type est "separateur".

- -

Vous pouvez utiliser "%s" 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 title 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".

- -

Si le titre contient une esperluette "&", 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 :

- -
    -
  • 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, "&&" est utilisé pour afficher une seule esperluette.
  • -
  • 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.
  • -
  • 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.
  • -
- -

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, "&A et &B" seront affichés comme "A et B" et "A" comme clé d'accès

-
-
type {{optional_inline}}
-
{{WebExtAPIRef('menus.ItemType')}}. Le type d'élément de menu : "normal", "checkbox", "radio", "separator". Defaults to "normal".
-
viewTypes {{optional_inline}}
-
{{WebExtAPIRef('extension.ViewType')}}. 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 viewType.
-
visible {{optional_inline}}
-
boolean. Si l'élément est affiché dans le menu. La valeur par défaut est true.
-
-
-
- -

Valeur retournée

- -

Une Promise 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é.

- -

Exemples

- -

Cet exemple crée un élément de menu, puis met à jour son titre lorsque l'utilisateur clique dessus :

- -
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);
-  }
-});
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.menus.update", 10)}}

- -

Note :

- -

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/menus/update/index.md b/files/fr/mozilla/add-ons/webextensions/api/menus/update/index.md new file mode 100644 index 0000000000..762d21d228 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/menus/update/index.md @@ -0,0 +1,191 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Met à jour un élément de menu précédemment créé.

+ +

Pour la compatibilité avec d'autres navigateurs, Firefox rend cette méthode disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var updating = browser.menus.update(
+  id,               // integer or string
+  updateProperties // object
+)
+
+ +

Paramètres

+ +
+
id
+
integer ou string. L'ID de l'article à mettre à jour.
+
updateProperties
+

object. Les propriétés à mettre à jour. Identique à l'objet createProperties passé à  {{WebExtAPIRef("menus.create()", "menus.create()")}}, sauf que l'id ne peut être défini. En outre, les icônes 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.

+
+
checked {{optional_inline}}
+
boolean. L'état initial d'une case à cocher ou d'un élément radio : true fpour sélectionné et false pour non sélectionné. Un seul élément radio peut être sélectionné à la fois dans un groupe donné d'éléments radio.
+
command {{optional_inline}}
+
+

string. Chaîne décrivant une action qui doit être effectuée lorsque l'utilisateur clique sur l'élément. Les valeurs possibles sont :

+ +
    +
  • "_execute_browser_action": simuler un clic sur l'action du navigateur de l'extension, en ouvrant son popup s'il en a un
  • +
  • "_execute_page_action": simuler un clic sur l'action de la page de l'extension, en ouvrant son popup si elle en a une
  • +
  • "_execute_sidebar_action": ouvre la barre latérale de l'extension
  • +
+ +

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 onClicked.

+
+
contexts {{optional_inline}}
+
+

array de {{WebExtAPIRef('menus.ContextType')}}. Tableau des contextes dans lesquels cet élément de menu apparaîtra. Si cette option est omise :

+ +
    +
  • si le parent de l'élément a des contextes définis, alors cet élément héritera des contextes de son parent
  • +
  • sinon, l'élément reçoit un tableau de contexte de ["page"].
  • +
+
+
documentUrlPatterns {{optional_inline}}
+
array de string. Vous permet de limiter l'élément à s'appliquer uniquement aux documents dont l'URL correspond à l'un des éléments motifs de données. Ceci s'applique également aux cadres.
+
enabled {{optional_inline}}
+
boolean. Si cet élément de menu est activé ou désactivé. La valeur par défaut est true.
+
icons {{optional_inline}}
+
+

object. 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 :

+ +
"icons": {
+      "16": "path/to/geo-16.png",
+      "32": "path/to/geo-32.png"
+    }
+ +

Alternativement, vous pouvez spécifier une seule icône SVG, et elle sera mise à l'échelle de manière appropriée :

+ +
"icons": {
+      "16": "path/to/geo.svg"
+    }
+ +
+

Note : The top-level menu item uses the icons specified in the manifest rather than what is specified with this key.

+
+
+
id {{optional_inline}}
+
string. 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.
+
onclick {{optional_inline}}
+
function. 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')}}.
+
parentId {{optional_inline}}
+
integer ou string. 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.
+
targetUrlPatterns {{optional_inline}}
+
array de string. Similairer à documentUrlPatterns, mais vous permet de filtrer en fonction de la href des balises d'ancre et l'attribut src 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.
+
title {{optional_inline}}
+
+

string. Le texte à afficher dans le poste. Obligatoire sauf si le type est "separateur".

+ +

Vous pouvez utiliser "%s" 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 title 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".

+ +

Si le titre contient une esperluette "&", 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 :

+ +
    +
  • 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, "&&" est utilisé pour afficher une seule esperluette.
  • +
  • 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.
  • +
  • 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.
  • +
+ +

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, "&A et &B" seront affichés comme "A et B" et "A" comme clé d'accès

+
+
type {{optional_inline}}
+
{{WebExtAPIRef('menus.ItemType')}}. Le type d'élément de menu : "normal", "checkbox", "radio", "separator". Defaults to "normal".
+
viewTypes {{optional_inline}}
+
{{WebExtAPIRef('extension.ViewType')}}. 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 viewType.
+
visible {{optional_inline}}
+
boolean. Si l'élément est affiché dans le menu. La valeur par défaut est true.
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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é.

+ +

Exemples

+ +

Cet exemple crée un élément de menu, puis met à jour son titre lorsque l'utilisateur clique dessus :

+ +
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);
+  }
+});
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.menus.update", 10)}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.contextMenus de chromium. Cette documentation est dérivée de context_menus.json dans le code Chromium.

+
+ + 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 deleted file mode 100644 index c0bf295d6b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/notifications/clear/index.html +++ /dev/null @@ -1,78 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Efface une notification, compte tenu de son identifiant.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var clearing = browser.notifications.clear(
-  id                            // string
-)
-
- -

Paramètres

- -
-
id
-
string. L'ID de la notification à effacer. C'est la même chose que l'ID transmis dans le callback {{WebExtAPIRef('notifications.create()')}}.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un booléen : true la notification a été effacée, ou false si ce n'est pas le cas (par exemple, parce que la notification référencée par id  n'existe pas).

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.notifications.clear")}}

- -

Exemples

- -

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 :

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.notifications.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/clear/index.md b/files/fr/mozilla/add-ons/webextensions/api/notifications/clear/index.md new file mode 100644 index 0000000000..c0bf295d6b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/clear/index.md @@ -0,0 +1,78 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Efface une notification, compte tenu de son identifiant.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var clearing = browser.notifications.clear(
+  id                            // string
+)
+
+ +

Paramètres

+ +
+
id
+
string. L'ID de la notification à effacer. C'est la même chose que l'ID transmis dans le callback {{WebExtAPIRef('notifications.create()')}}.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un booléen : true la notification a été effacée, ou false si ce n'est pas le cas (par exemple, parce que la notification référencée par id  n'existe pas).

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.notifications.clear")}}

+ +

Exemples

+ +

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 :

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.notifications.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 7180da2576..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/notifications/create/index.html +++ /dev/null @@ -1,147 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Crée et affiche une notification.

- -

Passez un {{WebExtAPIRef("notifications.NotificationOptions")}} pour définir le contenu et le comportement de la notification.

- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -
-

Attention : Si vous appelez notifications.create() plus d'une fois de suite, Firefox peut ne pas afficher de notification pour tout.

-
- -

Syntaxe

- -
var creating = browser.notifications.create(
-  id,                   // optional string
-  options               // NotificationOptions
-)
-
- -

Paramètres

- -
-
id{{optional_inline}}
-
string. 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.
-
options
-
{{WebExtAPIRef('notifications.NotificationOptions')}}. Définit le contenu et le comportement de la notification.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.notifications.create")}}

- -

Exemples

- -

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.

- -

Notez que vous aurez besoin de la permission "alarms" pour créer des alarmes (ainsi que de la permission "notifications" pour créer des notifications).

- -
var cakeNotification = "cake-notification"
-
-/*
-
-CAKE_INTERVAL is set to 6 seconds in this example.
-Such a short period is chosen to make the extension's behavior
-more obvious, but this is not recommended in real life.
-Note that in Chrome, alarms cannot be set for less
-than a minute.
-
-*/
-var CAKE_INTERVAL = 0.1;
-
-browser.alarms.create("", {periodInMinutes: CAKE_INTERVAL});
-
-browser.alarms.onAlarm.addListener(function(alarm) {
-  browser.notifications.create(cakeNotification, {
-    "type": "basic",
-    "iconUrl": browser.extension.getURL("icons/cake-96.png"),
-    "title": "Time for cake!",
-    "message": "Something something cake"
-  });
-});
-
-browser.browserAction.onClicked.addListener(()=> {
-  var clearing = browser.notifications.clear(cakeNotification);
-  clearing.then(() => {
-    console.log("cleared");
-  });
-});
- -

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 :

- -
var cakeNotification = "cake-notification"
-
-/*
-
-CAKE_INTERVAL is set to 6 seconds in this example.
-Such a short period is chosen to make the extension's behavior
-more obvious, but this is not recommended in real life.
-Note that in Chrome, alarms cannot be set for less
-than a minute.
-
-*/
-var CAKE_INTERVAL = 0.1;
-
-var buttons = [
-  {
-    "title": "Chocolate"
-  }, {
-    "title": "Battenberg"
-  }
-];
-
-browser.alarms.create("", {periodInMinutes: CAKE_INTERVAL});
-
-browser.alarms.onAlarm.addListener(function(alarm) {
-  browser.notifications.create(cakeNotification, {
-    "type": "basic",
-    "iconUrl": browser.extension.getURL("icons/cake-96.png"),
-    "title": "Time for cake!",
-    "message": "Something something cake",
-    "buttons": buttons
-  });
-});
-
-browser.browserAction.onClicked.addListener(()=> {
-  var clearing = browser.notifications.clear(cakeNotification);
-  clearing.then(() => {
-    console.log("cleared");
-  });
-});
-
-browser.notifications.onButtonClicked.addListener((id, index) => {
-  browser.notifications.clear(id);
-  console.log("You chose: " + buttons[index].title);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.notifications.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/create/index.md b/files/fr/mozilla/add-ons/webextensions/api/notifications/create/index.md new file mode 100644 index 0000000000..7180da2576 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/create/index.md @@ -0,0 +1,147 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Crée et affiche une notification.

+ +

Passez un {{WebExtAPIRef("notifications.NotificationOptions")}} pour définir le contenu et le comportement de la notification.

+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +
+

Attention : Si vous appelez notifications.create() plus d'une fois de suite, Firefox peut ne pas afficher de notification pour tout.

+
+ +

Syntaxe

+ +
var creating = browser.notifications.create(
+  id,                   // optional string
+  options               // NotificationOptions
+)
+
+ +

Paramètres

+ +
+
id{{optional_inline}}
+
string. 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.
+
options
+
{{WebExtAPIRef('notifications.NotificationOptions')}}. Définit le contenu et le comportement de la notification.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.notifications.create")}}

+ +

Exemples

+ +

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.

+ +

Notez que vous aurez besoin de la permission "alarms" pour créer des alarmes (ainsi que de la permission "notifications" pour créer des notifications).

+ +
var cakeNotification = "cake-notification"
+
+/*
+
+CAKE_INTERVAL is set to 6 seconds in this example.
+Such a short period is chosen to make the extension's behavior
+more obvious, but this is not recommended in real life.
+Note that in Chrome, alarms cannot be set for less
+than a minute.
+
+*/
+var CAKE_INTERVAL = 0.1;
+
+browser.alarms.create("", {periodInMinutes: CAKE_INTERVAL});
+
+browser.alarms.onAlarm.addListener(function(alarm) {
+  browser.notifications.create(cakeNotification, {
+    "type": "basic",
+    "iconUrl": browser.extension.getURL("icons/cake-96.png"),
+    "title": "Time for cake!",
+    "message": "Something something cake"
+  });
+});
+
+browser.browserAction.onClicked.addListener(()=> {
+  var clearing = browser.notifications.clear(cakeNotification);
+  clearing.then(() => {
+    console.log("cleared");
+  });
+});
+ +

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 :

+ +
var cakeNotification = "cake-notification"
+
+/*
+
+CAKE_INTERVAL is set to 6 seconds in this example.
+Such a short period is chosen to make the extension's behavior
+more obvious, but this is not recommended in real life.
+Note that in Chrome, alarms cannot be set for less
+than a minute.
+
+*/
+var CAKE_INTERVAL = 0.1;
+
+var buttons = [
+  {
+    "title": "Chocolate"
+  }, {
+    "title": "Battenberg"
+  }
+];
+
+browser.alarms.create("", {periodInMinutes: CAKE_INTERVAL});
+
+browser.alarms.onAlarm.addListener(function(alarm) {
+  browser.notifications.create(cakeNotification, {
+    "type": "basic",
+    "iconUrl": browser.extension.getURL("icons/cake-96.png"),
+    "title": "Time for cake!",
+    "message": "Something something cake",
+    "buttons": buttons
+  });
+});
+
+browser.browserAction.onClicked.addListener(()=> {
+  var clearing = browser.notifications.clear(cakeNotification);
+  clearing.then(() => {
+    console.log("cleared");
+  });
+});
+
+browser.notifications.onButtonClicked.addListener((id, index) => {
+  browser.notifications.clear(id);
+  console.log("You chose: " + buttons[index].title);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.notifications.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index fefafda8c5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/notifications/getall/index.html +++ /dev/null @@ -1,86 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient toutes les notifications actuellement actives créées par l'extension.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingAll = browser.notifications.getAll()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise 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.

- -

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. 

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.notifications.getAll")}}

- -

Exemples

- -

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 :

- -
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);
- -

Cet exemple enregistre le titre de toutes les notifications actives :

- -
function logNotifications(all) {
-  for (let id in all) {
-    console.log(`Title: ${all[id].title}`);
-  }
-}
-
-browser.notifications.getAll().then(logNotifications);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.notifications.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/getall/index.md b/files/fr/mozilla/add-ons/webextensions/api/notifications/getall/index.md new file mode 100644 index 0000000000..fefafda8c5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/getall/index.md @@ -0,0 +1,86 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient toutes les notifications actuellement actives créées par l'extension.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingAll = browser.notifications.getAll()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise 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.

+ +

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. 

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.notifications.getAll")}}

+ +

Exemples

+ +

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 :

+ +
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);
+ +

Cet exemple enregistre le titre de toutes les notifications actives :

+ +
function logNotifications(all) {
+  for (let id in all) {
+    console.log(`Title: ${all[id].title}`);
+  }
+}
+
+browser.notifications.getAll().then(logNotifications);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.notifications.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/index.html b/files/fr/mozilla/add-ons/webextensions/api/notifications/index.html deleted file mode 100644 index 128a0bc7e6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/notifications/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -title: notifications -slug: Mozilla/Add-ons/WebExtensions/API/notifications -tags: - - API - - Add-ons - - Extensions - - Notifications - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/API/notifications ---- -
{{AddonSidebar}}
- -

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.

- -

Pour utiliser cette API, vous devez  avoir la permission "notifications".

- -

La notification est identique sur tous les systèmes d'exploitation de bureau. Quelque chose comme :

- -

- -

Types

- -
-
{{WebExtAPIRef("notifications.NotificationOptions")}}
-
Définit le contenu d'une notification.
-
{{WebExtAPIRef("notifications.TemplateType")}}
-
Le type de notification Par exemple, cela définit si la notification peut contenir une image.
-
- -

Fonctions

- -
-
{{WebExtAPIRef("notifications.clear()")}}
-
Effacer une notification spécifique, compte tenu de son identifiant.
-
{{WebExtAPIRef("notifications.create()")}}
-
 Créez et affichez une nouvelle notification.
-
{{WebExtAPIRef("notifications.getAll()")}}
-
Recevez toutes les notifications
-
{{WebExtAPIRef("notifications.update()")}}
-
Mettre à jour une notification
-
- -

Evénements

- -
-
{{WebExtAPIRef("notifications.onButtonClicked")}}
-
Lancé lorsque l'utilisateur a cliqué sur un bouton dans la notification.
-
{{WebExtAPIRef("notifications.onClicked")}}
-
Lancé lorsque l'utilisateur a cliqué sur la notification, mais pas sur un bouton.
-
{{WebExtAPIRef("notifications.onClosed")}}
-
Lancé lorsqu'une notification est fermée, soit par le système, soit parce que l'utilisateur l'a rejeté..
-
{{WebExtAPIRef("notifications.onShown")}}
-
Lancé immédiatement après l'affichage d'une notification.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.notifications")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.notifications.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/index.md b/files/fr/mozilla/add-ons/webextensions/api/notifications/index.md new file mode 100644 index 0000000000..128a0bc7e6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

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.

+ +

Pour utiliser cette API, vous devez  avoir la permission "notifications".

+ +

La notification est identique sur tous les systèmes d'exploitation de bureau. Quelque chose comme :

+ +

+ +

Types

+ +
+
{{WebExtAPIRef("notifications.NotificationOptions")}}
+
Définit le contenu d'une notification.
+
{{WebExtAPIRef("notifications.TemplateType")}}
+
Le type de notification Par exemple, cela définit si la notification peut contenir une image.
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("notifications.clear()")}}
+
Effacer une notification spécifique, compte tenu de son identifiant.
+
{{WebExtAPIRef("notifications.create()")}}
+
 Créez et affichez une nouvelle notification.
+
{{WebExtAPIRef("notifications.getAll()")}}
+
Recevez toutes les notifications
+
{{WebExtAPIRef("notifications.update()")}}
+
Mettre à jour une notification
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("notifications.onButtonClicked")}}
+
Lancé lorsque l'utilisateur a cliqué sur un bouton dans la notification.
+
{{WebExtAPIRef("notifications.onClicked")}}
+
Lancé lorsque l'utilisateur a cliqué sur la notification, mais pas sur un bouton.
+
{{WebExtAPIRef("notifications.onClosed")}}
+
Lancé lorsqu'une notification est fermée, soit par le système, soit parce que l'utilisateur l'a rejeté..
+
{{WebExtAPIRef("notifications.onShown")}}
+
Lancé immédiatement après l'affichage d'une notification.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.notifications")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.notifications.

+
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 deleted file mode 100644 index 4202939183..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/notifications/notificationoptions/index.html +++ /dev/null @@ -1,86 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Ce type contient les données nécessaires pour :

- - - -

Type

- -

Les valeurs de ce type sont des objets qui contiennent les propriétés listées ci-dessous.

- -

Les trois premières propriétés - type, title, message - sont obligatoires pour {{WebExtAPIRef("notifications.create()")}}, mais pas avec {{WebExtAPIRef("notifications.update()")}}. Firefox ne supporte que les propriétés type, title, message, et iconUrl pour le moment, et le seul type disponible est 'basic'.

- -
-
type
-
{{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.
-
message
-
string. Le contenu de la notification
-
title
-
string. Le titre de la notification
-
iconUrl{{optional_inline}}
-
string. 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 l'URL relative d'un fichier de l'extension.
-
contextMessage{{optional_inline}}
-
string. Du texte supplémentaire à afficher.
-
priority{{optional_inline}}
-
number. La priorité de cette notification. Ça peut être 0, 1, or 2. La valeur par défaut est 0.
-
eventTime{{optional_inline}}
-
number. Un timestamp en millisecondes pour cette notification depuis le timestamp 0.
-
buttons{{optional_inline}}
-

array de button. 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 :

-
-
title
-
string. Le texte du bouton.
-
iconUrl{{optional_inline}}
-
string. Une URL pointant vers l'icône de ce bouton.
-
-
-
imageUrl
-
-

string. 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 l'URL relative d'un fichier de l'extension.

- -

Cette propriété est utilisable seuleument si le type de la notification est 'image'. Dans ce cas, cette propriété sera obligatoire si l'objet NotificationOptions est utilisé avec {{WebExtAPIRef("notifications.create()")}}, mais optionel avec {{WebExtAPIRef("notifications.update()")}}.

-
-
items
-

array of item. 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 :

-
-
title
-
string. Le titre de cet élément.
-
message
-
string. Le message à afficher pour cet élément.
-
-

Cette propriété est utilisable seuleument si le type de la notification est 'list'. Dans ce cas, cette propriété sera obligatoire si l'objet NotificationOptions est utilisé avec {{WebExtAPIRef("notifications.create()")}}, mais optionel avec {{WebExtAPIRef("notifications.update()")}}.

-
progress
-
integer. Une valeur entre 0 et 100, qui représente l'avancée actuelle d'un indicateur de progression. Cette propriété est utilisable seuleument si le type de la notification est 'progress'. Dans ce cas, cette propriété sera obligatoire si l'objet NotificationOptions est utilisé avec {{WebExtAPIRef("notifications.create()")}}, mais optionel avec {{WebExtAPIRef("notifications.update()")}}.
-
- -

Notez que les propriétés appIconMaskUrl et isClickable ne sont pas supportées.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.notifications.NotificationOptions")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API chromium chrome.notifications.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/notificationoptions/index.md b/files/fr/mozilla/add-ons/webextensions/api/notifications/notificationoptions/index.md new file mode 100644 index 0000000000..4202939183 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/notificationoptions/index.md @@ -0,0 +1,86 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Ce type contient les données nécessaires pour :

+ + + +

Type

+ +

Les valeurs de ce type sont des objets qui contiennent les propriétés listées ci-dessous.

+ +

Les trois premières propriétés - type, title, message - sont obligatoires pour {{WebExtAPIRef("notifications.create()")}}, mais pas avec {{WebExtAPIRef("notifications.update()")}}. Firefox ne supporte que les propriétés type, title, message, et iconUrl pour le moment, et le seul type disponible est 'basic'.

+ +
+
type
+
{{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.
+
message
+
string. Le contenu de la notification
+
title
+
string. Le titre de la notification
+
iconUrl{{optional_inline}}
+
string. 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 l'URL relative d'un fichier de l'extension.
+
contextMessage{{optional_inline}}
+
string. Du texte supplémentaire à afficher.
+
priority{{optional_inline}}
+
number. La priorité de cette notification. Ça peut être 0, 1, or 2. La valeur par défaut est 0.
+
eventTime{{optional_inline}}
+
number. Un timestamp en millisecondes pour cette notification depuis le timestamp 0.
+
buttons{{optional_inline}}
+

array de button. 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 :

+
+
title
+
string. Le texte du bouton.
+
iconUrl{{optional_inline}}
+
string. Une URL pointant vers l'icône de ce bouton.
+
+
+
imageUrl
+
+

string. 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 l'URL relative d'un fichier de l'extension.

+ +

Cette propriété est utilisable seuleument si le type de la notification est 'image'. Dans ce cas, cette propriété sera obligatoire si l'objet NotificationOptions est utilisé avec {{WebExtAPIRef("notifications.create()")}}, mais optionel avec {{WebExtAPIRef("notifications.update()")}}.

+
+
items
+

array of item. 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 :

+
+
title
+
string. Le titre de cet élément.
+
message
+
string. Le message à afficher pour cet élément.
+
+

Cette propriété est utilisable seuleument si le type de la notification est 'list'. Dans ce cas, cette propriété sera obligatoire si l'objet NotificationOptions est utilisé avec {{WebExtAPIRef("notifications.create()")}}, mais optionel avec {{WebExtAPIRef("notifications.update()")}}.

+
progress
+
integer. Une valeur entre 0 et 100, qui représente l'avancée actuelle d'un indicateur de progression. Cette propriété est utilisable seuleument si le type de la notification est 'progress'. Dans ce cas, cette propriété sera obligatoire si l'objet NotificationOptions est utilisé avec {{WebExtAPIRef("notifications.create()")}}, mais optionel avec {{WebExtAPIRef("notifications.update()")}}.
+
+ +

Notez que les propriétés appIconMaskUrl et isClickable ne sont pas supportées.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.notifications.NotificationOptions")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API chromium chrome.notifications.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 7a3ded3472..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/notifications/onbuttonclicked/index.html +++ /dev/null @@ -1,67 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsque l'utilisateur clique sur l'un des boutons de la notification.

- -

Syntaxe

- -
browser.notifications.onButtonClicked.addListener(listener)
-browser.notifications.onButtonClicked.removeListener(listener)
-browser.notifications.onButtonClicked.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument de listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Parameters

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
notificationId
-
string. ID de la notification sur laquelle le bouton a été cliqué.
-
buttonIndex
-
integer. L'index zero-based du bouton sur lequel vous avez cliqué.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.notifications.onButtonClicked")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.notifications.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/onbuttonclicked/index.md b/files/fr/mozilla/add-ons/webextensions/api/notifications/onbuttonclicked/index.md new file mode 100644 index 0000000000..7a3ded3472 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/onbuttonclicked/index.md @@ -0,0 +1,67 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque l'utilisateur clique sur l'un des boutons de la notification.

+ +

Syntaxe

+ +
browser.notifications.onButtonClicked.addListener(listener)
+browser.notifications.onButtonClicked.removeListener(listener)
+browser.notifications.onButtonClicked.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument de listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Parameters

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
notificationId
+
string. ID de la notification sur laquelle le bouton a été cliqué.
+
buttonIndex
+
integer. L'index zero-based du bouton sur lequel vous avez cliqué.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.notifications.onButtonClicked")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.notifications.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index ec5580789f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/notifications/onclicked/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsque l'utilisateur clique sur une notification, mais pas sur l'un des boutons de la notification (pour cela, voir {{WebExtAPIRef("notifications.onButtonClicked")}}).

- -

Syntaxe

- -
browser.notifications.onClicked.addListener(listener)
-browser.notifications.onClicked.removeListener(listener)
-browser.notifications.onClicked.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
notificationId
-
string. ID de la notification sur laquelle l'utilisateur a cliqué.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.notifications.onClicked")}}

- -

Exemples

- -

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.

- -
browser.notifications.onClicked.addListener(function(notificationId) {
-  console.log('Notification ' + notificationId + ' was clicked by the user');
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.notifications.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/onclicked/index.md b/files/fr/mozilla/add-ons/webextensions/api/notifications/onclicked/index.md new file mode 100644 index 0000000000..ec5580789f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/onclicked/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque l'utilisateur clique sur une notification, mais pas sur l'un des boutons de la notification (pour cela, voir {{WebExtAPIRef("notifications.onButtonClicked")}}).

+ +

Syntaxe

+ +
browser.notifications.onClicked.addListener(listener)
+browser.notifications.onClicked.removeListener(listener)
+browser.notifications.onClicked.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
notificationId
+
string. ID de la notification sur laquelle l'utilisateur a cliqué.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.notifications.onClicked")}}

+ +

Exemples

+ +

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.

+ +
browser.notifications.onClicked.addListener(function(notificationId) {
+  console.log('Notification ' + notificationId + ' was clicked by the user');
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.notifications.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 4c2c3fd405..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/notifications/onclosed/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'une notification est fermée, soit par le système, soit par l'utilisateur.

- -

Syntaxe

- -
browser.notifications.onClosed.addListener(listener)
-browser.notifications.onClosed.removeListener(listener)
-browser.notifications.onClosed.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener st l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener st enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Parameters

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
notificationId
-
string. ID de la notification fermée.
-
byUser
-
boolean. true si la notification a été fermée par l'utilisateur, ou falsesi elle a été fermée par le système. Cet argument n'est pas supporté dans Firefox.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.notifications.onClosed")}}

- -

Exemples

- -

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.

- -
browser.notifications.onClosed.addListener(function(notificationId) {
-  console.log('Notification ' + notificationId + ' has closed.');
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.notifications.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/onclosed/index.md b/files/fr/mozilla/add-ons/webextensions/api/notifications/onclosed/index.md new file mode 100644 index 0000000000..4c2c3fd405 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/onclosed/index.md @@ -0,0 +1,75 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'une notification est fermée, soit par le système, soit par l'utilisateur.

+ +

Syntaxe

+ +
browser.notifications.onClosed.addListener(listener)
+browser.notifications.onClosed.removeListener(listener)
+browser.notifications.onClosed.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener st l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener st enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Parameters

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
notificationId
+
string. ID de la notification fermée.
+
byUser
+
boolean. true si la notification a été fermée par l'utilisateur, ou falsesi elle a été fermée par le système. Cet argument n'est pas supporté dans Firefox.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.notifications.onClosed")}}

+ +

Exemples

+ +

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.

+ +
browser.notifications.onClosed.addListener(function(notificationId) {
+  console.log('Notification ' + notificationId + ' has closed.');
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.notifications.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 3514c20062..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/notifications/onshown/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé immédiatement après l'affichage d'une notification.

- -

Syntaxe

- -
browser.notifications.onShown.addListener(listener)
-browser.notifications.onShown.removeListener(listener)
-browser.notifications.onShown.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie trues'il écoute, sinon false.
-
- -

syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
notificationId
-
string. ID de la notification qui a été affichée.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.notifications.onShown")}}

- -

Exemples

- -

Ajoutez un écouteur à l'événement {{WebExtAPIRef("notifications.onShown")}} et consignez ses détails :

- -
function logShown(itemId) {
-  console.log(`shown: ${itemId}`);
-  browser.notifications.getAll().then((all) => {
-    console.log(all[itemId]);
-  })
-}
-
-browser.notifications.onShown.addListener(logShown);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.notifications.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/onshown/index.md b/files/fr/mozilla/add-ons/webextensions/api/notifications/onshown/index.md new file mode 100644 index 0000000000..3514c20062 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/onshown/index.md @@ -0,0 +1,75 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé immédiatement après l'affichage d'une notification.

+ +

Syntaxe

+ +
browser.notifications.onShown.addListener(listener)
+browser.notifications.onShown.removeListener(listener)
+browser.notifications.onShown.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie trues'il écoute, sinon false.
+
+ +

syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
notificationId
+
string. ID de la notification qui a été affichée.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.notifications.onShown")}}

+ +

Exemples

+ +

Ajoutez un écouteur à l'événement {{WebExtAPIRef("notifications.onShown")}} et consignez ses détails :

+ +
function logShown(itemId) {
+  console.log(`shown: ${itemId}`);
+  browser.notifications.getAll().then((all) => {
+    console.log(all[itemId]);
+  })
+}
+
+browser.notifications.onShown.addListener(logShown);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.notifications.

+
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 deleted file mode 100644 index b949e5233a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/notifications/templatetype/index.html +++ /dev/null @@ -1,67 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Ceci est une chaîne et représente le type de notification à créer. Il existe quatre types de notification : "basic", "image", "list", "progress".

- -

Ceci est passé dans {{WebExtAPIRef("notifications.create()")}} et {{WebExtAPIRef("notifications.update()")}} comme propriété de type {{WebExtAPIRef("notifications.NotificationOptions", "NotificationOptions")}}.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- - - -

Actuellement Firefox ne supporte que "basic" ici.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.notifications.TemplateType")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.notifications.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/templatetype/index.md b/files/fr/mozilla/add-ons/webextensions/api/notifications/templatetype/index.md new file mode 100644 index 0000000000..b949e5233a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/templatetype/index.md @@ -0,0 +1,67 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Ceci est une chaîne et représente le type de notification à créer. Il existe quatre types de notification : "basic", "image", "list", "progress".

+ +

Ceci est passé dans {{WebExtAPIRef("notifications.create()")}} et {{WebExtAPIRef("notifications.update()")}} comme propriété de type {{WebExtAPIRef("notifications.NotificationOptions", "NotificationOptions")}}.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ + + +

Actuellement Firefox ne supporte que "basic" ici.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.notifications.TemplateType")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.notifications.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 4ef3bc6280..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/notifications/update/index.html +++ /dev/null @@ -1,108 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Met à jour une notification, compte tenu de son identifiant

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var updating = browser.notifications.update(
-  id,                            // string
-  options                        // NotificationOptions
-)
-
- -

Paramètres

- -
-
id
-
string. L'ID de la notification à mettre à jour. C'est la même chose que l'ID transmis dans le callback {{WebExtAPIRef('notifications.create()')}}.
-
options
-
{{WebExtAPIRef('notifications.NotificationOptions')}}. Définit le nouveau contenu et le nouveau comportement de la notification.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un booléen : true si la notification a été mise à jour, ou false si ce n'est pas le cas (par exemple, parce que la notification référencée par id n'existe pas).

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.notifications.update")}}

- -

Exemples

- -

Cet exemple utilise update() 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.

- -

Notez que vous aurez besoin de la permission "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 progress.

- -
var cakeNotification = "cake-notification";
-
-/*
-
-CAKE_INTERVAL is set to 0.3 seconds in this example.
-Such a short period is chosen to make the extension's behavior
-more obvious, but this is not recommended in real life.
-Note that in Chrome, alarms cannot be set for less than
-a minute.
-
-*/
-var CAKE_PREP_INTERVAL = 0.005;
-
-var progress = 0;
-
-browser.alarms.onAlarm.addListener(function(alarm) {
-  progress = progress + 10;
-  if (progress > 100) {
-    browser.notifications.clear(cakeNotification);
-    browser.alarms.clear("cake-progress");
-  } else {
-    browser.notifications.update(cakeNotification, {
-      "progress": progress
-    });
-  }
-});
-
-browser.browserAction.onClicked.addListener(function () {
-  browser.notifications.getAll((all) => {
-    if (all.length > 0) {
-      browser.notifications.clear(cakeNotification);
-      return;
-    }
-    progress = 0;
-    browser.notifications.create(cakeNotification, {
-      "type": "progress",
-      "iconUrl": browser.extension.getURL("icons/cake-48.png"),
-      "title": "Your cake is being prepared...",
-      "message": "Something something cake",
-      "progress": progress
-    });
-    browser.alarms.create(
-      "cake-progress",
-      {periodInMinutes: CAKE_PREP_INTERVAL}
-    );
-  });
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.notifications.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/notifications/update/index.md b/files/fr/mozilla/add-ons/webextensions/api/notifications/update/index.md new file mode 100644 index 0000000000..4ef3bc6280 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/notifications/update/index.md @@ -0,0 +1,108 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Met à jour une notification, compte tenu de son identifiant

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var updating = browser.notifications.update(
+  id,                            // string
+  options                        // NotificationOptions
+)
+
+ +

Paramètres

+ +
+
id
+
string. L'ID de la notification à mettre à jour. C'est la même chose que l'ID transmis dans le callback {{WebExtAPIRef('notifications.create()')}}.
+
options
+
{{WebExtAPIRef('notifications.NotificationOptions')}}. Définit le nouveau contenu et le nouveau comportement de la notification.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un booléen : true si la notification a été mise à jour, ou false si ce n'est pas le cas (par exemple, parce que la notification référencée par id n'existe pas).

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.notifications.update")}}

+ +

Exemples

+ +

Cet exemple utilise update() 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.

+ +

Notez que vous aurez besoin de la permission "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 progress.

+ +
var cakeNotification = "cake-notification";
+
+/*
+
+CAKE_INTERVAL is set to 0.3 seconds in this example.
+Such a short period is chosen to make the extension's behavior
+more obvious, but this is not recommended in real life.
+Note that in Chrome, alarms cannot be set for less than
+a minute.
+
+*/
+var CAKE_PREP_INTERVAL = 0.005;
+
+var progress = 0;
+
+browser.alarms.onAlarm.addListener(function(alarm) {
+  progress = progress + 10;
+  if (progress > 100) {
+    browser.notifications.clear(cakeNotification);
+    browser.alarms.clear("cake-progress");
+  } else {
+    browser.notifications.update(cakeNotification, {
+      "progress": progress
+    });
+  }
+});
+
+browser.browserAction.onClicked.addListener(function () {
+  browser.notifications.getAll((all) => {
+    if (all.length > 0) {
+      browser.notifications.clear(cakeNotification);
+      return;
+    }
+    progress = 0;
+    browser.notifications.create(cakeNotification, {
+      "type": "progress",
+      "iconUrl": browser.extension.getURL("icons/cake-48.png"),
+      "title": "Your cake is being prepared...",
+      "message": "Something something cake",
+      "progress": progress
+    });
+    browser.alarms.create(
+      "cake-progress",
+      {periodInMinutes: CAKE_PREP_INTERVAL}
+    );
+  });
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.notifications.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
diff --git a/files/fr/mozilla/add-ons/webextensions/api/omnibox/index.html b/files/fr/mozilla/add-ons/webextensions/api/omnibox/index.html deleted file mode 100644 index 2cfcf11c69..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/omnibox/index.html +++ /dev/null @@ -1,70 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Permet aux extensions d'implémenter un comportement personnalisé lorsque l'utilisateur tape dans la barre d'adresse du navigateur.

- -

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.

- -

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:...

- -
    -
  1. Tout d'abord, l'extension doit inclure une clé "omnibox" dans le fichier manifest.json qui définit un mot-clé.
  2. -
  3. 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")}}.
  4. -
  5. 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.
  6. -
  7. 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.
  8. -
  9. 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.
  10. -
  11. Si l'utilisateur supprime la liste déroulante, l'extension recevra un événement {{WebExtAPIRef("omnibox.onInputCancelled")}}.
  12. -
- -

Types

- -
-
{{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}
-
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.
-
{{WebExtAPIRef("omnibox.SuggestResult")}}
-
Objet représentant une suggestion à ajouter à la liste déroulante de la barre.
-
- -

Fonctions

- -
-
{{WebExtAPIRef("omnibox.setDefaultSuggestion()")}}
-
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.
-
- -

Evénements

- -
-
{{WebExtAPIRef("omnibox.onInputStarted")}}
-
Lancé lorsque l'utilisateur met la barre d'adresse en surbrillance et tape le mot clé omnibox de votre extension, suivi d'un espace.
-
{{WebExtAPIRef("omnibox.onInputChanged")}}
-
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.
-
{{WebExtAPIRef("omnibox.onInputEntered")}}
-
Lancé lorsque l'utilisateur accepte l'une des suggestions de votre extension.
-
{{WebExtAPIRef("omnibox.onInputCancelled")}}
-
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.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.omnibox")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.omnibox.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/omnibox/index.md b/files/fr/mozilla/add-ons/webextensions/api/omnibox/index.md new file mode 100644 index 0000000000..2cfcf11c69 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Permet aux extensions d'implémenter un comportement personnalisé lorsque l'utilisateur tape dans la barre d'adresse du navigateur.

+ +

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.

+ +

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:...

+ +
    +
  1. Tout d'abord, l'extension doit inclure une clé "omnibox" dans le fichier manifest.json qui définit un mot-clé.
  2. +
  3. 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")}}.
  4. +
  5. 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.
  6. +
  7. 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.
  8. +
  9. 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.
  10. +
  11. Si l'utilisateur supprime la liste déroulante, l'extension recevra un événement {{WebExtAPIRef("omnibox.onInputCancelled")}}.
  12. +
+ +

Types

+ +
+
{{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}
+
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.
+
{{WebExtAPIRef("omnibox.SuggestResult")}}
+
Objet représentant une suggestion à ajouter à la liste déroulante de la barre.
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("omnibox.setDefaultSuggestion()")}}
+
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.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("omnibox.onInputStarted")}}
+
Lancé lorsque l'utilisateur met la barre d'adresse en surbrillance et tape le mot clé omnibox de votre extension, suivi d'un espace.
+
{{WebExtAPIRef("omnibox.onInputChanged")}}
+
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.
+
{{WebExtAPIRef("omnibox.onInputEntered")}}
+
Lancé lorsque l'utilisateur accepte l'une des suggestions de votre extension.
+
{{WebExtAPIRef("omnibox.onInputCancelled")}}
+
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.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.omnibox")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.omnibox.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index ae1d35560c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputcancelled/index.html +++ /dev/null @@ -1,58 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsque l'utilisateur a annulé son interaction avec votre poste (par exemple, en cliquant en dehors de la barre d'adresse).

- -

Syntaxe

- -
browser.omnibox.onInputCancelled.addListener(listener)
-browser.omnibox.onInputCancelled.removeListener(listener)
-browser.omnibox.onInputCancelled.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

La fonction d'écouteur n'a pas de paramètres.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.omnibox.onInputCancelled")}}

- -

Exemples

- -
browser.omnibox.onInputCancelled.addListener(() => {
-  console.log("The user cancelled the session.");
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.omnibox.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputcancelled/index.md b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputcancelled/index.md new file mode 100644 index 0000000000..ae1d35560c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputcancelled/index.md @@ -0,0 +1,58 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque l'utilisateur a annulé son interaction avec votre poste (par exemple, en cliquant en dehors de la barre d'adresse).

+ +

Syntaxe

+ +
browser.omnibox.onInputCancelled.addListener(listener)
+browser.omnibox.onInputCancelled.removeListener(listener)
+browser.omnibox.onInputCancelled.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

La fonction d'écouteur n'a pas de paramètres.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.omnibox.onInputCancelled")}}

+ +

Exemples

+ +
browser.omnibox.onInputCancelled.addListener(() => {
+  console.log("The user cancelled the session.");
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.omnibox.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index f40e6ff1b1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputchanged/index.html +++ /dev/null @@ -1,151 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

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 :

- - - -

Syntaxe

- -
browser.omnibox.onInputChanged.addListener(listener)
-browser.omnibox.onInputChanged.removeListener(listener)
-browser.omnibox.onInputChanged.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie trues'il écoute, sinon  false.
-
- -

syntaxe addListener

- -

The listener function will be passed two parameters: a string text, and a callback function suggest.

- -

Parameters

- -
-
text
-
-

String. 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.

-
-
suggest
-
-

Function. 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.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.omnibox.onInputStarted")}}

- -

Exemples

- -

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 description SuggestResult est le nom complet de la propriété et le contenu est la page MDN de cette propriété.

- -

L'exemple écoute également {{WebExtAPIRef("omnibox.onInputEntered")}}, et ouvre la page MDN correspondant à la sélection, conformément à l'argument   {{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}.

- -
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) => {
-  suggest(getMatchingProperties(input));
-});
-
-browser.omnibox.onInputEntered.addListener((url, disposition) => {
-  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;
-  }
-});
-
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.omnibox.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputchanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputchanged/index.md new file mode 100644 index 0000000000..f40e6ff1b1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputchanged/index.md @@ -0,0 +1,151 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

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 :

+ + + +

Syntaxe

+ +
browser.omnibox.onInputChanged.addListener(listener)
+browser.omnibox.onInputChanged.removeListener(listener)
+browser.omnibox.onInputChanged.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie trues'il écoute, sinon  false.
+
+ +

syntaxe addListener

+ +

The listener function will be passed two parameters: a string text, and a callback function suggest.

+ +

Parameters

+ +
+
text
+
+

String. 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.

+
+
suggest
+
+

Function. 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.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.omnibox.onInputStarted")}}

+ +

Exemples

+ +

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 description SuggestResult est le nom complet de la propriété et le contenu est la page MDN de cette propriété.

+ +

L'exemple écoute également {{WebExtAPIRef("omnibox.onInputEntered")}}, et ouvre la page MDN correspondant à la sélection, conformément à l'argument   {{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}.

+ +
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) => {
+  suggest(getMatchingProperties(input));
+});
+
+browser.omnibox.onInputEntered.addListener((url, disposition) => {
+  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;
+  }
+});
+
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.omnibox.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 8718f73f4e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentered/index.html +++ /dev/null @@ -1,151 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

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:

- - - -

Syntaxe

- -
browser.omnibox.onInputEntered.addListener(listener)
-browser.omnibox.onInputEntered.removeListener(listener)
-browser.omnibox.onInputEntered.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

La fonction d'écouteur recevra deux paramètres: une chaine de text, et un  {{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}.

- -

Paramètres

- -
-
text
-
-

String. C'est la valeur de la propriété content de l'objet {{WebExtAPIRef("omnibox.SuggestResult")}} que l'utilisateur a sélectionné.

-
-
disposition
-
-

{{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.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.omnibox.onInputEntered")}}

- -

Exemples

- -

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 description SuggestResult est le nom complet de la propriété et le contenu est la page MDN de cette propriété.

- -

L'exemple écoute également {{WebExtAPIRef("omnibox.onInputEntered")}}, et ouvre la page MDN correspondant à la sélection, conformément à l'argument   {{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}.

- -
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) => {
-  suggest(getMatchingProperties(input));
-});
-
-browser.omnibox.onInputEntered.addListener((url, disposition) => {
-  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;
-  }
-});
-
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.omnibox.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentered/index.md b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentered/index.md new file mode 100644 index 0000000000..8718f73f4e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentered/index.md @@ -0,0 +1,151 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

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:

+ + + +

Syntaxe

+ +
browser.omnibox.onInputEntered.addListener(listener)
+browser.omnibox.onInputEntered.removeListener(listener)
+browser.omnibox.onInputEntered.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

La fonction d'écouteur recevra deux paramètres: une chaine de text, et un  {{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}.

+ +

Paramètres

+ +
+
text
+
+

String. C'est la valeur de la propriété content de l'objet {{WebExtAPIRef("omnibox.SuggestResult")}} que l'utilisateur a sélectionné.

+
+
disposition
+
+

{{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.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.omnibox.onInputEntered")}}

+ +

Exemples

+ +

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 description SuggestResult est le nom complet de la propriété et le contenu est la page MDN de cette propriété.

+ +

L'exemple écoute également {{WebExtAPIRef("omnibox.onInputEntered")}}, et ouvre la page MDN correspondant à la sélection, conformément à l'argument   {{WebExtAPIRef("omnibox.OnInputEnteredDisposition")}}.

+ +
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) => {
+  suggest(getMatchingProperties(input));
+});
+
+browser.omnibox.onInputEntered.addListener((url, disposition) => {
+  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;
+  }
+});
+
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.omnibox.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index ac85acdc7c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentereddisposition/index.html +++ /dev/null @@ -1,43 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type omnibox.OnInputEnteredDisposition 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.

- -

Il est passé dans l'écouteur {{WebExtAPIRef("omnibox.onInputEntered")}} avec la sélection elle-même.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Ils peuvent prendre l'une des valeurs suivantes :

- -
-
"currentTab"
-
Ouvrez la sélection dans l'onglet actuel.
-
"newForegroundTab"
-
Ouvrez la sélection dans un nouvel onglet et placez ce nouvel onglet au premier plan.
-
"newBackgroundTab"
-
Ouvrez la sélection dans un nouvel onglet d'arrière-plan, en conservant l'onglet en cours au premier plan.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.omnibox.OnInputEnteredDisposition")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.omnibox.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentereddisposition/index.md b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentereddisposition/index.md new file mode 100644 index 0000000000..ac85acdc7c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputentereddisposition/index.md @@ -0,0 +1,43 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type omnibox.OnInputEnteredDisposition 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.

+ +

Il est passé dans l'écouteur {{WebExtAPIRef("omnibox.onInputEntered")}} avec la sélection elle-même.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Ils peuvent prendre l'une des valeurs suivantes :

+ +
+
"currentTab"
+
Ouvrez la sélection dans l'onglet actuel.
+
"newForegroundTab"
+
Ouvrez la sélection dans un nouvel onglet et placez ce nouvel onglet au premier plan.
+
"newBackgroundTab"
+
Ouvrez la sélection dans un nouvel onglet d'arrière-plan, en conservant l'onglet en cours au premier plan.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.omnibox.OnInputEnteredDisposition")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.omnibox.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 28864166eb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputstarted/index.html +++ /dev/null @@ -1,68 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Cela sera envoyé avant tout événement {{WebExtAPIRef("omnibox.onInputChanged")}} events.

- -

Syntaxe

- -
browser.omnibox.onInputStarted.addListener(listener)
-browser.omnibox.onInputStarted.removeListener(listener)
-browser.omnibox.onInputStarted.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction sera passée sans arguments.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.omnibox.onInputStarted")}}

- -

Exemples

- -
browser.omnibox.onInputStarted.addListener(() => {
-  console.log("User has started interacting with me.")
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.omnibox.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputstarted/index.md b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputstarted/index.md new file mode 100644 index 0000000000..28864166eb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/oninputstarted/index.md @@ -0,0 +1,68 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Cela sera envoyé avant tout événement {{WebExtAPIRef("omnibox.onInputChanged")}} events.

+ +

Syntaxe

+ +
browser.omnibox.onInputStarted.addListener(listener)
+browser.omnibox.onInputStarted.removeListener(listener)
+browser.omnibox.onInputStarted.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction sera passée sans arguments.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.omnibox.onInputStarted")}}

+ +

Exemples

+ +
browser.omnibox.onInputStarted.addListener(() => {
+  console.log("User has started interacting with me.")
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.omnibox.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index b6fd07b42e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/omnibox/setdefaultsuggestion/index.html +++ /dev/null @@ -1,56 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

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.

- -

Syntaxe

- -
browser.omnibox.setDefaultSuggestion(
-  suggestion            // object
-)
-
- -

Paramètres

- -
-
suggestion
-
object. Un objet contenant une description 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.
-
- -

Valeur retournée

- -

None.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.omnibox.setDefaultSuggestion")}}

- -

Exemples

- -
browser.omnibox.setDefaultSuggestion({
-  description: "Type the name of a CSS property"
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.omnibox.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/omnibox/setdefaultsuggestion/index.md b/files/fr/mozilla/add-ons/webextensions/api/omnibox/setdefaultsuggestion/index.md new file mode 100644 index 0000000000..b6fd07b42e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/setdefaultsuggestion/index.md @@ -0,0 +1,56 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

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.

+ +

Syntaxe

+ +
browser.omnibox.setDefaultSuggestion(
+  suggestion            // object
+)
+
+ +

Paramètres

+ +
+
suggestion
+
object. Un objet contenant une description 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.
+
+ +

Valeur retournée

+ +

None.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.omnibox.setDefaultSuggestion")}}

+ +

Exemples

+ +
browser.omnibox.setDefaultSuggestion({
+  description: "Type the name of a CSS property"
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.omnibox.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 78101027b3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/omnibox/suggestresult/index.html +++ /dev/null @@ -1,41 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type omnibox.SuggestResult définit une suggestion unique que l'extension peut ajouter à la liste déroulante de la barre d'adresse.

- -

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 omnibox.SuggestResult dans ce rappel.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils ont les propriétés suivantes :

- -
-
content
-
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.
-
description
-
C'est la chaîne qui est affichée dans la liste déroulante de la barre d'adresse.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.omnibox.SuggestResult")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.omnibox.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/omnibox/suggestresult/index.md b/files/fr/mozilla/add-ons/webextensions/api/omnibox/suggestresult/index.md new file mode 100644 index 0000000000..78101027b3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/omnibox/suggestresult/index.md @@ -0,0 +1,41 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type omnibox.SuggestResult définit une suggestion unique que l'extension peut ajouter à la liste déroulante de la barre d'adresse.

+ +

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 omnibox.SuggestResult dans ce rappel.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils ont les propriétés suivantes :

+ +
+
content
+
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.
+
description
+
C'est la chaîne qui est affichée dans la liste déroulante de la barre d'adresse.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.omnibox.SuggestResult")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.omnibox.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 4be85d9766..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pageaction/getpopup/index.html +++ /dev/null @@ -1,107 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient l'URL d'un document HTML en tant que popup pour cette action de page.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingPopup = browser.pageAction.getPopup(
-  details               // object
-)
-
- -

Paramètres

- -
-
details
-

object.

-
-
tabId
-
integer. ID de l'onglet dont vous souhaitez obtenir la fenêtre contextuelle.
-
-
-
- -

Valeur retournée

- -

Une Promise qui sera accompli avec une chaîne contenant l'URL du popup.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pageAction.getPopup")}}

- -

Exemples

- -

Ajoutez un élément de menu contextuel qui enregistre l'URL contextuelle de l'onglet en cours. Notez que vous aurez besoin de la  permission contextMenus dans votre manifest pour créer des éléments de menu contextuel.

- -
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);
-  }
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/getpopup/index.md b/files/fr/mozilla/add-ons/webextensions/api/pageaction/getpopup/index.md new file mode 100644 index 0000000000..4be85d9766 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/getpopup/index.md @@ -0,0 +1,107 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient l'URL d'un document HTML en tant que popup pour cette action de page.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingPopup = browser.pageAction.getPopup(
+  details               // object
+)
+
+ +

Paramètres

+ +
+
details
+

object.

+
+
tabId
+
integer. ID de l'onglet dont vous souhaitez obtenir la fenêtre contextuelle.
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera accompli avec une chaîne contenant l'URL du popup.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pageAction.getPopup")}}

+ +

Exemples

+ +

Ajoutez un élément de menu contextuel qui enregistre l'URL contextuelle de l'onglet en cours. Notez que vous aurez besoin de la  permission contextMenus dans votre manifest pour créer des éléments de menu contextuel.

+ +
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);
+  }
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 338d9f106e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pageaction/gettitle/index.html +++ /dev/null @@ -1,102 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient le titre de la page action.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingTitle = browser.pageAction.getTitle(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object.

-
-
tabId
-
integer. L'ID de l'onglet contenant l'action page dont vous voulez obtenir le titre.
-
-
-
- -

Valeur retournée

- -

Une Promise qui sera accomplie  avec une chaîne contenant le titre de l'action de la page.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pageAction.getTitle")}}

- -

Exemples

- -

Cet exemple enregistre le titre de l'action de la page lorsque l'utilisateur clique sur son icône :

- -
function gotTitle(title) {
-  console.log(`Title ${title}`);
-}
-
-browser.pageAction.onClicked.addListener((tab) => {
-  var gettingTitle = browser.pageAction.getTitle({
-    tabId: tab.id
-  });
-  gettingTitle.then(gotTitle);
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/gettitle/index.md b/files/fr/mozilla/add-ons/webextensions/api/pageaction/gettitle/index.md new file mode 100644 index 0000000000..338d9f106e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/gettitle/index.md @@ -0,0 +1,102 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient le titre de la page action.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingTitle = browser.pageAction.getTitle(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object.

+
+
tabId
+
integer. L'ID de l'onglet contenant l'action page dont vous voulez obtenir le titre.
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera accomplie  avec une chaîne contenant le titre de l'action de la page.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pageAction.getTitle")}}

+ +

Exemples

+ +

Cet exemple enregistre le titre de l'action de la page lorsque l'utilisateur clique sur son icône :

+ +
function gotTitle(title) {
+  console.log(`Title ${title}`);
+}
+
+browser.pageAction.onClicked.addListener((tab) => {
+  var gettingTitle = browser.pageAction.getTitle({
+    tabId: tab.id
+  });
+  gettingTitle.then(gotTitle);
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index fb48b2c4ad..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pageaction/hide/index.html +++ /dev/null @@ -1,86 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Masque l'action de page pour un onglet donné.

- -

hide() 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 à show_matches.

- -

Syntaxe

- -
browser.pageAction.hide(
-  tabId // integer
-)
-
- -

Paramètres

- -
-
tabId
-
integer. L'ID de l'onglet pour lequel vous souhaitez masquer l'action de la page.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pageAction.hide")}}

- -

Exemples

- -

Masquez l'action de la page pour l'onglet en cours lorsque l'utilisateur clique dessus :

- -
browser.pageAction.onClicked.addListener((tab) => {
-  browser.pageAction.hide(tab.id);
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/hide/index.md b/files/fr/mozilla/add-ons/webextensions/api/pageaction/hide/index.md new file mode 100644 index 0000000000..fb48b2c4ad --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/hide/index.md @@ -0,0 +1,86 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Masque l'action de page pour un onglet donné.

+ +

hide() 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 à show_matches.

+ +

Syntaxe

+ +
browser.pageAction.hide(
+  tabId // integer
+)
+
+ +

Paramètres

+ +
+
tabId
+
integer. L'ID de l'onglet pour lequel vous souhaitez masquer l'action de la page.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pageAction.hide")}}

+ +

Exemples

+ +

Masquez l'action de la page pour l'onglet en cours lorsque l'utilisateur clique dessus :

+ +
browser.pageAction.onClicked.addListener((tab) => {
+  browser.pageAction.hide(tab.id);
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 57119e284f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pageaction/imagedatatype/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Données en pixel pour une image.

- -

Type

- -

Un objet ImageData , par exemple à partir d'un élément {{htmlelement("canvas")}}.

- -

Browser compatibility

- -

{{Compat("webextensions.api.pageAction.ImageDataType")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/imagedatatype/index.md b/files/fr/mozilla/add-ons/webextensions/api/pageaction/imagedatatype/index.md new file mode 100644 index 0000000000..57119e284f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/imagedatatype/index.md @@ -0,0 +1,66 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Données en pixel pour une image.

+ +

Type

+ +

Un objet ImageData , par exemple à partir d'un élément {{htmlelement("canvas")}}.

+ +

Browser compatibility

+ +

{{Compat("webextensions.api.pageAction.ImageDataType")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/index.html b/files/fr/mozilla/add-ons/webextensions/api/pageaction/index.html deleted file mode 100644 index e9edd3861a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pageaction/index.html +++ /dev/null @@ -1,112 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Une action de page est une icône cliquable dans la barre d'adresse du navigateur.

- -

- -

Vous pouvez écouter les clics sur l'icône, ou spécifié une fenêtre contextuelle qui s'ouvre  lorsque l'icone est cliquée.

- -

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.

- -

Vous pouvez définir la plupart des propriétés d'une action de page de manière déclarative à l'aide de la  clef page_action dans votre manifest.json, mais également les redéfinir par programmation en utilisant cette API.

- -

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.

- -

Types

- -
-
{{WebExtAPIRef("pageAction.ImageDataType")}}
-
Données en pixel pour une image.
-
- -

Fonctions

- -
-
{{WebExtAPIRef("pageAction.show()")}}
-
Affiche l'action de la page pour un onglet donné.
-
{{WebExtAPIRef("pageAction.hide()")}}
-
Caches l'action de la page pour un onglet donné.
-
{{WebExtAPIRef("pageAction.isShown()")}}
-
Vérifie si l'action de la page est affichée ou non.
-
{{WebExtAPIRef("pageAction.setTitle()")}}
-
Définit le titre de l'action de la page. Ceci est affiché dans une info-bulle sur l'action de la page.
-
{{WebExtAPIRef("pageAction.getTitle()")}}
-
Obtient le titre de l'action de la page
-
{{WebExtAPIRef("pageAction.setIcon()")}}
-
Définit l'icône de l'action de la page.
-
{{WebExtAPIRef("pageAction.setPopup()")}}
-
Définit l'URL de la fenêtre contextuelle de l'action de la page.
-
{{WebExtAPIRef("pageAction.getPopup()")}}
-
Obtient l'URL de la fenêtre d'action de la page.
-
{{WebExtAPIRef("pageAction.openPopup()")}}
-
Ouvre la fenêtre contextuelle de l'action de la page.
-
- -

Evénements

- -
-
{{WebExtAPIRef("pageAction.onClicked")}}
-
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.
-
- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.pageAction")}}

- - - -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/index.md b/files/fr/mozilla/add-ons/webextensions/api/pageaction/index.md new file mode 100644 index 0000000000..e9edd3861a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Une action de page est une icône cliquable dans la barre d'adresse du navigateur.

+ +

+ +

Vous pouvez écouter les clics sur l'icône, ou spécifié une fenêtre contextuelle qui s'ouvre  lorsque l'icone est cliquée.

+ +

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.

+ +

Vous pouvez définir la plupart des propriétés d'une action de page de manière déclarative à l'aide de la  clef page_action dans votre manifest.json, mais également les redéfinir par programmation en utilisant cette API.

+ +

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.

+ +

Types

+ +
+
{{WebExtAPIRef("pageAction.ImageDataType")}}
+
Données en pixel pour une image.
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("pageAction.show()")}}
+
Affiche l'action de la page pour un onglet donné.
+
{{WebExtAPIRef("pageAction.hide()")}}
+
Caches l'action de la page pour un onglet donné.
+
{{WebExtAPIRef("pageAction.isShown()")}}
+
Vérifie si l'action de la page est affichée ou non.
+
{{WebExtAPIRef("pageAction.setTitle()")}}
+
Définit le titre de l'action de la page. Ceci est affiché dans une info-bulle sur l'action de la page.
+
{{WebExtAPIRef("pageAction.getTitle()")}}
+
Obtient le titre de l'action de la page
+
{{WebExtAPIRef("pageAction.setIcon()")}}
+
Définit l'icône de l'action de la page.
+
{{WebExtAPIRef("pageAction.setPopup()")}}
+
Définit l'URL de la fenêtre contextuelle de l'action de la page.
+
{{WebExtAPIRef("pageAction.getPopup()")}}
+
Obtient l'URL de la fenêtre d'action de la page.
+
{{WebExtAPIRef("pageAction.openPopup()")}}
+
Ouvre la fenêtre contextuelle de l'action de la page.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("pageAction.onClicked")}}
+
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.
+
+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.pageAction")}}

+ + + +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 8cf57feea5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pageaction/isshown/index.html +++ /dev/null @@ -1,65 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Renvoie true si l'action de la page est affichée pour l'onglet donné..

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
let gettingIsShown = browser.pageAction.isShown(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object. Un objet contenant le tabId à vérifier.

-
-
tabId
-
integer. ID de l'onglet à vérifier.
-
-
-
- - - -

Valeur retournée

- -

Une Promise qui sera remplie avec true si l'action de page de l'extension est affichée pour l'onglet donné, et false dans le cas contraire.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pageAction.isShown")}}

- -

Exemples

- -

Vérifiez l'état de l'onglet actuellement actif :

- -
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);
-}
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/isshown/index.md b/files/fr/mozilla/add-ons/webextensions/api/pageaction/isshown/index.md new file mode 100644 index 0000000000..8cf57feea5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/isshown/index.md @@ -0,0 +1,65 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Renvoie true si l'action de la page est affichée pour l'onglet donné..

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
let gettingIsShown = browser.pageAction.isShown(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Un objet contenant le tabId à vérifier.

+
+
tabId
+
integer. ID de l'onglet à vérifier.
+
+
+
+ + + +

Valeur retournée

+ +

Une Promise qui sera remplie avec true si l'action de page de l'extension est affichée pour l'onglet donné, et false dans le cas contraire.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pageAction.isShown")}}

+ +

Exemples

+ +

Vérifiez l'état de l'onglet actuellement actif :

+ +
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);
+}
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 39e8c38f7b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pageaction/onclicked/index.html +++ /dev/null @@ -1,112 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

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.

- -

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')}}.

- -

Syntaxe

- -
browser.pageAction.onClicked.addListener(listener)
-browser.pageAction.onClicked.removeListener(listener)
-browser.pageAction.onClicked.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez l'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si un listener est enregistré pour cet événement. Retourne true s'il écoute, false sinon.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Une fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
tab
-
Un objet {{WebExtAPIRef('tabs.Tab')}} représentant l'onglet dont l'action de la page a été cliquée.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pageAction.onClicked")}}

- -

Exemples

- -

Lorsque l'utilisateur clique sur l'action de la page, masquez-là et naviguez dans l'onglet actif pour "http://chilloutandwatchsomecatgifs.com/" :

- -
var CATGIFS = "http://chilloutandwatchsomecatgifs.com/";
-
-browser.pageAction.onClicked.addListener((tab) => {
-  browser.pageAction.hide(tab.id);
-  browser.tabs.update({url: CATGIFS});
-});
-
-browser.pageAction.onClicked.addListener(function () {
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/onclicked/index.md b/files/fr/mozilla/add-ons/webextensions/api/pageaction/onclicked/index.md new file mode 100644 index 0000000000..39e8c38f7b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/onclicked/index.md @@ -0,0 +1,112 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

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.

+ +

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')}}.

+ +

Syntaxe

+ +
browser.pageAction.onClicked.addListener(listener)
+browser.pageAction.onClicked.removeListener(listener)
+browser.pageAction.onClicked.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez l'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si un listener est enregistré pour cet événement. Retourne true s'il écoute, false sinon.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Une fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
tab
+
Un objet {{WebExtAPIRef('tabs.Tab')}} représentant l'onglet dont l'action de la page a été cliquée.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pageAction.onClicked")}}

+ +

Exemples

+ +

Lorsque l'utilisateur clique sur l'action de la page, masquez-là et naviguez dans l'onglet actif pour "http://chilloutandwatchsomecatgifs.com/" :

+ +
var CATGIFS = "http://chilloutandwatchsomecatgifs.com/";
+
+browser.pageAction.onClicked.addListener((tab) => {
+  browser.pageAction.hide(tab.id);
+  browser.tabs.update({url: CATGIFS});
+});
+
+browser.pageAction.onClicked.addListener(function () {
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 6e087d05f0..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pageaction/openpopup/index.html +++ /dev/null @@ -1,56 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Ouvrez le menu contextuel de l'action de la page.
- -
- -
-

Vous pouvez uniquement appeler cette fonction à partir du gestionnaire pour une action utilisateur.

-
- -

Syntaxe

- -
browser.pageAction.openPopup()
-
- -

Paramètres

- -

None.

- -

Valeur retourné

- -

Une Promise qui est résolue sans arguments.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pageAction.openPopup", 10)}}

- -

Exemples

- -

Ouvrez la fenêtre contextuelle lorsque l'utilisateur sélectionne un élément de menu contextuel :

- -
browser.menus.create({
-  id: "open-popup",
-  title: "open popup",
-  contexts: ["all"]
-});
-
-browser.menus.onClicked.addListener(() => {
-  browser.pageAction.openPopup();
-});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/openpopup/index.md b/files/fr/mozilla/add-ons/webextensions/api/pageaction/openpopup/index.md new file mode 100644 index 0000000000..6e087d05f0 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/openpopup/index.md @@ -0,0 +1,56 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Ouvrez le menu contextuel de l'action de la page.
+ +
+ +
+

Vous pouvez uniquement appeler cette fonction à partir du gestionnaire pour une action utilisateur.

+
+ +

Syntaxe

+ +
browser.pageAction.openPopup()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retourné

+ +

Une Promise qui est résolue sans arguments.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pageAction.openPopup", 10)}}

+ +

Exemples

+ +

Ouvrez la fenêtre contextuelle lorsque l'utilisateur sélectionne un élément de menu contextuel :

+ +
browser.menus.create({
+  id: "open-popup",
+  title: "open popup",
+  contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(() => {
+  browser.pageAction.openPopup();
+});
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 1309004f5a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pageaction/setpopup/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.pageAction.setPopup(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object.

-
-
tabId
-
integer. L'ID de l'onglet pour lequel vous souhaitez définir la fenêtre contextuelle.
-
popup
-
string. 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.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pageAction.setPopup")}}

- -

Exemples

- -

Ecoutez les événements {{WebExtAPIRef("tabs.onUpdated")}} et basculez le popup si le statut de chargement change :

- -
browser.tabs.onUpdated.addListener((tabId, changeInfo, tabInfo) => {
-  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"
-      });
-    }
-  }
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/setpopup/index.md b/files/fr/mozilla/add-ons/webextensions/api/pageaction/setpopup/index.md new file mode 100644 index 0000000000..1309004f5a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/setpopup/index.md @@ -0,0 +1,104 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.pageAction.setPopup(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object.

+
+
tabId
+
integer. L'ID de l'onglet pour lequel vous souhaitez définir la fenêtre contextuelle.
+
popup
+
string. 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.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pageAction.setPopup")}}

+ +

Exemples

+ +

Ecoutez les événements {{WebExtAPIRef("tabs.onUpdated")}} et basculez le popup si le statut de chargement change :

+ +
browser.tabs.onUpdated.addListener((tabId, changeInfo, tabInfo) => {
+  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"
+      });
+    }
+  }
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 49e71850de..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pageaction/settitle/index.html +++ /dev/null @@ -1,96 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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

- -

Syntaxe

- -
browser.pageAction.setTitle(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object.

-
-
tabId
-
integer. L'ID de l'onglet dont vous voulez définir le titre.
-
title
-
string. Le texte de l'info-bulle.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pageAction.setTitle")}}

- -

Exemples

- -

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 :

- -
browser.tabs.onUpdated.addListener((tabId, changeInfo, tabInfo) => {
-  browser.pageAction.show(tabId);
-  browser.pageAction.setTitle({
-    tabId: tabId,
-    title: "Tab ID: " + tabId
-  });
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/settitle/index.md b/files/fr/mozilla/add-ons/webextensions/api/pageaction/settitle/index.md new file mode 100644 index 0000000000..49e71850de --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/settitle/index.md @@ -0,0 +1,96 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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

+ +

Syntaxe

+ +
browser.pageAction.setTitle(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object.

+
+
tabId
+
integer. L'ID de l'onglet dont vous voulez définir le titre.
+
title
+
string. Le texte de l'info-bulle.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pageAction.setTitle")}}

+ +

Exemples

+ +

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 :

+ +
browser.tabs.onUpdated.addListener((tabId, changeInfo, tabInfo) => {
+  browser.pageAction.show(tabId);
+  browser.pageAction.setTitle({
+    tabId: tabId,
+    title: "Tab ID: " + tabId
+  });
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index f526b3a358..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pageaction/show/index.html +++ /dev/null @@ -1,100 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

show() remplace la correspondance de motifs, de sorte que l'action page sera affichée dans l'onglet spécifié même si show_matches e correspond pas à l'URL ou si hide_matches ne correspond pas.

- -

Notez que l'appel à show() n'a aucun effet sur un onglet sans contenu chargé.

- -

Syntaxe

- -
browser.pageAction.show(
-  tabId // integer
-)
-
- -

Paramètres

- -
-
tabId
-
integer. L'ID de l'onglet pour lequel vous souhaitez afficher l'action de la page.
-
- -

Valeur renvoyée

- -

Une Promise qui sera remplie avec undefined.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pageAction.show")}}

- -

Exemples

- -

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 permission contextMenus  dans votre manifest pour créer des éléments de menu contextuel.

- -
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);
-  }
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/pageaction/show/index.md b/files/fr/mozilla/add-ons/webextensions/api/pageaction/show/index.md new file mode 100644 index 0000000000..f526b3a358 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pageaction/show/index.md @@ -0,0 +1,100 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

show() remplace la correspondance de motifs, de sorte que l'action page sera affichée dans l'onglet spécifié même si show_matches e correspond pas à l'URL ou si hide_matches ne correspond pas.

+ +

Notez que l'appel à show() n'a aucun effet sur un onglet sans contenu chargé.

+ +

Syntaxe

+ +
browser.pageAction.show(
+  tabId // integer
+)
+
+ +

Paramètres

+ +
+
tabId
+
integer. L'ID de l'onglet pour lequel vous souhaitez afficher l'action de la page.
+
+ +

Valeur renvoyée

+ +

Une Promise qui sera remplie avec undefined.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pageAction.show")}}

+ +

Exemples

+ +

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 permission contextMenus  dans votre manifest pour créer des éléments de menu contextuel.

+ +
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);
+  }
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.pageAction. Cette documentation est dérivée de page_action.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index f20d169299..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/permissions/contains/index.html +++ /dev/null @@ -1,93 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Vérifiez si l'extension a les permissions listées dans l'objet  {{WebExtAPIRef("permissions.Permissions")}}.

- -

L'argument Permissions peut contenir une propriété origine, qui est un tableau de permissions hôtes, ou une propriété  permissions , qui est un tableau de permissions API, ou les deux.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promesse. 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 pattern-match the permissions listed in origins, then they are considered to match.

- -

Syntaxe

- -
var getContains = browser.permissions.contains(
-  permissions                // Permissions object
-)
-
- -

Paramètres

- -
-
permissions
-
Un objet {{WebExtAPIRef("permissions.Permissions")}} .
-
- -

Valeur renvoyée

- -

Une Promesse qui sera remplie avec  true si l'extension possède déjà toutes les permissions listées dans l'argument des permissions , ou false dans le cas contraire.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.permissions.contains")}}

- -

Exemples

- -
// Extension permissions are:
-// "webRequest", "tabs", "*://*.mozilla.org/*"
-
-var testPermissions1 = {
-  origins: ["*://mozilla.org/"],
-  permissions: ["tabs"]
-};
-
-browser.permissions.contains(testPermissions1).then((result) => {
-  console.log(result);    // true
-});
-
-var testPermissions2 = {
-  origins: ["*://mozilla.org/"],
-  permissions: ["tabs", "alarms"]
-};
-
-browser.permissions.contains(testPermissions2).then((result) => {
-  console.log(result);   // false, "alarms" doesn't match
-});
-
-var testPermissions3 = {
-  origins: ["https://developer.mozilla.org/"],
-  permissions: ["tabs", "webRequest"]
-};
-
-browser.permissions.contains(testPermissions3).then((result) => {
-  console.log(result);   // true: "https://developer.mozilla.org/"
-});                      // matches: "*://*.mozilla.org/*"
-
-var testPermissions4 = {
-  origins: ["https://example.org/"]
-};
-
-browser.permissions.contains(testPermissions4).then((result) => {
-  console.log(result);   // false, "https://example.org/"
-});                      // does not match
-
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.permissions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/permissions/contains/index.md b/files/fr/mozilla/add-ons/webextensions/api/permissions/contains/index.md new file mode 100644 index 0000000000..f20d169299 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/contains/index.md @@ -0,0 +1,93 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Vérifiez si l'extension a les permissions listées dans l'objet  {{WebExtAPIRef("permissions.Permissions")}}.

+ +

L'argument Permissions peut contenir une propriété origine, qui est un tableau de permissions hôtes, ou une propriété  permissions , qui est un tableau de permissions API, ou les deux.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promesse. 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 pattern-match the permissions listed in origins, then they are considered to match.

+ +

Syntaxe

+ +
var getContains = browser.permissions.contains(
+  permissions                // Permissions object
+)
+
+ +

Paramètres

+ +
+
permissions
+
Un objet {{WebExtAPIRef("permissions.Permissions")}} .
+
+ +

Valeur renvoyée

+ +

Une Promesse qui sera remplie avec  true si l'extension possède déjà toutes les permissions listées dans l'argument des permissions , ou false dans le cas contraire.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.permissions.contains")}}

+ +

Exemples

+ +
// Extension permissions are:
+// "webRequest", "tabs", "*://*.mozilla.org/*"
+
+var testPermissions1 = {
+  origins: ["*://mozilla.org/"],
+  permissions: ["tabs"]
+};
+
+browser.permissions.contains(testPermissions1).then((result) => {
+  console.log(result);    // true
+});
+
+var testPermissions2 = {
+  origins: ["*://mozilla.org/"],
+  permissions: ["tabs", "alarms"]
+};
+
+browser.permissions.contains(testPermissions2).then((result) => {
+  console.log(result);   // false, "alarms" doesn't match
+});
+
+var testPermissions3 = {
+  origins: ["https://developer.mozilla.org/"],
+  permissions: ["tabs", "webRequest"]
+};
+
+browser.permissions.contains(testPermissions3).then((result) => {
+  console.log(result);   // true: "https://developer.mozilla.org/"
+});                      // matches: "*://*.mozilla.org/*"
+
+var testPermissions4 = {
+  origins: ["https://example.org/"]
+};
+
+browser.permissions.contains(testPermissions4).then((result) => {
+  console.log(result);   // false, "https://example.org/"
+});                      // does not match
+
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.permissions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 91b771ad2d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/permissions/getall/index.html +++ /dev/null @@ -1,54 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Récupère un objet {{WebExtAPIRef("permissions.Permissions")}} contenant toutes les permissions actuellement acccordées à l'extension.

- -

Il s'agit d'une fonction asynchrone qui retourne une Promise.

- -

Syntaxe

- -
var gettingAll = browser.permissions.getAll()
-
- -

Paramètres

- -

None.

- -

Valeur renvoyée

- -

Une Promise 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  permissions , et toutes les permissions répertoriées dans  optional_permissions que l'extension a été accordée en appelant  {{WebExtAPIRef("permissions.request()")}}.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.permissions.getAll")}}

- -

Exemples

- -
// Extension permissions are:
-// "webRequest", "tabs", "*://*.mozilla.org/*"
-
-browser.permissions.getAll().then((result) => {
-  console.log(result.permissions); // [ "webRequest", "tabs" ]
-  console.log(result.origins)      // [ "*://*.mozilla.org/*" ]
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.permissions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/permissions/getall/index.md b/files/fr/mozilla/add-ons/webextensions/api/permissions/getall/index.md new file mode 100644 index 0000000000..91b771ad2d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/getall/index.md @@ -0,0 +1,54 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Récupère un objet {{WebExtAPIRef("permissions.Permissions")}} contenant toutes les permissions actuellement acccordées à l'extension.

+ +

Il s'agit d'une fonction asynchrone qui retourne une Promise.

+ +

Syntaxe

+ +
var gettingAll = browser.permissions.getAll()
+
+ +

Paramètres

+ +

None.

+ +

Valeur renvoyée

+ +

Une Promise 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  permissions , et toutes les permissions répertoriées dans  optional_permissions que l'extension a été accordée en appelant  {{WebExtAPIRef("permissions.request()")}}.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.permissions.getAll")}}

+ +

Exemples

+ +
// Extension permissions are:
+// "webRequest", "tabs", "*://*.mozilla.org/*"
+
+browser.permissions.getAll().then((result) => {
+  console.log(result.permissions); // [ "webRequest", "tabs" ]
+  console.log(result.origins)      // [ "*://*.mozilla.org/*" ]
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.permissions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
diff --git a/files/fr/mozilla/add-ons/webextensions/api/permissions/index.html b/files/fr/mozilla/add-ons/webextensions/api/permissions/index.html deleted file mode 100644 index f203ff60ac..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/permissions/index.html +++ /dev/null @@ -1,84 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -
Permet aux extensions de demander des permissions supplémentaires lors de l'exécution, après leur installation.
- -
 
- -

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 permissions. Les principaux avantages de demander des permissions au moment de l'installation sont les suivants:

- - - -

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.

- -

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é optional_permissions du manifest.json. Notez que certaines permissions ne sont pas autorisées dans optional_permissions. Les principaux avantages de ceci sont :

- - - -
Pour utiliser l'API de permissions, déterminez les permissions que votre extension peut demander lors de l'exécution, et indiquez-les dans optional_permissions. Après cela, vous pouvez demander toutes les permissions incluses dans  optional_permissions. Les demandes peuvent uniquement être effectuées dans le gestionnaire pour une action de l'utilisateur (par exemple, un gestionnaire de clics).
- -
 
- -
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 Demande de permissions à exécuter
- -

Types

- -
-
{{WebExtAPIRef("permissions.Permissions")}}
-
Représente un ensemble de permissions.
-
- -

Méthodes

- -
-
{{WebExtAPIRef("permissions.contains()")}}
-
Découvrez si l'extensions a le jeu de permissions donné.
-
{{WebExtAPIRef("permissions.getAll()")}}
-
Obtenez toutes les permissions que cette extension a actuellement.
-
{{WebExtAPIRef("permissions.remove()")}}
-
Renoncer à un ensemble de permissions.
-
{{WebExtAPIRef("permissions.request()")}}
-
Demander un ensemble de permissions.
-
- -

Event handlers

- -
-
{{WebExtAPIRef("permissions.onAdded")}}
-
Activé lorsqu'une nouvelle permission est accordée.
-
{{WebExtAPIRef("permissions.onRemoved")}}
-
Déclenché lorsque une permission est supprimée.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.permissions")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.permissions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/permissions/index.md b/files/fr/mozilla/add-ons/webextensions/api/permissions/index.md new file mode 100644 index 0000000000..f203ff60ac --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +
Permet aux extensions de demander des permissions supplémentaires lors de l'exécution, après leur installation.
+ +
 
+ +

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 permissions. Les principaux avantages de demander des permissions au moment de l'installation sont les suivants:

+ + + +

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.

+ +

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é optional_permissions du manifest.json. Notez que certaines permissions ne sont pas autorisées dans optional_permissions. Les principaux avantages de ceci sont :

+ + + +
Pour utiliser l'API de permissions, déterminez les permissions que votre extension peut demander lors de l'exécution, et indiquez-les dans optional_permissions. Après cela, vous pouvez demander toutes les permissions incluses dans  optional_permissions. Les demandes peuvent uniquement être effectuées dans le gestionnaire pour une action de l'utilisateur (par exemple, un gestionnaire de clics).
+ +
 
+ +
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 Demande de permissions à exécuter
+ +

Types

+ +
+
{{WebExtAPIRef("permissions.Permissions")}}
+
Représente un ensemble de permissions.
+
+ +

Méthodes

+ +
+
{{WebExtAPIRef("permissions.contains()")}}
+
Découvrez si l'extensions a le jeu de permissions donné.
+
{{WebExtAPIRef("permissions.getAll()")}}
+
Obtenez toutes les permissions que cette extension a actuellement.
+
{{WebExtAPIRef("permissions.remove()")}}
+
Renoncer à un ensemble de permissions.
+
{{WebExtAPIRef("permissions.request()")}}
+
Demander un ensemble de permissions.
+
+ +

Event handlers

+ +
+
{{WebExtAPIRef("permissions.onAdded")}}
+
Activé lorsqu'une nouvelle permission est accordée.
+
{{WebExtAPIRef("permissions.onRemoved")}}
+
Déclenché lorsque une permission est supprimée.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.permissions")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.permissions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index c677fac013..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/permissions/onadded/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Activé lorsque l'extension a accordé de nouvelles permissions.

- -

Syntaxe

- -
browser.permissions.onAdded.addListener(listener)
-browser.permissions.onAdded.removeListener(listener)
-browser.permissions.onAdded.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute une écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifier si le listener est enregistré pour cet événement. Retourne true s'il écoute, sinon  false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produira. La fonction passera les arguments suivants :

- -
-
permissions
-
Objet {{WebExtAPIRef("permissions.Permissions")}} contenant les permissions qui ont été accordées.
-
-
-
- -

Compatibilité du navigateur

- -
{{Compat("webextensions.api.permissions.onAdded")}}
- -

Exemples

- -
function handleAdded(permissions) {
-  console.log(`New API permissions: ${permissions.permissions}`);
-  console.log(`New host permissions: ${permissions.origins}`);
-}
-
-browser.permissions.onAdded.addListener(handleAdded);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.permissions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/permissions/onadded/index.md b/files/fr/mozilla/add-ons/webextensions/api/permissions/onadded/index.md new file mode 100644 index 0000000000..c677fac013 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/onadded/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Activé lorsque l'extension a accordé de nouvelles permissions.

+ +

Syntaxe

+ +
browser.permissions.onAdded.addListener(listener)
+browser.permissions.onAdded.removeListener(listener)
+browser.permissions.onAdded.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute une écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifier si le listener est enregistré pour cet événement. Retourne true s'il écoute, sinon  false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produira. La fonction passera les arguments suivants :

+ +
+
permissions
+
Objet {{WebExtAPIRef("permissions.Permissions")}} contenant les permissions qui ont été accordées.
+
+
+
+ +

Compatibilité du navigateur

+ +
{{Compat("webextensions.api.permissions.onAdded")}}
+ +

Exemples

+ +
function handleAdded(permissions) {
+  console.log(`New API permissions: ${permissions.permissions}`);
+  console.log(`New host permissions: ${permissions.origins}`);
+}
+
+browser.permissions.onAdded.addListener(handleAdded);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.permissions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index ab46333c7e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/permissions/onremoved/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Activé lorsque certaines permissions sont supprimés de l'extension.

- -

Syntaxe

- -
browser.permissions.onRemoved.addListener(listener)
-browser.permissions.onRemoved.removeListener(listener)
-browser.permissions.onRemoved.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur a supprimée.
-
hasListener(listener)
-
Vérifiez si listener est enregistré dans l'événement. Retourne true s'il écoute, sinon  false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui ne sera appelée lorsque cet événement se produira. La fonction sera passée avec les arguments suivants :

- -
-
permissions
-
L'objet {{WebExtAPIRef("permissions.Permissions")}} contenant les permissions qui ont été supprimées.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.permissions.onRemoved")}}

- -

Exemples

- -
function handleRemoved(permissions) {
-  console.log(`Removed API permissions: ${permissions.permissions}`);
-  console.log(`Removed host permissions: ${permissions.origins}`);
-}
-
-browser.permissions.onRemoved.addListener(handleRemoved);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.permissions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/permissions/onremoved/index.md b/files/fr/mozilla/add-ons/webextensions/api/permissions/onremoved/index.md new file mode 100644 index 0000000000..ab46333c7e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/onremoved/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Activé lorsque certaines permissions sont supprimés de l'extension.

+ +

Syntaxe

+ +
browser.permissions.onRemoved.addListener(listener)
+browser.permissions.onRemoved.removeListener(listener)
+browser.permissions.onRemoved.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur a supprimée.
+
hasListener(listener)
+
Vérifiez si listener est enregistré dans l'événement. Retourne true s'il écoute, sinon  false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui ne sera appelée lorsque cet événement se produira. La fonction sera passée avec les arguments suivants :

+ +
+
permissions
+
L'objet {{WebExtAPIRef("permissions.Permissions")}} contenant les permissions qui ont été supprimées.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.permissions.onRemoved")}}

+ +

Exemples

+ +
function handleRemoved(permissions) {
+  console.log(`Removed API permissions: ${permissions.permissions}`);
+  console.log(`Removed host permissions: ${permissions.origins}`);
+}
+
+browser.permissions.onRemoved.addListener(handleRemoved);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.permissions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index d14a74c498..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/permissions/permissions/index.html +++ /dev/null @@ -1,39 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet Permissions représente une collection de permissions.

- -

Type

- -

Un {{jsxref("object")}} avec les propriétés suivantes :

- -
-
origins{{optional_inline}}
-
Un tableau de modèles de correspondance, représentant les permissions de l'hôte.
-
permissions{{optional_inline}}
-
Un tableau de permissions nommées, y compris les permissions d'API  et les permissions du presse-papiers.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.permissions.Permissions")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.permissions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/permissions/permissions/index.md b/files/fr/mozilla/add-ons/webextensions/api/permissions/permissions/index.md new file mode 100644 index 0000000000..d14a74c498 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/permissions/index.md @@ -0,0 +1,39 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet Permissions représente une collection de permissions.

+ +

Type

+ +

Un {{jsxref("object")}} avec les propriétés suivantes :

+ +
+
origins{{optional_inline}}
+
Un tableau de modèles de correspondance, représentant les permissions de l'hôte.
+
permissions{{optional_inline}}
+
Un tableau de permissions nommées, y compris les permissions d'API  et les permissions du presse-papiers.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.permissions.Permissions")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.permissions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 2e8c7b7463..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/permissions/remove/index.html +++ /dev/null @@ -1,68 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Demander d'abandonner les permissions listées dans l'objet {{WebExtAPIRef("permissions.Permissions")}}.

- -

L'argument Permissions peut contenir soit une propriété  origins ,qui est un tableau de permissions d'hôte , ou une propriété permissions, qui est un tableau de permissions d'API, ou les deux. Les permissions  doivent provenir de l'ensemble des permissions définies dans la clé optional_permissions du manifest.json.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promesse.

- -

Syntaxe

- -
var removing = browser.permissions.remove(
-  permissions                // Permissions object
-)
-
- -

Paramètres

- -
-
permissions
-
Un objet {{WebExtAPIRef("permissions.Permissions")}}.
-
- -

Valeur retournée

- -

Une Promesse qui sera remplie avec true si les permissions répertoriées dans l'argument permissions ont été supprimées, ou false dans le cas contraire.

- -

Browser compatibility

- -

{{Compat("webextensions.api.permissions.remove")}}

- -

Exemples

- -

Ce code ajoute un gestionnaire de clic qui supprime une permission donnée.

- -
const permissionToRemove = {
-  permissions: ["history"]
-}
-
-function remove() {
-  console.log("removing");
-  browser.permissions.remove(permissionToRemove).then(result => {
-    console.log(result);
-  });
-}
-
-document.querySelector("#remove").addEventListener("click", remove);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.permissions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/permissions/remove/index.md b/files/fr/mozilla/add-ons/webextensions/api/permissions/remove/index.md new file mode 100644 index 0000000000..2e8c7b7463 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/remove/index.md @@ -0,0 +1,68 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Demander d'abandonner les permissions listées dans l'objet {{WebExtAPIRef("permissions.Permissions")}}.

+ +

L'argument Permissions peut contenir soit une propriété  origins ,qui est un tableau de permissions d'hôte , ou une propriété permissions, qui est un tableau de permissions d'API, ou les deux. Les permissions  doivent provenir de l'ensemble des permissions définies dans la clé optional_permissions du manifest.json.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promesse.

+ +

Syntaxe

+ +
var removing = browser.permissions.remove(
+  permissions                // Permissions object
+)
+
+ +

Paramètres

+ +
+
permissions
+
Un objet {{WebExtAPIRef("permissions.Permissions")}}.
+
+ +

Valeur retournée

+ +

Une Promesse qui sera remplie avec true si les permissions répertoriées dans l'argument permissions ont été supprimées, ou false dans le cas contraire.

+ +

Browser compatibility

+ +

{{Compat("webextensions.api.permissions.remove")}}

+ +

Exemples

+ +

Ce code ajoute un gestionnaire de clic qui supprime une permission donnée.

+ +
const permissionToRemove = {
+  permissions: ["history"]
+}
+
+function remove() {
+  console.log("removing");
+  browser.permissions.remove(permissionToRemove).then(result => {
+    console.log(result);
+  });
+}
+
+document.querySelector("#remove").addEventListener("click", remove);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.permissions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 82ddc6cfea..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/permissions/request/index.html +++ /dev/null @@ -1,88 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Demandez l'ensemble des permissions répertoriées dans l'objet {{WebExtAPIRef("permissions.Permissions")}}.

- -

L'argument Permissions peut contenir soit une propriété  origins , qui est un tableau de permissions d'hôte, soit une propriété permissions , qui est un tableau de permissions d'API, ou les deux. Les permissions doivent provenir de l'ensemble des permissions définies dans la clé  optional_permissions du manifest.json. La propriété origins qui correspondent à un sous-ensemble des hôtes correspondant à une  permission facultative : par exemple, si optional_permissions inclut "*://mozilla.org/", alors  permissions.origins peut inclure  "https://developer.mozilla.org/".

- -

La demande ne peut être faite qu'à l'intérieur du gestionnaire pour une action utilisateur.

- -

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.

- -

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.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var requesting = browser.permissions.request(
-  permissions                // Permissions object
-)
-
- -

Paramètres

- -
-
permissions
-
Un objet {{WebExtAPIRef("permissions.Permissions")}}
-
- -

Return value

- -

Une Promise qui sera remplie avec true si l'extension a reçu toutes les permissions répertoriées dans l'argument des permissions , ou false dans le cas contraire.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.permissions.request")}}

- -

Exemples

- -

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.

- -
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) => {
-    console.log(`Current permissions:`, currentPermissions);
-  });
-}
-
-document.querySelector("#request").addEventListener("click", requestPermissions);
- -

{{WebExtExamples}}

- -

Note :

- -

Actuellement un bug avec la demande d'origines et la demande des permissions sur la page about:addons.

- -

Cette API est basée sur l'API Chromium chrome.permissions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/permissions/request/index.md b/files/fr/mozilla/add-ons/webextensions/api/permissions/request/index.md new file mode 100644 index 0000000000..82ddc6cfea --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/permissions/request/index.md @@ -0,0 +1,88 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Demandez l'ensemble des permissions répertoriées dans l'objet {{WebExtAPIRef("permissions.Permissions")}}.

+ +

L'argument Permissions peut contenir soit une propriété  origins , qui est un tableau de permissions d'hôte, soit une propriété permissions , qui est un tableau de permissions d'API, ou les deux. Les permissions doivent provenir de l'ensemble des permissions définies dans la clé  optional_permissions du manifest.json. La propriété origins qui correspondent à un sous-ensemble des hôtes correspondant à une  permission facultative : par exemple, si optional_permissions inclut "*://mozilla.org/", alors  permissions.origins peut inclure  "https://developer.mozilla.org/".

+ +

La demande ne peut être faite qu'à l'intérieur du gestionnaire pour une action utilisateur.

+ +

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.

+ +

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.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var requesting = browser.permissions.request(
+  permissions                // Permissions object
+)
+
+ +

Paramètres

+ +
+
permissions
+
Un objet {{WebExtAPIRef("permissions.Permissions")}}
+
+ +

Return value

+ +

Une Promise qui sera remplie avec true si l'extension a reçu toutes les permissions répertoriées dans l'argument des permissions , ou false dans le cas contraire.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.permissions.request")}}

+ +

Exemples

+ +

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.

+ +
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) => {
+    console.log(`Current permissions:`, currentPermissions);
+  });
+}
+
+document.querySelector("#request").addEventListener("click", requestPermissions);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Actuellement un bug avec la demande d'origines et la demande des permissions sur la page about:addons.

+ +

Cette API est basée sur l'API Chromium chrome.permissions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index f86cb8b8b1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/getmoduleslots/index.html +++ /dev/null @@ -1,92 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Vous ne pouvez appeler cela que pour un module installé dans Firefox

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getting = browser.pkcs11.getModuleSlots(
-  name              // string
-)
-
- -

Paramètres

- -
-
name
-
string. Nom du module. Cela doit correspondre à la propriété name dans le manifest PKCS #11 pour le module.
-
- -

Valeur retournée

- -

Une Promise 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 :

- - - -

Token Les objets ont les propriétés suivantes :

- -
-
name
-
string. Nom du jeton.
-
manufacturer
-
string. Nom du jeton fabriqué.
-
HWVersion
-
string. 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".
-
FWVersion
-
string. Version du micrologiciel, en tant que numéro de version PKCS #11 (deux 32-bit séparés par un point, comme "1.0".
-
serial
-
string. Numéro de série, dont le format est défini par la spécification de jeton.
-
isLoggedIn
-
boolean: true si le jeton est déjà connecté, false sinon.
-
- -

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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pkcs11.getModuleSlots")}}

- -

Exemples

- -

Installe un module, puis dresse la liste de ses emplacements et liste des jetons qu'ils contiennent :

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/getmoduleslots/index.md b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/getmoduleslots/index.md new file mode 100644 index 0000000000..f86cb8b8b1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/getmoduleslots/index.md @@ -0,0 +1,92 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Vous ne pouvez appeler cela que pour un module installé dans Firefox

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getting = browser.pkcs11.getModuleSlots(
+  name              // string
+)
+
+ +

Paramètres

+ +
+
name
+
string. Nom du module. Cela doit correspondre à la propriété name dans le manifest PKCS #11 pour le module.
+
+ +

Valeur retournée

+ +

Une Promise 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 :

+ + + +

Token Les objets ont les propriétés suivantes :

+ +
+
name
+
string. Nom du jeton.
+
manufacturer
+
string. Nom du jeton fabriqué.
+
HWVersion
+
string. 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".
+
FWVersion
+
string. Version du micrologiciel, en tant que numéro de version PKCS #11 (deux 32-bit séparés par un point, comme "1.0".
+
serial
+
string. Numéro de série, dont le format est défini par la spécification de jeton.
+
isLoggedIn
+
boolean: true si le jeton est déjà connecté, false sinon.
+
+ +

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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pkcs11.getModuleSlots")}}

+ +

Exemples

+ +

Installe un module, puis dresse la liste de ses emplacements et liste des jetons qu'ils contiennent :

+ +
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);
+ +

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/index.html b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/index.html deleted file mode 100644 index 1a3d2319bd..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/index.html +++ /dev/null @@ -1,90 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

L'API pkcs11 permet à une extension d'énumérer les modules de sécurité PKCS #11, et de rendre accessibles au navigateur en tant que sources clés et de certificats.

- -

Pour utiliser cette API, vous devez avoir la permission "pkcs11".

- -

Utilisation de la boîte de dialogue Préférences Firefox pour installer les modules PKCS #11

- -

Effectuez les étapes suivantes :

- -
    -
  1. -

    Sauvegardez le module PKCS #11 dans un emplacement permanent sur votre ordinateur local

    -
  2. -
  3. -

    Sélectonnez Outils > Options ou sélectionnez le menu Firefox puis Options

    -
  4. -
  5. -

    Une fois la page Options ouverte, sélectionnez Vie privée & Sécurité

    -
  6. -
  7. -

    Faites défiler vers le bas de la page et sous Certificats ou tapez sur Dispositifs de sécurité...
    -

    -
  8. -
  9. -

    Cliquez ou appuyez sur le bouton Charger
    -

    -
  10. -
  11. -

    Entrez un nom pour le module de sécurité, tel que "Ma Base de données Client"

    - -
    -

    Attention : il y a actuellement un bogue dans Firefox où les caractères internationaux peuvent causer des problèmes.

    -
    -
  12. -
  13. -

    Choisir Parcourir... pour trouver l'emplacement du module PKCS #11 sur votre ordinateur local, puis cliquez ou appuyez sur OK pour confirmer.

    -
  14. -
- -
    -
- -

Provisionnement des modules PKCS #11

- -
-

Note: A partir de Firefox 58, les extensions peuvent utiliser l'API pkcs11 pour énumérer les modules PKCS #11 et les rendre accessibles au navigateur comme sources de clés et certificats.

-
- -

Il y a 2 pré-requis pour pouvoir utiliser cette API:

- - - -

Très probablement, l'utilisateur ou l'administrateur du périphérique installerait le module PKCS #11, et son installateur installerait le fichier de manifeste natif en même temps.

- -

Cependant, le module et le manifeste ne peuvent pas être installés dans le cadre du processus d'installation de l'extension.

- -

Pour plus de détails sur le contenu et l'emplacement du fichier de manifeste, voir Manifest natifs.

- -

Fonctions

- -
-
{{WebExtAPIRef("pkcs11.getModuleSlots()")}}
-
Pour chaque emplacement dans un module, obtenez son nom et s'il contient un jeton.
-
{{WebExtAPIRef("pkcs11.installModule()")}}
-
Installe le module PKCS # 11 nommé
-
{{WebExtAPIRef("pkcs11.isModuleInstalled()")}}
-
Vérifie si le module PKCS # 11 nommé est installé.
-
{{WebExtAPIRef("pkcs11.uninstallModule()")}}
-
Désinstalle le module PKCS # 11 nommé.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pkcs11", 1, 1)}} {{WebExtExamples("h2")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/index.md b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/index.md new file mode 100644 index 0000000000..1a3d2319bd --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

L'API pkcs11 permet à une extension d'énumérer les modules de sécurité PKCS #11, et de rendre accessibles au navigateur en tant que sources clés et de certificats.

+ +

Pour utiliser cette API, vous devez avoir la permission "pkcs11".

+ +

Utilisation de la boîte de dialogue Préférences Firefox pour installer les modules PKCS #11

+ +

Effectuez les étapes suivantes :

+ +
    +
  1. +

    Sauvegardez le module PKCS #11 dans un emplacement permanent sur votre ordinateur local

    +
  2. +
  3. +

    Sélectonnez Outils > Options ou sélectionnez le menu Firefox puis Options

    +
  4. +
  5. +

    Une fois la page Options ouverte, sélectionnez Vie privée & Sécurité

    +
  6. +
  7. +

    Faites défiler vers le bas de la page et sous Certificats ou tapez sur Dispositifs de sécurité...
    +

    +
  8. +
  9. +

    Cliquez ou appuyez sur le bouton Charger
    +

    +
  10. +
  11. +

    Entrez un nom pour le module de sécurité, tel que "Ma Base de données Client"

    + +
    +

    Attention : il y a actuellement un bogue dans Firefox où les caractères internationaux peuvent causer des problèmes.

    +
    +
  12. +
  13. +

    Choisir Parcourir... pour trouver l'emplacement du module PKCS #11 sur votre ordinateur local, puis cliquez ou appuyez sur OK pour confirmer.

    +
  14. +
+ +
    +
+ +

Provisionnement des modules PKCS #11

+ +
+

Note: A partir de Firefox 58, les extensions peuvent utiliser l'API pkcs11 pour énumérer les modules PKCS #11 et les rendre accessibles au navigateur comme sources de clés et certificats.

+
+ +

Il y a 2 pré-requis pour pouvoir utiliser cette API:

+ + + +

Très probablement, l'utilisateur ou l'administrateur du périphérique installerait le module PKCS #11, et son installateur installerait le fichier de manifeste natif en même temps.

+ +

Cependant, le module et le manifeste ne peuvent pas être installés dans le cadre du processus d'installation de l'extension.

+ +

Pour plus de détails sur le contenu et l'emplacement du fichier de manifeste, voir Manifest natifs.

+ +

Fonctions

+ +
+
{{WebExtAPIRef("pkcs11.getModuleSlots()")}}
+
Pour chaque emplacement dans un module, obtenez son nom et s'il contient un jeton.
+
{{WebExtAPIRef("pkcs11.installModule()")}}
+
Installe le module PKCS # 11 nommé
+
{{WebExtAPIRef("pkcs11.isModuleInstalled()")}}
+
Vérifie si le module PKCS # 11 nommé est installé.
+
{{WebExtAPIRef("pkcs11.uninstallModule()")}}
+
Désinstalle le module PKCS # 11 nommé.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pkcs11", 1, 1)}} {{WebExtExamples("h2")}}

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 deleted file mode 100644 index a70fee644d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/installmodule/index.html +++ /dev/null @@ -1,71 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Installe le module PKCS # 11 nommé, le rendant disponible pour Firefox

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var installing = browser.pkcs11.installModule(
-  name,              // string
-  flags              // integer
-)
-
- -

Paramètres

- -
-
name
-
string. Nom du module à installer. Cela doit correspondre à la propriété name property dans le manifest PKCS #11 pour le module.
-
flags{{optional_inline}}
-
integer. Drapeaux à transmettre au module.
-
- -

Valeur retournée

- -

Une Promise qui sera accompli sans arguments une fois le module installé.

- -

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.

- -

Browser compatibility

- -

{{Compat("webextensions.api.pkcs11.installModule", 10)}}

- -

Exemples

- -

Installe un module, puis dresse la liste de ses emplacements et liste les jetons qu'ils contiennent :

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/installmodule/index.md b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/installmodule/index.md new file mode 100644 index 0000000000..a70fee644d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/installmodule/index.md @@ -0,0 +1,71 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Installe le module PKCS # 11 nommé, le rendant disponible pour Firefox

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var installing = browser.pkcs11.installModule(
+  name,              // string
+  flags              // integer
+)
+
+ +

Paramètres

+ +
+
name
+
string. Nom du module à installer. Cela doit correspondre à la propriété name property dans le manifest PKCS #11 pour le module.
+
flags{{optional_inline}}
+
integer. Drapeaux à transmettre au module.
+
+ +

Valeur retournée

+ +

Une Promise qui sera accompli sans arguments une fois le module installé.

+ +

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.

+ +

Browser compatibility

+ +

{{Compat("webextensions.api.pkcs11.installModule", 10)}}

+ +

Exemples

+ +

Installe un module, puis dresse la liste de ses emplacements et liste les jetons qu'ils contiennent :

+ +
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);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index db549d86f7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/ismoduleinstalled/index.html +++ /dev/null @@ -1,55 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Vérifie si le module PKCS #11 nommé est actuellement installé dans Firefox.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var checking = browser.pkcs11.isModuleInstalled(
-  name              // string
-)
-
- -

Paramètres

- -
-
name
-
string. Nom du module à vérifier.
-
- -

valeur retournée

- -

Une Promise qui sera remplie avec true si le module est installé, false sinon.

- -

Si une erreur se produit dans le module, la promise sera rejetée avec un message d'erreur.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pkcs11.isModuleInstalled", 10)}}

- -

Exemples

- -

Vérifie sir le module nommée "pkcs11_module" est installé :

- -
function logIsInstalled(isInstalled) {
-  console.log(`Module is installed: ${isInstalled}`);
-}
-
-browser.pkcs11.isModuleInstalled("pkcs11_module").then(logIsInstalled);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/ismoduleinstalled/index.md b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/ismoduleinstalled/index.md new file mode 100644 index 0000000000..db549d86f7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/ismoduleinstalled/index.md @@ -0,0 +1,55 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Vérifie si le module PKCS #11 nommé est actuellement installé dans Firefox.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var checking = browser.pkcs11.isModuleInstalled(
+  name              // string
+)
+
+ +

Paramètres

+ +
+
name
+
string. Nom du module à vérifier.
+
+ +

valeur retournée

+ +

Une Promise qui sera remplie avec true si le module est installé, false sinon.

+ +

Si une erreur se produit dans le module, la promise sera rejetée avec un message d'erreur.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pkcs11.isModuleInstalled", 10)}}

+ +

Exemples

+ +

Vérifie sir le module nommée "pkcs11_module" est installé :

+ +
function logIsInstalled(isInstalled) {
+  console.log(`Module is installed: ${isInstalled}`);
+}
+
+browser.pkcs11.isModuleInstalled("pkcs11_module").then(logIsInstalled);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 4d76345947..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/uninstallmodule/index.html +++ /dev/null @@ -1,51 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Désinstalle le module PKCS #11 nommé de Firefox.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var uninstalling = browser.pkcs11.uninstallModule(
-  name              // string
-)
-
- -

Paramètres

- -
-
name
-
string. Nom du module à désinstaller. Cela doit correspondre à la propriété name dans le manifest PKCS #11 pour le module.
-
- -

Return value

- -

Une Promise qui sera accompli sans arguments une fois le module désinstallée.

- -

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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.pkcs11.uninstallModule", 10)}}

- -

Exemples

- -

Désinstalle le module nommé "pkcs11_module" :

- -
browser.pkcs11.uninstallModule("pkcs11_module");
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/pkcs11/uninstallmodule/index.md b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/uninstallmodule/index.md new file mode 100644 index 0000000000..4d76345947 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/pkcs11/uninstallmodule/index.md @@ -0,0 +1,51 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Désinstalle le module PKCS #11 nommé de Firefox.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var uninstalling = browser.pkcs11.uninstallModule(
+  name              // string
+)
+
+ +

Paramètres

+ +
+
name
+
string. Nom du module à désinstaller. Cela doit correspondre à la propriété name dans le manifest PKCS #11 pour le module.
+
+ +

Return value

+ +

Une Promise qui sera accompli sans arguments une fois le module désinstallée.

+ +

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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.pkcs11.uninstallModule", 10)}}

+ +

Exemples

+ +

Désinstalle le module nommé "pkcs11_module" :

+ +
browser.pkcs11.uninstallModule("pkcs11_module");
+ +

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/privacy/index.html b/files/fr/mozilla/add-ons/webextensions/api/privacy/index.html deleted file mode 100644 index 1cb748bb23..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/privacy/index.html +++ /dev/null @@ -1,70 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Accédez et modifiez les différents paramètres du navigateur liés à la vie privée.

- -

Pour utiliser l'API de confidentialité, vous devez avoir l'autorisation de l'API "privacy".

- -

Propriétés

- -
-
{{WebExtAPIRef("privacy.network")}}
-
Accès et modification des paramètres de confidentialité relatifs au réseau.
-
{{WebExtAPIRef("privacy.services")}}
-
Accès et modification des paramètres de confidentialité relatifs aux services fournis par le navigateur ou les tiers.
-
{{WebExtAPIRef("privacy.websites")}}
-
Accès et modification des paramètres de confidentialité relatifs aux comportements des sites Web.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.privacy", 10, 1)}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.privacy.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/privacy/index.md b/files/fr/mozilla/add-ons/webextensions/api/privacy/index.md new file mode 100644 index 0000000000..1cb748bb23 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/privacy/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Accédez et modifiez les différents paramètres du navigateur liés à la vie privée.

+ +

Pour utiliser l'API de confidentialité, vous devez avoir l'autorisation de l'API "privacy".

+ +

Propriétés

+ +
+
{{WebExtAPIRef("privacy.network")}}
+
Accès et modification des paramètres de confidentialité relatifs au réseau.
+
{{WebExtAPIRef("privacy.services")}}
+
Accès et modification des paramètres de confidentialité relatifs aux services fournis par le navigateur ou les tiers.
+
{{WebExtAPIRef("privacy.websites")}}
+
Accès et modification des paramètres de confidentialité relatifs aux comportements des sites Web.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.privacy", 10, 1)}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.privacy.

+
+ + 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 deleted file mode 100644 index c3cfea2903..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/privacy/network/index.html +++ /dev/null @@ -1,110 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}} -

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")}}.

- -

Les valeurs par défaut de ces propriétés peuvent varier selon les navigateurs.

- -

Propriétés

- -
-
networkPredictionEnabled
-
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur contenue est un booléen. Si il est défini à true, 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, <link rel='prefetch' ...>), et en ouvrant de manière préemptive les connexions TCP et SSL aux serveurs.
-
peerConnectionEnabled
-
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur contenue est un booléen. Si il est défini à false, l'interfaceRTCPeerConnection est désactivée. Notez que  getUserMedia() n'est pas affectée par ce paramètre.
-
webRTCIPHandlingPolicy
-
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 :
- "default"
- "default_public_and_private_interfaces"
- "default_public_interface_only"
- "disable_non_proxied_udp"
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.privacy.network")}}

- -

Exemples

- -

Définissez la propriété webRTCIPHandlingPolicy :

- -
function onSet(result) {
-  if (result) {
-    console.log("success");
-  } else {
-    console.log("failure");
-  }
-}
-
-browser.browserAction.onClicked.addListener(() => {
-
-  var getting = browser.privacy.network.webRTCIPHandlingPolicy.get({});
-  getting.then((got) => {
-    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");
-    }
-  });
-
-});
-
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.privacy. Cette documentation est dérivée de privacy.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - -
diff --git a/files/fr/mozilla/add-ons/webextensions/api/privacy/network/index.md b/files/fr/mozilla/add-ons/webextensions/api/privacy/network/index.md new file mode 100644 index 0000000000..c3cfea2903 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/privacy/network/index.md @@ -0,0 +1,110 @@ +--- +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 +--- +
{{AddonSidebar}} +

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")}}.

+ +

Les valeurs par défaut de ces propriétés peuvent varier selon les navigateurs.

+ +

Propriétés

+ +
+
networkPredictionEnabled
+
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur contenue est un booléen. Si il est défini à true, 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, <link rel='prefetch' ...>), et en ouvrant de manière préemptive les connexions TCP et SSL aux serveurs.
+
peerConnectionEnabled
+
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur contenue est un booléen. Si il est défini à false, l'interfaceRTCPeerConnection est désactivée. Notez que  getUserMedia() n'est pas affectée par ce paramètre.
+
webRTCIPHandlingPolicy
+
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 :
+ "default"
+ "default_public_and_private_interfaces"
+ "default_public_interface_only"
+ "disable_non_proxied_udp"
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.privacy.network")}}

+ +

Exemples

+ +

Définissez la propriété webRTCIPHandlingPolicy :

+ +
function onSet(result) {
+  if (result) {
+    console.log("success");
+  } else {
+    console.log("failure");
+  }
+}
+
+browser.browserAction.onClicked.addListener(() => {
+
+  var getting = browser.privacy.network.webRTCIPHandlingPolicy.get({});
+  getting.then((got) => {
+    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");
+    }
+  });
+
+});
+
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.privacy. Cette documentation est dérivée de privacy.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + +
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 deleted file mode 100644 index 4bc13840b6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/privacy/services/index.html +++ /dev/null @@ -1,60 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}} -

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")}}.

- -

Propriétés

- -
-
passwordSavingEnabled
-
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur contenue est un booléen. Si il est défini à true, 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 : true.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.privacy.services", 10)}}

- -

Exemples

- -

Désactivation, si possible, du gestionnaire de mot de passe.

- -
function onSet(result) {
-  if (result) {
-    console.log("success");
-  } else {
-    console.log("failure");
-  }
-}
-
-  var getting = browser.privacy.services.passwordSavingEnabled.get({});
-  getting.then((got) => {
-    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");
-    }
-  });
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.privacy.

-
-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/privacy/services/index.md b/files/fr/mozilla/add-ons/webextensions/api/privacy/services/index.md new file mode 100644 index 0000000000..4bc13840b6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/privacy/services/index.md @@ -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 +--- +
{{AddonSidebar}} +

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")}}.

+ +

Propriétés

+ +
+
passwordSavingEnabled
+
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur contenue est un booléen. Si il est défini à true, 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 : true.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.privacy.services", 10)}}

+ +

Exemples

+ +

Désactivation, si possible, du gestionnaire de mot de passe.

+ +
function onSet(result) {
+  if (result) {
+    console.log("success");
+  } else {
+    console.log("failure");
+  }
+}
+
+  var getting = browser.privacy.services.passwordSavingEnabled.get({});
+  getting.then((got) => {
+    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");
+    }
+  });
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.privacy.

+
+
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 deleted file mode 100644 index f35271b733..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/privacy/websites/index.html +++ /dev/null @@ -1,154 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}} -

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")}}.

- -

Les valeurs par défaut  de ces propriétés ont tendance à varier selon les navigateurs.

- -

Propriétés

- -
-
cookieConfig
-
-

Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un objet.

- -

L'objet a deux propriétés :

- -
    -
  • behavior: une chaîne qui peut prendre l'une des valeurs suivantes: - -
      -
    • "allow_all": accepte tous les cookies
    • -
    • "reject_all": rejeter tous les cookies
    • -
    • "reject_third_party": rejeter tous les cookies tiers
    • -
    • "allow_visited" : accepte un cookie tiers uniquement si le domaine de premier niveau du cookie contient déjà au moins un cookie.
    • -
    • "reject_trackers": rejeter les cookies de suivi
    • -
    -
  • -
  • nonPersistentCookies: un booléen. Si la valeur est true, tous les cookies seront traités comme des cookies de session.
  • -
-
-
firstPartyIsolate
-
-

Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen.

- -

SI true, la préférence firstPartyIsolate 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).

- -

Par défaut à false.

-
-
hyperlinkAuditingEnabled
-
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen. Si true, le navigateur envoie des pings d'audit lorsqu'un site web utilise l'attribut ping pour les demander.
-
protectedContentEnabled
-
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen. Disponible uniquement sur Windows. Sitrue, le navigateur fournit un ID unique aux plugins afin d'exécuter le contenu protégé.
-
referrersEnabled
-
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur  sous-jacente est un booléen. Si activé, le navigateur envoie les en-têtes de référence avec vos demandes.
-
resistFingerprinting
-
-

Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen.

- -

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.

- -

Si true, la préférence resistFingerprinting 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.

- -

Par défaut à false.

-
-
thirdPartyCookiesAllowed
-
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen. Si false, le navigateur bloque les cookies tiers.
-
trackingProtectionMode
-
-

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 :

- -
    -
  • "always": La protection de suivi est activée.
  • -
  • "never": La protection de suivi est désactivée.
  • -
  • "private_browsing": La protection de suivi est activée uniquement dans les fenêtres de navigation privée.
  • -
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.privacy.websites")}}

- -

Exemples

- -

Définissez la propriété hyperlinkAuditingEnabled .

- -
function onSet(result) {
-  if (result) {
-    console.log("success");
-  } else {
-    console.log("failure");
-  }
-}
-
-browser.browserAction.onClicked.addListener(() => {
-
-  var getting = browser.privacy.websites.hyperlinkAuditingEnabled.get({});
-  getting.then((got) => {
-    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");
-    }
-  });
-
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.privacy. Cette documentation est dérivée de privacy.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - -
diff --git a/files/fr/mozilla/add-ons/webextensions/api/privacy/websites/index.md b/files/fr/mozilla/add-ons/webextensions/api/privacy/websites/index.md new file mode 100644 index 0000000000..f35271b733 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/privacy/websites/index.md @@ -0,0 +1,154 @@ +--- +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 +--- +
{{AddonSidebar}} +

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")}}.

+ +

Les valeurs par défaut  de ces propriétés ont tendance à varier selon les navigateurs.

+ +

Propriétés

+ +
+
cookieConfig
+
+

Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un objet.

+ +

L'objet a deux propriétés :

+ +
    +
  • behavior: une chaîne qui peut prendre l'une des valeurs suivantes: + +
      +
    • "allow_all": accepte tous les cookies
    • +
    • "reject_all": rejeter tous les cookies
    • +
    • "reject_third_party": rejeter tous les cookies tiers
    • +
    • "allow_visited" : accepte un cookie tiers uniquement si le domaine de premier niveau du cookie contient déjà au moins un cookie.
    • +
    • "reject_trackers": rejeter les cookies de suivi
    • +
    +
  • +
  • nonPersistentCookies: un booléen. Si la valeur est true, tous les cookies seront traités comme des cookies de session.
  • +
+
+
firstPartyIsolate
+
+

Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen.

+ +

SI true, la préférence firstPartyIsolate 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).

+ +

Par défaut à false.

+
+
hyperlinkAuditingEnabled
+
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen. Si true, le navigateur envoie des pings d'audit lorsqu'un site web utilise l'attribut ping pour les demander.
+
protectedContentEnabled
+
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen. Disponible uniquement sur Windows. Sitrue, le navigateur fournit un ID unique aux plugins afin d'exécuter le contenu protégé.
+
referrersEnabled
+
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur  sous-jacente est un booléen. Si activé, le navigateur envoie les en-têtes de référence avec vos demandes.
+
resistFingerprinting
+
+

Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen.

+ +

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.

+ +

Si true, la préférence resistFingerprinting 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.

+ +

Par défaut à false.

+
+
thirdPartyCookiesAllowed
+
Un objet {{WebExtAPIRef("types.BrowserSetting")}} dont la valeur sous-jacente est un booléen. Si false, le navigateur bloque les cookies tiers.
+
trackingProtectionMode
+
+

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 :

+ +
    +
  • "always": La protection de suivi est activée.
  • +
  • "never": La protection de suivi est désactivée.
  • +
  • "private_browsing": La protection de suivi est activée uniquement dans les fenêtres de navigation privée.
  • +
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.privacy.websites")}}

+ +

Exemples

+ +

Définissez la propriété hyperlinkAuditingEnabled .

+ +
function onSet(result) {
+  if (result) {
+    console.log("success");
+  } else {
+    console.log("failure");
+  }
+}
+
+browser.browserAction.onClicked.addListener(() => {
+
+  var getting = browser.privacy.websites.hyperlinkAuditingEnabled.get({});
+  getting.then((got) => {
+    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");
+    }
+  });
+
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.privacy. Cette documentation est dérivée de privacy.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + +
diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/index.html b/files/fr/mozilla/add-ons/webextensions/api/proxy/index.html deleted file mode 100644 index 00d4ca9642..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/proxy/index.html +++ /dev/null @@ -1,68 +0,0 @@ ---- -title: proxy -slug: Mozilla/Add-ons/WebExtensions/API/proxy -tags: - - API - - Add-ons - - Proxy - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/API/proxy ---- -
{{AddonSidebar}}
- -
-

Attention :

-

Vous ne devez pas utiliser la fonction {{WebExtAPIRef("proxy.register()")}} ou la fonction {{WebExtAPIRef("proxy.unregister()")}} pour enregistrer et supprimer le fichier Proxy Auto-Configuration (PAC). Cette API était dépréciée dans Firefox 68 et sera supprimée de Firefox 71.

-
- -

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.

- -

L'avantage de l'approche proxy.onRequest 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 stockage et au réseau de votre extension APIs comme dns).

- -

En dehors de cette API, les extensions peuvent également utiliser la propriété  browserSettings.proxyConfig pour configurer les paramètres proxy globaux.

- -

Google Chrome fournit une API d'extension également appelée "proxy" 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 proxy Chrome, cette API est uniquement disponible via l'espace de noms du navigateur.

- -

Pour utiliser cette API, vous devez disposer de la permission "proxy". De plus, lorsque vous voulez intercepter des requêtes, vous avez également besoin de la permission de l'hôte pour les URL des requêtes interceptées

- -

Types

- -
-
{{WebExtAPIRef("proxy.ProxyInfo")}}
-
Décrit un proxy.
-
{{WebExtAPIRef("proxy.RequestDetails")}}
-
-

Contient des informations sur une requête Web que le navigateur est sur le point de faire.

-
-
- -

Properties

- -
-
{{WebExtAPIRef("proxy.settings")}}
-
Obtenir et définir les paramètres de proxy.
-
- -

Functions

- -
-
{{WebExtAPIRef("proxy.register()")}}
-
Enregistre le script proxy donné.
-
{{WebExtAPIRef("proxy.unregister()")}}
-
Annule l'inscription du script proxy.
-
- -

Events

- -
-
{{WebExtAPIRef("proxy.onError")}}
-
Lancé lorsque le système rencontre une erreur lors de l'exécution du script PAC ou de l'écouteur onRequest.
-
{{WebExtAPIRef("proxy.onRequest")}}
-
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.
-
- -

{{WebExtExamples("h2")}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.proxy")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/index.md b/files/fr/mozilla/add-ons/webextensions/api/proxy/index.md new file mode 100644 index 0000000000..00d4ca9642 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +
+

Attention :

+

Vous ne devez pas utiliser la fonction {{WebExtAPIRef("proxy.register()")}} ou la fonction {{WebExtAPIRef("proxy.unregister()")}} pour enregistrer et supprimer le fichier Proxy Auto-Configuration (PAC). Cette API était dépréciée dans Firefox 68 et sera supprimée de Firefox 71.

+
+ +

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.

+ +

L'avantage de l'approche proxy.onRequest 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 stockage et au réseau de votre extension APIs comme dns).

+ +

En dehors de cette API, les extensions peuvent également utiliser la propriété  browserSettings.proxyConfig pour configurer les paramètres proxy globaux.

+ +

Google Chrome fournit une API d'extension également appelée "proxy" 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 proxy Chrome, cette API est uniquement disponible via l'espace de noms du navigateur.

+ +

Pour utiliser cette API, vous devez disposer de la permission "proxy". De plus, lorsque vous voulez intercepter des requêtes, vous avez également besoin de la permission de l'hôte pour les URL des requêtes interceptées

+ +

Types

+ +
+
{{WebExtAPIRef("proxy.ProxyInfo")}}
+
Décrit un proxy.
+
{{WebExtAPIRef("proxy.RequestDetails")}}
+
+

Contient des informations sur une requête Web que le navigateur est sur le point de faire.

+
+
+ +

Properties

+ +
+
{{WebExtAPIRef("proxy.settings")}}
+
Obtenir et définir les paramètres de proxy.
+
+ +

Functions

+ +
+
{{WebExtAPIRef("proxy.register()")}}
+
Enregistre le script proxy donné.
+
{{WebExtAPIRef("proxy.unregister()")}}
+
Annule l'inscription du script proxy.
+
+ +

Events

+ +
+
{{WebExtAPIRef("proxy.onError")}}
+
Lancé lorsque le système rencontre une erreur lors de l'exécution du script PAC ou de l'écouteur onRequest.
+
{{WebExtAPIRef("proxy.onRequest")}}
+
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.
+
+ +

{{WebExtExamples("h2")}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.proxy")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/onerror/index.html b/files/fr/mozilla/add-ons/webextensions/api/proxy/onerror/index.html deleted file mode 100644 index 136451dc85..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/proxy/onerror/index.html +++ /dev/null @@ -1,59 +0,0 @@ ---- -title: proxy.onProxyError -slug: Mozilla/Add-ons/WebExtensions/API/proxy/onError -tags: - - API - - Add-ons - - Event - - Proxy - - Reference - - WebExtensions - - onProxyError -translation_of: Mozilla/Add-ons/WebExtensions/API/proxy/onError -original_slug: Mozilla/Add-ons/WebExtensions/API/proxy/onProxyError ---- -
{{AddonSidebar()}}
- -

Lancé en cas d'erreur lors de l'évaluation du fichier PAC ou l'écouteur onRequest.

- -

L'erreur peut être déclenchée en lançant ou renvoyant une valeur invalide dans le gestionnaire d'événements proxy.onRequest.

- -

Syntaxe

- -
browser.proxy.onError.addListener(listener)
-browser.proxy.onError.removeListener(listener)
-browser.proxy.onError.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si l'écouteur est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
newState
-
Object. Un objet Error représentant l'erreur.
-
-
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.proxy.onError")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/onerror/index.md b/files/fr/mozilla/add-ons/webextensions/api/proxy/onerror/index.md new file mode 100644 index 0000000000..136451dc85 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/onerror/index.md @@ -0,0 +1,59 @@ +--- +title: proxy.onProxyError +slug: Mozilla/Add-ons/WebExtensions/API/proxy/onError +tags: + - API + - Add-ons + - Event + - Proxy + - Reference + - WebExtensions + - onProxyError +translation_of: Mozilla/Add-ons/WebExtensions/API/proxy/onError +original_slug: Mozilla/Add-ons/WebExtensions/API/proxy/onProxyError +--- +
{{AddonSidebar()}}
+ +

Lancé en cas d'erreur lors de l'évaluation du fichier PAC ou l'écouteur onRequest.

+ +

L'erreur peut être déclenchée en lançant ou renvoyant une valeur invalide dans le gestionnaire d'événements proxy.onRequest.

+ +

Syntaxe

+ +
browser.proxy.onError.addListener(listener)
+browser.proxy.onError.removeListener(listener)
+browser.proxy.onError.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si l'écouteur est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
newState
+
Object. Un objet Error représentant l'erreur.
+
+
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.proxy.onError")}}

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 deleted file mode 100644 index 209b532f15..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/proxy/onrequest/index.html +++ /dev/null @@ -1,105 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Cet événement est étroitement modélisé sur les événements définis dans l'API  webRequest Comme ces événements, sa fonction addListener() prend trois arguments :

- - - -

L'événement est déclenché avant l'un des événements webRequest pour la même demande.

- -

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).

- -

Pour utiliser proxy.onRequest, une extension doit avoir la permission API "proxy" , ainsi que la permission d'hôte pour les URL des requêtes qu'elle intercepte - ela signifie essentiellement que les modèles de correspondance de l'argument filter doivent être un sous-ensemble de l'extension autorisations de l'hôte.

- -

Syntaxe

- -
browser.proxy.onRequest.addListener(
-  listener,             //  function
-  filter,               //  object
-  extraInfoSpec         //  optional array of strings
-)
-browser.proxy.onRequest.removeListener(listener)
-browser.proxy.onRequest.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener, filter, extraInfoSpec)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
listener
-
-

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.

- -

L'écouteur peut renvoyer l'un des éléments suivants:

- -
    -
  • un objet {{WebExtAPIRef("proxy.ProxyInfo")}}
  • -
  • un tableau d'objets proxy.ProxyInfo
  • -
  • Une Promise qui se résout en un objet ProxyInfo
  • -
  • Une Promise qui résout en un tableau d'objets ProxyInfo.
  • -
- -

Si l'écouteur renvoie un tableau, ou une Promesse qui se résout en un tableau, alors tous les objetsProxyInfo après le premier représentent les basculements: si le proxy à la position N dans le tableau n'est pas accessible quand son ProxyInfo.failoverTimeout alors le navigateur essayez le proxy à la position N+1.

- -

S'il y a une erreur spécifiant les objets proxy.ProxyInfo objects, alors {{WebExtAPIRef("proxy.onError")}} sera appelé.

-
-
filter
-
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un ensemble de filtres qui limite les événements qui seront envoyés à cet écouteur.
-
extraInfoSpec {{optional_inline}}
-
array de string. Options supplémentaires pour l'événement. Vous pouvez passer une seule valeur, "requestHeaders", pour inclure les en-têtes de demande dans l'objet de details transmis à l'écouteur.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.proxy.onRequest", 10)}}

- -

Exemples

- -

Ce code intercepte les requêtes à <all_urls>, et les envoie par procuration si elles ne sont pas destinées à un cadre de premier niveau.

- -
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: ["<all_urls>"]});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/onrequest/index.md b/files/fr/mozilla/add-ons/webextensions/api/proxy/onrequest/index.md new file mode 100644 index 0000000000..209b532f15 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/onrequest/index.md @@ -0,0 +1,105 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Cet événement est étroitement modélisé sur les événements définis dans l'API  webRequest Comme ces événements, sa fonction addListener() prend trois arguments :

+ + + +

L'événement est déclenché avant l'un des événements webRequest pour la même demande.

+ +

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).

+ +

Pour utiliser proxy.onRequest, une extension doit avoir la permission API "proxy" , ainsi que la permission d'hôte pour les URL des requêtes qu'elle intercepte - ela signifie essentiellement que les modèles de correspondance de l'argument filter doivent être un sous-ensemble de l'extension autorisations de l'hôte.

+ +

Syntaxe

+ +
browser.proxy.onRequest.addListener(
+  listener,             //  function
+  filter,               //  object
+  extraInfoSpec         //  optional array of strings
+)
+browser.proxy.onRequest.removeListener(listener)
+browser.proxy.onRequest.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener, filter, extraInfoSpec)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
listener
+
+

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.

+ +

L'écouteur peut renvoyer l'un des éléments suivants:

+ +
    +
  • un objet {{WebExtAPIRef("proxy.ProxyInfo")}}
  • +
  • un tableau d'objets proxy.ProxyInfo
  • +
  • Une Promise qui se résout en un objet ProxyInfo
  • +
  • Une Promise qui résout en un tableau d'objets ProxyInfo.
  • +
+ +

Si l'écouteur renvoie un tableau, ou une Promesse qui se résout en un tableau, alors tous les objetsProxyInfo après le premier représentent les basculements: si le proxy à la position N dans le tableau n'est pas accessible quand son ProxyInfo.failoverTimeout alors le navigateur essayez le proxy à la position N+1.

+ +

S'il y a une erreur spécifiant les objets proxy.ProxyInfo objects, alors {{WebExtAPIRef("proxy.onError")}} sera appelé.

+
+
filter
+
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un ensemble de filtres qui limite les événements qui seront envoyés à cet écouteur.
+
extraInfoSpec {{optional_inline}}
+
array de string. Options supplémentaires pour l'événement. Vous pouvez passer une seule valeur, "requestHeaders", pour inclure les en-têtes de demande dans l'objet de details transmis à l'écouteur.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.proxy.onRequest", 10)}}

+ +

Exemples

+ +

Ce code intercepte les requêtes à <all_urls>, et les envoie par procuration si elles ne sont pas destinées à un cadre de premier niveau.

+ +
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: ["<all_urls>"]});
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 2bc4fd359b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/proxy/proxyinfo/index.html +++ /dev/null @@ -1,61 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
type
-
-

string. 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 :

- -
    -
  • "direct": 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.
  • -
  • "http": HTTP proxy (ou SSL CONNECT pour HTTPS)
  • -
  • "https": HTTP proxying via TLS connection au proxy
  • -
  • "socks": proxy SOCKS v5
  • -
  • "socks4": proxy SOCKS v4
  • -
-
-
host
-
string. Le nom d'hôte du serveur proxy. Obligatoire sauf si le type est "direct".
-
port
-
string. e numéro de port du serveur proxy. Obligatoire sauf si le type est  "direct".
-
username
-
string. Nom d'utilisateur pour le service proxy. Ceci est utilisable avec "socks".  Pour les autorisations de proxy HTTP, utilisez webRequest.onAuthRequired.
-
password
-
string. Mot de passe pour le service proxy. Ceci est utilisable avec "socks". FPour les autorisations de proxy HTTP, utilisez webRequest.onAuthRequired.
-
proxyDNS
-
boolean. Si vrai, le serveur proxy est utilisé pour résoudre certaines requêtes DNS (uniquement utilisable avec "socks4" et "socks").  Par défaut à false.
-
failoverTimeout
-
number:  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 proxy.onRequest sera utilisé.
-
- -
-
proxyAuthorizationHeader
-
string. 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).
-
- Par exemple, si vous voulez envoyer "nom d'utilisateur" et "mot de passe" pour l'authentification "basique", vous pouvez définir la propriété proxyAuthorizationHeader à Basic dXNlcm5hbWU6cGFzc3dvcmQ=
-
connectionIsolationKey {{optional_inline}}
-
string. Une clé optionnelle utilisée pour l'isolation supplémentaire de cette connexion proxy.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.proxy.ProxyInfo")}}

- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/proxyinfo/index.md b/files/fr/mozilla/add-ons/webextensions/api/proxy/proxyinfo/index.md new file mode 100644 index 0000000000..2bc4fd359b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/proxyinfo/index.md @@ -0,0 +1,61 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
type
+
+

string. 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 :

+ +
    +
  • "direct": 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.
  • +
  • "http": HTTP proxy (ou SSL CONNECT pour HTTPS)
  • +
  • "https": HTTP proxying via TLS connection au proxy
  • +
  • "socks": proxy SOCKS v5
  • +
  • "socks4": proxy SOCKS v4
  • +
+
+
host
+
string. Le nom d'hôte du serveur proxy. Obligatoire sauf si le type est "direct".
+
port
+
string. e numéro de port du serveur proxy. Obligatoire sauf si le type est  "direct".
+
username
+
string. Nom d'utilisateur pour le service proxy. Ceci est utilisable avec "socks".  Pour les autorisations de proxy HTTP, utilisez webRequest.onAuthRequired.
+
password
+
string. Mot de passe pour le service proxy. Ceci est utilisable avec "socks". FPour les autorisations de proxy HTTP, utilisez webRequest.onAuthRequired.
+
proxyDNS
+
boolean. Si vrai, le serveur proxy est utilisé pour résoudre certaines requêtes DNS (uniquement utilisable avec "socks4" et "socks").  Par défaut à false.
+
failoverTimeout
+
number:  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 proxy.onRequest sera utilisé.
+
+ +
+
proxyAuthorizationHeader
+
string. 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).
+
+ Par exemple, si vous voulez envoyer "nom d'utilisateur" et "mot de passe" pour l'authentification "basique", vous pouvez définir la propriété proxyAuthorizationHeader à Basic dXNlcm5hbWU6cGFzc3dvcmQ=
+
connectionIsolationKey {{optional_inline}}
+
string. Une clé optionnelle utilisée pour l'isolation supplémentaire de cette connexion proxy.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.proxy.ProxyInfo")}}

+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 8fe80e8891..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.html +++ /dev/null @@ -1,159 +0,0 @@ ---- -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 ---- -

{{AddonSidebar()}} {{deprecated_header}}

- -

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 :

- -

- -

Enregistre un fichier PAC (Proxy Auto-Configuration). Le fichier est exécuté immédiatement, et sa fonction FindProxyForURL() sera appelée pour toutes les demandes HTTP, HTTPS ou FTP.

- -

Si les fichiers PAC sont enregistrés par plusieurs extensions, les demandes seront initialement transmises à celle qui a été enregistrée en premier.

- - - -

Chaque extension ne peut enregistrer qu'un seul fichier PAC : si vous appelez  register() deux fois, le second fichier PACremplacera le premier.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Communiquez avec les fichiers PAC

- -

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 runtime.sendMessage() et runtime.onMessage.

- -

Pour envoyer un message au fichier PAC, vous devez définir l'option toProxyScript :

- -
// background.js
-
-// Log any messages from the proxy.
-browser.runtime.onMessage.addListener((message, sender) => {
-  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});
- -
// pac.js
-
-browser.runtime.onMessage.addListener((message) => {
-  if (message.enabled) {
-    browser.runtime.sendMessage("I'm enabled!");
-  }
-});
- -

Spécification de fichier PAC

- -

La syntaxe de base du fichier PAC est décrite dans la documentation PAC, 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.

- -

Valeur retournée FindProxyForURL()

- -

La norme FindProxyForURL() renvoie une chaîne. Dans Firefox 55 et 56, le fichier PAC utilisé avec l'API proxy renvoie également une chaîne. Dans Firefox 55 seulement, vous devez passer un argument à la valeur de retour "DIRECT", même s'il n'a pas besoin d'argument.

- -

À partir de Firefox 57, FindProxyForURL() peut toujours renvoyer une chaîne, mais peut également (et de préférence) renvoyer un tableau d'objets  {{WebExtAPIRef("proxy.ProxyInfo")}}.

- -

Si le tableau contient plus d'un objet, alors tous les objets ProxyInfo après le premier représentent les basculements : si le proxy à la position N dans le tableau n'est pas accessible quand son ProxyInfo.failoverTimeout expire, alors le navigateur essaiera le proxy à la position N + 1.

- -

Par exemple :

- -
const proxySpecification = [
-  {
-    type: "socks",
-    host: "foo.com",
-    port: 1080,
-    proxyDNS: true,
-    failoverTimeout: 5
-  },
-  {
-    type: "socks",
-    host: "bar.com",
-    port: 1060,
-  }
-];
- -

Le premier proxy dans le tableau sera essayé en premier. S'il ne répond pas dans failoverTimeout secondes, le prochain sera essayé, jusqu'à ce que la fin du tableau est atteint.

- -

Environnement du fichier PAC

- -

Les fonctions globales d'assistance généralement disponibles pour les fichiers PAC  (isPlainHostName(), dnsDomainIs(), etc) ne sont pas disponibles.

- -

Le code qui s'exécute dans le fichier PAC n'a pas accès à :

- - - -
//  pac.js
-
-// send the log message to the background script
-browser.runtime.sendMessage(`Proxy-blocker: blocked ${url}`);
- -
// 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);
- -

Syntaxe

- -
var registering = browser.proxy.register(
-  url   // string
-)
-
- -

Paramètres

- -
-
url
-
String. URL pointant vers le fichier PAC à charger. Les fichiers PAC doivent être groupés avec l'extension, et l'url doit être relative au fichier manifest.json de l'extension.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie sans argument lorsque le fichier PAC a été enregistré ou rejetée en cas d'erreur.

- -

Exemples

- -
const proxyScriptURL = "proxy/proxy-script.js";
-
-browser.proxy.register(proxyScriptURL);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.proxy.register")}}

- -

Note :

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.md b/files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.md new file mode 100644 index 0000000000..8fe80e8891 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/register/index.md @@ -0,0 +1,159 @@ +--- +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 +--- +

{{AddonSidebar()}} {{deprecated_header}}

+ +

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 :

+ +

+ +

Enregistre un fichier PAC (Proxy Auto-Configuration). Le fichier est exécuté immédiatement, et sa fonction FindProxyForURL() sera appelée pour toutes les demandes HTTP, HTTPS ou FTP.

+ +

Si les fichiers PAC sont enregistrés par plusieurs extensions, les demandes seront initialement transmises à celle qui a été enregistrée en premier.

+ + + +

Chaque extension ne peut enregistrer qu'un seul fichier PAC : si vous appelez  register() deux fois, le second fichier PACremplacera le premier.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Communiquez avec les fichiers PAC

+ +

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 runtime.sendMessage() et runtime.onMessage.

+ +

Pour envoyer un message au fichier PAC, vous devez définir l'option toProxyScript :

+ +
// background.js
+
+// Log any messages from the proxy.
+browser.runtime.onMessage.addListener((message, sender) => {
+  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});
+ +
// pac.js
+
+browser.runtime.onMessage.addListener((message) => {
+  if (message.enabled) {
+    browser.runtime.sendMessage("I'm enabled!");
+  }
+});
+ +

Spécification de fichier PAC

+ +

La syntaxe de base du fichier PAC est décrite dans la documentation PAC, 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.

+ +

Valeur retournée FindProxyForURL()

+ +

La norme FindProxyForURL() renvoie une chaîne. Dans Firefox 55 et 56, le fichier PAC utilisé avec l'API proxy renvoie également une chaîne. Dans Firefox 55 seulement, vous devez passer un argument à la valeur de retour "DIRECT", même s'il n'a pas besoin d'argument.

+ +

À partir de Firefox 57, FindProxyForURL() peut toujours renvoyer une chaîne, mais peut également (et de préférence) renvoyer un tableau d'objets  {{WebExtAPIRef("proxy.ProxyInfo")}}.

+ +

Si le tableau contient plus d'un objet, alors tous les objets ProxyInfo après le premier représentent les basculements : si le proxy à la position N dans le tableau n'est pas accessible quand son ProxyInfo.failoverTimeout expire, alors le navigateur essaiera le proxy à la position N + 1.

+ +

Par exemple :

+ +
const proxySpecification = [
+  {
+    type: "socks",
+    host: "foo.com",
+    port: 1080,
+    proxyDNS: true,
+    failoverTimeout: 5
+  },
+  {
+    type: "socks",
+    host: "bar.com",
+    port: 1060,
+  }
+];
+ +

Le premier proxy dans le tableau sera essayé en premier. S'il ne répond pas dans failoverTimeout secondes, le prochain sera essayé, jusqu'à ce que la fin du tableau est atteint.

+ +

Environnement du fichier PAC

+ +

Les fonctions globales d'assistance généralement disponibles pour les fichiers PAC  (isPlainHostName(), dnsDomainIs(), etc) ne sont pas disponibles.

+ +

Le code qui s'exécute dans le fichier PAC n'a pas accès à :

+ + + +
//  pac.js
+
+// send the log message to the background script
+browser.runtime.sendMessage(`Proxy-blocker: blocked ${url}`);
+ +
// 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);
+ +

Syntaxe

+ +
var registering = browser.proxy.register(
+  url   // string
+)
+
+ +

Paramètres

+ +
+
url
+
String. URL pointant vers le fichier PAC à charger. Les fichiers PAC doivent être groupés avec l'extension, et l'url doit être relative au fichier manifest.json de l'extension.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie sans argument lorsque le fichier PAC a été enregistré ou rejetée en cas d'erreur.

+ +

Exemples

+ +
const proxyScriptURL = "proxy/proxy-script.js";
+
+browser.proxy.register(proxyScriptURL);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.proxy.register")}}

+ +

Note :

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 08561e5845..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/proxy/requestdetails/index.html +++ /dev/null @@ -1,58 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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")}}.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
cookieStoreId
-
string. L'ID de magasin de cookies du contexte actuel.
-
documentUrl
-
string. URL de la page dans laquelle la ressource demandée sera chargée.
-
frameId
-
integer. 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é (type est main_frame ou sub_frame), frameId indique l'ID de cette trame, pas l'ID de la trame externe. Les ID de cadre sont uniques dans un onglet.
-
fromCache
-
boolean. Indique si cette réponse sera récupérée du cache disque.
-
incognito
-
boolean true pour les demandes de navigation privées
-
ip
-
L'adresse IP du serveur à laquelle la demande sera envoyée. Notez qu'il peut s'agir d'une adresse IPv6 littérale.
-
method
-
string. Méthode HTTP standard: par exemple, "GET" ou "POST".
-
originUrl
-
string. 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'attribut cible d'un lien, ou d'un document CSS inclut une image utilisant la  notation fonctionnelle url(), alors ce sera l'URL du document original ou du  document CSS, respectivement.
-
parentFrameId
-
integer. ID de l'image qui contient l'image qui a envoyé la demande. Défini sur -1 si aucun cadre parent n'existe.
-
requestId
-
string. 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.
-
requestHeaders{{optional_inline}}
-
{{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  "requestHeaders" a été passée dans addListener().
-
tabId
-
integer. 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.
-
timeStamp
-
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
-
type
-
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandé : par exemple, "image", "script", "stylesheet".
-
url
-
string. Cible de la demande.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.proxy.RequestDetails")}}

- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/requestdetails/index.md b/files/fr/mozilla/add-ons/webextensions/api/proxy/requestdetails/index.md new file mode 100644 index 0000000000..08561e5845 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/requestdetails/index.md @@ -0,0 +1,58 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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")}}.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
cookieStoreId
+
string. L'ID de magasin de cookies du contexte actuel.
+
documentUrl
+
string. URL de la page dans laquelle la ressource demandée sera chargée.
+
frameId
+
integer. 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é (type est main_frame ou sub_frame), frameId indique l'ID de cette trame, pas l'ID de la trame externe. Les ID de cadre sont uniques dans un onglet.
+
fromCache
+
boolean. Indique si cette réponse sera récupérée du cache disque.
+
incognito
+
boolean true pour les demandes de navigation privées
+
ip
+
L'adresse IP du serveur à laquelle la demande sera envoyée. Notez qu'il peut s'agir d'une adresse IPv6 littérale.
+
method
+
string. Méthode HTTP standard: par exemple, "GET" ou "POST".
+
originUrl
+
string. 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'attribut cible d'un lien, ou d'un document CSS inclut une image utilisant la  notation fonctionnelle url(), alors ce sera l'URL du document original ou du  document CSS, respectivement.
+
parentFrameId
+
integer. ID de l'image qui contient l'image qui a envoyé la demande. Défini sur -1 si aucun cadre parent n'existe.
+
requestId
+
string. 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.
+
requestHeaders{{optional_inline}}
+
{{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  "requestHeaders" a été passée dans addListener().
+
tabId
+
integer. 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.
+
timeStamp
+
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
+
type
+
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandé : par exemple, "image", "script", "stylesheet".
+
url
+
string. Cible de la demande.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.proxy.RequestDetails")}}

+ +

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/settings/index.html b/files/fr/mozilla/add-ons/webextensions/api/proxy/settings/index.html deleted file mode 100644 index a2ca638f71..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/proxy/settings/index.html +++ /dev/null @@ -1,68 +0,0 @@ ---- -title: browserSettings.proxyConfig -slug: Mozilla/Add-ons/WebExtensions/API/proxy/settings -tags: - - API - - Add-ons - - Extensions - - Property - - Reference - - WebExtensions - - browserSettings - - proxyConfig -translation_of: Mozilla/Add-ons/WebExtensions/API/proxy/settings -original_slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/proxyConfig ---- -
{{AddonSidebar()}}
- -

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour modifier les paramètres de proxy du navigateur.

- -
-

Note : 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 à proxy.settings.set() lanceront une exception.

-
- -

La valeur sous-jacente est un objet avec les propriétés énumérées ci-dessous.

- -

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.

- -
-
autoConfigUrl{{optional_inline}}
-
string. Une URL à utiliser pour configurer le proxy.
-
autoLogin{{optional_inline}}
-
boolean. Ne pas demander l'authentification si le mot de passe est enregistré. Par défaut à false.
-
ftp{{optional_inline}}
-
string. L'adresse du proxy FTP. Peut inclure un port.
-
http{{optional_inline}}
-
string. L'adresse du proxy HTTP. Peut inclure un port.
-
httpProxyAll{{optional_inline}}
-
boolean. Utilisez le serveur proxy HTTP pour tous les protocoles. Par défaut à false.
-
passthrough{{optional_inline}}
-
string. 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".
-
proxyDNS{{optional_inline}}
-
boolean. DNS proxy lors de l'utilisation de SOCKS5. Par défaut à false.
-
proxyType{{optional_inline}}
-
string. Le type de proxy à utiliser. Cela peut prendre l'une des valeurs suivantes : "none", "autoDetect", "system", "manual", "autoConfig". Par défaut à "system".
-
socks{{optional_inline}}
-
string. L'adresse du proxy SOCKS. Peut inclure un port.
-
socksVersion{{optional_inline}}
-
integer. La version du proxy SOCKS. Peut être 4 ou 5. Par défaut à 5.
-
ssl{{optional_inline}}
-
string. L'adresse du proxy SSL. Peut inclure un port.
-
- -

Exemples

- -
let proxySettings = {
-  proxyType: "manual",
-  http: "http://proxy.org:8080",
-  socksVersion: 4,
-  passthrough: ".example.org"
-};
-
-browser.proxy.settings.set({value: proxySettings});
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.proxy.settings", 10)}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/settings/index.md b/files/fr/mozilla/add-ons/webextensions/api/proxy/settings/index.md new file mode 100644 index 0000000000..a2ca638f71 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/settings/index.md @@ -0,0 +1,68 @@ +--- +title: browserSettings.proxyConfig +slug: Mozilla/Add-ons/WebExtensions/API/proxy/settings +tags: + - API + - Add-ons + - Extensions + - Property + - Reference + - WebExtensions + - browserSettings + - proxyConfig +translation_of: Mozilla/Add-ons/WebExtensions/API/proxy/settings +original_slug: Mozilla/Add-ons/WebExtensions/API/browserSettings/proxyConfig +--- +
{{AddonSidebar()}}
+ +

Un objet {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} qui peut être utilisé pour modifier les paramètres de proxy du navigateur.

+ +
+

Note : 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 à proxy.settings.set() lanceront une exception.

+
+ +

La valeur sous-jacente est un objet avec les propriétés énumérées ci-dessous.

+ +

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.

+ +
+
autoConfigUrl{{optional_inline}}
+
string. Une URL à utiliser pour configurer le proxy.
+
autoLogin{{optional_inline}}
+
boolean. Ne pas demander l'authentification si le mot de passe est enregistré. Par défaut à false.
+
ftp{{optional_inline}}
+
string. L'adresse du proxy FTP. Peut inclure un port.
+
http{{optional_inline}}
+
string. L'adresse du proxy HTTP. Peut inclure un port.
+
httpProxyAll{{optional_inline}}
+
boolean. Utilisez le serveur proxy HTTP pour tous les protocoles. Par défaut à false.
+
passthrough{{optional_inline}}
+
string. 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".
+
proxyDNS{{optional_inline}}
+
boolean. DNS proxy lors de l'utilisation de SOCKS5. Par défaut à false.
+
proxyType{{optional_inline}}
+
string. Le type de proxy à utiliser. Cela peut prendre l'une des valeurs suivantes : "none", "autoDetect", "system", "manual", "autoConfig". Par défaut à "system".
+
socks{{optional_inline}}
+
string. L'adresse du proxy SOCKS. Peut inclure un port.
+
socksVersion{{optional_inline}}
+
integer. La version du proxy SOCKS. Peut être 4 ou 5. Par défaut à 5.
+
ssl{{optional_inline}}
+
string. L'adresse du proxy SSL. Peut inclure un port.
+
+ +

Exemples

+ +
let proxySettings = {
+  proxyType: "manual",
+  http: "http://proxy.org:8080",
+  socksVersion: 4,
+  passthrough: ".example.org"
+};
+
+browser.proxy.settings.set({value: proxySettings});
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.proxy.settings", 10)}}

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 deleted file mode 100644 index 7331de1f79..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/proxy/unregister/index.html +++ /dev/null @@ -1,53 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
{{deprecated_header}}
- -

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:

- -

- -

Annule l'inscription d'un fichier Proxy Auto-Configuration (PAC). Cela a été enregistré par un appel précédent à {{WebExtAPIRef("proxy.register()")}}.

- -

C'est une fonction asynchrome qui renvoie une Promise.

- -

Syntaxe

- -
var unregistering = browser.proxy.unregister()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui sera remplie  sans arguments lorsque le fichier PAC a été désinscrit.

- -

Exemples

- -
browser.proxy.unregister();
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.proxy.unregister")}}

- -

Note :

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/proxy/unregister/index.md b/files/fr/mozilla/add-ons/webextensions/api/proxy/unregister/index.md new file mode 100644 index 0000000000..7331de1f79 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/proxy/unregister/index.md @@ -0,0 +1,53 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
{{deprecated_header}}
+ +

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:

+ +

+ +

Annule l'inscription d'un fichier Proxy Auto-Configuration (PAC). Cela a été enregistré par un appel précédent à {{WebExtAPIRef("proxy.register()")}}.

+ +

C'est une fonction asynchrome qui renvoie une Promise.

+ +

Syntaxe

+ +
var unregistering = browser.proxy.unregister()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie  sans arguments lorsque le fichier PAC a été désinscrit.

+ +

Exemples

+ +
browser.proxy.unregister();
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.proxy.unregister")}}

+ +

Note :

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 0049b13556..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/connect/index.html +++ /dev/null @@ -1,158 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
- -

Créer une connexion pour plusieurs cas d'utilisation pout votre extension.

- -

Vous pouvez utiliser cette facilité dans les situations suivantes:

- - - -

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()')}}.

- -

Syntaxe

- -
var port = browser.runtime.connect(
-  extensionId, // optional string
-  connectInfo  // optional object
-)
-
- -

Paramètres

- -
-
extensionId{{optional_inline}}
-
string. L'ID de l'extension à laquelle se connecter. Si la cible à défini un ID dans la clé applications du fichier manifest.json, alors extensionId doit avoir cette valeur. Autrement, il doit avoir l'ID qui a été généré pour la cible.
-
connectInfo{{optional_inline}}
-

object. Détails de la connexion:

-
-
name{{optional_inline}}
-
string. Sera passé dans {{WebExtAPIRef("runtime.onConnect")}} pour les processus qui écoutent un évènement de type connexion.
-
includeTlsChannelId{{optional_inline}}
-
boolean. indique si l'ID du canal TLS sera transmis à  {{WebExtAPIRef("runtime.onConnectExternal")}} pour le processus qui écoutent l'événement de connexion.
-
-
-
- -

Valeur retournée

- -

{{WebExtAPIRef('runtime.Port')}}. Port à travers lequel les messages peuvent être envoyés et reçus. L'événement onDisconnect du port est déclenché si l'extension n'existe pas.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.connect")}}

- -

Exemples

- -

Le script de contenu :

- - - -
// content-script.js
-
-var myPort = browser.runtime.connect({name:"port-from-cs"});
-myPort.postMessage({greeting: "hello from content script"});
-
-myPort.onMessage.addListener(function(m) {
-  console.log("In content script, received message from background script: ");
-  console.log(m.greeting);
-});
-
-document.body.addEventListener("click", function() {
-  myPort.postMessage({greeting: "they clicked the page!"});
-});
- -

Les scripts d'arrière plan correspondant :

- - - -
// background-script.js
-
-var portFromCS;
-
-function connected(p) {
-  portFromCS = p;
-  portFromCS.postMessage({greeting: "hi there content script!"});
-  portFromCS.onMessage.addListener(function(m) {
-    console.log("In background script, received message from content script")
-    console.log(m.greeting);
-  });
-}
-
-browser.runtime.onConnect.addListener(connected);
-
-browser.browserAction.onClicked.addListener(function() {
-  portFromCS.postMessage({greeting: "they clicked the button!"});
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/connect/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/connect/index.md new file mode 100644 index 0000000000..0049b13556 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/connect/index.md @@ -0,0 +1,158 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+ +

Créer une connexion pour plusieurs cas d'utilisation pout votre extension.

+ +

Vous pouvez utiliser cette facilité dans les situations suivantes:

+ + + +

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()')}}.

+ +

Syntaxe

+ +
var port = browser.runtime.connect(
+  extensionId, // optional string
+  connectInfo  // optional object
+)
+
+ +

Paramètres

+ +
+
extensionId{{optional_inline}}
+
string. L'ID de l'extension à laquelle se connecter. Si la cible à défini un ID dans la clé applications du fichier manifest.json, alors extensionId doit avoir cette valeur. Autrement, il doit avoir l'ID qui a été généré pour la cible.
+
connectInfo{{optional_inline}}
+

object. Détails de la connexion:

+
+
name{{optional_inline}}
+
string. Sera passé dans {{WebExtAPIRef("runtime.onConnect")}} pour les processus qui écoutent un évènement de type connexion.
+
includeTlsChannelId{{optional_inline}}
+
boolean. indique si l'ID du canal TLS sera transmis à  {{WebExtAPIRef("runtime.onConnectExternal")}} pour le processus qui écoutent l'événement de connexion.
+
+
+
+ +

Valeur retournée

+ +

{{WebExtAPIRef('runtime.Port')}}. Port à travers lequel les messages peuvent être envoyés et reçus. L'événement onDisconnect du port est déclenché si l'extension n'existe pas.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.connect")}}

+ +

Exemples

+ +

Le script de contenu :

+ + + +
// content-script.js
+
+var myPort = browser.runtime.connect({name:"port-from-cs"});
+myPort.postMessage({greeting: "hello from content script"});
+
+myPort.onMessage.addListener(function(m) {
+  console.log("In content script, received message from background script: ");
+  console.log(m.greeting);
+});
+
+document.body.addEventListener("click", function() {
+  myPort.postMessage({greeting: "they clicked the page!"});
+});
+ +

Les scripts d'arrière plan correspondant :

+ + + +
// background-script.js
+
+var portFromCS;
+
+function connected(p) {
+  portFromCS = p;
+  portFromCS.postMessage({greeting: "hi there content script!"});
+  portFromCS.onMessage.addListener(function(m) {
+    console.log("In background script, received message from content script")
+    console.log(m.greeting);
+  });
+}
+
+browser.runtime.onConnect.addListener(connected);
+
+browser.browserAction.onClicked.addListener(function() {
+  portFromCS.postMessage({greeting: "they clicked the button!"});
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e4a04221e2..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/connectnative/index.html +++ /dev/null @@ -1,120 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Connecte l'extension à une appplication native sur l'ordinateur de l'utilisateur.
- -
- -
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.
- -
- -
L'appelant peut utiliser le Port pour échanger des messages avec l'application native utilisant Port.postMessage() et port.onMessage.
- -
- -
L'application native s'exécute jusqu'à ce qu'elle se termine, ou l'appelant appelle Port.disconnect(), ou la page qui a créé le Port est détruite. Une fois le Port 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é.
- -
- -

Pour plus d'informations, voir messagerie native.

- -

Syntaxe

- -
var port = browser.runtime.connectNative(
-  application // string
-)
-
- -

Paramètres

- -
-
application
-
string. Le nom de l'application native à laquelle se connecter. Cela doit correspondre à la propriété "name" dans le fichier manifest de l'application native.
-
- -

Valeur retournée

- -

Un objet {{WebExtAPIRef('runtime.Port')}}. Le port que l'appelant peut utiliser pour échanger des messages avec l'application native.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.connectNative")}}

- -

Exemples

- -

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 :

- -
/*
-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) => {
-  console.log("Received: " + response);
-});
-
-/*
-On a click on the browser action, send the app a message.
-*/
-browser.browserAction.onClicked.addListener(() => {
-  console.log("Sending:  ping");
-  port.postMessage("ping");
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/connectnative/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/connectnative/index.md new file mode 100644 index 0000000000..e4a04221e2 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/connectnative/index.md @@ -0,0 +1,120 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Connecte l'extension à une appplication native sur l'ordinateur de l'utilisateur.
+ +
+ +
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.
+ +
+ +
L'appelant peut utiliser le Port pour échanger des messages avec l'application native utilisant Port.postMessage() et port.onMessage.
+ +
+ +
L'application native s'exécute jusqu'à ce qu'elle se termine, ou l'appelant appelle Port.disconnect(), ou la page qui a créé le Port est détruite. Une fois le Port 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é.
+ +
+ +

Pour plus d'informations, voir messagerie native.

+ +

Syntaxe

+ +
var port = browser.runtime.connectNative(
+  application // string
+)
+
+ +

Paramètres

+ +
+
application
+
string. Le nom de l'application native à laquelle se connecter. Cela doit correspondre à la propriété "name" dans le fichier manifest de l'application native.
+
+ +

Valeur retournée

+ +

Un objet {{WebExtAPIRef('runtime.Port')}}. Le port que l'appelant peut utiliser pour échanger des messages avec l'application native.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.connectNative")}}

+ +

Exemples

+ +

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 :

+ +
/*
+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) => {
+  console.log("Received: " + response);
+});
+
+/*
+On a click on the browser action, send the app a message.
+*/
+browser.browserAction.onClicked.addListener(() => {
+  console.log("Sending:  ping");
+  port.postMessage("ping");
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 1c3fb7e932..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/getbackgroundpage/index.html +++ /dev/null @@ -1,110 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Récupère l'objet Window pour la page d'arrière-plan qui s'exécute dans l'extension en cours.

- -

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  pages d'options, ou les scripts s'exécutant dans les fenêtres d'action du navigateur ou d'action page, mais n'inclut pas les scripts de contenu.

- -

Notez que les variables déclarées à l'aide de const ou let n'apparaissaient pas dans l'objet window retourné par cette fonction.

- -

Notez également que cette méthode ne peut pas être utilisée dans une fenêtre privée dans Firefox—Elle renvoie toujours null. Pour plus d'informations voir le bug lié à bugzilla.

- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingPage = browser.runtime.getBackgroundPage()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui sera remplie avec l'objet Window 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.getBackgroundPage")}}

- -

Exemples

- -

Supposons un script d'arrière-plan définisse une fonction foo():

- -
// background.js
-
-function foo() {
-  console.log("I'm defined in background.js");
-}
- -

Un script exécuté dans un popup peut appeler cette fonction directement comme ceci :

- -
// popup.js
-
-function onGot(page) {
-  page.foo();
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var getting = browser.runtime.getBackgroundPage();
-getting.then(onGot, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

- - -
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/getbackgroundpage/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/getbackgroundpage/index.md new file mode 100644 index 0000000000..1c3fb7e932 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/getbackgroundpage/index.md @@ -0,0 +1,110 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Récupère l'objet Window pour la page d'arrière-plan qui s'exécute dans l'extension en cours.

+ +

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  pages d'options, ou les scripts s'exécutant dans les fenêtres d'action du navigateur ou d'action page, mais n'inclut pas les scripts de contenu.

+ +

Notez que les variables déclarées à l'aide de const ou let n'apparaissaient pas dans l'objet window retourné par cette fonction.

+ +

Notez également que cette méthode ne peut pas être utilisée dans une fenêtre privée dans Firefox—Elle renvoie toujours null. Pour plus d'informations voir le bug lié à bugzilla.

+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingPage = browser.runtime.getBackgroundPage()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec l'objet Window 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.getBackgroundPage")}}

+ +

Exemples

+ +

Supposons un script d'arrière-plan définisse une fonction foo():

+ +
// background.js
+
+function foo() {
+  console.log("I'm defined in background.js");
+}
+ +

Un script exécuté dans un popup peut appeler cette fonction directement comme ceci :

+ +
// popup.js
+
+function onGot(page) {
+  page.foo();
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var getting = browser.runtime.getBackgroundPage();
+getting.then(onGot, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+ + +
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 deleted file mode 100644 index 72b7ebc953..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/getbrowserinfo/index.html +++ /dev/null @@ -1,63 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Renvoie les informations sur le navigateur dans lequel l'extension est installée.

- -

Il s'agit d'une fonction asynchrone qui renvoie une {{JSxRef("Promise")}}.

- -

Syntaxe

- -
var gettingInfo = browser.runtime.getBrowserInfo()
-
- -

Paramètres

- -

None.

- -

valeur retournée

- -

Une Promise qui sera remplie avec un objet qui a les propriétés suivantes :

- - - -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.runtime.getBrowserInfo")}}

- -

Exemples

- -

Obtenir et enregistrer le nom du navigateur :

- -
function gotBrowserInfo(info) {
-  console.log(info.name);
-}
-
-var gettingInfo = browser.runtime.getBrowserInfo();
-gettingInfo.then(gotBrowserInfo);
- -

{{WebExtExamples}}

- -

Note :

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/getbrowserinfo/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/getbrowserinfo/index.md new file mode 100644 index 0000000000..72b7ebc953 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/getbrowserinfo/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Renvoie les informations sur le navigateur dans lequel l'extension est installée.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une {{JSxRef("Promise")}}.

+ +

Syntaxe

+ +
var gettingInfo = browser.runtime.getBrowserInfo()
+
+ +

Paramètres

+ +

None.

+ +

valeur retournée

+ +

Une Promise qui sera remplie avec un objet qui a les propriétés suivantes :

+ + + +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.runtime.getBrowserInfo")}}

+ +

Exemples

+ +

Obtenir et enregistrer le nom du navigateur :

+ +
function gotBrowserInfo(info) {
+  console.log(info.name);
+}
+
+var gettingInfo = browser.runtime.getBrowserInfo();
+gettingInfo.then(gotBrowserInfo);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 6182f11708..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/getmanifest/index.html +++ /dev/null @@ -1,84 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Obtenez le fichier manifest.json complet, sérialisé à un objet JSON.
- -
- -

Syntaxe

- -
browser.runtime.getManifest()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Un object JSON représentant le manifest.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.getManifest")}}

- -

Exemples

- -

Récupère le manifest et consignez la propriété "name" :

- -
var manifest = browser.runtime.getManifest();
-console.log(manifest.name);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/getmanifest/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/getmanifest/index.md new file mode 100644 index 0000000000..6182f11708 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/getmanifest/index.md @@ -0,0 +1,84 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Obtenez le fichier manifest.json complet, sérialisé à un objet JSON.
+ +
+ +

Syntaxe

+ +
browser.runtime.getManifest()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Un object JSON représentant le manifest.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.getManifest")}}

+ +

Exemples

+ +

Récupère le manifest et consignez la propriété "name" :

+ +
var manifest = browser.runtime.getManifest();
+console.log(manifest.name);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 6468c165c2..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/getpackagedirectoryentry/index.html +++ /dev/null @@ -1,86 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Renvoie un objet DirectoryEntry représentant le répertoire du package.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingEntry = browser.runtime.getPackageDirectoryEntry()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui sera remplie avec un objet DirectoryEntry représentant le répertoire du package.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.getPackageDirectoryEntry")}}

- -

Exemples

- -
function gotDirectoryEntry(directoryEntry) {
-  console.log(directoryEntry);
-}
-
-var gettingEntry = browser.runtime.getPackageDirectoryEntry();
-gettingEntry.then(gotDirectoryEntry);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/getpackagedirectoryentry/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/getpackagedirectoryentry/index.md new file mode 100644 index 0000000000..6468c165c2 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/getpackagedirectoryentry/index.md @@ -0,0 +1,86 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Renvoie un objet DirectoryEntry représentant le répertoire du package.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingEntry = browser.runtime.getPackageDirectoryEntry()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un objet DirectoryEntry représentant le répertoire du package.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.getPackageDirectoryEntry")}}

+ +

Exemples

+ +
function gotDirectoryEntry(directoryEntry) {
+  console.log(directoryEntry);
+}
+
+var gettingEntry = browser.runtime.getPackageDirectoryEntry();
+gettingEntry.then(gotDirectoryEntry);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 1af9d51e7e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/getplatforminfo/index.html +++ /dev/null @@ -1,88 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Renvoies des informations sur la plate-forme actuelle. Ceci ne peut être appelé que dans le contexte du script d'arrière-plan.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getting = browser.runtime.getPlatformInfo()
-
- -

Paramètres

- -

None.

- -

Valeur rentournée

- -

Une Promise qui sera remplie avec une valeur {{WebExtAPIRef('runtime.PlatformInfo')}} représentant la plate-forme actuelle.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.getPlatformInfo")}}

- -

Exemples

- -

Obtenez et consignez le système d'exploitation de la plateforme :

- -
function gotPlatformInfo(info) {
-  console.log(info.os);
-}
-
-var gettingInfo = browser.runtime.getPlatformInfo();
-gettingInfo.then(gotPlatformInfo);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/getplatforminfo/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/getplatforminfo/index.md new file mode 100644 index 0000000000..1af9d51e7e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/getplatforminfo/index.md @@ -0,0 +1,88 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Renvoies des informations sur la plate-forme actuelle. Ceci ne peut être appelé que dans le contexte du script d'arrière-plan.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getting = browser.runtime.getPlatformInfo()
+
+ +

Paramètres

+ +

None.

+ +

Valeur rentournée

+ +

Une Promise qui sera remplie avec une valeur {{WebExtAPIRef('runtime.PlatformInfo')}} représentant la plate-forme actuelle.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.getPlatformInfo")}}

+ +

Exemples

+ +

Obtenez et consignez le système d'exploitation de la plateforme :

+ +
function gotPlatformInfo(info) {
+  console.log(info.os);
+}
+
+var gettingInfo = browser.runtime.getPlatformInfo();
+gettingInfo.then(gotPlatformInfo);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 3b29aadb83..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/geturl/index.html +++ /dev/null @@ -1,95 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Etant donné un chemin relatif de manifest.json à une ressource empaquetée avec l'extension, renvoyez une URL complète.
- -
- -
Cette fonction ne vérifie pas que la ressource existe réellement à cette URL.
- -
- -

Syntaxe

- -
browser.runtime.getURL(
-  path // string
-)
-
- -

Paramètres

- -
-
path
-
string. Un chemin relatif de manifest.json à une ressource empaquetée avec l'extension.
-
- -

Valeur retournée

- -

string. L'URL complète de la ressource.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.getURL")}}

- -

Exemples

- -

Etant donné un fichier empaqueté avec l'extension "beasts/frog.html", obtenez l'URL complète comme ceci :

- -
var fullURL = browser.runtime.getURL("beasts/frog.html");
-console.log(fullURL);
-// Returns something like:
-// moz-extension://2c127fa4-62c7-7e4f-90e5-472b45eecfdc/beasts/frog.html
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/geturl/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/geturl/index.md new file mode 100644 index 0000000000..3b29aadb83 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/geturl/index.md @@ -0,0 +1,95 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Etant donné un chemin relatif de manifest.json à une ressource empaquetée avec l'extension, renvoyez une URL complète.
+ +
+ +
Cette fonction ne vérifie pas que la ressource existe réellement à cette URL.
+ +
+ +

Syntaxe

+ +
browser.runtime.getURL(
+  path // string
+)
+
+ +

Paramètres

+ +
+
path
+
string. Un chemin relatif de manifest.json à une ressource empaquetée avec l'extension.
+
+ +

Valeur retournée

+ +

string. L'URL complète de la ressource.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.getURL")}}

+ +

Exemples

+ +

Etant donné un fichier empaqueté avec l'extension "beasts/frog.html", obtenez l'URL complète comme ceci :

+ +
var fullURL = browser.runtime.getURL("beasts/frog.html");
+console.log(fullURL);
+// Returns something like:
+// moz-extension://2c127fa4-62c7-7e4f-90e5-472b45eecfdc/beasts/frog.html
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 1c76b09fe0..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/id/index.html +++ /dev/null @@ -1,68 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

L'ID de l'extension

- -

Syntaxe

- -
var myAddonId = browser.runtime.id;
- -

Value

- -

Une chaîne représentant l'ID du module complémentaire. Si l'extension a spécifié un ID dans la clé manifest.json de ses applications, runtime.id contiendra la valeur. SInon runtime.id contiendra l'ID généré pour l'extension.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.id")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/id/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/id/index.md new file mode 100644 index 0000000000..1c76b09fe0 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/id/index.md @@ -0,0 +1,68 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

L'ID de l'extension

+ +

Syntaxe

+ +
var myAddonId = browser.runtime.id;
+ +

Value

+ +

Une chaîne représentant l'ID du module complémentaire. Si l'extension a spécifié un ID dans la clé manifest.json de ses applications, runtime.id contiendra la valeur. SInon runtime.id contiendra l'ID généré pour l'extension.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.id")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/index.html b/files/fr/mozilla/add-ons/webextensions/api/runtime/index.html deleted file mode 100644 index 0d69ad6128..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/index.html +++ /dev/null @@ -1,171 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Ce module fournit des informations sur votre extension et l'environnement dans lequel elle fonctionne.

- -

Il fournit également des API de messagerie vous permettant de:

- - - -

Types

- -
-
{{WebExtAPIRef("runtime.Port")}}
-
Représente une extrémité d'une connexion entre deux contextes spécifiques, qui peut être utilisée pour échanger des messages.
-
{{WebExtAPIRef("runtime.MessageSender")}}
-
-

Contient des informations sur l'expéditeur d'un message ou d'une demande de connexion.

-
-
{{WebExtAPIRef("runtime.PlatformOs")}}
-
Identifie le système d'exploitation du navigateur.
-
{{WebExtAPIRef("runtime.PlatformArch")}}
-
Identifie l'architecture du processeur du navigateur.
-
{{WebExtAPIRef("runtime.PlatformInfo")}}
-
Contient des informations sur la plate-forme utilisée par le navigateur.
-
{{WebExtAPIRef("runtime.RequestUpdateCheckStatus")}}
-
Résultat d'un appel à {{WebExtAPIRef("runtime.requestUpdateCheck()")}}.
-
{{WebExtAPIRef("runtime.OnInstalledReason")}}
-
La raison pour laquelle l'événement {{WebExtAPIRef("runtime.onInstalled")}} est en cours d'envoi.
-
{{WebExtAPIRef("runtime.OnRestartRequiredReason")}}
-
La raison pour laquelle l'événement {{WebExtAPIRef("runtime.onRestartRequired")}} est en cours d'expédition.
-
- -

Propriétés

- -
-
{{WebExtAPIRef("runtime.lastError")}}
-
Cette valeur est définie lorsqu'une fonction asynchrone a une condition d'erreur qu'elle doit signaler à son appelant
-
{{WebExtAPIRef("runtime.id")}}
-
L'ID de l'extension
-
- -

Fonctions

- -
-
{{WebExtAPIRef("runtime.getBackgroundPage()")}}
-
Récupère l'objet Window pour la page d'arrière-plan qui s'exécute dans l'extension en cours.
-
{{WebExtAPIRef("runtime.openOptionsPage()")}}
-
-

Ouvre une page d'options de votre extension.

-
-
{{WebExtAPIRef("runtime.getManifest()")}}
-
Obtient le fichier manifest.json complet,  sérialisé en tant qu'objet.
-
{{WebExtAPIRef("runtime.getURL()")}}
-
Etant donné un chemin relatif de manifest.json à une ressource empaquetée avec l'extension, renvoie une URL entièrement qualifiée.
-
{{WebExtAPIRef("runtime.setUninstallURL()")}}
-
Définit une URL à visiter lorsque l'extension est désinstallée.
-
{{WebExtAPIRef("runtime.reload()")}}
-
Recharge l'extension.
-
{{WebExtAPIRef("runtime.requestUpdateCheck()")}}
-
Vérifie les mises à jour de cette extension.
-
{{WebExtAPIRef("runtime.connect()")}}
-
Établit une connexion d'un script de contenu au processus d'extension principal ou d'une extension à une extension différente.
-
{{WebExtAPIRef("runtime.connectNative()")}}
-
-
Connecte l'extension à une application native sur l'ordinateur de l'utilisateur.
-
-
{{WebExtAPIRef("runtime.sendMessage()")}}
-
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.
-
{{WebExtAPIRef("runtime.sendNativeMessage()")}}
-
Envoie un seul message d'une extension à une application native.
-
{{WebExtAPIRef("runtime.getPlatformInfo()")}}
-
Renvoie des informations sur la plate-forme actuelle.
-
{{WebExtAPIRef("runtime.getBrowserInfo()")}}
-
Renvoie des informations sur le navigateur dans lequel cette extension est installée.
-
{{WebExtAPIRef("runtime.getPackageDirectoryEntry()")}}
-
Renvoie un DirectoryEntry pour le répertoire du package.
-
- -

Evénements

- -
-
{{WebExtAPIRef("runtime.onStartup")}}
-
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é.
-
{{WebExtAPIRef("runtime.onInstalled")}}
-
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.
-
{{WebExtAPIRef("runtime.onSuspend")}}
-
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.
-
{{WebExtAPIRef("runtime.onSuspendCanceled")}}
-
Envoyé après {{WebExtAPIRef("runtime.onSuspend")}} pour indiquer que l'extension ne sera pas déchargée après tout.
-
{{WebExtAPIRef("runtime.onUpdateAvailable")}}
-
Lancé lorsqu'une mise à jour est disponible, mais n'est pas installé immédiatement car l'extension est en cours d'exécution.
-
{{WebExtAPIRef("runtime.onBrowserUpdateAvailable")}} {{deprecated_inline}}
-
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.
-
{{WebExtAPIRef("runtime.onConnect")}}
-
Lancé lorsqu'une connexion est établie avec un processus d'extension ou un script de contenu.
-
{{WebExtAPIRef("runtime.onConnectExternal")}}
-
Lancé lorsqu'une connexion est établie avec une autre extension.
-
{{WebExtAPIRef("runtime.onMessage")}}
-
Lancé lorsqu'un message est envoyé par un processus d'extension ou un script de contenu.
-
{{WebExtAPIRef("runtime.onMessageExternal")}}
-
Lancé lorsqu'un message est envoyé depuis un autre poste. Ne peut pas être utilisé dans un script de contenu.
-
{{WebExtAPIRef("runtime.onRestartRequired")}}
-
Lancé lorsque le périphérique doit être redémarré.
-
- -

Compatibilité du navigateur

- -
- - -

{{Compat("webextensions.api.runtime")}}

- -
{{WebExtExamples("h2")}}
- -
-
- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/index.md new file mode 100644 index 0000000000..0d69ad6128 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Ce module fournit des informations sur votre extension et l'environnement dans lequel elle fonctionne.

+ +

Il fournit également des API de messagerie vous permettant de:

+ + + +

Types

+ +
+
{{WebExtAPIRef("runtime.Port")}}
+
Représente une extrémité d'une connexion entre deux contextes spécifiques, qui peut être utilisée pour échanger des messages.
+
{{WebExtAPIRef("runtime.MessageSender")}}
+
+

Contient des informations sur l'expéditeur d'un message ou d'une demande de connexion.

+
+
{{WebExtAPIRef("runtime.PlatformOs")}}
+
Identifie le système d'exploitation du navigateur.
+
{{WebExtAPIRef("runtime.PlatformArch")}}
+
Identifie l'architecture du processeur du navigateur.
+
{{WebExtAPIRef("runtime.PlatformInfo")}}
+
Contient des informations sur la plate-forme utilisée par le navigateur.
+
{{WebExtAPIRef("runtime.RequestUpdateCheckStatus")}}
+
Résultat d'un appel à {{WebExtAPIRef("runtime.requestUpdateCheck()")}}.
+
{{WebExtAPIRef("runtime.OnInstalledReason")}}
+
La raison pour laquelle l'événement {{WebExtAPIRef("runtime.onInstalled")}} est en cours d'envoi.
+
{{WebExtAPIRef("runtime.OnRestartRequiredReason")}}
+
La raison pour laquelle l'événement {{WebExtAPIRef("runtime.onRestartRequired")}} est en cours d'expédition.
+
+ +

Propriétés

+ +
+
{{WebExtAPIRef("runtime.lastError")}}
+
Cette valeur est définie lorsqu'une fonction asynchrone a une condition d'erreur qu'elle doit signaler à son appelant
+
{{WebExtAPIRef("runtime.id")}}
+
L'ID de l'extension
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("runtime.getBackgroundPage()")}}
+
Récupère l'objet Window pour la page d'arrière-plan qui s'exécute dans l'extension en cours.
+
{{WebExtAPIRef("runtime.openOptionsPage()")}}
+
+

Ouvre une page d'options de votre extension.

+
+
{{WebExtAPIRef("runtime.getManifest()")}}
+
Obtient le fichier manifest.json complet,  sérialisé en tant qu'objet.
+
{{WebExtAPIRef("runtime.getURL()")}}
+
Etant donné un chemin relatif de manifest.json à une ressource empaquetée avec l'extension, renvoie une URL entièrement qualifiée.
+
{{WebExtAPIRef("runtime.setUninstallURL()")}}
+
Définit une URL à visiter lorsque l'extension est désinstallée.
+
{{WebExtAPIRef("runtime.reload()")}}
+
Recharge l'extension.
+
{{WebExtAPIRef("runtime.requestUpdateCheck()")}}
+
Vérifie les mises à jour de cette extension.
+
{{WebExtAPIRef("runtime.connect()")}}
+
Établit une connexion d'un script de contenu au processus d'extension principal ou d'une extension à une extension différente.
+
{{WebExtAPIRef("runtime.connectNative()")}}
+
+
Connecte l'extension à une application native sur l'ordinateur de l'utilisateur.
+
+
{{WebExtAPIRef("runtime.sendMessage()")}}
+
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.
+
{{WebExtAPIRef("runtime.sendNativeMessage()")}}
+
Envoie un seul message d'une extension à une application native.
+
{{WebExtAPIRef("runtime.getPlatformInfo()")}}
+
Renvoie des informations sur la plate-forme actuelle.
+
{{WebExtAPIRef("runtime.getBrowserInfo()")}}
+
Renvoie des informations sur le navigateur dans lequel cette extension est installée.
+
{{WebExtAPIRef("runtime.getPackageDirectoryEntry()")}}
+
Renvoie un DirectoryEntry pour le répertoire du package.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("runtime.onStartup")}}
+
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é.
+
{{WebExtAPIRef("runtime.onInstalled")}}
+
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.
+
{{WebExtAPIRef("runtime.onSuspend")}}
+
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.
+
{{WebExtAPIRef("runtime.onSuspendCanceled")}}
+
Envoyé après {{WebExtAPIRef("runtime.onSuspend")}} pour indiquer que l'extension ne sera pas déchargée après tout.
+
{{WebExtAPIRef("runtime.onUpdateAvailable")}}
+
Lancé lorsqu'une mise à jour est disponible, mais n'est pas installé immédiatement car l'extension est en cours d'exécution.
+
{{WebExtAPIRef("runtime.onBrowserUpdateAvailable")}} {{deprecated_inline}}
+
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.
+
{{WebExtAPIRef("runtime.onConnect")}}
+
Lancé lorsqu'une connexion est établie avec un processus d'extension ou un script de contenu.
+
{{WebExtAPIRef("runtime.onConnectExternal")}}
+
Lancé lorsqu'une connexion est établie avec une autre extension.
+
{{WebExtAPIRef("runtime.onMessage")}}
+
Lancé lorsqu'un message est envoyé par un processus d'extension ou un script de contenu.
+
{{WebExtAPIRef("runtime.onMessageExternal")}}
+
Lancé lorsqu'un message est envoyé depuis un autre poste. Ne peut pas être utilisé dans un script de contenu.
+
{{WebExtAPIRef("runtime.onRestartRequired")}}
+
Lancé lorsque le périphérique doit être redémarré.
+
+ +

Compatibilité du navigateur

+ +
+ + +

{{Compat("webextensions.api.runtime")}}

+ +
{{WebExtExamples("h2")}}
+ +
+
+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 0384ff364d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/lasterror/index.html +++ /dev/null @@ -1,122 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
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.
- -
- -
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 :
- -
- -
var gettingCookies = browser.cookies.getAll();
-gettingCookies.then(onGot, onError);
- -

La propriété runtime.lastError est définie lorsqu'une fonction asynchrone a une condition  d'erreur qu'elle doit signaler à son appelant.

- -
Si vous applez une fonction asynchrone qui veut définir lastError, vous devez vérifier l'erreur lorsque vous gérez le résultat de la fonction. Si  lastError a été défini et que vous ne cochez pas dans la fonction de rappel, une erreur sera générée.
- -
- -

Syntaxe

- -
var myError = browser.runtime.lastError;  // null or Error object
- -

Valeur

- -

Un objet Error représentant une erreur. La propriété message est un string avec une description lisible par l'utilisateur de l'erreur. Si  lastError n'a pas été défini, la valeur est null.

- -

Examples

- -

Définir un cookie, utiliser pour enregistrer le nouveau cookie ou signaler une erreur :

- -
function logCookie(c) {
-  if (browser.runtime.lastError) {
-    console.error(browser.runtime.lastError);
-  } else {
-    console.log(c);
-  }
-}
-
-browser.cookies.set(
-  {url: "https://developer.mozilla.org/"},
-  logCookie
-);
- -

La même chose, mais en utilisant une promesse de gérer le résultat de setCookie():

- -
function logCookie(c) {
-  console.log(c);
-}
-
-function logError(e) {
-  console.error(e);
-}
-
-var setCookie = browser.cookies.set(
-  {url: "https://developer.mozilla.org/"}
-);
-
-setCookie.then(logCookie, logError);
- -
-

Note : runtime.lastError est un alias pour  {{WebExtAPIRef("extension.lastError")}}: Ils sont ensemble, et la vérification de l'un fonctionnera.

-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.lastError")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/lasterror/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/lasterror/index.md new file mode 100644 index 0000000000..0384ff364d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/lasterror/index.md @@ -0,0 +1,122 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
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.
+ +
+ +
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 :
+ +
+ +
var gettingCookies = browser.cookies.getAll();
+gettingCookies.then(onGot, onError);
+ +

La propriété runtime.lastError est définie lorsqu'une fonction asynchrone a une condition  d'erreur qu'elle doit signaler à son appelant.

+ +
Si vous applez une fonction asynchrone qui veut définir lastError, vous devez vérifier l'erreur lorsque vous gérez le résultat de la fonction. Si  lastError a été défini et que vous ne cochez pas dans la fonction de rappel, une erreur sera générée.
+ +
+ +

Syntaxe

+ +
var myError = browser.runtime.lastError;  // null or Error object
+ +

Valeur

+ +

Un objet Error représentant une erreur. La propriété message est un string avec une description lisible par l'utilisateur de l'erreur. Si  lastError n'a pas été défini, la valeur est null.

+ +

Examples

+ +

Définir un cookie, utiliser pour enregistrer le nouveau cookie ou signaler une erreur :

+ +
function logCookie(c) {
+  if (browser.runtime.lastError) {
+    console.error(browser.runtime.lastError);
+  } else {
+    console.log(c);
+  }
+}
+
+browser.cookies.set(
+  {url: "https://developer.mozilla.org/"},
+  logCookie
+);
+ +

La même chose, mais en utilisant une promesse de gérer le résultat de setCookie():

+ +
function logCookie(c) {
+  console.log(c);
+}
+
+function logError(e) {
+  console.error(e);
+}
+
+var setCookie = browser.cookies.set(
+  {url: "https://developer.mozilla.org/"}
+);
+
+setCookie.then(logCookie, logError);
+ +
+

Note : runtime.lastError est un alias pour  {{WebExtAPIRef("extension.lastError")}}: Ils sont ensemble, et la vérification de l'un fonctionnera.

+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.lastError")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index f9fdd35544..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/messagesender/index.html +++ /dev/null @@ -1,81 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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()")}}.

- -

C'est aussi une propriété de {{WebExtAPIRef("runtime.Port")}}, mais seulement dans l'instance de Port passée dans les écouteurs {{WebExtAPIRef("runtime.onConnect()")}} ou {{WebExtAPIRef("runtime.onConnectExternal()")}}.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
tab{{optional_inline}}
-
{{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).
-
frameId{{optional_inline}}
-
integer. 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'onglet est défini.
-
id{{optional_inline}}
-
string. 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 applications dans manifest.json, then id  aura cette valeur. Sinon, il aura l'ID qui a été généré pour l'expéditeur. Notez que dans Firefox, avant la version 54, cette valeur était l'ID interne de l'extension (c'est-à-dire l'UUID qui apparaît dans l'URL de l'extension).
-
url{{optional_inline}}
-
string. L'URL de la page ou du cadre hébergeant le script qui a envoyé le message. Si l'expéditeur est un script s'exécutant dans une page d'extension (telle qu'une  page d'arrière-plan, une page d'options, ou une action de navigateur ou une action contextuelle), l'URL sera au format "moz-extension://<extension-internal-id>/path/to/page.html". 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 "moz-extension://<extension-internal-id>/_generated_background_page.html". 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'url sera l'URL de la page web. Si le script s'exécute dans un iframe, url sera l'URL de l'iframe.
-
tlsChannelId{{optional_inline}}
-
string. L'ID de canal TLS de la page ou du cadre qui a ouvert la connexion, si demandé par l'extension, et si disponible.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.MessageSender")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/messagesender/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/messagesender/index.md new file mode 100644 index 0000000000..f9fdd35544 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/messagesender/index.md @@ -0,0 +1,81 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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()")}}.

+ +

C'est aussi une propriété de {{WebExtAPIRef("runtime.Port")}}, mais seulement dans l'instance de Port passée dans les écouteurs {{WebExtAPIRef("runtime.onConnect()")}} ou {{WebExtAPIRef("runtime.onConnectExternal()")}}.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
tab{{optional_inline}}
+
{{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).
+
frameId{{optional_inline}}
+
integer. 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'onglet est défini.
+
id{{optional_inline}}
+
string. 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 applications dans manifest.json, then id  aura cette valeur. Sinon, il aura l'ID qui a été généré pour l'expéditeur. Notez que dans Firefox, avant la version 54, cette valeur était l'ID interne de l'extension (c'est-à-dire l'UUID qui apparaît dans l'URL de l'extension).
+
url{{optional_inline}}
+
string. L'URL de la page ou du cadre hébergeant le script qui a envoyé le message. Si l'expéditeur est un script s'exécutant dans une page d'extension (telle qu'une  page d'arrière-plan, une page d'options, ou une action de navigateur ou une action contextuelle), l'URL sera au format "moz-extension://<extension-internal-id>/path/to/page.html". 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 "moz-extension://<extension-internal-id>/_generated_background_page.html". 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'url sera l'URL de la page web. Si le script s'exécute dans un iframe, url sera l'URL de l'iframe.
+
tlsChannelId{{optional_inline}}
+
string. L'ID de canal TLS de la page ou du cadre qui a ouvert la connexion, si demandé par l'extension, et si disponible.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.MessageSender")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 3319ee6867..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/onbrowserupdateavailable/index.html +++ /dev/null @@ -1,101 +0,0 @@ ---- -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 ---- -

{{AddonSidebar}}{{Deprecated_header}}

- -

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.

- -

Syntaxe

- -
browser.runtime.onBrowserUpdateAvailable.addListener(listener)
-browser.runtime.onBrowserUpdateAvailable.removeListener(listener)
-browser.runtime.onBrowserUpdateAvailable.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrestez d'écouter un événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si un écouteur est enregistré pour cet événement. Retourne true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
function
-
-

Une fonction de rappel qui sera appelée lorsque cet événement se produira.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.onBrowserUpdateAvailable")}}

- -

Exemples

- -

Ecoutez cet événement :

- -
function handleBrowserUpdateAvailable() {
-  // handle event
-}
-
-browser.runtime.onBrowserUpdateAvailable.addListener(handleBrowserUpdateAvailable);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onbrowserupdateavailable/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/onbrowserupdateavailable/index.md new file mode 100644 index 0000000000..3319ee6867 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onbrowserupdateavailable/index.md @@ -0,0 +1,101 @@ +--- +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 +--- +

{{AddonSidebar}}{{Deprecated_header}}

+ +

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.

+ +

Syntaxe

+ +
browser.runtime.onBrowserUpdateAvailable.addListener(listener)
+browser.runtime.onBrowserUpdateAvailable.removeListener(listener)
+browser.runtime.onBrowserUpdateAvailable.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrestez d'écouter un événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si un écouteur est enregistré pour cet événement. Retourne true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
function
+
+

Une fonction de rappel qui sera appelée lorsque cet événement se produira.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.onBrowserUpdateAvailable")}}

+ +

Exemples

+ +

Ecoutez cet événement :

+ +
function handleBrowserUpdateAvailable() {
+  // handle event
+}
+
+browser.runtime.onBrowserUpdateAvailable.addListener(handleBrowserUpdateAvailable);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index d77c14c446..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnect/index.html +++ /dev/null @@ -1,153 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé quand une connexion est établie avec un processus d'extension ou un script de contenu.

- -

Syntaxe

- -
browser.runtime.onConnect.addListener(listener)
-browser.runtime.onConnect.removeListener(listener)
-browser.runtime.onConnect.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument de l'écouteur est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si un écouteur est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
fonction
-
-

Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants:

- -
-
port
-
Un objet {{WebExtAPIRef('runtime.Port')}} connectant le script courant à l'autre contexte auquel il se connecte.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.onConnect")}}

- -

Exemples

- -

Ce script de contenu :

- - - -
// content-script.js
-
-var myPort = browser.runtime.connect({name:"port-from-cs"});
-myPort.postMessage({greeting: "hello from content script"});
-
-myPort.onMessage.addListener(function(m) {
-  console.log("In content script, received message from background script: ");
-  console.log(m.greeting);
-});
-
-document.body.addEventListener("click", function() {
-  myPort.postMessage({greeting: "they clicked the page!"});
-});
- -

Le script d'arrière-plan correspondant :

- - - -
// background-script.js
-
-var portFromCS;
-
-function connected(p) {
-  portFromCS = p;
-  portFromCS.postMessage({greeting: "hi there content script!"});
-  portFromCS.onMessage.addListener(function(m) {
-    console.log("In background script, received message from content script")
-    console.log(m.greeting);
-  });
-}
-
-browser.runtime.onConnect.addListener(connected);
-
-browser.browserAction.onClicked.addListener(function() {
-  portFromCS.postMessage({greeting: "they clicked the button!"});
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnect/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnect/index.md new file mode 100644 index 0000000000..d77c14c446 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnect/index.md @@ -0,0 +1,153 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé quand une connexion est établie avec un processus d'extension ou un script de contenu.

+ +

Syntaxe

+ +
browser.runtime.onConnect.addListener(listener)
+browser.runtime.onConnect.removeListener(listener)
+browser.runtime.onConnect.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument de l'écouteur est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si un écouteur est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
fonction
+
+

Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants:

+ +
+
port
+
Un objet {{WebExtAPIRef('runtime.Port')}} connectant le script courant à l'autre contexte auquel il se connecte.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.onConnect")}}

+ +

Exemples

+ +

Ce script de contenu :

+ + + +
// content-script.js
+
+var myPort = browser.runtime.connect({name:"port-from-cs"});
+myPort.postMessage({greeting: "hello from content script"});
+
+myPort.onMessage.addListener(function(m) {
+  console.log("In content script, received message from background script: ");
+  console.log(m.greeting);
+});
+
+document.body.addEventListener("click", function() {
+  myPort.postMessage({greeting: "they clicked the page!"});
+});
+ +

Le script d'arrière-plan correspondant :

+ + + +
// background-script.js
+
+var portFromCS;
+
+function connected(p) {
+  portFromCS = p;
+  portFromCS.postMessage({greeting: "hi there content script!"});
+  portFromCS.onMessage.addListener(function(m) {
+    console.log("In background script, received message from content script")
+    console.log(m.greeting);
+  });
+}
+
+browser.runtime.onConnect.addListener(connected);
+
+browser.browserAction.onClicked.addListener(function() {
+  portFromCS.postMessage({greeting: "they clicked the button!"});
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 82de77f179..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnectexternal/index.html +++ /dev/null @@ -1,138 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'une extension reçoit une demande de connexion d'une extension différente.

- -

Pour envoyer un message qui sera reçu par le programme d'écoute onConnectExternal, utilisez {{WebExtAPIRef("runtime.connect()")}}, en transmettant l'ID du destinataire dans le paramètre extensionId.

- -

L'écouteur reçoit un objet {{WebExtAPIRef('runtime.Port')}} qu'il peut ensuite utiliser pour envoyer et recevoir des messages. L'objet Port contient également une propriétésender, qui est un objet {{WebExtAPIRef("runtime.MessageSender")}},  et que le destinataire peut utiliser pour vérifier l'ID de l'expéditeur.

- -

Syntaxe

- -
browser.runtime.onConnectExternal.addListener(listener)
-browser.runtime.onConnectExternal.removeListener(listener)
-browser.runtime.onConnectExternal.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si un  listener est enregistré pour cet événement. Retourne true s'il écoute,  false sinon.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
fonction
-
-

Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants :

- -
-
port
-
Un objet {{WebExtAPIRef('runtime.Port')}} connectant le script en cours à l'autre extension à laquelle il se connecte.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.onConnectExternal")}}

- -

Exemples

- -

Dans cet exemple, l'extension Hansel se connecte à l'extension Gretel :

- -
console.log("connecting to Gretel");
-var myPort = browser.runtime.connect(
-  "gretel@mozilla.org"
-);
-
-myPort.onMessage.addListener((message) => {
-  console.log(`From Gretel: ${message.content}`);
-});
-
-browser.browserAction.onClicked.addListener(() => {
-  myPort.postMessage({content: "Hello from Hansel"});
-});
- -

Gretel écoute la connexion  et vérifie que l'expéditeur est vraiment Hansel:

- -
var portFromHansel;
-
-browser.runtime.onConnectExternal.addListener((port) => {
-  console.log(port);
-  if (port.sender.id === "hansel@mozilla.org") {
-    console.log("connection attempt from Hansel");
-    portFromHansel = port;
-    portFromHansel.onMessage.addListener((message) => {
-      console.log(`From Hansel: ${message.content}`);
-    });
-  }
-});
-
-browser.browserAction.onClicked.addListener(() => {
-   portFromHansel.postMessage({content: "Message from Gretel"});
-});
-
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnectexternal/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnectexternal/index.md new file mode 100644 index 0000000000..82de77f179 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onconnectexternal/index.md @@ -0,0 +1,138 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'une extension reçoit une demande de connexion d'une extension différente.

+ +

Pour envoyer un message qui sera reçu par le programme d'écoute onConnectExternal, utilisez {{WebExtAPIRef("runtime.connect()")}}, en transmettant l'ID du destinataire dans le paramètre extensionId.

+ +

L'écouteur reçoit un objet {{WebExtAPIRef('runtime.Port')}} qu'il peut ensuite utiliser pour envoyer et recevoir des messages. L'objet Port contient également une propriétésender, qui est un objet {{WebExtAPIRef("runtime.MessageSender")}},  et que le destinataire peut utiliser pour vérifier l'ID de l'expéditeur.

+ +

Syntaxe

+ +
browser.runtime.onConnectExternal.addListener(listener)
+browser.runtime.onConnectExternal.removeListener(listener)
+browser.runtime.onConnectExternal.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si un  listener est enregistré pour cet événement. Retourne true s'il écoute,  false sinon.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
fonction
+
+

Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants :

+ +
+
port
+
Un objet {{WebExtAPIRef('runtime.Port')}} connectant le script en cours à l'autre extension à laquelle il se connecte.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.onConnectExternal")}}

+ +

Exemples

+ +

Dans cet exemple, l'extension Hansel se connecte à l'extension Gretel :

+ +
console.log("connecting to Gretel");
+var myPort = browser.runtime.connect(
+  "gretel@mozilla.org"
+);
+
+myPort.onMessage.addListener((message) => {
+  console.log(`From Gretel: ${message.content}`);
+});
+
+browser.browserAction.onClicked.addListener(() => {
+  myPort.postMessage({content: "Hello from Hansel"});
+});
+ +

Gretel écoute la connexion  et vérifie que l'expéditeur est vraiment Hansel:

+ +
var portFromHansel;
+
+browser.runtime.onConnectExternal.addListener((port) => {
+  console.log(port);
+  if (port.sender.id === "hansel@mozilla.org") {
+    console.log("connection attempt from Hansel");
+    portFromHansel = port;
+    portFromHansel.onMessage.addListener((message) => {
+      console.log(`From Hansel: ${message.content}`);
+    });
+  }
+});
+
+browser.browserAction.onClicked.addListener(() => {
+   portFromHansel.postMessage({content: "Message from Gretel"});
+});
+
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 72b6f011f6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalled/index.html +++ /dev/null @@ -1,122 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Notez que runtime.onInstalled n'est pas la même chose  {{WebExtAPIRef("management.onInstalled")}}. L'événement  runtime.onInstalled est déclenché uniquement pour votre extension. L'événement browser.management.onInstalled est déclenché pour toutes les extensions.

- -

Syntaxe

- -
browser.runtime.onInstalled.addListener(listener)
-browser.runtime.onInstalled.removeListener(listener)
-browser.runtime.onInstalled.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajouterun écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écoutercet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si un écouteur est enregistré pour cet événement. Renvoie true s'il écoute, false sinon.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
function
-
-

La fonction de rappel appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
details
-

Un objet avec les propriétés suivantes :

-
-
id{{optional_inline}}
-
string. L'ID de l'extension  de module partagé importé mise à jour. Ceci n'est présent que si la valeur de raison est  shared_module_update.
-
previousVersion{{optional_inline}}
-
string. La version précédente de l'extension vient d'être mise à jour. Ceci n'est pas présent si la valeur de raison est mise à jour.
-
reason
-
Une valeur {{WebExtAPIRef('runtime.OnInstalledReason')}}, indiquant la raison pour laquelle cet événement est distribué.
-
temporary
-
boolean. Vrai si le module complémentaire a été installé temporairement. Par exemple, en utilisant la page "about:debugging" dans Firefox ou en utilisant  web-ext run. Sinon faux.
-
-
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.onInstalled", 10)}}

- -

Exemples

- -

Lorsque l'extensin est installé, connectez-vous à la raison de l'installon et ouvrez https://www.reddit.com/r/CatGifs/:

- -
function handleInstalled(details) {
-  console.log(details.reason);
-  browser.tabs.create({
-    url: "http://chilloutandwatchsomecatgifs.com/"
-  });
-}
-
-browser.runtime.onInstalled.addListener(handleInstalled);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalled/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalled/index.md new file mode 100644 index 0000000000..72b6f011f6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalled/index.md @@ -0,0 +1,122 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Notez que runtime.onInstalled n'est pas la même chose  {{WebExtAPIRef("management.onInstalled")}}. L'événement  runtime.onInstalled est déclenché uniquement pour votre extension. L'événement browser.management.onInstalled est déclenché pour toutes les extensions.

+ +

Syntaxe

+ +
browser.runtime.onInstalled.addListener(listener)
+browser.runtime.onInstalled.removeListener(listener)
+browser.runtime.onInstalled.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajouterun écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écoutercet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si un écouteur est enregistré pour cet événement. Renvoie true s'il écoute, false sinon.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
function
+
+

La fonction de rappel appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
details
+

Un objet avec les propriétés suivantes :

+
+
id{{optional_inline}}
+
string. L'ID de l'extension  de module partagé importé mise à jour. Ceci n'est présent que si la valeur de raison est  shared_module_update.
+
previousVersion{{optional_inline}}
+
string. La version précédente de l'extension vient d'être mise à jour. Ceci n'est pas présent si la valeur de raison est mise à jour.
+
reason
+
Une valeur {{WebExtAPIRef('runtime.OnInstalledReason')}}, indiquant la raison pour laquelle cet événement est distribué.
+
temporary
+
boolean. Vrai si le module complémentaire a été installé temporairement. Par exemple, en utilisant la page "about:debugging" dans Firefox ou en utilisant  web-ext run. Sinon faux.
+
+
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.onInstalled", 10)}}

+ +

Exemples

+ +

Lorsque l'extensin est installé, connectez-vous à la raison de l'installon et ouvrez https://www.reddit.com/r/CatGifs/:

+ +
function handleInstalled(details) {
+  console.log(details.reason);
+  browser.tabs.create({
+    url: "http://chilloutandwatchsomecatgifs.com/"
+  });
+}
+
+browser.runtime.onInstalled.addListener(handleInstalled);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 1e02e04511..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalledreason/index.html +++ /dev/null @@ -1,77 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Les valeurs pour laquelle l'événement {{WebExtAPIRef("runtime.onInstalled")}} est en cours d'envoi.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- -
-
"install"
-
L'extension a été installée.
-
"update"
-
L'extension a été mise à jour vers une nouvelle version.
-
"browser_update"
-
Le navigateur a été mise à jour vers une nouvelle version.
-
"shared_module_update"
-
Une autre extension, qui contient un module utilisé par cette extension, a été mise à jour.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.OnInstalledReason")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalledreason/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalledreason/index.md new file mode 100644 index 0000000000..1e02e04511 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/oninstalledreason/index.md @@ -0,0 +1,77 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Les valeurs pour laquelle l'événement {{WebExtAPIRef("runtime.onInstalled")}} est en cours d'envoi.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ +
+
"install"
+
L'extension a été installée.
+
"update"
+
L'extension a été mise à jour vers une nouvelle version.
+
"browser_update"
+
Le navigateur a été mise à jour vers une nouvelle version.
+
"shared_module_update"
+
Une autre extension, qui contient un module utilisé par cette extension, a été mise à jour.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.OnInstalledReason")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index f946a74336..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessage/index.html +++ /dev/null @@ -1,326 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Utilisez cet événement pour écouter les messages d’une autre partie de votre extension.

- -

Voici quelques exemples de cas d'utilisation :

- - - -

Pour envoyer un message reçu par l'écouteur onMessage, utilisez {{WebExtAPIRef("runtime.sendMessage()")}} ou (pour envoyer un message à un script de contenu) {{WebExtAPIRef("tabs.sendMessage()")}}.

- -
-

Note : Évitez de créer plusieurs écouteurs onMessage pour le même type de message, car l'ordre de déclenchement des différents écouteurs ne sera pas garanti.

- -

Lorsque vous voulez garantir la livraison d'un message à une terminaison spécifique, utilisez l'approche basée sur la connexion pour échanger des messages.

-
- -

En plus du message, l’écouteur reçoit en paramètres :

- - - -

Vous pouvez envoyer une réponse synchrone au message en appelant la fonction sendResponse() dans votre écouteur. Voir un exemple.

- -

Pour envoyer une réponse asynchrone, il existe deux options :

- - - -
-

Attention : Retourner une promesse (Promise) est désormais la méthode à privilégier car sendResponse() sera retirée de la spécification W3C.

- -

La bibliothèque populaire webextension-polyfill a déjà supprimé cette fonction de son implémentation.

-
- -
-

Note : Vous pouvez également utiliser une approche basée sur la connexion pour échanger des messages.

-
- -

Syntaxe

- -
browser.runtime.onMessage.addListener(listener)
-browser.runtime.onMessage.removeListener(listener)
-browser.runtime.onMessage.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Cesse d’écouter cet événement. L’argument listener est l’écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si un listener est enregistré pour cet événement. Retourne true s’il écoute, false sinon.
-
- -

Syntaxe de addListener

- -

Paramètres

- -
-
listener
-
-

Une fonction d’écoute qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants :

- -
-
message
-
Un objet qui est le message lui-même. C’est un objet sérialisable (voir l'algorithme de clonage de données).
-
- -
-
sender
-
Un objet {{WebExtAPIRef("runtime.MessageSender")}} représentant l’expéditeur du message.
-
- -
-
sendResponse
-
-

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 sérialisable (voir l'algorithme de clonage de données). Cet argument est renvoyé à l'expéditeur du message.

- -

Si vous avez plus d'un écouteur onMessage() dans le même document, alors un seul peut envoyer une réponse.

- -

Pour envoyer une réponse de manière synchrone, appelez sendResponse() avant le retour de la fonction d'écoute.

- -

Pour envoyer une réponse de manière asynchrone :

- -
    -
  • soit on gardera une référence à l'argument sendResponse() et on retournera true depuis la fonction listenener. sendResponse() pourra être appelée après le retour de la fonction d'écoute.
  • -
  • ou on retournera {{jsxref("Promise")}} à partir de la fonction d'écoute et on résoudra la promesse lorsque la réponse sera prête. C'est la méthode à privilégier.
  • -
-
-
- -

La fonction listener peut renvoyer un booléen ou une {{jsxref("Promise")}}.

- -
-

Note : N'appelez pas addListener() en utilisant une fonction async :

- -
// ne faites pas ça
-browser.runtime.onMessage.addListener(
-  async (data, sender) => {
-    if (data.type === 'handle_me') { return 'done'; }
-  }
-);
-
- -

L'écouteur consommera ainsi chaque message qu'il reçoit, ce qui empêchera effectivement tous les autres écouteurs de recevoir et de traiter des messages.

- -

Si vous souhaitez adopter une approche asynchrone, utilisez plutôt une Promise, comme ceci :

- -
browser.runtime.onMessage.addListener(
-  (data, sender) => {
-    if (data.type === 'handle_me') {
-      return Promise.resolve('done');
-    }
-  }
-);
-
-
-
-
- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.api.runtime.onMessage")}}

- -

Exemples

- -

Exemple simple

- -

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 :

- -
// content-script.js
-
-window.addEventListener("click", notifyExtension);
-
-function notifyExtension(e) {
-  if (e.target.tagName != "A") {
-    return;
-  }
-  browser.runtime.sendMessage({"url": e.target.href});
-}
- -

Le script d’arrière-plan écoute ces messages et affiche une notification à l’aide de l’API notifications.

- -
// 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
-  });
-}
- -

Envoyer une réponse synchrone

- -

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ée par le script d’arrière-plan :

- -
// 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);
- -

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 :

- -
// 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);
- -

Et voici une autre version, qui utilise {{jsxref("Promise.resolve()")}} :

- -
// 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);
- -

Envoi d’une réponse asynchrone à l’aide de sendResponse

- -

Voici une 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 return true; dans l’écouteur : cela indique au navigateur que vous avez l’intention d’utiliser l’argument sendResponse() après le retour de l’écouteur.

- -
// background-script.js
-
-function handleMessage(request, sender, sendResponse) {
-  console.log(`le script de contenu a envoyé un message : ${request.content}`);
-  setTimeout(() => {
-    sendResponse({response: "réponse asynchrone du script d’arrière-plan"});
-  }, 1000);
-  return true;
-}
-
-browser.runtime.onMessage.addListener(handleMessage);
- -

Envoi d’une réponse asynchrone à l’aide d’une promesse

- -

Ce script de contenu reçoit le premier lien <a> 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")}} : true si l’emplacement est dans les marque-pages, false sinon.

- -
// 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);
- -

Voici le script d’arrière-plan. Il utilise {{WebExtAPIRef("bookmarks.search()")}} pour voir si le lien est dans les marque-pages, ce qui renvoie une {{jsxref("Promise", "promesse")}} :

- -
// background-script.js
-
-function isBookmarked(message, sender, response) {
-  return browser.bookmarks.search({
-    url: message.url
-  }).then(function(results) {
-    return results.length > 0;
-  });
-}
-
-browser.runtime.onMessage.addListener(isBookmarked);
- -

Si le gestionnaire asynchrone ne renvoie pas de promesse, vous pouvez explicitement construire une promesse. Cet exemple plutôt artificiel envoie une réponse après un délai d’une seconde, en utilisant Window.setTimeout() :

- -
// background-script.js
-
-function handleMessage(request, sender, sendResponse) {
-  return new Promise(resolve => {
-    setTimeout(() => {
-      resolve({response: "réponse asynchrone du script d’arrière-plan"});
-    }, 1000);
-  });
-}
-
-browser.runtime.onMessage.addListener(handleMessage);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l’API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessage/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessage/index.md new file mode 100644 index 0000000000..f946a74336 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessage/index.md @@ -0,0 +1,326 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Utilisez cet événement pour écouter les messages d’une autre partie de votre extension.

+ +

Voici quelques exemples de cas d'utilisation :

+ + + +

Pour envoyer un message reçu par l'écouteur onMessage, utilisez {{WebExtAPIRef("runtime.sendMessage()")}} ou (pour envoyer un message à un script de contenu) {{WebExtAPIRef("tabs.sendMessage()")}}.

+ +
+

Note : Évitez de créer plusieurs écouteurs onMessage pour le même type de message, car l'ordre de déclenchement des différents écouteurs ne sera pas garanti.

+ +

Lorsque vous voulez garantir la livraison d'un message à une terminaison spécifique, utilisez l'approche basée sur la connexion pour échanger des messages.

+
+ +

En plus du message, l’écouteur reçoit en paramètres :

+ + + +

Vous pouvez envoyer une réponse synchrone au message en appelant la fonction sendResponse() dans votre écouteur. Voir un exemple.

+ +

Pour envoyer une réponse asynchrone, il existe deux options :

+ + + +
+

Attention : Retourner une promesse (Promise) est désormais la méthode à privilégier car sendResponse() sera retirée de la spécification W3C.

+ +

La bibliothèque populaire webextension-polyfill a déjà supprimé cette fonction de son implémentation.

+
+ +
+

Note : Vous pouvez également utiliser une approche basée sur la connexion pour échanger des messages.

+
+ +

Syntaxe

+ +
browser.runtime.onMessage.addListener(listener)
+browser.runtime.onMessage.removeListener(listener)
+browser.runtime.onMessage.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Cesse d’écouter cet événement. L’argument listener est l’écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si un listener est enregistré pour cet événement. Retourne true s’il écoute, false sinon.
+
+ +

Syntaxe de addListener

+ +

Paramètres

+ +
+
listener
+
+

Une fonction d’écoute qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants :

+ +
+
message
+
Un objet qui est le message lui-même. C’est un objet sérialisable (voir l'algorithme de clonage de données).
+
+ +
+
sender
+
Un objet {{WebExtAPIRef("runtime.MessageSender")}} représentant l’expéditeur du message.
+
+ +
+
sendResponse
+
+

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 sérialisable (voir l'algorithme de clonage de données). Cet argument est renvoyé à l'expéditeur du message.

+ +

Si vous avez plus d'un écouteur onMessage() dans le même document, alors un seul peut envoyer une réponse.

+ +

Pour envoyer une réponse de manière synchrone, appelez sendResponse() avant le retour de la fonction d'écoute.

+ +

Pour envoyer une réponse de manière asynchrone :

+ +
    +
  • soit on gardera une référence à l'argument sendResponse() et on retournera true depuis la fonction listenener. sendResponse() pourra être appelée après le retour de la fonction d'écoute.
  • +
  • ou on retournera {{jsxref("Promise")}} à partir de la fonction d'écoute et on résoudra la promesse lorsque la réponse sera prête. C'est la méthode à privilégier.
  • +
+
+
+ +

La fonction listener peut renvoyer un booléen ou une {{jsxref("Promise")}}.

+ +
+

Note : N'appelez pas addListener() en utilisant une fonction async :

+ +
// ne faites pas ça
+browser.runtime.onMessage.addListener(
+  async (data, sender) => {
+    if (data.type === 'handle_me') { return 'done'; }
+  }
+);
+
+ +

L'écouteur consommera ainsi chaque message qu'il reçoit, ce qui empêchera effectivement tous les autres écouteurs de recevoir et de traiter des messages.

+ +

Si vous souhaitez adopter une approche asynchrone, utilisez plutôt une Promise, comme ceci :

+ +
browser.runtime.onMessage.addListener(
+  (data, sender) => {
+    if (data.type === 'handle_me') {
+      return Promise.resolve('done');
+    }
+  }
+);
+
+
+
+
+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.api.runtime.onMessage")}}

+ +

Exemples

+ +

Exemple simple

+ +

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 :

+ +
// content-script.js
+
+window.addEventListener("click", notifyExtension);
+
+function notifyExtension(e) {
+  if (e.target.tagName != "A") {
+    return;
+  }
+  browser.runtime.sendMessage({"url": e.target.href});
+}
+ +

Le script d’arrière-plan écoute ces messages et affiche une notification à l’aide de l’API notifications.

+ +
// 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
+  });
+}
+ +

Envoyer une réponse synchrone

+ +

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ée par le script d’arrière-plan :

+ +
// 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);
+ +

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 :

+ +
// 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);
+ +

Et voici une autre version, qui utilise {{jsxref("Promise.resolve()")}} :

+ +
// 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);
+ +

Envoi d’une réponse asynchrone à l’aide de sendResponse

+ +

Voici une 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 return true; dans l’écouteur : cela indique au navigateur que vous avez l’intention d’utiliser l’argument sendResponse() après le retour de l’écouteur.

+ +
// background-script.js
+
+function handleMessage(request, sender, sendResponse) {
+  console.log(`le script de contenu a envoyé un message : ${request.content}`);
+  setTimeout(() => {
+    sendResponse({response: "réponse asynchrone du script d’arrière-plan"});
+  }, 1000);
+  return true;
+}
+
+browser.runtime.onMessage.addListener(handleMessage);
+ +

Envoi d’une réponse asynchrone à l’aide d’une promesse

+ +

Ce script de contenu reçoit le premier lien <a> 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")}} : true si l’emplacement est dans les marque-pages, false sinon.

+ +
// 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);
+ +

Voici le script d’arrière-plan. Il utilise {{WebExtAPIRef("bookmarks.search()")}} pour voir si le lien est dans les marque-pages, ce qui renvoie une {{jsxref("Promise", "promesse")}} :

+ +
// background-script.js
+
+function isBookmarked(message, sender, response) {
+  return browser.bookmarks.search({
+    url: message.url
+  }).then(function(results) {
+    return results.length > 0;
+  });
+}
+
+browser.runtime.onMessage.addListener(isBookmarked);
+ +

Si le gestionnaire asynchrone ne renvoie pas de promesse, vous pouvez explicitement construire une promesse. Cet exemple plutôt artificiel envoie une réponse après un délai d’une seconde, en utilisant Window.setTimeout() :

+ +
// background-script.js
+
+function handleMessage(request, sender, sendResponse) {
+  return new Promise(resolve => {
+    setTimeout(() => {
+      resolve({response: "réponse asynchrone du script d’arrière-plan"});
+    }, 1000);
+  });
+}
+
+browser.runtime.onMessage.addListener(handleMessage);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l’API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 497fcab12a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessageexternal/index.html +++ /dev/null @@ -1,155 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-
Utilisez cet événement pour écouter les messages d'une autre extension.
- -
- -

Pour envoyer un message qui sera reçu par le module d'écoute onMessageExternal, utilisez {{WebExtAPIRef("runtime.sendMessage()")}}, en transmettant l'ID du destinataire dans le paramètre extensionId.

- -

Avec le message lui-même, l'écouteur est transmis :

- - -
- -

Cette API ne peut pas être utilisée dans un script de contenu.

- -

Syntax

- -
browser.runtime.onMessageExternal.addListener()
-browser.runtime.onMessageExternal.removeListener(listener)
-browser.runtime.onMessageExternal.hasListener(listener)
-
- -

Les événements ont trois fonctions:

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si un listener est enregistré pour cet événement. Renvoie true s'il écoute, false sinon.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
function
-
-

Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants :

- -
-
message
-
object. Le message lui-même. C'est un objet JSON-ifiable.
-
- -
-
sender
-
Un objet {{WebExtAPIRef('runtime.MessageSender')}} représentant l'expéditeur du message.
-
- -
-
sendResponse
-
-

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.

- -

Si vous avez plus d'un écouteur onMessageExternal dans le même document, un seul peut envoyer une réponse.

- -

To send a response synchronously, call sendResponse before the listener function returns. To send a response asynchronously:

- -
    -
  • Soit garder une référence à l'argumen sendResponse et retourne true à partir de la fonction d'écouteur. Vous pourrez ensuite appeler sendResponse après le retour de la fonction d'écouteur..
  • -
  • ou retourne une Promise de la fonction d'écouteur et résoudre la promesse lorsque la réponse est prête.
  • -
-
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.onMessageExternal")}}

- -

Exemples

- -

Dans cet exemple, l'extension "blue@mozilla.org" envoie un message  à l'extension "red@mozilla.org":

- -
// 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"
-  );
- -
// 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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessageexternal/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessageexternal/index.md new file mode 100644 index 0000000000..497fcab12a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onmessageexternal/index.md @@ -0,0 +1,155 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+
Utilisez cet événement pour écouter les messages d'une autre extension.
+ +
+ +

Pour envoyer un message qui sera reçu par le module d'écoute onMessageExternal, utilisez {{WebExtAPIRef("runtime.sendMessage()")}}, en transmettant l'ID du destinataire dans le paramètre extensionId.

+ +

Avec le message lui-même, l'écouteur est transmis :

+ + +
+ +

Cette API ne peut pas être utilisée dans un script de contenu.

+ +

Syntax

+ +
browser.runtime.onMessageExternal.addListener()
+browser.runtime.onMessageExternal.removeListener(listener)
+browser.runtime.onMessageExternal.hasListener(listener)
+
+ +

Les événements ont trois fonctions:

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si un listener est enregistré pour cet événement. Renvoie true s'il écoute, false sinon.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
function
+
+

Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants :

+ +
+
message
+
object. Le message lui-même. C'est un objet JSON-ifiable.
+
+ +
+
sender
+
Un objet {{WebExtAPIRef('runtime.MessageSender')}} représentant l'expéditeur du message.
+
+ +
+
sendResponse
+
+

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.

+ +

Si vous avez plus d'un écouteur onMessageExternal dans le même document, un seul peut envoyer une réponse.

+ +

To send a response synchronously, call sendResponse before the listener function returns. To send a response asynchronously:

+ +
    +
  • Soit garder une référence à l'argumen sendResponse et retourne true à partir de la fonction d'écouteur. Vous pourrez ensuite appeler sendResponse après le retour de la fonction d'écouteur..
  • +
  • ou retourne une Promise de la fonction d'écouteur et résoudre la promesse lorsque la réponse est prête.
  • +
+
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.onMessageExternal")}}

+ +

Exemples

+ +

Dans cet exemple, l'extension "blue@mozilla.org" envoie un message  à l'extension "red@mozilla.org":

+ +
// 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"
+  );
+ +
// 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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 117554432e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequired/index.html +++ /dev/null @@ -1,98 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.runtime.onRestartRequired.addListener(listener)
-browser.runtime.onRestartRequired.removeListener(listener)
-browser.runtime.onRestartRequired.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajouter un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si un listener est enregistré pour cet événement. Renvoie true s'il écoute, false sinon.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
fonction
-
-

Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants :

- -
-
raison
-
Une valeur {{WebExtAPIRef('runtime.OnRestartRequiredReason')}} — La raison pour laquelle l'événemtn est envoyé.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.onRestartRequired")}}

- -

Exemples

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequired/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequired/index.md new file mode 100644 index 0000000000..117554432e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequired/index.md @@ -0,0 +1,98 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.runtime.onRestartRequired.addListener(listener)
+browser.runtime.onRestartRequired.removeListener(listener)
+browser.runtime.onRestartRequired.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajouter un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si un listener est enregistré pour cet événement. Renvoie true s'il écoute, false sinon.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
fonction
+
+

Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction recevra les arguments suivants :

+ +
+
raison
+
Une valeur {{WebExtAPIRef('runtime.OnRestartRequiredReason')}} — La raison pour laquelle l'événemtn est envoyé.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.onRestartRequired")}}

+ +

Exemples

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 4f7806847c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequiredreason/index.html +++ /dev/null @@ -1,72 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La raison pour laquelle l'événement  {{WebExtAPIRef("runtime.onRestartRequired", "onRestartRequired")}} est en cours d'exécution.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.OnRestartRequiredReason")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequiredreason/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequiredreason/index.md new file mode 100644 index 0000000000..4f7806847c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onrestartrequiredreason/index.md @@ -0,0 +1,72 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La raison pour laquelle l'événement  {{WebExtAPIRef("runtime.onRestartRequired", "onRestartRequired")}} est en cours d'exécution.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.OnRestartRequiredReason")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 039bb149a4..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/onstartup/index.html +++ /dev/null @@ -1,98 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé quand un profil ayant cette extension installée démarre une session. 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'.

- -

Syntaxe

- -
browser.runtime.onStartup.addListener(listener)
-browser.runtime.onStartup.removeListener(listener)
-browser.runtime.onStartup.hasListener(listener)
-
- -

Fonctions des événements

- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à écouteur.
-
removeListener(listener)
-
Arrête d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si un écouteur est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Parameters

- -
-
callback
-
Une fonction qui sera appelée lorsque cet événement se produit.
-
- -

Exemples

- -

Ouvre http://chilloutandwatchsomecatgifs.com/ quand le navigateur démarre :

- -
function handleStartup() {
-  browser.tabs.create({
-    url: "http://chilloutandwatchsomecatgifs.com/"
-  });
-}
-
-browser.runtime.onStartup.addListener(handleStartup);
- -
-

Note :

-

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

-

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.onStartup")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onstartup/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/onstartup/index.md new file mode 100644 index 0000000000..039bb149a4 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onstartup/index.md @@ -0,0 +1,98 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé quand un profil ayant cette extension installée démarre une session. 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'.

+ +

Syntaxe

+ +
browser.runtime.onStartup.addListener(listener)
+browser.runtime.onStartup.removeListener(listener)
+browser.runtime.onStartup.hasListener(listener)
+
+ +

Fonctions des événements

+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à écouteur.
+
removeListener(listener)
+
Arrête d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si un écouteur est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Parameters

+ +
+
callback
+
Une fonction qui sera appelée lorsque cet événement se produit.
+
+ +

Exemples

+ +

Ouvre http://chilloutandwatchsomecatgifs.com/ quand le navigateur démarre :

+ +
function handleStartup() {
+  browser.tabs.create({
+    url: "http://chilloutandwatchsomecatgifs.com/"
+  });
+}
+
+browser.runtime.onStartup.addListener(handleStartup);
+ +
+

Note :

+

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.onStartup")}}

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 deleted file mode 100644 index 28d601ead7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspend/index.html +++ /dev/null @@ -1,106 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -
-

Note : 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.

-
- -

Syntaxe

- -
browser.runtime.onSuspend.addListener(listener)
-browser.runtime.onSuspend.removeListener(listener)
-browser.runtime.onSuspend.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si un écouteur est enregistré pour cet événement. Retourne true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction dui sera appelée lorsque cet événement se produit

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.onSuspend")}}

- -

Exemples

- -

Ecoutez les événements suspendus :

- -
function handleSuspend() {
-  console.log("Suspending event page");
-  // handle cleanup
-}
-
-browser.runtime.onSuspend.addListener(handleSuspend);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspend/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspend/index.md new file mode 100644 index 0000000000..28d601ead7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspend/index.md @@ -0,0 +1,106 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +
+

Note : 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.

+
+ +

Syntaxe

+ +
browser.runtime.onSuspend.addListener(listener)
+browser.runtime.onSuspend.removeListener(listener)
+browser.runtime.onSuspend.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si un écouteur est enregistré pour cet événement. Retourne true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction dui sera appelée lorsque cet événement se produit

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.onSuspend")}}

+ +

Exemples

+ +

Ecoutez les événements suspendus :

+ +
function handleSuspend() {
+  console.log("Suspending event page");
+  // handle cleanup
+}
+
+browser.runtime.onSuspend.addListener(handleSuspend);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 1e38dbd73f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspendcanceled/index.html +++ /dev/null @@ -1,101 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Envoyé après {{WebExtAPIRef("runtime.onSuspend")}} pour indiquer que l'application  ne sera pas déchargée après tout.

- -

Syntaxe

- -
browser.runtime.onSuspendCanceled.addListener(listener)
-browser.runtime.onSuspendCanceled.removeListener(listener)
-browser.runtime.onSuspendCanceled.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajouter un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est un écouteur à suppriimer.
-
hasListener(listener)
-
Vérifie si un écouteur est enregistré pour cet événement. Retourne true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.onSuspendCanceled")}}

- -

Exemples

- -

Ecoutez les événements SuspendCanceled :

- -
function handleSuspendCanceled() {
-  console.log("Suspend canceled");
-}
-
-browser.runtime.onSuspendCanceled.addListener(handleSuspendCanceled);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspendcanceled/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspendcanceled/index.md new file mode 100644 index 0000000000..1e38dbd73f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onsuspendcanceled/index.md @@ -0,0 +1,101 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Envoyé après {{WebExtAPIRef("runtime.onSuspend")}} pour indiquer que l'application  ne sera pas déchargée après tout.

+ +

Syntaxe

+ +
browser.runtime.onSuspendCanceled.addListener(listener)
+browser.runtime.onSuspendCanceled.removeListener(listener)
+browser.runtime.onSuspendCanceled.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajouter un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est un écouteur à suppriimer.
+
hasListener(listener)
+
Vérifie si un écouteur est enregistré pour cet événement. Retourne true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.onSuspendCanceled")}}

+ +

Exemples

+ +

Ecoutez les événements SuspendCanceled :

+ +
function handleSuspendCanceled() {
+  console.log("Suspend canceled");
+}
+
+browser.runtime.onSuspendCanceled.addListener(handleSuspendCanceled);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index c30803e06f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/onupdateavailable/index.html +++ /dev/null @@ -1,114 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

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 :

- - - -

Syntaxe

- -
browser.runtime.onUpdateAvailable.addListener()
-browser.runtime.onUpdateAvailable.removeListener(listener)
-browser.runtime.onUpdateAvailable.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajouter un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argumentlistener est un écouteur à supprimer.
-
hasListener(listener)
-
Vérifie que l'écouteur est enregistré pour cet événement. Retourne true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée quand cet événement se produit. La fonction recevra les arguments suivants :

- -
-
details
-
object. Contient une seule propriété, une chaîne nommée version, qui représente le numéro de version de la mise à jour.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.onUpdateAvailable")}}

- -

Exemples

- -

Ecoutez les événements UpdateAvailable:

- -
function handleUpdateAvailable(details) {
-  console.log(details.version);
-}
-
-browser.runtime.onUpdateAvailable.addListener(handleUpdateAvailable);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/onupdateavailable/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/onupdateavailable/index.md new file mode 100644 index 0000000000..c30803e06f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/onupdateavailable/index.md @@ -0,0 +1,114 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

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 :

+ + + +

Syntaxe

+ +
browser.runtime.onUpdateAvailable.addListener()
+browser.runtime.onUpdateAvailable.removeListener(listener)
+browser.runtime.onUpdateAvailable.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajouter un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argumentlistener est un écouteur à supprimer.
+
hasListener(listener)
+
Vérifie que l'écouteur est enregistré pour cet événement. Retourne true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée quand cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
details
+
object. Contient une seule propriété, une chaîne nommée version, qui représente le numéro de version de la mise à jour.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.onUpdateAvailable")}}

+ +

Exemples

+ +

Ecoutez les événements UpdateAvailable:

+ +
function handleUpdateAvailable(details) {
+  console.log(details.version);
+}
+
+browser.runtime.onUpdateAvailable.addListener(handleUpdateAvailable);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 1c83d24be8..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/openoptionspage/index.html +++ /dev/null @@ -1,84 +0,0 @@ ---- -title: runtime.openOptionsPage() -slug: Mozilla/Add-ons/WebExtensions/API/runtime/openOptionsPage -translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/openOptionsPage ---- -
{{AddonSidebar()}}
- -
Si votre extension a défini une page d'options, cette méthode l'ouvre.
- -
- -

C'est une fonction asynchrone  qui renvoie une Promise.

- -

Syntaxe

- -
var openingPage = browser.runtime.openOptionsPage()
-
- -

Paramètres

- -

None.

- -

valeur retournée

- -

Une Promise 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é.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.openOptionsPage")}}

- -

Exemples

- -

Ouvrez une page d'options lorsque l'utilisateur clique sur l'icône d'une action du navigateur :

- -
function onOpened() {
-  console.log(`Options page opened`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var opening = browser.runtime.openOptionsPage();
-opening.then(onOpened, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/openoptionspage/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/openoptionspage/index.md new file mode 100644 index 0000000000..1c83d24be8 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/openoptionspage/index.md @@ -0,0 +1,84 @@ +--- +title: runtime.openOptionsPage() +slug: Mozilla/Add-ons/WebExtensions/API/runtime/openOptionsPage +translation_of: Mozilla/Add-ons/WebExtensions/API/runtime/openOptionsPage +--- +
{{AddonSidebar()}}
+ +
Si votre extension a défini une page d'options, cette méthode l'ouvre.
+ +
+ +

C'est une fonction asynchrone  qui renvoie une Promise.

+ +

Syntaxe

+ +
var openingPage = browser.runtime.openOptionsPage()
+
+ +

Paramètres

+ +

None.

+ +

valeur retournée

+ +

Une Promise 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é.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.openOptionsPage")}}

+ +

Exemples

+ +

Ouvrez une page d'options lorsque l'utilisateur clique sur l'icône d'une action du navigateur :

+ +
function onOpened() {
+  console.log(`Options page opened`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var opening = browser.runtime.openOptionsPage();
+opening.then(onOpened, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 8ae2611d5d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/platformarch/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

L'architecture du processeur de la machine.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possible sont  :

- -
-
"arm"
-
La plateforme est basée sur l'architecture des bras.
-
"x86-32"
-
La plateforme est basé sur l'architecture x86 32-bits.
-
"x86-64"
-
La plateforme est basé sur l'architecture x86 64-bits.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.PlatformArch")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/platformarch/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/platformarch/index.md new file mode 100644 index 0000000000..8ae2611d5d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/platformarch/index.md @@ -0,0 +1,75 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

L'architecture du processeur de la machine.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possible sont  :

+ +
+
"arm"
+
La plateforme est basée sur l'architecture des bras.
+
"x86-32"
+
La plateforme est basé sur l'architecture x86 32-bits.
+
"x86-64"
+
La plateforme est basé sur l'architecture x86 64-bits.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.PlatformArch")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 0955150051..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/platforminfo/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet contenant des informations sur la plate-forme actuelle.

- -

Type

- -

Les valeurs de ce type sont des objets qui contiennent les propriétés suivantes:

- -
-
os
-
{{WebExtAPIRef('runtime.PlatformOs')}}. Le système d'exploitation de la plateforme.
-
arch
-
{{WebExtAPIRef('runtime.PlatformArch')}}. L'architecture du processeur de la plateforme.
-
nacl_arch
-
{{WebExtAPIRef('runtime.PlatformNaclArch')}}. L'architecture du client natif Cela peut être différent de arch sur certaines plates-formes.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.PlatformInfo")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/platforminfo/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/platforminfo/index.md new file mode 100644 index 0000000000..0955150051 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/platforminfo/index.md @@ -0,0 +1,75 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet contenant des informations sur la plate-forme actuelle.

+ +

Type

+ +

Les valeurs de ce type sont des objets qui contiennent les propriétés suivantes:

+ +
+
os
+
{{WebExtAPIRef('runtime.PlatformOs')}}. Le système d'exploitation de la plateforme.
+
arch
+
{{WebExtAPIRef('runtime.PlatformArch')}}. L'architecture du processeur de la plateforme.
+
nacl_arch
+
{{WebExtAPIRef('runtime.PlatformNaclArch')}}. L'architecture du client natif Cela peut être différent de arch sur certaines plates-formes.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.PlatformInfo")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 6ea89d7dca..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/platformnaclarch/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -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 ---- -

{{AddonSidebar()}}

- -

L'architecture du client natif. Cela peut-etre différent de arch sur certaines plate-formes.

- -

Type

- -

Les valeurs de type sont des chaînes. Les valeurs possible sont : "arm", "x86-32", "x86-64".

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.PlatformNaclArch")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/platformnaclarch/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/platformnaclarch/index.md new file mode 100644 index 0000000000..6ea89d7dca --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/platformnaclarch/index.md @@ -0,0 +1,66 @@ +--- +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 +--- +

{{AddonSidebar()}}

+ +

L'architecture du client natif. Cela peut-etre différent de arch sur certaines plate-formes.

+ +

Type

+ +

Les valeurs de type sont des chaînes. Les valeurs possible sont : "arm", "x86-32", "x86-64".

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.PlatformNaclArch")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index d193759c72..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/platformos/index.html +++ /dev/null @@ -1,81 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le système d'exploitation sur lequel le navigateur fonctionne.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont:

- -
-
"mac"
-
Le système d'exploitation est sous Mac OS X.
-
"win"
-
Le système d'exploitation est sous Windows.
-
"android"
-
Le système d'exploitation est sous Android.
-
"cros"
-
Le système d'exploitation est sous Chrome OS.
-
"linux"
-
Le système d'exploitation est sous Linux.
-
"openbsd"
-
Le système d'exploitation est sous Open/FreeBSD.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.PlatformOs")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/platformos/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/platformos/index.md new file mode 100644 index 0000000000..d193759c72 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/platformos/index.md @@ -0,0 +1,81 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le système d'exploitation sur lequel le navigateur fonctionne.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont:

+ +
+
"mac"
+
Le système d'exploitation est sous Mac OS X.
+
"win"
+
Le système d'exploitation est sous Windows.
+
"android"
+
Le système d'exploitation est sous Android.
+
"cros"
+
Le système d'exploitation est sous Chrome OS.
+
"linux"
+
Le système d'exploitation est sous Linux.
+
"openbsd"
+
Le système d'exploitation est sous Open/FreeBSD.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.PlatformOs")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 0d5f60172d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/port/index.html +++ /dev/null @@ -1,246 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet Port represente une extrémité d'une connexion entre deux contextes spécifiques, qui peut-être utilisée pour échanger des messages.

- -

Un côté initie la connexion à l'aide d'une API connect(). Cela retourne un objet Port. L'autre camp écoute les tentatives de connexion à l'aide d'un écouteur onConnect. Ceci est passé un objet Port correspondant.

- -

Une fois que les deux côtés ont des objets Port, ils peuvent échanger des messages JSON en utilisant Port.postMessage() et Port.onMessage. Quand ils sont terminés, chaque extrémité peut se déconnecter en utilisant Port.disconnect(), ce qui générera un événement Port.onDisconnect à l'autre extrémité, permettant à l'autre extrémité de faire le nettoyage requis.

- -

Vous pouvez utiliser ce modèle pour communiquer entre:

- - - -

Vous devez utiliser différentes API de connexion pour différents types de connexions, comme indiqué dans le tableau ci-dessous.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
type de connectionLancer une tentative de connexionGérer la tentative de connexion
Script d'arrière-plan au script de contenu{{WebExtAPIRef("tabs.connect()")}}{{WebExtAPIRef("runtime.onConnect")}}
Script de contenu au script d'arrière-plan{{WebExtAPIRef("runtime.connect()")}}{{WebExtAPIRef("runtime.onConnect")}}
Extension à l'application native{{WebExtAPIRef("runtime.connectNative()")}}N'est pas applicable (voir Native messaging).
Extension à l'extension{{WebExtAPIRef("runtime.connect()")}}{{WebExtAPIRef("runtime.onConnectExternal")}}
- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
name
-
string. 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.
-
disconnect
-
function. Déconnecte un port. Chaque extrémité peut appeler cela quand ils ont fini avec le port. Cela provoquera le déclenchement de onDisconnect à 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.
-
error
-
object. Si le port a été déconnecté en raison d'une erreur, il sera défini sur un objet avec un message, de propriété de chaîne, vous donnant plus d'informations sur l'erreur. Voir onDisconnect.
-
onDisconnect
-
-

object. Cela contient les fonctions addListener() et removeListener() 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é Port.disconnect(). Cet événement ne sera déclenché qu'une fois pour chaque port. La fonction d'écouteur recevra l'objet Port. Si le port a été déconnecté en raison d'une erreur, l'argument Port contiendra une propriété  error donnant plus d'informations sur l'erreur :

- -
port.onDisconnect.addListener((p) => {
-  if (p.error) {
-    console.log(`Disconnected due to an error: ${p.error.message}`);
-  }
-});
- -

Notez que dans Google Chrome port.error n'est pas supporté: utilisez plutôt  {{WebExtAPIRef("runtime.lastError")}} pour obtenir le message d'erreur.

-
-
onMessage
-
object. Cela contient les fonctions addListener() et removeListener() 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é.
-
postMessage
-
function. 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 onMessage du port, ou à l'application native si ce port est connecté à une application native.
-
sender{{optional_inline}}
-
{{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 onConnect/onConnectExternal.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.Port")}}

- -

Exemples

- -

Connecting from content scripts

- -

This content script:

- - - -
// content-script.js
-
-var myPort = browser.runtime.connect({name:"port-from-cs"});
-myPort.postMessage({greeting: "hello from content script"});
-
-myPort.onMessage.addListener(function(m) {
-  console.log("In content script, received message from background script: ");
-  console.log(m.greeting);
-});
-
-document.body.addEventListener("click", function() {
-  myPort.postMessage({greeting: "they clicked the page!"});
-});
- -

The corresponding background script:

- - - -
// background-script.js
-
-var portFromCS;
-
-function connected(p) {
-  portFromCS = p;
-  portFromCS.postMessage({greeting: "hi there content script!"});
-  portFromCS.onMessage.addListener(function(m) {
-    console.log("In background script, received message from content script")
-    console.log(m.greeting);
-  });
-}
-
-browser.runtime.onConnect.addListener(connected);
-
-browser.browserAction.onClicked.addListener(function() {
-  portFromCS.postMessage({greeting: "they clicked the button!"});
-});
- -

Script à contenu multiple

- -

Si plusieurs scripts de contenu communiquent en même temps, vous voudrez peut-être stocker chaque connexion dans un tableau.

- - - -
// 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 => {
-        p.postMessage({greeting: "they clicked the button!"})
-    })
-});
- -

Connecting to native applications

- -

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:

- -
/*
-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) => {
-  console.log("Received: " + response);
-});
-
-/*
-On a click on the browser action, send the app a message.
-*/
-browser.browserAction.onClicked.addListener(() => {
-  console.log("Sending:  ping");
-  port.postMessage("ping");
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/port/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/port/index.md new file mode 100644 index 0000000000..0d5f60172d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/port/index.md @@ -0,0 +1,246 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet Port represente une extrémité d'une connexion entre deux contextes spécifiques, qui peut-être utilisée pour échanger des messages.

+ +

Un côté initie la connexion à l'aide d'une API connect(). Cela retourne un objet Port. L'autre camp écoute les tentatives de connexion à l'aide d'un écouteur onConnect. Ceci est passé un objet Port correspondant.

+ +

Une fois que les deux côtés ont des objets Port, ils peuvent échanger des messages JSON en utilisant Port.postMessage() et Port.onMessage. Quand ils sont terminés, chaque extrémité peut se déconnecter en utilisant Port.disconnect(), ce qui générera un événement Port.onDisconnect à l'autre extrémité, permettant à l'autre extrémité de faire le nettoyage requis.

+ +

Vous pouvez utiliser ce modèle pour communiquer entre:

+ + + +

Vous devez utiliser différentes API de connexion pour différents types de connexions, comme indiqué dans le tableau ci-dessous.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
type de connectionLancer une tentative de connexionGérer la tentative de connexion
Script d'arrière-plan au script de contenu{{WebExtAPIRef("tabs.connect()")}}{{WebExtAPIRef("runtime.onConnect")}}
Script de contenu au script d'arrière-plan{{WebExtAPIRef("runtime.connect()")}}{{WebExtAPIRef("runtime.onConnect")}}
Extension à l'application native{{WebExtAPIRef("runtime.connectNative()")}}N'est pas applicable (voir Native messaging).
Extension à l'extension{{WebExtAPIRef("runtime.connect()")}}{{WebExtAPIRef("runtime.onConnectExternal")}}
+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
name
+
string. 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.
+
disconnect
+
function. Déconnecte un port. Chaque extrémité peut appeler cela quand ils ont fini avec le port. Cela provoquera le déclenchement de onDisconnect à 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.
+
error
+
object. Si le port a été déconnecté en raison d'une erreur, il sera défini sur un objet avec un message, de propriété de chaîne, vous donnant plus d'informations sur l'erreur. Voir onDisconnect.
+
onDisconnect
+
+

object. Cela contient les fonctions addListener() et removeListener() 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é Port.disconnect(). Cet événement ne sera déclenché qu'une fois pour chaque port. La fonction d'écouteur recevra l'objet Port. Si le port a été déconnecté en raison d'une erreur, l'argument Port contiendra une propriété  error donnant plus d'informations sur l'erreur :

+ +
port.onDisconnect.addListener((p) => {
+  if (p.error) {
+    console.log(`Disconnected due to an error: ${p.error.message}`);
+  }
+});
+ +

Notez que dans Google Chrome port.error n'est pas supporté: utilisez plutôt  {{WebExtAPIRef("runtime.lastError")}} pour obtenir le message d'erreur.

+
+
onMessage
+
object. Cela contient les fonctions addListener() et removeListener() 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é.
+
postMessage
+
function. 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 onMessage du port, ou à l'application native si ce port est connecté à une application native.
+
sender{{optional_inline}}
+
{{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 onConnect/onConnectExternal.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.Port")}}

+ +

Exemples

+ +

Connecting from content scripts

+ +

This content script:

+ + + +
// content-script.js
+
+var myPort = browser.runtime.connect({name:"port-from-cs"});
+myPort.postMessage({greeting: "hello from content script"});
+
+myPort.onMessage.addListener(function(m) {
+  console.log("In content script, received message from background script: ");
+  console.log(m.greeting);
+});
+
+document.body.addEventListener("click", function() {
+  myPort.postMessage({greeting: "they clicked the page!"});
+});
+ +

The corresponding background script:

+ + + +
// background-script.js
+
+var portFromCS;
+
+function connected(p) {
+  portFromCS = p;
+  portFromCS.postMessage({greeting: "hi there content script!"});
+  portFromCS.onMessage.addListener(function(m) {
+    console.log("In background script, received message from content script")
+    console.log(m.greeting);
+  });
+}
+
+browser.runtime.onConnect.addListener(connected);
+
+browser.browserAction.onClicked.addListener(function() {
+  portFromCS.postMessage({greeting: "they clicked the button!"});
+});
+ +

Script à contenu multiple

+ +

Si plusieurs scripts de contenu communiquent en même temps, vous voudrez peut-être stocker chaque connexion dans un tableau.

+ + + +
// 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 => {
+        p.postMessage({greeting: "they clicked the button!"})
+    })
+});
+ +

Connecting to native applications

+ +

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:

+ +
/*
+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) => {
+  console.log("Received: " + response);
+});
+
+/*
+On a click on the browser action, send the app a message.
+*/
+browser.browserAction.onClicked.addListener(() => {
+  console.log("Sending:  ping");
+  port.postMessage("ping");
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 44e83fcfda..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/reload/index.html +++ /dev/null @@ -1,81 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Recharge une extension.

- -

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.

- -

Syntaxe

- -
browser.runtime.reload()
-
- -

Paramètres

- -

Aucun.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.reload")}}

- -

Exemples

- -

Rechargez l'extension lorsque l'utilisateur clique sur l'icône d'une action du navigateur :

- -
browser.browserAction.onClicked.addListener((tab) => {
-  browser.runtime.reload();
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/reload/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/reload/index.md new file mode 100644 index 0000000000..44e83fcfda --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/reload/index.md @@ -0,0 +1,81 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Recharge une extension.

+ +

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.

+ +

Syntaxe

+ +
browser.runtime.reload()
+
+ +

Paramètres

+ +

Aucun.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.reload")}}

+ +

Exemples

+ +

Rechargez l'extension lorsque l'utilisateur clique sur l'icône d'une action du navigateur :

+ +
browser.browserAction.onClicked.addListener((tab) => {
+  browser.runtime.reload();
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index d3918536f3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheck/index.html +++ /dev/null @@ -1,107 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Vérifie de voir si un mise à jour de l'extension est disponible.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var requestingCheck = browser.runtime.requestUpdateCheck()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui sera remplie avec deux arguments :

- -
-
status
-
Une valeur {{WebExtAPIRef('runtime.RequestUpdateCheckStatus')}}  — Le résultat de la vérification de mise à jour.
-
details{{optional_inline}}
-

object. Si le status est update_available, cela contient plus d'informations sur la mise à jour. C'est un objet contenant une simple propriété :

-
-
version
-
string. La version de la mise à jour.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.requestUpdateCheck")}}

- -

Exemples

- -

Demander une mise à jour, etenregistrer la nouvelle version si elle est disponible :

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheck/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheck/index.md new file mode 100644 index 0000000000..d3918536f3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheck/index.md @@ -0,0 +1,107 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Vérifie de voir si un mise à jour de l'extension est disponible.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var requestingCheck = browser.runtime.requestUpdateCheck()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec deux arguments :

+ +
+
status
+
Une valeur {{WebExtAPIRef('runtime.RequestUpdateCheckStatus')}}  — Le résultat de la vérification de mise à jour.
+
details{{optional_inline}}
+

object. Si le status est update_available, cela contient plus d'informations sur la mise à jour. C'est un objet contenant une simple propriété :

+
+
version
+
string. La version de la mise à jour.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.requestUpdateCheck")}}

+ +

Exemples

+ +

Demander une mise à jour, etenregistrer la nouvelle version si elle est disponible :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index d6ae317192..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheckstatus/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Résultat d'un appel à {{WebExtAPIRef("runtime.requestUpdateCheck()")}}.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- -
-
"throttled"
-
La mise à jour est limitée.
-
"no_update"
-
Aucune mise à jour n'est disponible.
-
"update_available"
-
Une mise à jour de l'extension est disponible.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.RequestUpdateCheckStatus")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheckstatus/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheckstatus/index.md new file mode 100644 index 0000000000..d6ae317192 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/requestupdatecheckstatus/index.md @@ -0,0 +1,75 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Résultat d'un appel à {{WebExtAPIRef("runtime.requestUpdateCheck()")}}.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ +
+
"throttled"
+
La mise à jour est limitée.
+
"no_update"
+
Aucune mise à jour n'est disponible.
+
"update_available"
+
Une mise à jour de l'extension est disponible.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.RequestUpdateCheckStatus")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 77f451869b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/sendmessage/index.html +++ /dev/null @@ -1,165 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Envoie un simple message aux écouteurs d'événement dans votre extension ou une extension différente.

- -

Si vous envoyez à votre extension, omettez l'argument extensionId. L'événement {{WebExtAPIRef('runtime.onMessage')}} sera déclenché dans chaque page de votre extension, à l'exception du cadre appelé runtime.sendMessage.

- -

Si vous envoyez une extension différente, ajouter l'argument extensionId à l'ID de l'autre extension. {{WebExtAPIRef('runtime.onMessageExternal')}} sera déclenché dans l'autre extension.

- -

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')}}.

- - - -

C'est une fonction asynchrone qui renvoie une Promise.

- -
-

Note : Vous pouvez également utiliser une approche basée sur la connexion pour échanger des messages.

-
- -

Syntaxe

- -
var sending = browser.runtime.sendMessage(
-  extensionId,             // optional string
-  message,                 // any
-  options                  // optional object
-)
-
- -

Paramètres

- -
-
extensionId{{optional_inline}}
-

string. 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' applications dans  manifest.json, extensionId doit avoir une valeur. Sinon, il devrait avoir l'ID qui a été généré pour le destinataire prévu.

-

Si extensionId est omis, le message sera envoyé à votre propre extension.

-
message
-
any. Un objet qui peut être structuré clone sérialisé.
-
options{{optional_inline}}
-

object.

-
-
includeTlsChannelId{{optional_inline}}
-
boolean. Indique si l'ID de canal TLS sera transmis à {{WebExtAPIRef('runtime.onMessageExternal')}} pour les processus qui écoutent l'événement de connexion.
-
toProxyScript{{optional_inline}}
-
boolean. Doit être True si le message est destiné à un fichier PAC chargé à l'aide de l'API {{WebExtAPIRef("proxy")}}.
-
-
-
- -

En fonction des arguments qui lui sont donnés, cette API est parfois ambiguë. Les règles suivantes sont utilisées :

- - - -

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 extensionId, avec le message comme deuxième argument. Cel signifiait que si vous appelez sendMessage() avec des arguments comme ("my-message", {}), 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.

- -

Valeur retournée

- -

Une Promise. 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.

- -

Compatibilité du navitageur

- -

{{Compat("webextensions.api.runtime.sendMessage")}}

- -

Exemples

- -

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 {greeting: "Greeting from the content script"}, et l'expéditeur s'attend également à recevoir une réponse, qui est gérée dans la fonction handleResponse :

- -
// 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);
- -

Le script d'arrière-plan correspondant ressemble à ceci :

- -
// 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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/sendmessage/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/sendmessage/index.md new file mode 100644 index 0000000000..77f451869b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/sendmessage/index.md @@ -0,0 +1,165 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Envoie un simple message aux écouteurs d'événement dans votre extension ou une extension différente.

+ +

Si vous envoyez à votre extension, omettez l'argument extensionId. L'événement {{WebExtAPIRef('runtime.onMessage')}} sera déclenché dans chaque page de votre extension, à l'exception du cadre appelé runtime.sendMessage.

+ +

Si vous envoyez une extension différente, ajouter l'argument extensionId à l'ID de l'autre extension. {{WebExtAPIRef('runtime.onMessageExternal')}} sera déclenché dans l'autre extension.

+ +

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')}}.

+ + + +

C'est une fonction asynchrone qui renvoie une Promise.

+ +
+

Note : Vous pouvez également utiliser une approche basée sur la connexion pour échanger des messages.

+
+ +

Syntaxe

+ +
var sending = browser.runtime.sendMessage(
+  extensionId,             // optional string
+  message,                 // any
+  options                  // optional object
+)
+
+ +

Paramètres

+ +
+
extensionId{{optional_inline}}
+

string. 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' applications dans  manifest.json, extensionId doit avoir une valeur. Sinon, il devrait avoir l'ID qui a été généré pour le destinataire prévu.

+

Si extensionId est omis, le message sera envoyé à votre propre extension.

+
message
+
any. Un objet qui peut être structuré clone sérialisé.
+
options{{optional_inline}}
+

object.

+
+
includeTlsChannelId{{optional_inline}}
+
boolean. Indique si l'ID de canal TLS sera transmis à {{WebExtAPIRef('runtime.onMessageExternal')}} pour les processus qui écoutent l'événement de connexion.
+
toProxyScript{{optional_inline}}
+
boolean. Doit être True si le message est destiné à un fichier PAC chargé à l'aide de l'API {{WebExtAPIRef("proxy")}}.
+
+
+
+ +

En fonction des arguments qui lui sont donnés, cette API est parfois ambiguë. Les règles suivantes sont utilisées :

+ + + +

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 extensionId, avec le message comme deuxième argument. Cel signifiait que si vous appelez sendMessage() avec des arguments comme ("my-message", {}), 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.

+ +

Valeur retournée

+ +

Une Promise. 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.

+ +

Compatibilité du navitageur

+ +

{{Compat("webextensions.api.runtime.sendMessage")}}

+ +

Exemples

+ +

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 {greeting: "Greeting from the content script"}, et l'expéditeur s'attend également à recevoir une réponse, qui est gérée dans la fonction handleResponse :

+ +
// 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);
+ +

Le script d'arrière-plan correspondant ressemble à ceci :

+ +
// 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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 1886bbad5e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/sendnativemessage/index.html +++ /dev/null @@ -1,112 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Envoie un seul message d'une extension à une application native.

- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise. The first message sent by the native application is treated as a response to the sendNativeMessage() 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.

- -

Une nouvelle instance de l'application est lancée pour appel à  runtime.sendNativeMessage(). 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é.

- -

Pour plus d'informations, voir Native messaging.

- -

Syntaxe

- -
var sending = browser.runtime.sendNativeMessage(
-  application,             // string
-  message                  // object
-)
-
- -

Paramètres

- -
-
application
-
string. Le nom de l'application native. Cela doit correspondre à la propriété "name" dans le fichier manifest de l'application native.
-
message
-
object. Un objet JSON qui sera envoyé à l'application native.
-
- -

Valeur retournée

- -

Une Promise. 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.sendNativeMessage")}}

- -

Exemples

- -

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 :

- -
function onResponse(response) {
-  console.log(`Received ${response}`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-/*
-On a click on the browser action, send the app a message.
-*/
-browser.browserAction.onClicked.addListener(() => {
-  console.log("Sending:  ping");
-  var sending = browser.runtime.sendNativeMessage("ping_pong", "ping");
-  sending.then(onResponse, onError);
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/sendnativemessage/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/sendnativemessage/index.md new file mode 100644 index 0000000000..1886bbad5e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/sendnativemessage/index.md @@ -0,0 +1,112 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Envoie un seul message d'une extension à une application native.

+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise. The first message sent by the native application is treated as a response to the sendNativeMessage() 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.

+ +

Une nouvelle instance de l'application est lancée pour appel à  runtime.sendNativeMessage(). 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é.

+ +

Pour plus d'informations, voir Native messaging.

+ +

Syntaxe

+ +
var sending = browser.runtime.sendNativeMessage(
+  application,             // string
+  message                  // object
+)
+
+ +

Paramètres

+ +
+
application
+
string. Le nom de l'application native. Cela doit correspondre à la propriété "name" dans le fichier manifest de l'application native.
+
message
+
object. Un objet JSON qui sera envoyé à l'application native.
+
+ +

Valeur retournée

+ +

Une Promise. 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.sendNativeMessage")}}

+ +

Exemples

+ +

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 :

+ +
function onResponse(response) {
+  console.log(`Received ${response}`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+/*
+On a click on the browser action, send the app a message.
+*/
+browser.browserAction.onClicked.addListener(() => {
+  console.log("Sending:  ping");
+  var sending = browser.runtime.sendNativeMessage("ping_pong", "ping");
+  sending.then(onResponse, onError);
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 94befdc38d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/runtime/setuninstallurl/index.html +++ /dev/null @@ -1,95 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var settingUrl = browser.runtime.setUninstallURL(
-  url             // string
-)
-
- -

Paramètres

- -
-
url
-
string. L'URL à ouvrir après la désinstallation de l'extension. Cette URL doit avoir un schéma http ou https.  Définissez-le sur une chaîne vide pour ne pas ouvrir un nouvel onglet lors de la désinstallation.
-
- -

Valeur retournée

- -

Une Promise 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é.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.runtime.setUninstallURL")}}

- -

Exemples

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/runtime/setuninstallurl/index.md b/files/fr/mozilla/add-ons/webextensions/api/runtime/setuninstallurl/index.md new file mode 100644 index 0000000000..94befdc38d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/runtime/setuninstallurl/index.md @@ -0,0 +1,95 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var settingUrl = browser.runtime.setUninstallURL(
+  url             // string
+)
+
+ +

Paramètres

+ +
+
url
+
string. L'URL à ouvrir après la désinstallation de l'extension. Cette URL doit avoir un schéma http ou https.  Définissez-le sur une chaîne vide pour ne pas ouvrir un nouvel onglet lors de la désinstallation.
+
+ +

Valeur retournée

+ +

Une Promise 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é.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.runtime.setUninstallURL")}}

+ +

Exemples

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.runtime. Cette documentation est dérivée de runtime.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 804ec0e527..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/search/get/index.html +++ /dev/null @@ -1,69 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient un tableau de tous les moteurs de recherche installés.

- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingEngines = browser.search.get()
-
- -

Paramètres

- -

Aucun.

- -

Valeur retournée

- -

Une Promise qui sera remplie avec un tableau d'objets  de moteur de recherche. Chaque objet de moteur de recherche peut contenir les propriétés suivantes :

- -
-
name
-
string. Le nom du moteur de recherche.
-
isDefault
-
-

boolean. true 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é.

-
-
alias{{optional_inline}}
-
-

string. 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é".

-
-
favIconUrl{{optional_inline}}
-
-

string. L'icône du moteur de recherche, comme une donnée : URL.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.search.search", 10)}}

- -

Exemples

- -

Obtenir tous les moteurs de recherche installés :

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/search/get/index.md b/files/fr/mozilla/add-ons/webextensions/api/search/get/index.md new file mode 100644 index 0000000000..804ec0e527 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/search/get/index.md @@ -0,0 +1,69 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient un tableau de tous les moteurs de recherche installés.

+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingEngines = browser.search.get()
+
+ +

Paramètres

+ +

Aucun.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un tableau d'objets  de moteur de recherche. Chaque objet de moteur de recherche peut contenir les propriétés suivantes :

+ +
+
name
+
string. Le nom du moteur de recherche.
+
isDefault
+
+

boolean. true 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é.

+
+
alias{{optional_inline}}
+
+

string. 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é".

+
+
favIconUrl{{optional_inline}}
+
+

string. L'icône du moteur de recherche, comme une donnée : URL.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.search.search", 10)}}

+ +

Exemples

+ +

Obtenir tous les moteurs de recherche installés :

+ +
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);
+ +

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/search/index.html b/files/fr/mozilla/add-ons/webextensions/api/search/index.html deleted file mode 100644 index b8f4947652..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/search/index.html +++ /dev/null @@ -1,31 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Récupère les moteurs de recherche et lance une recherche avec un moteur de recherche spécifique

- -

Pour utiliser cette API, vous devez avoir la permission "search".

- -

Fonctions

- -
-
{{WebExtAPIRef("search.get()")}}
-
Récupérer tous les moteurs de recherche
-
{{WebExtAPIRef("search.search()")}}
-
Recherche à l'aide du moteur de recherche spécifié.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.search", 1, 1)}} {{WebExtExamples("h2")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/search/index.md b/files/fr/mozilla/add-ons/webextensions/api/search/index.md new file mode 100644 index 0000000000..b8f4947652 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/search/index.md @@ -0,0 +1,31 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

Récupère les moteurs de recherche et lance une recherche avec un moteur de recherche spécifique

+ +

Pour utiliser cette API, vous devez avoir la permission "search".

+ +

Fonctions

+ +
+
{{WebExtAPIRef("search.get()")}}
+
Récupérer tous les moteurs de recherche
+
{{WebExtAPIRef("search.search()")}}
+
Recherche à l'aide du moteur de recherche spécifié.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.search", 1, 1)}} {{WebExtExamples("h2")}}

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 deleted file mode 100644 index 7f892b4bb7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/search/search/index.html +++ /dev/null @@ -1,100 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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é.

- -

Les résultats seront affichés dans un nouvel onglet, ou si l'argument tabId est donné, dans l'onglet identifié par ceci.

- -

Pour utiliser cette fonction dans votre extension, vous devez demander la permission manifest "search".

- -

Pour obtenir les moteurs de recherche installés, utilisez  {{WebExtAPIRef("search.get()")}}.

- -

Syntaxe

- -
browser.search.search(
-  searchProperties       // object
-)
-
- -

Paramètres

- -
-
searchProperties
-
-

object. Un objet avec les propriétés suivantes :

- -
-
query
-
string. La requête de recherche.
-
engine{{optional_inline}}
-
-

string. 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é.

-
-
tabId{{optional_inline}}
-
-

integer.  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.

-
-
-
-
- -

Valeur retournée

- -

Aucune

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.search.search", 10)}}

- -

Exemples

- -

Recherche à l'aide du moteur de recherche par défaut. Les résultats seront affichés dans un nouvel onglet :

- -
function search() {
-  browser.search.search({
-    query: "styracosaurus"
-  });
-}
-
-browser.browserAction.onClicked.addListener(search);
-
- -

Recherche à l'aide de Wikipedia. Les résultats seront affichés dans un nouvel onglet :

- -
function search() {
-  browser.search.search({
-    query: "styracosaurus",
-    engine: "Wikipedia (en)"
-  });
-}
-
-browser.browserAction.onClicked.addListener(search);
-
- -

Recherche à l'aide de Wikipedia. Les résultats seront affichés dans un nouvel onglet

- -
function search(tab) {
-  browser.search.search({
-    query: "styracosaurus",
-    engine: "Wikipedia (en)",
-    tabId: tab.id
-  });
-}
-
-browser.browserAction.onClicked.addListener(search);
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/search/search/index.md b/files/fr/mozilla/add-ons/webextensions/api/search/search/index.md new file mode 100644 index 0000000000..7f892b4bb7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/search/search/index.md @@ -0,0 +1,100 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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é.

+ +

Les résultats seront affichés dans un nouvel onglet, ou si l'argument tabId est donné, dans l'onglet identifié par ceci.

+ +

Pour utiliser cette fonction dans votre extension, vous devez demander la permission manifest "search".

+ +

Pour obtenir les moteurs de recherche installés, utilisez  {{WebExtAPIRef("search.get()")}}.

+ +

Syntaxe

+ +
browser.search.search(
+  searchProperties       // object
+)
+
+ +

Paramètres

+ +
+
searchProperties
+
+

object. Un objet avec les propriétés suivantes :

+ +
+
query
+
string. La requête de recherche.
+
engine{{optional_inline}}
+
+

string. 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é.

+
+
tabId{{optional_inline}}
+
+

integer.  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.

+
+
+
+
+ +

Valeur retournée

+ +

Aucune

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.search.search", 10)}}

+ +

Exemples

+ +

Recherche à l'aide du moteur de recherche par défaut. Les résultats seront affichés dans un nouvel onglet :

+ +
function search() {
+  browser.search.search({
+    query: "styracosaurus"
+  });
+}
+
+browser.browserAction.onClicked.addListener(search);
+
+ +

Recherche à l'aide de Wikipedia. Les résultats seront affichés dans un nouvel onglet :

+ +
function search() {
+  browser.search.search({
+    query: "styracosaurus",
+    engine: "Wikipedia (en)"
+  });
+}
+
+browser.browserAction.onClicked.addListener(search);
+
+ +

Recherche à l'aide de Wikipedia. Les résultats seront affichés dans un nouvel onglet

+ +
function search(tab) {
+  browser.search.search({
+    query: "styracosaurus",
+    engine: "Wikipedia (en)",
+    tabId: tab.id
+  });
+}
+
+browser.browserAction.onClicked.addListener(search);
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index aa88a320ee..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/filter/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

L'objet Filter permet de restreindre le nombre d'objets {{WebExtAPIRef("sessions.Session", "Session")}} retournés par un appel à {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les proriétés suivantes :

- -
-
maxResults{{optional_inline}}
-
number. Le nombre maximal de résultats à retourner.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.Filter")}}

- -

Exemples

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.sessions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/filter/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/filter/index.md new file mode 100644 index 0000000000..aa88a320ee --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/filter/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

L'objet Filter permet de restreindre le nombre d'objets {{WebExtAPIRef("sessions.Session", "Session")}} retournés par un appel à {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les proriétés suivantes :

+ +
+
maxResults{{optional_inline}}
+
number. Le nombre maximal de résultats à retourner.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.Filter")}}

+ +

Exemples

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.sessions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 5f912ed8cd..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedtab/index.html +++ /dev/null @@ -1,78 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Supprime un onglet fermé de la liste des onglets récemment fermés du navigateur.
- -
- -
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.
- -
- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var forgettingTab = browser.sessions.forgetClosedTab(
-  windowId,            // integer
-  sessionId            // string
-)
-
- -

Paramètres

- -
-
windowId
-
Integer. L'ID de la fenêtre qui héberge l'onglet que vous voulez oublier.
-
sessionId
-
String. L'identifiant de la session que vous voulez oublier.
-
- -

Valeur retournée

- -

Une Promise. Cela sera accompli sans arguments lorsque la session a été supprimée.

- -

Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.forgetClosedTab")}}

- -

Exemples

- -

Ce code oublie la dernière session fermée, qu'il s'agisse d'un onglet ou d'une fenêtre :

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedtab/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedtab/index.md new file mode 100644 index 0000000000..5f912ed8cd --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedtab/index.md @@ -0,0 +1,78 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Supprime un onglet fermé de la liste des onglets récemment fermés du navigateur.
+ +
+ +
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.
+ +
+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var forgettingTab = browser.sessions.forgetClosedTab(
+  windowId,            // integer
+  sessionId            // string
+)
+
+ +

Paramètres

+ +
+
windowId
+
Integer. L'ID de la fenêtre qui héberge l'onglet que vous voulez oublier.
+
sessionId
+
String. L'identifiant de la session que vous voulez oublier.
+
+ +

Valeur retournée

+ +

Une Promise. Cela sera accompli sans arguments lorsque la session a été supprimée.

+ +

Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.forgetClosedTab")}}

+ +

Exemples

+ +

Ce code oublie la dernière session fermée, qu'il s'agisse d'un onglet ou d'une fenêtre :

+ +
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);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 3f78c9303b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedwindow/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Supprime une fenêtre fermée de la liste des fenêtres récemment fermées du navigateur.
- -
- -
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.
- -
- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var forgettingWindow = browser.sessions.forgetClosedWindow(
-  sessionId            // string
-)
-
- -

Paramètres

- -
-
sessionId
-
String. L'identifiant de la session que vous voulez oublier.
-
- -

Valeur retournée

- -

Une Promise. Cela sera accompli sans arguments lorsque la session a été supprimée.

- -

Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.forgetClosedWindow")}}

- -

Exemples

- -

Ce code oublie la dernière session fermée, qu'il s'agisse d'un onglet ou d'une fenêtre :

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedwindow/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedwindow/index.md new file mode 100644 index 0000000000..3f78c9303b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/forgetclosedwindow/index.md @@ -0,0 +1,75 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Supprime une fenêtre fermée de la liste des fenêtres récemment fermées du navigateur.
+ +
+ +
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.
+ +
+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var forgettingWindow = browser.sessions.forgetClosedWindow(
+  sessionId            // string
+)
+
+ +

Paramètres

+ +
+
sessionId
+
String. L'identifiant de la session que vous voulez oublier.
+
+ +

Valeur retournée

+ +

Une Promise. Cela sera accompli sans arguments lorsque la session a été supprimée.

+ +

Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.forgetClosedWindow")}}

+ +

Exemples

+ +

Ce code oublie la dernière session fermée, qu'il s'agisse d'un onglet ou d'une fenêtre :

+ +
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);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index be1e181aff..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/getrecentlyclosed/index.html +++ /dev/null @@ -1,113 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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).

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingSessions = browser.sessions.getRecentlyClosed(
-  filter             // optional object
-)
-
- -

Paramètres

- -
-
filter{{optional_inline}}
-
object. Un objet {{WebExtAPIRef("sessions.Filter")}} qui limite l'ensemble des sessions renvoyées.
-
- -

Valeur retournée

- -

Une Promise. 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.

- -

Si une erreur survient, la promesse sera rejetée avec un message d'erreur.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.getRecentlyClosed")}}

- -

Exemples

- -

Le code restaure la session la plus récemment fermée, qu'il s'agisse d'un onglet ou d'une fenêtre :

- -
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);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.sessions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/getrecentlyclosed/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/getrecentlyclosed/index.md new file mode 100644 index 0000000000..be1e181aff --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/getrecentlyclosed/index.md @@ -0,0 +1,113 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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).

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingSessions = browser.sessions.getRecentlyClosed(
+  filter             // optional object
+)
+
+ +

Paramètres

+ +
+
filter{{optional_inline}}
+
object. Un objet {{WebExtAPIRef("sessions.Filter")}} qui limite l'ensemble des sessions renvoyées.
+
+ +

Valeur retournée

+ +

Une Promise. 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.

+ +

Si une erreur survient, la promesse sera rejetée avec un message d'erreur.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.getRecentlyClosed")}}

+ +

Exemples

+ +

Le code restaure la session la plus récemment fermée, qu'il s'agisse d'un onglet ou d'une fenêtre :

+ +
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);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.sessions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2c52bac4fc..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/gettabvalue/index.html +++ /dev/null @@ -1,64 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Récupère une valeur précédemment stockée par un appel à  {{WebExtAPIRef("sessions.setTabValue")}}.

- -

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 getTabValue() sera différent de l'ID que vous avez passé dans setTabValue(), même s'ils font tous deux référence au même onglet.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var retrieving = browser.sessions.getTabValue(
-  tabId,    // integer
-  key       // string
-)
-
- -

Paramètres

- -
-
tabId
-
integer. ID de l'onglet dont vous essayez de récupérer les données.
-
key
-
string. Clé identifiant la valeur particulière à récupérer. Cela doit correspondre à la clé précédemment donnée dans {{WebExtAPIRef("sessions.setTabValue")}}.
-
- -

Valeur retournée

- -

Une Promise qui sera résolue avec la valeur si elle existe, ou undefined.  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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.getTabValue", 10)}}

- -

Exemples

- -

Consignez la valeur de "my-key" pour tous les nouveaux onglets créés (cela inclura tous les onglets qui ont été restaurés) :

- -
function onGetResolved(r) {
-  console.log(`success: ${r}`);
-}
-
-function onGetRejected(e) {
-  console.log(`error: ${e}`);
-}
-
-browser.tabs.onCreated.addListener((tab) => {
-  browser.sessions.getTabValue(tab.id, "my-key").then(onGetResolved, onGetRejected);
-});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/gettabvalue/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/gettabvalue/index.md new file mode 100644 index 0000000000..2c52bac4fc --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/gettabvalue/index.md @@ -0,0 +1,64 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Récupère une valeur précédemment stockée par un appel à  {{WebExtAPIRef("sessions.setTabValue")}}.

+ +

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 getTabValue() sera différent de l'ID que vous avez passé dans setTabValue(), même s'ils font tous deux référence au même onglet.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var retrieving = browser.sessions.getTabValue(
+  tabId,    // integer
+  key       // string
+)
+
+ +

Paramètres

+ +
+
tabId
+
integer. ID de l'onglet dont vous essayez de récupérer les données.
+
key
+
string. Clé identifiant la valeur particulière à récupérer. Cela doit correspondre à la clé précédemment donnée dans {{WebExtAPIRef("sessions.setTabValue")}}.
+
+ +

Valeur retournée

+ +

Une Promise qui sera résolue avec la valeur si elle existe, ou undefined.  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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.getTabValue", 10)}}

+ +

Exemples

+ +

Consignez la valeur de "my-key" pour tous les nouveaux onglets créés (cela inclura tous les onglets qui ont été restaurés) :

+ +
function onGetResolved(r) {
+  console.log(`success: ${r}`);
+}
+
+function onGetRejected(e) {
+  console.log(`error: ${e}`);
+}
+
+browser.tabs.onCreated.addListener((tab) => {
+  browser.sessions.getTabValue(tab.id, "my-key").then(onGetResolved, onGetRejected);
+});
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 093d61dc9f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/getwindowvalue/index.html +++ /dev/null @@ -1,64 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Récupère une valeur précédemment stockée par un appel à {{WebExtAPIRef("sessions.setWindowValue")}}.

- -

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 getWindowValue() sera différent de l'ID que vous avez passé dans setWindowValue(), même s'ils se réfèrent tous les deux à la même fenêtre.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var retrieving = browser.sessions.getWindowValue(
-  windowId,    // integer
-  key          // string
-)
-
- -

Paramètres

- -
-
windowId
-
integer. ID de la fenêtre dont vous essayez de récupérer les données.
-
key
-
string. Clé identifiant la valeur particulière à récupérer. Cela doit correspondre à la clé précédemment donnée dans {{WebExtAPIRef("sessions.setWindowValue")}}.
-
- -

Valeure retournée

- -

Une Promise qui sera résolue avec la valeur si elle existe, ou undefined 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.getWindowValue", 10)}}

- -

Exemples

- -

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) :

- -
function onGetResolved(r) {
-  console.log(`success: ${r}`);
-}
-
-function onGetRejected(e) {
-  console.log(`error: ${e}`);
-}
-
-browser.windows.onCreated.addListener((window) => {
-  browser.sessions.getWindowValue(window.id, "my-key").then(onGetResolved, onGetRejected);
-});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/getwindowvalue/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/getwindowvalue/index.md new file mode 100644 index 0000000000..093d61dc9f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/getwindowvalue/index.md @@ -0,0 +1,64 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Récupère une valeur précédemment stockée par un appel à {{WebExtAPIRef("sessions.setWindowValue")}}.

+ +

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 getWindowValue() sera différent de l'ID que vous avez passé dans setWindowValue(), même s'ils se réfèrent tous les deux à la même fenêtre.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var retrieving = browser.sessions.getWindowValue(
+  windowId,    // integer
+  key          // string
+)
+
+ +

Paramètres

+ +
+
windowId
+
integer. ID de la fenêtre dont vous essayez de récupérer les données.
+
key
+
string. Clé identifiant la valeur particulière à récupérer. Cela doit correspondre à la clé précédemment donnée dans {{WebExtAPIRef("sessions.setWindowValue")}}.
+
+ +

Valeure retournée

+ +

Une Promise qui sera résolue avec la valeur si elle existe, ou undefined 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.getWindowValue", 10)}}

+ +

Exemples

+ +

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) :

+ +
function onGetResolved(r) {
+  console.log(`success: ${r}`);
+}
+
+function onGetRejected(e) {
+  console.log(`error: ${e}`);
+}
+
+browser.windows.onCreated.addListener((window) => {
+  browser.sessions.getWindowValue(window.id, "my-key").then(onGetResolved, onGetRejected);
+});
+ +

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/index.html b/files/fr/mozilla/add-ons/webextensions/api/sessions/index.html deleted file mode 100644 index 8cb87b54be..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/index.html +++ /dev/null @@ -1,134 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

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.

- -

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")}}.

- -

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.

- -

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.

- -

Pour utiliser l'API des sessions, vous devez avoir la permission API de "sessions".

- -

Types

- -
-
{{WebExtAPIRef("sessions.Filter")}}
-
Permet de restreindre le nombre de {{WebExtAPIRef("sessions.Session", "Session")}} objets retournés par un appel à {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.
-
{{WebExtAPIRef("sessions.Session")}}
-
-

Représente un onglet ou une fenêtre que l'utilisateur a fermé dans la session de navigation actuelle.

-
-
- -

Propriétés

- -
-
{{WebExtAPIRef("sessions.MAX_SESSION_RESULTS")}}
-
Le nombre maximum de sessions qui seront retournées par un appel à sessions.getRecentlyClosed().
-
- -

Fonctions

- -
-
{{WebExtAPIRef("sessions.forgetClosedTab()")}}
-
Supprime un onglet fermé de la liste des onglets récemment fermés du navigateur.
-
{{WebExtAPIRef("sessions.forgetClosedWindow()")}}
-
Supprime une fenêtre  fermée  de la liste des fenêtres  récemment fermées du navigateur.
-
{{WebExtAPIRef("sessions.getRecentlyClosed()")}}
-
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).
-
{{WebExtAPIRef("sessions.restore()")}}
-
-

Restaure un onglet ou une fenêtre fermée.

-
-
{{WebExtAPIRef("sessions.setTabValue()")}}
-
-

Stocke une paire clé/valeur associée à un onglet donné.

-
-
{{WebExtAPIRef("sessions.getTabValue()")}}
-
-

Récupérer une valeur précédemment enregistrée pour un onglet donné, compte tenu de sa clé.

-
-
{{WebExtAPIRef("sessions.removeTabValue()")}}
-
-

Supprimer une paire clé/valeur d'un onglet donné.

-
-
{{WebExtAPIRef("sessions.setWindowValue()")}}
-
-

Stocke une paire clé/valeur associée à une fenêtre donnée.

-
-
{{WebExtAPIRef("sessions.getWindowValue()")}}
-
-

Récupérer une valeur précédemment enregistrée pour une fenêtre donnée, compte tenu de sa clé.

-
-
{{WebExtAPIRef("sessions.removeWindowValue()")}}
-
-

Supprime une paire clé/valeur d'une fenêtre données.

-
-
- -

Evénements

- -
-
{{WebExtAPIRef("sessions.onChanged")}}
-
-

Mise en place lorsqu'un onglet ou une fenêtre est fermée.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.sessions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/index.md new file mode 100644 index 0000000000..8cb87b54be --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/index.md @@ -0,0 +1,134 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

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.

+ +

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")}}.

+ +

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.

+ +

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.

+ +

Pour utiliser l'API des sessions, vous devez avoir la permission API de "sessions".

+ +

Types

+ +
+
{{WebExtAPIRef("sessions.Filter")}}
+
Permet de restreindre le nombre de {{WebExtAPIRef("sessions.Session", "Session")}} objets retournés par un appel à {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.
+
{{WebExtAPIRef("sessions.Session")}}
+
+

Représente un onglet ou une fenêtre que l'utilisateur a fermé dans la session de navigation actuelle.

+
+
+ +

Propriétés

+ +
+
{{WebExtAPIRef("sessions.MAX_SESSION_RESULTS")}}
+
Le nombre maximum de sessions qui seront retournées par un appel à sessions.getRecentlyClosed().
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("sessions.forgetClosedTab()")}}
+
Supprime un onglet fermé de la liste des onglets récemment fermés du navigateur.
+
{{WebExtAPIRef("sessions.forgetClosedWindow()")}}
+
Supprime une fenêtre  fermée  de la liste des fenêtres  récemment fermées du navigateur.
+
{{WebExtAPIRef("sessions.getRecentlyClosed()")}}
+
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).
+
{{WebExtAPIRef("sessions.restore()")}}
+
+

Restaure un onglet ou une fenêtre fermée.

+
+
{{WebExtAPIRef("sessions.setTabValue()")}}
+
+

Stocke une paire clé/valeur associée à un onglet donné.

+
+
{{WebExtAPIRef("sessions.getTabValue()")}}
+
+

Récupérer une valeur précédemment enregistrée pour un onglet donné, compte tenu de sa clé.

+
+
{{WebExtAPIRef("sessions.removeTabValue()")}}
+
+

Supprimer une paire clé/valeur d'un onglet donné.

+
+
{{WebExtAPIRef("sessions.setWindowValue()")}}
+
+

Stocke une paire clé/valeur associée à une fenêtre donnée.

+
+
{{WebExtAPIRef("sessions.getWindowValue()")}}
+
+

Récupérer une valeur précédemment enregistrée pour une fenêtre donnée, compte tenu de sa clé.

+
+
{{WebExtAPIRef("sessions.removeWindowValue()")}}
+
+

Supprime une paire clé/valeur d'une fenêtre données.

+
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("sessions.onChanged")}}
+
+

Mise en place lorsqu'un onglet ou une fenêtre est fermée.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.sessions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 0b0e17b7f3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/max_session_results/index.html +++ /dev/null @@ -1,60 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.MAX_SESSION_RESULTS")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.sessions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/max_session_results/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/max_session_results/index.md new file mode 100644 index 0000000000..0b0e17b7f3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/max_session_results/index.md @@ -0,0 +1,60 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.MAX_SESSION_RESULTS")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.sessions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index d702c852a2..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/onchanged/index.html +++ /dev/null @@ -1,121 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Mise en place lorsque une liste d'onglets fermes ou de fenêtre changes.

- -

Syntaxe

- -
browser.sessions.onChanged.addListener(listener)
-browser.sessions.onChanged.removeListener(listener)
-browser.sessions.onChanged.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un auditeur à un événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument de l'auditeur est un auditeur à supprimer.
-
hasListener(listener)
-
Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie Vrai s'il écoute. Sinon Faux.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lors de l'événement. Il ne passe aucun paramètre.

-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.onChanged")}}

- -

Exemples

- -

Cette extension écoute onChanged, puis restaure  immédiatement la dernière session fermée, ce qui rend impossible de fermer les fenêtres ou les onglets :

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.sessions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/onchanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/onchanged/index.md new file mode 100644 index 0000000000..d702c852a2 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/onchanged/index.md @@ -0,0 +1,121 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Mise en place lorsque une liste d'onglets fermes ou de fenêtre changes.

+ +

Syntaxe

+ +
browser.sessions.onChanged.addListener(listener)
+browser.sessions.onChanged.removeListener(listener)
+browser.sessions.onChanged.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un auditeur à un événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument de l'auditeur est un auditeur à supprimer.
+
hasListener(listener)
+
Vérifiez si l'auditeur est enregistré pour cet événement. Renvoie Vrai s'il écoute. Sinon Faux.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lors de l'événement. Il ne passe aucun paramètre.

+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.onChanged")}}

+ +

Exemples

+ +

Cette extension écoute onChanged, puis restaure  immédiatement la dernière session fermée, ce qui rend impossible de fermer les fenêtres ou les onglets :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.sessions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index c943c5184b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/removetabvalue/index.html +++ /dev/null @@ -1,82 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Supprime une valeur précédemment stockée par un appel à {{WebExtAPIRef("sessions.setTabValue")}}.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.sessions.removeTabValue(
-  tabId,    // integer
-  key       // string
-)
-
- -

Paramètres

- -
-
tabId
-
integer. ID de l'onglet dont vous essayez de supprimer les données.
-
key
-
string. Clé identifiant la valeur particulière à supprimer. Cela doit correspondre à la clé précédemment donnée dans {{WebExtAPIRef("sessions.setTabValue")}}.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.removeTabValue", 10)}}

- -

Exemples

- -

Ce code ajoute deux éléments de menu contextuel: l'un stocke une valeur associée à l'onglet en cours, l'autre le supprime :

- -
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) => {
-  if (info.menuItemId === "add-my-item") {
-    setOnActiveTab();
-  } else {
-    removeFromActiveTab();
-  }
-});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/removetabvalue/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/removetabvalue/index.md new file mode 100644 index 0000000000..c943c5184b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/removetabvalue/index.md @@ -0,0 +1,82 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Supprime une valeur précédemment stockée par un appel à {{WebExtAPIRef("sessions.setTabValue")}}.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.sessions.removeTabValue(
+  tabId,    // integer
+  key       // string
+)
+
+ +

Paramètres

+ +
+
tabId
+
integer. ID de l'onglet dont vous essayez de supprimer les données.
+
key
+
string. Clé identifiant la valeur particulière à supprimer. Cela doit correspondre à la clé précédemment donnée dans {{WebExtAPIRef("sessions.setTabValue")}}.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.removeTabValue", 10)}}

+ +

Exemples

+ +

Ce code ajoute deux éléments de menu contextuel: l'un stocke une valeur associée à l'onglet en cours, l'autre le supprime :

+ +
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) => {
+  if (info.menuItemId === "add-my-item") {
+    setOnActiveTab();
+  } else {
+    removeFromActiveTab();
+  }
+});
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index ba590fd013..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/removewindowvalue/index.html +++ /dev/null @@ -1,80 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Supprime une valeur précédemment stockée par un appel à {{WebExtAPIRef("sessions.setWindowValue")}}.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.sessions.removeWindowValue(
-  windowId,    // integer
-  key          // string
-)
-
- -

Paramètres

- -
-
windowId
-
integer. ID de la fenêtre dont vous essayez de supprimer les données.
-
key
-
string. lé identifiant la valeur particulière à supprimer. Cela doit correspondre à la clé précédemment donnée dans {{WebExtAPIRef("sessions.setWindowValue")}}.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.removeWindowValue", 10)}}

- -

Exemples

- -

Ce code ajoute deux éléments de menu contextuel: l'un stocke une valeur associée à la fenêtre courante, l'autre la supprime :

- -
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) => {
-  if (info.menuItemId === "add-my-item") {
-    setOnActiveWindow();
-  } else {
-    removeFromActiveWindow();
-  }
-});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/removewindowvalue/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/removewindowvalue/index.md new file mode 100644 index 0000000000..ba590fd013 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/removewindowvalue/index.md @@ -0,0 +1,80 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Supprime une valeur précédemment stockée par un appel à {{WebExtAPIRef("sessions.setWindowValue")}}.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.sessions.removeWindowValue(
+  windowId,    // integer
+  key          // string
+)
+
+ +

Paramètres

+ +
+
windowId
+
integer. ID de la fenêtre dont vous essayez de supprimer les données.
+
key
+
string. lé identifiant la valeur particulière à supprimer. Cela doit correspondre à la clé précédemment donnée dans {{WebExtAPIRef("sessions.setWindowValue")}}.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.removeWindowValue", 10)}}

+ +

Exemples

+ +

Ce code ajoute deux éléments de menu contextuel: l'un stocke une valeur associée à la fenêtre courante, l'autre la supprime :

+ +
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) => {
+  if (info.menuItemId === "add-my-item") {
+    setOnActiveWindow();
+  } else {
+    removeFromActiveWindow();
+  }
+});
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 98eda5f898..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/restore/index.html +++ /dev/null @@ -1,110 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Il s'agit d'une fonction asynchrone que retourne une Promise.

- -

Syntaxe

- -
var restoringSession = browser.sessions.restore(
-  sessionId             // string
-)
-
- -

Paramètres

- -
-
sessionId
-
string. Une chaîne contenant l'ID de session pour la fenêtre ou l'onglet à restaurer. Cela se trouve dans la propriété sessionId de l'objet   {{WebExtAPIRef("tabs.Tab", "Tab")}} ou {{WebExtAPIRef("windows.Window", "Window")}} dans  {{WebExtAPIRef("sessions.Session", "Session")}} retourné de {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.
-
- -

Valeur renvoyée

- -

Une Promise. Cela sera rempli avec un objet  {{WebExtAPIRef("sessions.Session", "Session")}} représentant la session qui a été restaurée.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.restore")}}

- -

Exemples

- -

Cela restaure la session fermée la plus récente, qu'il s'agisse d'une fenêtre ou d'un onglet :

- -
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);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.sessions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/restore/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/restore/index.md new file mode 100644 index 0000000000..98eda5f898 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/restore/index.md @@ -0,0 +1,110 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Il s'agit d'une fonction asynchrone que retourne une Promise.

+ +

Syntaxe

+ +
var restoringSession = browser.sessions.restore(
+  sessionId             // string
+)
+
+ +

Paramètres

+ +
+
sessionId
+
string. Une chaîne contenant l'ID de session pour la fenêtre ou l'onglet à restaurer. Cela se trouve dans la propriété sessionId de l'objet   {{WebExtAPIRef("tabs.Tab", "Tab")}} ou {{WebExtAPIRef("windows.Window", "Window")}} dans  {{WebExtAPIRef("sessions.Session", "Session")}} retourné de {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.
+
+ +

Valeur renvoyée

+ +

Une Promise. Cela sera rempli avec un objet  {{WebExtAPIRef("sessions.Session", "Session")}} représentant la session qui a été restaurée.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.restore")}}

+ +

Exemples

+ +

Cela restaure la session fermée la plus récente, qu'il s'agisse d'une fenêtre ou d'un onglet :

+ +
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);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.sessions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 389fca9b5f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/session/index.html +++ /dev/null @@ -1,84 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

L'objet de Session représente un onglet ou une fenêtre que l'utilisateur a fermé dans la session de navigation actuelle.

- -

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.

- -

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.

- -

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 :

- - - -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
lastModified
-
number. L'heure où l'onglet ou la fenêtre a été fermé, en millisecondes depuis l'époque.
-
tab{{optional_inline}}
-
object. Si l'objet représente un onglet fermé, cette propriété est présente et sera un objet {{WebExtAPIRef("tabs.Tab")}}. Cela contiendra url, titre, et favIconUrl uniquement si l'extension possède la permission "tabs".
-
window{{optional_inline}}
-
object. Si l'objet représente une fenêtre fermée, cette propriété est présente et sera un objet {{WebExtAPIRef("windows.Window")}}.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.Session")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.sessions.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/session/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/session/index.md new file mode 100644 index 0000000000..389fca9b5f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/session/index.md @@ -0,0 +1,84 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

L'objet de Session représente un onglet ou une fenêtre que l'utilisateur a fermé dans la session de navigation actuelle.

+ +

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.

+ +

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.

+ +

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 :

+ + + +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
lastModified
+
number. L'heure où l'onglet ou la fenêtre a été fermé, en millisecondes depuis l'époque.
+
tab{{optional_inline}}
+
object. Si l'objet représente un onglet fermé, cette propriété est présente et sera un objet {{WebExtAPIRef("tabs.Tab")}}. Cela contiendra url, titre, et favIconUrl uniquement si l'extension possède la permission "tabs".
+
window{{optional_inline}}
+
object. Si l'objet représente une fenêtre fermée, cette propriété est présente et sera un objet {{WebExtAPIRef("windows.Window")}}.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.Session")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.sessions.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 64da5c051c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/settabvalue/index.html +++ /dev/null @@ -1,69 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Stocke une paire clé / valeur à associer à un onglet donné. Vous pouvez ensuite récupérer cette valeur en utilisant {{WebExtAPIRef("sessions.getTabValue")}}.

- -

Notez que ces données ne seront visibles que par l'extension qui l'a définie, et non par les autres extensions.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var storing = browser.sessions.setTabValue(
-  tabId,    // integer
-  key,      // string
-  value     // string or object
-)
-
- -

Paramètres

- -
-
tabId
-
integer. ID de l'onglet avec lequel vous souhaitez associer les données.
-
key
-
string. Clé que vous pouvez utiliser ultérieurement pour récupérer cette valeur de données particulière.
-
value
-
string ou object. S'il s'agit d'un objet, il est stringified, donc les méthodes d'objet, par exemple, seront omises. Si une fonction est donnée ici, elle sera stockée sous la forme null.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.setTabValue", 10)}}

- -

Exemples

- -

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 permission "menus" pour exécuter cet exemple :

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/settabvalue/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/settabvalue/index.md new file mode 100644 index 0000000000..64da5c051c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/settabvalue/index.md @@ -0,0 +1,69 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Stocke une paire clé / valeur à associer à un onglet donné. Vous pouvez ensuite récupérer cette valeur en utilisant {{WebExtAPIRef("sessions.getTabValue")}}.

+ +

Notez que ces données ne seront visibles que par l'extension qui l'a définie, et non par les autres extensions.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var storing = browser.sessions.setTabValue(
+  tabId,    // integer
+  key,      // string
+  value     // string or object
+)
+
+ +

Paramètres

+ +
+
tabId
+
integer. ID de l'onglet avec lequel vous souhaitez associer les données.
+
key
+
string. Clé que vous pouvez utiliser ultérieurement pour récupérer cette valeur de données particulière.
+
value
+
string ou object. S'il s'agit d'un objet, il est stringified, donc les méthodes d'objet, par exemple, seront omises. Si une fonction est donnée ici, elle sera stockée sous la forme null.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.setTabValue", 10)}}

+ +

Exemples

+ +

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 permission "menus" pour exécuter cet exemple :

+ +
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);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index c81dbd0ab1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sessions/setwindowvalue/index.html +++ /dev/null @@ -1,68 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Stocke une paire clé / valeur à associer à une fenêtre donnée. Vous pouvez ensuite récupérer cette valeur en utilisant {{WebExtAPIRef("sessions.getWindowValue")}}.

- -

Notez que ces données ne seront visibles que par l'extension qui l'a définie, et non par les autres extensions..

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var storing = browser.sessions.setWindowValue(
-  windowId,    // integer
-  key,         // string
-  value        // string or object
-)
-
- -

Paramètres

- -
-
windowId
-
integer. ID de la fenêtre avec laquelle vous souhaitez associer les données.
-
key
-
string. Clé que vous pouvez utiliser ultérieurement pour récupérer cette valeur de données particulière.
-
value
-
string ou object. S'il s'agit d'un objet, il est stringified, donc les méthodes d'objet, par exemple, seront omises. Si une fonction est donnée ici, elle sera stockée sous la valeur null.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sessions.setWindowValue", 10)}}

- -

Exemples

- -

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  permission "menus" pour exécuter cet exemple :

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sessions/setwindowvalue/index.md b/files/fr/mozilla/add-ons/webextensions/api/sessions/setwindowvalue/index.md new file mode 100644 index 0000000000..c81dbd0ab1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sessions/setwindowvalue/index.md @@ -0,0 +1,68 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Stocke une paire clé / valeur à associer à une fenêtre donnée. Vous pouvez ensuite récupérer cette valeur en utilisant {{WebExtAPIRef("sessions.getWindowValue")}}.

+ +

Notez que ces données ne seront visibles que par l'extension qui l'a définie, et non par les autres extensions..

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var storing = browser.sessions.setWindowValue(
+  windowId,    // integer
+  key,         // string
+  value        // string or object
+)
+
+ +

Paramètres

+ +
+
windowId
+
integer. ID de la fenêtre avec laquelle vous souhaitez associer les données.
+
key
+
string. Clé que vous pouvez utiliser ultérieurement pour récupérer cette valeur de données particulière.
+
value
+
string ou object. S'il s'agit d'un objet, il est stringified, donc les méthodes d'objet, par exemple, seront omises. Si une fonction est donnée ici, elle sera stockée sous la valeur null.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sessions.setWindowValue", 10)}}

+ +

Exemples

+ +

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  permission "menus" pour exécuter cet exemple :

+ +
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);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index b2427227be..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/close/index.html +++ /dev/null @@ -1,54 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Ferme la barre latérale dans la fenêtre active, s'il s'agit de la barre latérale de l'extension.

- -

Vous pouvez uniquement appeler cette fonction à l'intérieur du gestionnaire pour une action utilisateur.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
browser.sidebarAction.close()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui est résolue sans arguments.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sidebarAction.close", 10)}}

- -

Exemples

- -

Fermez la barre latérale lorsque l'utilisateur sélectionne un élément de menu contextuel :

- -
browser.menus.create({
-  id: "close-sidebar",
-  title: "close sidebar",
-  contexts: ["all"]
-});
-
-browser.menus.onClicked.addListener(() => {
-  browser.sidebarAction.close();
-});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/close/index.md b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/close/index.md new file mode 100644 index 0000000000..b2427227be --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/close/index.md @@ -0,0 +1,54 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Ferme la barre latérale dans la fenêtre active, s'il s'agit de la barre latérale de l'extension.

+ +

Vous pouvez uniquement appeler cette fonction à l'intérieur du gestionnaire pour une action utilisateur.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
browser.sidebarAction.close()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui est résolue sans arguments.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sidebarAction.close", 10)}}

+ +

Exemples

+ +

Fermez la barre latérale lorsque l'utilisateur sélectionne un élément de menu contextuel :

+ +
browser.menus.create({
+  id: "close-sidebar",
+  title: "close sidebar",
+  contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(() => {
+  browser.sidebarAction.close();
+});
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 7fad9684ca..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.html +++ /dev/null @@ -1,106 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient une URL vers le document HTML qui définit le contenu de la barre latérale.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingPanel = browser.sidebarAction.getPanel(
-  details               // object
-)
-
- -

Paramètres

- -
-
details
-

object. Un objet avec les propriétés suivantes :

-
-
tabId{{optional_inline}}
-
integer.  Obtenir le panneau pour la barre latérale spécifique à l'onglet donné.
-
windowId {{optional_inline}}
-
integer. Obtenir le panneau pour la barre latérale spécifique à la fenêtre donnée.
-
-
-
- - - -

Valeur retournée

- -

Une Promise qui sera remplie avec une chaîne contenant l'URL du document du panel. Ce sera une URL entièrement qualifiée, telle que :

- -
moz-extension://d1d8a2eb-fe60-f646-af30-a866c5b39942/sidebar.html
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sidebarAction.getPanel",2)}}

- -

Exemples

- -

Obtenez l'URL du panneau :

- -
function onGot(sidebarUrl) {
-  console.log(sidebarUrl);
-}
-
-var gettingPanel = browser.sidebarAction.getPanel({});
-gettingPanel.then(onGot); 
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Opera chrome.sidebarAction.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.md b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.md new file mode 100644 index 0000000000..7fad9684ca --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/getpanel/index.md @@ -0,0 +1,106 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient une URL vers le document HTML qui définit le contenu de la barre latérale.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingPanel = browser.sidebarAction.getPanel(
+  details               // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Un objet avec les propriétés suivantes :

+
+
tabId{{optional_inline}}
+
integer.  Obtenir le panneau pour la barre latérale spécifique à l'onglet donné.
+
windowId {{optional_inline}}
+
integer. Obtenir le panneau pour la barre latérale spécifique à la fenêtre donnée.
+
+
+
+ + + +

Valeur retournée

+ +

Une Promise qui sera remplie avec une chaîne contenant l'URL du document du panel. Ce sera une URL entièrement qualifiée, telle que :

+ +
moz-extension://d1d8a2eb-fe60-f646-af30-a866c5b39942/sidebar.html
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sidebarAction.getPanel",2)}}

+ +

Exemples

+ +

Obtenez l'URL du panneau :

+ +
function onGot(sidebarUrl) {
+  console.log(sidebarUrl);
+}
+
+var gettingPanel = browser.sidebarAction.getPanel({});
+gettingPanel.then(onGot); 
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Opera chrome.sidebarAction.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index bc68b38a9f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/gettitle/index.html +++ /dev/null @@ -1,113 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient le titre de la barre latérale.

- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingTitle = browser.sidebarAction.getTitle(
-  details               // object
-)
-
- -

Paramètres

- -
-
details
-

object. Un objet avec les propriétés suivantes :

-
-
tabId{{optional_inline}}
-
integer. Obtenir le titre de la barre latérale spécifique à l'onglet donné.
-
windowId {{optional_inline}}
-
integer. Obtenir le titre de la barre latérale spécifique à la fenêtre donnée.
-
-
-
- - - -

Valeur retournée

- -

Une Promise qui sera remplie avec une chaîne contenant le titre de la barre latérale.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sidebarAction.getTitle",2)}}

- -

Exemples

- -

Ce code bascule le titre entre "this" et "that" chaque fois que l'utilisateur clique sur l'action du navigateur

- -
function toggleTitle(title) {
-  if (title == "this") {
-    browser.sidebarAction.setTitle({title: "that"});
-  } else {
-    browser.sidebarAction.setTitle({title: "this"});
-  }
-}
-
-browser.browserAction.onClicked.addListener(() => {
-  var gettingTitle = browser.sidebarAction.getTitle({});
-  gettingTitle.then(toggleTitle);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Opera chrome.sidebarAction.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/gettitle/index.md b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/gettitle/index.md new file mode 100644 index 0000000000..bc68b38a9f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/gettitle/index.md @@ -0,0 +1,113 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient le titre de la barre latérale.

+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingTitle = browser.sidebarAction.getTitle(
+  details               // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Un objet avec les propriétés suivantes :

+
+
tabId{{optional_inline}}
+
integer. Obtenir le titre de la barre latérale spécifique à l'onglet donné.
+
windowId {{optional_inline}}
+
integer. Obtenir le titre de la barre latérale spécifique à la fenêtre donnée.
+
+
+
+ + + +

Valeur retournée

+ +

Une Promise qui sera remplie avec une chaîne contenant le titre de la barre latérale.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sidebarAction.getTitle",2)}}

+ +

Exemples

+ +

Ce code bascule le titre entre "this" et "that" chaque fois que l'utilisateur clique sur l'action du navigateur

+ +
function toggleTitle(title) {
+  if (title == "this") {
+    browser.sidebarAction.setTitle({title: "that"});
+  } else {
+    browser.sidebarAction.setTitle({title: "this"});
+  }
+}
+
+browser.browserAction.onClicked.addListener(() => {
+  var gettingTitle = browser.sidebarAction.getTitle({});
+  gettingTitle.then(toggleTitle);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Opera chrome.sidebarAction.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index fe83bbe7e5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/imagedatatype/index.html +++ /dev/null @@ -1,65 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Données de pixel pour une image. Doit être un objet ImageData (par exemple, à partir d'un élément {{htmlelement("canvas")}}).

- -

Type

- -

Un objet ImageData.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sidebarAction.ImageDataType")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Opera chrome.sidebarAction.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/imagedatatype/index.md b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/imagedatatype/index.md new file mode 100644 index 0000000000..fe83bbe7e5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/imagedatatype/index.md @@ -0,0 +1,65 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Données de pixel pour une image. Doit être un objet ImageData (par exemple, à partir d'un élément {{htmlelement("canvas")}}).

+ +

Type

+ +

Un objet ImageData.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sidebarAction.ImageDataType")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Opera chrome.sidebarAction.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/index.html b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/index.html deleted file mode 100644 index d54988ca12..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/index.html +++ /dev/null @@ -1,101 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Obtient et définit les propriétés de la barre latérale d'une extension.

- -

Une barre latérale 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é sidebar_action manifest.json, une extension peut définir sa propre barre latérale.
- En utilisant l'API sidebarAction décrite ici, une extension peut obtenir et définir les propriétés de la barre latérale.

- -

L'API sidebarAction est étroitement modélisée sur l'API  {{WebExtAPIRef("browserAction")}}.

- -

L'API sidebarAction est basée sur l'API sidebarAction d'Opéra. Toutefois, notez que les éléments suivants ne sont pas encore pris en charge : setBadgeText(), getBadgeText(), setBadgeBackgroundColor(), getBadgeBackgroundColor(), onFocus, onBlur.

- -

Types

- -
-
{{WebExtAPIRef("sidebarAction.ImageDataType")}}
-
Données de pixel pour une image. Doit être un objet ImageData (par exemple, à partir d'un élément {{htmlelement("canvas")}}).
-
- -

Fonctions

- -
-
{{WebExtAPIRef("sidebarAction.close()")}}
-
Ferme la barre latérale
-
{{WebExtAPIRef("sidebarAction.getPanel()")}}
-
Obtient le panneau de la barre latérale.
-
{{WebExtAPIRef("sidebarAction.getTitle()")}}
-
Obtient le titre de la barre latérale.
-
{{WebExtAPIRef("sidebarAction.isOpen()")}}
-
Vérifie si la barre latérale est ouverte ou non.
-
{{WebExtAPIRef("sidebarAction.open()")}}
-
Ouvre la barre latérale.
-
{{WebExtAPIRef("sidebarAction.setIcon()")}}
-
Définit l'icône de la barre latérale.
-
{{WebExtAPIRef("sidebarAction.setPanel()")}}
-
Définit le panneau de la barre latérale.
-
{{WebExtAPIRef("sidebarAction.setTitle()")}}
-
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.
-
{{WebExtAPIRef("sidebarAction.toggle()")}}
-
Permet de basculer la visibilité de la barre latérale.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sidebarAction")}}

- -

Exemple extensions

- - - -

Note :

- -

Cette API est basée sur l'API Opera chrome.sidebarAction.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/index.md b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/index.md new file mode 100644 index 0000000000..d54988ca12 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Obtient et définit les propriétés de la barre latérale d'une extension.

+ +

Une barre latérale 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é sidebar_action manifest.json, une extension peut définir sa propre barre latérale.
+ En utilisant l'API sidebarAction décrite ici, une extension peut obtenir et définir les propriétés de la barre latérale.

+ +

L'API sidebarAction est étroitement modélisée sur l'API  {{WebExtAPIRef("browserAction")}}.

+ +

L'API sidebarAction est basée sur l'API sidebarAction d'Opéra. Toutefois, notez que les éléments suivants ne sont pas encore pris en charge : setBadgeText(), getBadgeText(), setBadgeBackgroundColor(), getBadgeBackgroundColor(), onFocus, onBlur.

+ +

Types

+ +
+
{{WebExtAPIRef("sidebarAction.ImageDataType")}}
+
Données de pixel pour une image. Doit être un objet ImageData (par exemple, à partir d'un élément {{htmlelement("canvas")}}).
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("sidebarAction.close()")}}
+
Ferme la barre latérale
+
{{WebExtAPIRef("sidebarAction.getPanel()")}}
+
Obtient le panneau de la barre latérale.
+
{{WebExtAPIRef("sidebarAction.getTitle()")}}
+
Obtient le titre de la barre latérale.
+
{{WebExtAPIRef("sidebarAction.isOpen()")}}
+
Vérifie si la barre latérale est ouverte ou non.
+
{{WebExtAPIRef("sidebarAction.open()")}}
+
Ouvre la barre latérale.
+
{{WebExtAPIRef("sidebarAction.setIcon()")}}
+
Définit l'icône de la barre latérale.
+
{{WebExtAPIRef("sidebarAction.setPanel()")}}
+
Définit le panneau de la barre latérale.
+
{{WebExtAPIRef("sidebarAction.setTitle()")}}
+
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.
+
{{WebExtAPIRef("sidebarAction.toggle()")}}
+
Permet de basculer la visibilité de la barre latérale.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sidebarAction")}}

+ +

Exemple extensions

+ + + +

Note :

+ +

Cette API est basée sur l'API Opera chrome.sidebarAction.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2294aeae32..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/isopen/index.html +++ /dev/null @@ -1,78 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Renvoie true si la barre latérale de l'extension est ouverte dans une fenêtre donnée.

- -

Cette fonction accepte un windowId en paramètre :

- - - -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
let gettingIsOpen = browser.sidebarAction.isOpen(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object. Un objet contenant éventuellement le windowId à vérifier.

-
-
windowId {{optional_inline}}
-
integer. 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.
-
-
-
- - - -

Valeur retournée

- -

Une Promise qui sera remplie avec true si la barre latérale de l'extension est ouverte dans la fenêtre donnée, ou false dans le cas contraire.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sidebarAction.isOpen",2)}}

- -

Exemples

- -

Vérifiez la fenêtre la plus haute :

- -
browser.sidebarAction.isOpen({}).then(result => {
-  console.log(result);
-});
- -

  Vérifiez toutes les fenêtres ouvertes :

- -
async function checkWindow(windowId) {
-  let result = await browser.sidebarAction.isOpen({windowId});
-  console.log(`window: ${windowId} status: ${result}`);
-}
-
-browser.windows.getAll().then(all => {
-  for (let {id} of all) {
-    checkWindow(id);
-  }
-});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/isopen/index.md b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/isopen/index.md new file mode 100644 index 0000000000..2294aeae32 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/isopen/index.md @@ -0,0 +1,78 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Renvoie true si la barre latérale de l'extension est ouverte dans une fenêtre donnée.

+ +

Cette fonction accepte un windowId en paramètre :

+ + + +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
let gettingIsOpen = browser.sidebarAction.isOpen(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Un objet contenant éventuellement le windowId à vérifier.

+
+
windowId {{optional_inline}}
+
integer. 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.
+
+
+
+ + + +

Valeur retournée

+ +

Une Promise qui sera remplie avec true si la barre latérale de l'extension est ouverte dans la fenêtre donnée, ou false dans le cas contraire.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sidebarAction.isOpen",2)}}

+ +

Exemples

+ +

Vérifiez la fenêtre la plus haute :

+ +
browser.sidebarAction.isOpen({}).then(result => {
+  console.log(result);
+});
+ +

  Vérifiez toutes les fenêtres ouvertes :

+ +
async function checkWindow(windowId) {
+  let result = await browser.sidebarAction.isOpen({windowId});
+  console.log(`window: ${windowId} status: ${result}`);
+}
+
+browser.windows.getAll().then(all => {
+  for (let {id} of all) {
+    checkWindow(id);
+  }
+});
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index b0fbb77d1d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/open/index.html +++ /dev/null @@ -1,57 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Ouvrez la barre latérale dans la fenêtre active.
- -
- -
-

Vous pouvez uniquement appeler cette fonction à l'intérieur du gestionnaire pour une action utilisateur.

- -

C'est une fonction asynchrone qui renvoie une Promise.

-
- -

Syntaxe

- -
browser.sidebarAction.open()
-
- -

Paramètres

- -

Aucun

- -

Valeur retournée

- -

Une Promise qui est résolue sans arguments..

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sidebarAction.open", 10)}}

- -

Exemples

- -

Ouvrez la barre latérale lorsque l'utilisateur sélectionne un élément de menu contextuel :

- -
browser.menus.create({
-  id: "open-sidebar",
-  title: "open sidebar",
-  contexts: ["all"]
-});
-
-browser.menus.onClicked.addListener(() => {
-  browser.sidebarAction.open();
-});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/open/index.md b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/open/index.md new file mode 100644 index 0000000000..b0fbb77d1d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/open/index.md @@ -0,0 +1,57 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Ouvrez la barre latérale dans la fenêtre active.
+ +
+ +
+

Vous pouvez uniquement appeler cette fonction à l'intérieur du gestionnaire pour une action utilisateur.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+
+ +

Syntaxe

+ +
browser.sidebarAction.open()
+
+ +

Paramètres

+ +

Aucun

+ +

Valeur retournée

+ +

Une Promise qui est résolue sans arguments..

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sidebarAction.open", 10)}}

+ +

Exemples

+ +

Ouvrez la barre latérale lorsque l'utilisateur sélectionne un élément de menu contextuel :

+ +
browser.menus.create({
+  id: "open-sidebar",
+  title: "open sidebar",
+  contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(() => {
+  browser.sidebarAction.open();
+});
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index c9cf93f2f1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/seticon/index.html +++ /dev/null @@ -1,134 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Définit l'icône de la barre latérale.

- -

Vous pouvez spécifier une icône unique comme chemin d'accès à un fichier image ou un objet {{WebExtAPIRef('sidebarAction.ImageDataType')}}.

- -

Vous pouvez spécifier plusieurs icônes de différentes tailles en fournissant un dictionnaire contenant plusieurs chemins ou objets ImageData. 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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Types d'icônes

- -

Votre extension doit spécifier une icône pour la barre latérale dans la clé de manifest sidebar_action. C'est ce qu'on appelle "manifest icon".

- -

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 "default icon".

- -

Si vous définissez une nouvelle icône en utilisant setIcon(), et incluez l'option tabId , l'icône est définie uniquement pour l'onglet donné. C'est ce qu'on appelle "tab-specific icon".

- -

Si vous définissez une nouvelle icône en utilisant setIcon(), et incluez l'option windowId, alors l'icône n'est définie que pour la fenêtre donnée. Cette icône est appelée "icône spécifique à la fenêtre", et apparaîtra dans tous les onglets de cette fenêtre qui n'ont pas de jeu d'icônes spécifiques aux onglets.

- -

Si vous définissez une nouvelle icône en utilisant setIcon(), et omettez l'option tabId and windowId, cela définit "icône globale". 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.

- -

Syntaxe

- -
var settingIcon = browser.sidebarAction.setIcon(
-  details         // object
-)
-
- -

Paramètres

- -
-
details
-

object. Un Objet contenant des propriétés imageData ou path, et éventuellement une propriété tabId.

-
-
imageData{{optional_inline}}
-
-

{{WebExtAPIRef('sidebarAction.ImageDataType')}} ou object. C'est un objet ImageData unique ou un objet dictionnaire.

- -

Utilisez un objet dictionnaire pour spécifier plusieurs objets ImageData 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 imageData est un dictionnaire, la valeur de chaque propriété est un objet ImageData, et son nom est sa taille, comme ceci :

- -
{
-  16: image16,
-  32: image32
-}
- -

Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir Choisir les tailles d'icônes pour plus d'informations à ce sujet.

-
-
path{{optional_inline}}
-
-

string ou object. C'est soit un chemin relatif vers un fichier d'icône, soit un objet dictionnaire. 

- -

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 path est un dictionnaire, la valeur de chaque propriété est un chemin relatif, et son nom est sa taille, comme ceci :

- -
{
-  16: "path/to/image16.jpg",
-  32: "path/to/image32.jpg"
-}
- -

Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir Choosir les tailles d'icônes pour plus d'informations à ce sujet.

- -

si path est une chaîne vide, le navigateur utilisera l'icône par défaut.

- -

si path n'est pas vide mais ne pointe pas vers un fichier d'icône, l'icône est masquée.

- -

si path est null, et tabIda é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.

- -

si path est null, et tabId a été omis, et qu'il y avait un jeu d'icônes global, il sera réinitialisé à l'icône de manifest.

-
-
tabId{{optional_inline}}
-
integer. Définit l'icône uniquement pour l'onglet donné.
-
windowId {{optional_inline}}
-
integer. Définit l'icône uniquement pour la fenêtre donnée.
-
-
-
- - - -

Valeur retournée

- -

Une Promise qui sera remplie sans argument une fois l'icône définie.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sidebarAction.setIcon",2)}}

- -

Exemples

- -

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 :

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Opera chrome.sidebarAction.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/seticon/index.md b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/seticon/index.md new file mode 100644 index 0000000000..c9cf93f2f1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/seticon/index.md @@ -0,0 +1,134 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Définit l'icône de la barre latérale.

+ +

Vous pouvez spécifier une icône unique comme chemin d'accès à un fichier image ou un objet {{WebExtAPIRef('sidebarAction.ImageDataType')}}.

+ +

Vous pouvez spécifier plusieurs icônes de différentes tailles en fournissant un dictionnaire contenant plusieurs chemins ou objets ImageData. 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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Types d'icônes

+ +

Votre extension doit spécifier une icône pour la barre latérale dans la clé de manifest sidebar_action. C'est ce qu'on appelle "manifest icon".

+ +

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 "default icon".

+ +

Si vous définissez une nouvelle icône en utilisant setIcon(), et incluez l'option tabId , l'icône est définie uniquement pour l'onglet donné. C'est ce qu'on appelle "tab-specific icon".

+ +

Si vous définissez une nouvelle icône en utilisant setIcon(), et incluez l'option windowId, alors l'icône n'est définie que pour la fenêtre donnée. Cette icône est appelée "icône spécifique à la fenêtre", et apparaîtra dans tous les onglets de cette fenêtre qui n'ont pas de jeu d'icônes spécifiques aux onglets.

+ +

Si vous définissez une nouvelle icône en utilisant setIcon(), et omettez l'option tabId and windowId, cela définit "icône globale". 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.

+ +

Syntaxe

+ +
var settingIcon = browser.sidebarAction.setIcon(
+  details         // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Un Objet contenant des propriétés imageData ou path, et éventuellement une propriété tabId.

+
+
imageData{{optional_inline}}
+
+

{{WebExtAPIRef('sidebarAction.ImageDataType')}} ou object. C'est un objet ImageData unique ou un objet dictionnaire.

+ +

Utilisez un objet dictionnaire pour spécifier plusieurs objets ImageData 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 imageData est un dictionnaire, la valeur de chaque propriété est un objet ImageData, et son nom est sa taille, comme ceci :

+ +
{
+  16: image16,
+  32: image32
+}
+ +

Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir Choisir les tailles d'icônes pour plus d'informations à ce sujet.

+
+
path{{optional_inline}}
+
+

string ou object. C'est soit un chemin relatif vers un fichier d'icône, soit un objet dictionnaire. 

+ +

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 path est un dictionnaire, la valeur de chaque propriété est un chemin relatif, et son nom est sa taille, comme ceci :

+ +
{
+  16: "path/to/image16.jpg",
+  32: "path/to/image32.jpg"
+}
+ +

Le navigateur choisira l'image à utiliser en fonction de la densité de pixels de l'écran. Voir Choosir les tailles d'icônes pour plus d'informations à ce sujet.

+ +

si path est une chaîne vide, le navigateur utilisera l'icône par défaut.

+ +

si path n'est pas vide mais ne pointe pas vers un fichier d'icône, l'icône est masquée.

+ +

si path est null, et tabIda é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.

+ +

si path est null, et tabId a été omis, et qu'il y avait un jeu d'icônes global, il sera réinitialisé à l'icône de manifest.

+
+
tabId{{optional_inline}}
+
integer. Définit l'icône uniquement pour l'onglet donné.
+
windowId {{optional_inline}}
+
integer. Définit l'icône uniquement pour la fenêtre donnée.
+
+
+
+ + + +

Valeur retournée

+ +

Une Promise qui sera remplie sans argument une fois l'icône définie.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sidebarAction.setIcon",2)}}

+ +

Exemples

+ +

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 :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Opera chrome.sidebarAction.

+
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 deleted file mode 100644 index c2dbef6ee2..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/setpanel/index.html +++ /dev/null @@ -1,127 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Types de panneau

- -

Les barres latérales ont toujours un "panneau manifest", qui est le panneau défini dans la clé de manifest sidebar_action.

- -

Si vous définissez un nouveau panneau à l'aide de setPanel(), et incluez l'option tabId le panneau est défini uniquement pour l'onglet donné. Ce panneau est appelé  "tab-specific panel".

- -

Si vous définissez un nouveau panneau en utilisant setPanel(), et incluez l'option windowId, alors le panneau n'est défini que pour la fenêtre donnée.  Ce panneau est appelé "panneau spécifique à la fenêtre", et apparaîtra dans tous les onglets de cette fenêtre qui n'ont pas d'ensemble de panneaux spécifiques aux onglets.

- -

Si vous définissez un nouveau panneau en utilisant setPanel(), et omettez les options tabId et windowId, alors ceci définit le "panneau global". 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.

- -

Syntaxe

- -
browser.sidebarAction.setPanel(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object. Un objet avec les propriétés suivantes :

-
-
panel
-

string ou null. Le panneau à charger dans la barre latérale, spécifié comme une URL pointant vers un document HTML, ou null, ou une chaîne vide.

-

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 https://example.org/). Il doit s'agir d'une URL valide.

-

Si panel est null ou "",alors un panneau précédemment défini sera supprimé, de sorte que :

-
    -
  • Si tabId 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.
  • -
  • Si windowId 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.
  • -
  • Sinon, le panneau global sera réinitialisé au panneau manifest.
  • -
-
-
tabId{{optional_inline}}
-
integer. Définit le panneau uniquement pour l'onglet donné.
-
windowId {{optional_inline}}
-
integer. Définit le panneau uniquement pour la fenêtre donnée.
-
-
-
- - - -

Exemples

- -

Ce code bascule le document de la barre latérale lorsque l'utilisateur clique sur une action du navigateur :

- -
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(() => {
-  browser.sidebarAction.getPanel({}).then(toggle);
-});
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sidebarAction.setPanel",2)}}

- -

Note :

- -

Cette API est basée sur l'API Opera chrome.sidebarAction.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/setpanel/index.md b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/setpanel/index.md new file mode 100644 index 0000000000..c2dbef6ee2 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/setpanel/index.md @@ -0,0 +1,127 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Types de panneau

+ +

Les barres latérales ont toujours un "panneau manifest", qui est le panneau défini dans la clé de manifest sidebar_action.

+ +

Si vous définissez un nouveau panneau à l'aide de setPanel(), et incluez l'option tabId le panneau est défini uniquement pour l'onglet donné. Ce panneau est appelé  "tab-specific panel".

+ +

Si vous définissez un nouveau panneau en utilisant setPanel(), et incluez l'option windowId, alors le panneau n'est défini que pour la fenêtre donnée.  Ce panneau est appelé "panneau spécifique à la fenêtre", et apparaîtra dans tous les onglets de cette fenêtre qui n'ont pas d'ensemble de panneaux spécifiques aux onglets.

+ +

Si vous définissez un nouveau panneau en utilisant setPanel(), et omettez les options tabId et windowId, alors ceci définit le "panneau global". 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.

+ +

Syntaxe

+ +
browser.sidebarAction.setPanel(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Un objet avec les propriétés suivantes :

+
+
panel
+

string ou null. Le panneau à charger dans la barre latérale, spécifié comme une URL pointant vers un document HTML, ou null, ou une chaîne vide.

+

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 https://example.org/). Il doit s'agir d'une URL valide.

+

Si panel est null ou "",alors un panneau précédemment défini sera supprimé, de sorte que :

+
    +
  • Si tabId 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.
  • +
  • Si windowId 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.
  • +
  • Sinon, le panneau global sera réinitialisé au panneau manifest.
  • +
+
+
tabId{{optional_inline}}
+
integer. Définit le panneau uniquement pour l'onglet donné.
+
windowId {{optional_inline}}
+
integer. Définit le panneau uniquement pour la fenêtre donnée.
+
+
+
+ + + +

Exemples

+ +

Ce code bascule le document de la barre latérale lorsque l'utilisateur clique sur une action du navigateur :

+ +
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(() => {
+  browser.sidebarAction.getPanel({}).then(toggle);
+});
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sidebarAction.setPanel",2)}}

+ +

Note :

+ +

Cette API est basée sur l'API Opera chrome.sidebarAction.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 7124845924..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/settitle/index.html +++ /dev/null @@ -1,121 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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 > Barre latérale". Il est également affiché en haut de la barre latérale lorsque la barre latérale est ouverte.

- -

Types de titres

- -

Votre extension doit spécifier un titre pour la barre latérale dans la clé de manifest  sidebar_action. C'est ce qu'on appelle le "titre du manifest". Si vous ne spécifiez pas le titre du manifest, il sera par défaut le nom de l'extension

- -

Si vous définissez un nouveau titre à l'aide de setTitle(), et incluez l'option tabId le titre est défini uniquement pour l'onglet donné. Ce titre est appelé "titre spécifique à l'onglet".

- - - -

Si vous définissez un nouveau titre à l'aide de setTitle(),  et incluez l'option windowId, alors le titre est défini uniquement pour la fenêtre donnée. Ce titre est appelé "titre spécifique à la fenêtre", et apparaîtra dans tous les onglets de cette fenêtre qui n'ont pas de titre spécifique à un onglet.

- -

Si vous définissez un nouveau titre à l'aide de setTitle(), et omettre les options tabId et windowId, alors ceci définit le "titre global". 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.

- -

Syntaxe

- -
browser.sidebarAction.setTitle(
-  details // object
-)
-
- -

Paramètres

- -
-
details
-

object. Un objet avec les propriétés suivantes .

-
-
title
-

string ou null. Le nouveau titre de la barre latérale.

-

si le titre  est une chaîne vide, le titre utilisé sera le nom de l'extension, mais {{WebExtAPIRef("sidebarAction.getTitle")}} fournira toujours la chaîne vide.

- -

Si le titre est null, alors un titre précédemment défini sera supprimé, de sorte que :

- -
    -
  • Si tabId 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.
  • -
  • Si windowId 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.
  • -
  • Sinon, le titre global sera réinitialisé au titre du manifest.
  • -
-
-
tabId{{optional_inline}}
-
integer. Définit le titre uniquement pour l'onglet donné.
-
windowId{{optional_inline}}
-
integer. Définit le titre uniquement pour la fenêtre donnée.
-
-
-
- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sidebarAction.setTitle",2)}}

- -

Exemples

- -

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 :

- -
var title = "A different title";
-
-function setTitleForTab(tab) {
-  browser.sidebarAction.setTitle({title, tabId: tab.id});
-}
-
-browser.browserAction.onClicked.addListener(setTitleForTab);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Opera chrome.sidebarAction.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/settitle/index.md b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/settitle/index.md new file mode 100644 index 0000000000..7124845924 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/settitle/index.md @@ -0,0 +1,121 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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 > Barre latérale". Il est également affiché en haut de la barre latérale lorsque la barre latérale est ouverte.

+ +

Types de titres

+ +

Votre extension doit spécifier un titre pour la barre latérale dans la clé de manifest  sidebar_action. C'est ce qu'on appelle le "titre du manifest". Si vous ne spécifiez pas le titre du manifest, il sera par défaut le nom de l'extension

+ +

Si vous définissez un nouveau titre à l'aide de setTitle(), et incluez l'option tabId le titre est défini uniquement pour l'onglet donné. Ce titre est appelé "titre spécifique à l'onglet".

+ + + +

Si vous définissez un nouveau titre à l'aide de setTitle(),  et incluez l'option windowId, alors le titre est défini uniquement pour la fenêtre donnée. Ce titre est appelé "titre spécifique à la fenêtre", et apparaîtra dans tous les onglets de cette fenêtre qui n'ont pas de titre spécifique à un onglet.

+ +

Si vous définissez un nouveau titre à l'aide de setTitle(), et omettre les options tabId et windowId, alors ceci définit le "titre global". 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.

+ +

Syntaxe

+ +
browser.sidebarAction.setTitle(
+  details // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Un objet avec les propriétés suivantes .

+
+
title
+

string ou null. Le nouveau titre de la barre latérale.

+

si le titre  est une chaîne vide, le titre utilisé sera le nom de l'extension, mais {{WebExtAPIRef("sidebarAction.getTitle")}} fournira toujours la chaîne vide.

+ +

Si le titre est null, alors un titre précédemment défini sera supprimé, de sorte que :

+ +
    +
  • Si tabId 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.
  • +
  • Si windowId 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.
  • +
  • Sinon, le titre global sera réinitialisé au titre du manifest.
  • +
+
+
tabId{{optional_inline}}
+
integer. Définit le titre uniquement pour l'onglet donné.
+
windowId{{optional_inline}}
+
integer. Définit le titre uniquement pour la fenêtre donnée.
+
+
+
+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sidebarAction.setTitle",2)}}

+ +

Exemples

+ +

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 :

+ +
var title = "A different title";
+
+function setTitleForTab(tab) {
+  browser.sidebarAction.setTitle({title, tabId: tab.id});
+}
+
+browser.browserAction.onClicked.addListener(setTitleForTab);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Opera chrome.sidebarAction.

+
+ + 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 deleted file mode 100644 index d113f4c2ba..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/toggle/index.html +++ /dev/null @@ -1,54 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Permet de basculer la visibilité de la barre latérale dans la fenêtre active, si la barre latérale appartient à l'extension.

- -

Vous ne pouvez appeler cette fonction que depuis l'intérieur du gestionnaire pour une action utilisateur.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
browser.sidebarAction.toggle()
-
- -

Paramètres

- -

Aucune.

- -

Valeur retournée

- -

Une Promise qui est résolue sans discussion.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.sidebarAction.toggle", 10)}}

- -

Exemples

- -

Bascule la barre latérale lorsque l'utilisateur sélectionne un élément dans le menu contextuel :

- -
browser.menus.create({
-  id: "toggle-sidebar",
-  title: "Toggle sidebar",
-  contexts: ["all"]
-});
-
-browser.menus.onClicked.addListener(() => {
-  browser.sidebarAction.toggle();
-});
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/toggle/index.md b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/toggle/index.md new file mode 100644 index 0000000000..d113f4c2ba --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/sidebaraction/toggle/index.md @@ -0,0 +1,54 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Permet de basculer la visibilité de la barre latérale dans la fenêtre active, si la barre latérale appartient à l'extension.

+ +

Vous ne pouvez appeler cette fonction que depuis l'intérieur du gestionnaire pour une action utilisateur.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
browser.sidebarAction.toggle()
+
+ +

Paramètres

+ +

Aucune.

+ +

Valeur retournée

+ +

Une Promise qui est résolue sans discussion.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.sidebarAction.toggle", 10)}}

+ +

Exemples

+ +

Bascule la barre latérale lorsque l'utilisateur sélectionne un élément dans le menu contextuel :

+ +
browser.menus.create({
+  id: "toggle-sidebar",
+  title: "Toggle sidebar",
+  contexts: ["all"]
+});
+
+browser.menus.onClicked.addListener(() => {
+  browser.sidebarAction.toggle();
+});
+ +

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/index.html b/files/fr/mozilla/add-ons/webextensions/api/storage/index.html deleted file mode 100644 index 3d4b1ba6b4..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/storage/index.html +++ /dev/null @@ -1,109 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

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.

- -

Le mécanisme de stockage est basé sur l'API Web Storage, à quelques différences près. Elles incluent entre autres :

- - - -

Pour utiliser cette API vous devez inclure la permission « storage » dans votre fichier manifest.json.

- -

Chaque extension a sa propre zone de stockage, qui peut être divisée entre plusieurs types de stockage.

- -

Bien que cette API soit semblable à {{domxref("Window.localStorage")}} il est conseillé de ne pas utiliser Window.localStorage 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 storage.local seront correctement conservées dans ces scénarios.

- -
-

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.

-
- -

Types

- -
-
{{WebExtAPIRef("storage.StorageArea")}}
-
Un objet représentant la zone de stockage.
-
{{WebExtAPIRef("storage.StorageChange")}}
-
Un objet représentant une modification d'une zone de stockage.
-
- -

Propriétés

- -

storage a trois propriétés, qui représentent les différents types de zones de stockage disponibles.

- -
-
{{WebExtAPIRef("storage.sync")}}
-
Représente la zone de stockage sync. Les items dans sync sont synchronisés par le navigateur, et disponibles pour toutes les instances de ce navigateur auxquelles l'utilisateur est connecté, pour tous les appareils.
-
{{WebExtAPIRef("storage.local")}}
-
Représente la zone de stockage local. Les items dans local sont limités à l'appareil sur lequel l'extension a été installée.
-
{{WebExtAPIRef("storage.managed")}}
-
Représente la zone de stockage managed. Les items dans managed 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.
-
- -

Événements

- -
-
{{WebExtAPIRef("storage.onChanged")}}
-
Activé quand un ou plusieurs items d'une zone de stockage sont modifiés.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.storage")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/index.md b/files/fr/mozilla/add-ons/webextensions/api/storage/index.md new file mode 100644 index 0000000000..3d4b1ba6b4 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/storage/index.md @@ -0,0 +1,109 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

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.

+ +

Le mécanisme de stockage est basé sur l'API Web Storage, à quelques différences près. Elles incluent entre autres :

+ + + +

Pour utiliser cette API vous devez inclure la permission « storage » dans votre fichier manifest.json.

+ +

Chaque extension a sa propre zone de stockage, qui peut être divisée entre plusieurs types de stockage.

+ +

Bien que cette API soit semblable à {{domxref("Window.localStorage")}} il est conseillé de ne pas utiliser Window.localStorage 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 storage.local seront correctement conservées dans ces scénarios.

+ +
+

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.

+
+ +

Types

+ +
+
{{WebExtAPIRef("storage.StorageArea")}}
+
Un objet représentant la zone de stockage.
+
{{WebExtAPIRef("storage.StorageChange")}}
+
Un objet représentant une modification d'une zone de stockage.
+
+ +

Propriétés

+ +

storage a trois propriétés, qui représentent les différents types de zones de stockage disponibles.

+ +
+
{{WebExtAPIRef("storage.sync")}}
+
Représente la zone de stockage sync. Les items dans sync sont synchronisés par le navigateur, et disponibles pour toutes les instances de ce navigateur auxquelles l'utilisateur est connecté, pour tous les appareils.
+
{{WebExtAPIRef("storage.local")}}
+
Représente la zone de stockage local. Les items dans local sont limités à l'appareil sur lequel l'extension a été installée.
+
{{WebExtAPIRef("storage.managed")}}
+
Représente la zone de stockage managed. Les items dans managed 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.
+
+ +

Événements

+ +
+
{{WebExtAPIRef("storage.onChanged")}}
+
Activé quand un ou plusieurs items d'une zone de stockage sont modifiés.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.storage")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 05638d9208..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/storage/local/index.html +++ /dev/null @@ -1,92 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Représente la zone de stockage local. Les éléments stockés localement sont locaux sur la machine sur laquelle l'extension a été installée.

- -

Le navigateur peut limiter la quantité de données qu'une extension peut stocker dans la zone de stockage locale :

- - - -

Lorsque l'extension est désinstallée, son stockage local associé est effacé.

- -

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 true: "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.

- -

Bien que cette API soit similaire à {{domxref("Window.localStorage")}} il est recommandé de ne pas utiliser Window.localStorage 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.

- -

Méthodes

- -

L'objet local local implémente les méthodes définies sur le type  {{WebExtAPIRef("storage.StorageArea")}} :

- -
-
{{WebExtAPIRef("storage.StorageArea.get()")}}
-
Récupère un ou plusieurs éléments de la zone de stockage.
-
{{WebExtAPIRef("storage.StorageArea.getBytesInUse()")}}
-
Obtient la quantité d'espace de stockage (en octets) utilisée pour stocker un ou plusieurs éléments dans la zone de stockage.
-
{{WebExtAPIRef("storage.StorageArea.set()")}}
-
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.
-
{{WebExtAPIRef("storage.StorageArea.remove()")}}
-
Supprime un ou plusieurs éléments de la zone de stockage..
-
{{WebExtAPIRef("storage.StorageArea.clear()")}}
-
Supprime tous les éléments de la zone de stockage.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.storage.local")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/local/index.md b/files/fr/mozilla/add-ons/webextensions/api/storage/local/index.md new file mode 100644 index 0000000000..05638d9208 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/storage/local/index.md @@ -0,0 +1,92 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Représente la zone de stockage local. Les éléments stockés localement sont locaux sur la machine sur laquelle l'extension a été installée.

+ +

Le navigateur peut limiter la quantité de données qu'une extension peut stocker dans la zone de stockage locale :

+ + + +

Lorsque l'extension est désinstallée, son stockage local associé est effacé.

+ +

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 true: "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.

+ +

Bien que cette API soit similaire à {{domxref("Window.localStorage")}} il est recommandé de ne pas utiliser Window.localStorage 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.

+ +

Méthodes

+ +

L'objet local local implémente les méthodes définies sur le type  {{WebExtAPIRef("storage.StorageArea")}} :

+ +
+
{{WebExtAPIRef("storage.StorageArea.get()")}}
+
Récupère un ou plusieurs éléments de la zone de stockage.
+
{{WebExtAPIRef("storage.StorageArea.getBytesInUse()")}}
+
Obtient la quantité d'espace de stockage (en octets) utilisée pour stocker un ou plusieurs éléments dans la zone de stockage.
+
{{WebExtAPIRef("storage.StorageArea.set()")}}
+
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.
+
{{WebExtAPIRef("storage.StorageArea.remove()")}}
+
Supprime un ou plusieurs éléments de la zone de stockage..
+
{{WebExtAPIRef("storage.StorageArea.clear()")}}
+
Supprime tous les éléments de la zone de stockage.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.storage.local")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 78cce96212..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/storage/managed/index.html +++ /dev/null @@ -1,134 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet {{WebExtAPIRef("storage.StorageArea")}} qui représente la zone de stockage gérée. Les éléments de stockage géré 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.

- -

Provisionnement du stockage géré

- -

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 .json. ((Voir Stockage Chrome géré ci-dessous.)

- -

manifestes natives

- -

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 manifests natifs.

- -

Voici un exemple de manifest :

- -
{
-  "name": "favourite-color-examples@mozilla.org",
-  "description": "ignored",
-  "type": "storage",
-  "data":
-  {
-    "color": "management thinks it should be blue!"
-  }
-}
- -

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 :

- -
var storageItem = browser.storage.managed.get('color');
-storageItem.then((res) => {
-  console.log(`Managed colur is: ${res.color}`);
-});
- -

Gestion de stockage dans Chrome

- -

Firefox et Chrome supportent tous deux l'utilisation d'un manifeste pour les zones de stockage.

- -

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.

- -

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.

- -

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.

- -

manifest.json

- -
{
-  "name": "chrome-storage-managed-examples@mozilla.org",
-  "storage": {
-      "managed_schema": "schema.json"
-  },
-}
-
- -

Le fichier json ressemblerait à ceci :

- -
{
-  "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" }
-      }
-    }
-  }
-}
- -

Pour plus d'informations, voir l'article de Chrome pour les zones de stockage Manifeste pour les zones de stockage.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.storage.managed")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/managed/index.md b/files/fr/mozilla/add-ons/webextensions/api/storage/managed/index.md new file mode 100644 index 0000000000..78cce96212 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/storage/managed/index.md @@ -0,0 +1,134 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet {{WebExtAPIRef("storage.StorageArea")}} qui représente la zone de stockage gérée. Les éléments de stockage géré 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.

+ +

Provisionnement du stockage géré

+ +

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 .json. ((Voir Stockage Chrome géré ci-dessous.)

+ +

manifestes natives

+ +

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 manifests natifs.

+ +

Voici un exemple de manifest :

+ +
{
+  "name": "favourite-color-examples@mozilla.org",
+  "description": "ignored",
+  "type": "storage",
+  "data":
+  {
+    "color": "management thinks it should be blue!"
+  }
+}
+ +

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 :

+ +
var storageItem = browser.storage.managed.get('color');
+storageItem.then((res) => {
+  console.log(`Managed colur is: ${res.color}`);
+});
+ +

Gestion de stockage dans Chrome

+ +

Firefox et Chrome supportent tous deux l'utilisation d'un manifeste pour les zones de stockage.

+ +

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.

+ +

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.

+ +

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.

+ +

manifest.json

+ +
{
+  "name": "chrome-storage-managed-examples@mozilla.org",
+  "storage": {
+      "managed_schema": "schema.json"
+  },
+}
+
+ +

Le fichier json ressemblerait à ceci :

+ +
{
+  "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" }
+      }
+    }
+  }
+}
+ +

Pour plus d'informations, voir l'article de Chrome pour les zones de stockage Manifeste pour les zones de stockage.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.storage.managed")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

+
+ + 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 deleted file mode 100644 index 0f3d0acc00..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/storage/onchanged/index.html +++ /dev/null @@ -1,125 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'un ou plusieurs éléments changent.

- -

Syntaxe

- -
browser.storage.onChanged.addListener(callback)
-browser.storage.onChanged.removeListener(listener)
-browser.storage.onChanged.hasListener(listener)
-
- -

Les événements ont trois fonctions:

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie trues'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
changes
-
object. 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.
-
- -
-
areaName
-
string. Le nom de la zone de stockage ("sync", "local" or "managed") auquel les modifications ont été apportées.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.storage.onChanged")}}

- -

Exemples

- -
/*
-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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/onchanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/storage/onchanged/index.md new file mode 100644 index 0000000000..0f3d0acc00 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/storage/onchanged/index.md @@ -0,0 +1,125 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'un ou plusieurs éléments changent.

+ +

Syntaxe

+ +
browser.storage.onChanged.addListener(callback)
+browser.storage.onChanged.removeListener(listener)
+browser.storage.onChanged.hasListener(listener)
+
+ +

Les événements ont trois fonctions:

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie trues'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
changes
+
object. 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.
+
+ +
+
areaName
+
string. Le nom de la zone de stockage ("sync", "local" or "managed") auquel les modifications ont été apportées.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.storage.onChanged")}}

+ +

Exemples

+ +
/*
+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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e421d7113f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/clear/index.html +++ /dev/null @@ -1,62 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Supprime tous les éléments de la zone de stockage.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var clearing = browser.storage.<storageType>.clear()
-
- -

<storageType> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync")}} or {{WebExtAPIRef("storage.local")}}.

- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise 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..

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.storage.StorageArea.clear")}}

- -

Exemples

- -
function onCleared() {
-  console.log("OK");
-}
-
-function onError(e) {
-  console.log(e);
-}
-
-var clearStorage = browser.storage.local.clear();
-clearStorage.then(onCleared, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/clear/index.md b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/clear/index.md new file mode 100644 index 0000000000..e421d7113f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/clear/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Supprime tous les éléments de la zone de stockage.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var clearing = browser.storage.<storageType>.clear()
+
+ +

<storageType> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync")}} or {{WebExtAPIRef("storage.local")}}.

+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise 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..

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.storage.StorageArea.clear")}}

+ +

Exemples

+ +
function onCleared() {
+  console.log("OK");
+}
+
+function onError(e) {
+  console.log(e);
+}
+
+var clearStorage = browser.storage.local.clear();
+clearStorage.then(onCleared, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 29a65c3e62..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/get/index.html +++ /dev/null @@ -1,135 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Récupère un ou plusieurs éléments de la zone de stockage.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
let gettingItem = browser.storage.<storageType>.get(
-  keys    // null, string, object or array of strings
-)
-
- -

<storageType> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync", "sync")}}, {{WebExtAPIRef("storage.local", "local")}}, ou {{WebExtAPIRef("storage.managed", "managed")}}.

- -

Paramètres

- -
-
keys
-
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 null,  ou une valeur indéfinie, le contenu entier du stockage sera récupéré.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un objet de resultat contenant tous les objets dans les clefs 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  non définies seront retournées.

- -
-

Attention : Lorsqu'elle est utilisée dans un script de contenu dans les versions de Firefox antérieures à 52, la promesse retournée par browser.storage.local.get() est remplie avec un tableau contenant un objet. L'objet dans le tableau contient les clefs 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
- (scripts d'arrière-plan, popups, pages d'options, etc.). Lorsque cette API est utilisée en tant que chrome.storage.local.get(), elle transmet correctement un objet à la fonction de rappel.

-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.storage.StorageArea.get")}}

- -

Exemples

- -

Supposons que le stockage contienne deux éléments :

- -
// storage contains two items,
-// "kitten" and "monster"
-browser.storage.local.set({
-  kitten:  {name:"Mog", eats:"mice"},
-  monster: {name:"Kraken", eats:"people"}
-});
- -

Définissez les gestionnaires de réussite et d'échec pour la promesse:

- -
function onGot(item) {
-  console.log(item);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
- -

Sans arguments clefs, tout récupérez :

- -
let gettingItem = browser.storage.local.get();
-gettingItem.then(onGot, onError);
-
-// -> Object { kitten: Object, monster: Object }
- -

Avec un argument de clefs vide, ne retourne rien:

- -
// with an empty array, retrieve nothing
-let gettingItem = browser.storage.local.get([]);
-gettingItem.then(onGot, onError);
-
-// -> Object { }
- -

Avec le nom d'un objet, récupérez la correspondance :

- -
let gettingItem = browser.storage.local.get("kitten");
-gettingItem.then(onGot, onError);
-
-// -> Object { kitten: Object }
- -

Avec un tableau de noms d'objets, récupérez toutes les correspondances :

- -
let gettingItem = browser.storage.local.get(["kitten", "monster", "grapefruit"]);
-gettingItem.then(onGot, onError);
-
-// -> Object { kitten: Object, monster: Object } 
- -

Avec un objet avec des noms d'objets en tant que clefs et la valeur par défaut en tant que valeur :

- -
let gettingItem = browser.storage.local.get({
-  kitten: "no kitten",
-  monster: "no monster",
-  grapefruit: {
-    name: "Grape Fruit",
-    eats: "Water"
-  }
-});
-
-// -> Object { kitten: Object, monster: Object, grapefruit: Object }
-
- -

{{WebExtExamples}}

- -

Chrome exemples

- -
chrome.storage.local.get("kitten", function(items){
-  console.log(items.kitten);  // -> {name:"Mog", eats:"mice"}
-});
- -

Ou avec une fonction de flèche

- -
chrome.storage.local.get("kitten", items=>{
-  console.log(items.kitten); // -> {name:"Mog", eats:"mice"}
-});
- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/get/index.md b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/get/index.md new file mode 100644 index 0000000000..29a65c3e62 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/get/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Récupère un ou plusieurs éléments de la zone de stockage.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
let gettingItem = browser.storage.<storageType>.get(
+  keys    // null, string, object or array of strings
+)
+
+ +

<storageType> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync", "sync")}}, {{WebExtAPIRef("storage.local", "local")}}, ou {{WebExtAPIRef("storage.managed", "managed")}}.

+ +

Paramètres

+ +
+
keys
+
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 null,  ou une valeur indéfinie, le contenu entier du stockage sera récupéré.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un objet de resultat contenant tous les objets dans les clefs 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  non définies seront retournées.

+ +
+

Attention : Lorsqu'elle est utilisée dans un script de contenu dans les versions de Firefox antérieures à 52, la promesse retournée par browser.storage.local.get() est remplie avec un tableau contenant un objet. L'objet dans le tableau contient les clefs 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
+ (scripts d'arrière-plan, popups, pages d'options, etc.). Lorsque cette API est utilisée en tant que chrome.storage.local.get(), elle transmet correctement un objet à la fonction de rappel.

+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.storage.StorageArea.get")}}

+ +

Exemples

+ +

Supposons que le stockage contienne deux éléments :

+ +
// storage contains two items,
+// "kitten" and "monster"
+browser.storage.local.set({
+  kitten:  {name:"Mog", eats:"mice"},
+  monster: {name:"Kraken", eats:"people"}
+});
+ +

Définissez les gestionnaires de réussite et d'échec pour la promesse:

+ +
function onGot(item) {
+  console.log(item);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+ +

Sans arguments clefs, tout récupérez :

+ +
let gettingItem = browser.storage.local.get();
+gettingItem.then(onGot, onError);
+
+// -> Object { kitten: Object, monster: Object }
+ +

Avec un argument de clefs vide, ne retourne rien:

+ +
// with an empty array, retrieve nothing
+let gettingItem = browser.storage.local.get([]);
+gettingItem.then(onGot, onError);
+
+// -> Object { }
+ +

Avec le nom d'un objet, récupérez la correspondance :

+ +
let gettingItem = browser.storage.local.get("kitten");
+gettingItem.then(onGot, onError);
+
+// -> Object { kitten: Object }
+ +

Avec un tableau de noms d'objets, récupérez toutes les correspondances :

+ +
let gettingItem = browser.storage.local.get(["kitten", "monster", "grapefruit"]);
+gettingItem.then(onGot, onError);
+
+// -> Object { kitten: Object, monster: Object } 
+ +

Avec un objet avec des noms d'objets en tant que clefs et la valeur par défaut en tant que valeur :

+ +
let gettingItem = browser.storage.local.get({
+  kitten: "no kitten",
+  monster: "no monster",
+  grapefruit: {
+    name: "Grape Fruit",
+    eats: "Water"
+  }
+});
+
+// -> Object { kitten: Object, monster: Object, grapefruit: Object }
+
+ +

{{WebExtExamples}}

+ +

Chrome exemples

+ +
chrome.storage.local.get("kitten", function(items){
+  console.log(items.kitten);  // -> {name:"Mog", eats:"mice"}
+});
+ +

Ou avec une fonction de flèche

+ +
chrome.storage.local.get("kitten", items=>{
+  console.log(items.kitten); // -> {name:"Mog", eats:"mice"}
+});
+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index f16cdd0e08..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/getbytesinuse/index.html +++ /dev/null @@ -1,54 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient la quantité d'espace de stockage, en octets, utilisé un ou plusieurs éléments stockés dans la zone de stockage.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingSpace = browser.storage.<storageType>.getBytesInUse(
-  keys                      // null, string, or array of strings
-)
-
- -

<storageType> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync")}} ou {{WebExtAPIRef("storage.local")}}.

- -

Paramètres

- -
-
keys
-
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 à null ou indéfini ici, la fonction retournera l'espace utilisé par l'ensemble de la zone de stockage.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un entier, bytesUsed, représentant l'espace de stockage utilisé par les objets spécifiés dans les clefs. Si l'opération a échoué, la promesse sera rejetée avec un message d'erreur.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.storage.StorageArea.getBytesInUse")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/getbytesinuse/index.md b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/getbytesinuse/index.md new file mode 100644 index 0000000000..f16cdd0e08 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/getbytesinuse/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Obtient la quantité d'espace de stockage, en octets, utilisé un ou plusieurs éléments stockés dans la zone de stockage.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingSpace = browser.storage.<storageType>.getBytesInUse(
+  keys                      // null, string, or array of strings
+)
+
+ +

<storageType> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync")}} ou {{WebExtAPIRef("storage.local")}}.

+ +

Paramètres

+ +
+
keys
+
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 à null ou indéfini ici, la fonction retournera l'espace utilisé par l'ensemble de la zone de stockage.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un entier, bytesUsed, représentant l'espace de stockage utilisé par les objets spécifiés dans les clefs. Si l'opération a échoué, la promesse sera rejetée avec un message d'erreur.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.storage.StorageArea.getBytesInUse")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index 963e31875b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/index.html +++ /dev/null @@ -1,81 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

StorageArea est un objet représentant une zone de stockage.

- -

Type

- -

Les valeurs de ce type sont des objets.

- -

Méthodes

- -
-
{{WebExtAPIRef("storage.StorageArea.get()")}}
-
Récupère un ou plusieurs éléments de la zone de stockage..
-
{{WebExtAPIRef("storage.StorageArea.getBytesInUse()")}}
-
Obtient la quantité d'espace de stockage (en octets) utilisée pour stocker un ou plusieurs éléments dans la zone de stockage.
-
{{WebExtAPIRef("storage.StorageArea.set()")}}
-
Stocke un ou plusieurs éléments dans la zone de stockage. Si un élément existe déjà, sa valeur sera mise à jour.
-
{{WebExtAPIRef("storage.StorageArea.remove()")}}
-
Supprime un ou plusieurs éléments de la zone de stockage.
-
{{WebExtAPIRef("storage.StorageArea.clear()")}}
-
Supprime tous les éléments de la zone de stockage.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.storage.StorageArea")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/index.md b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/index.md new file mode 100644 index 0000000000..963e31875b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/index.md @@ -0,0 +1,81 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

StorageArea est un objet représentant une zone de stockage.

+ +

Type

+ +

Les valeurs de ce type sont des objets.

+ +

Méthodes

+ +
+
{{WebExtAPIRef("storage.StorageArea.get()")}}
+
Récupère un ou plusieurs éléments de la zone de stockage..
+
{{WebExtAPIRef("storage.StorageArea.getBytesInUse()")}}
+
Obtient la quantité d'espace de stockage (en octets) utilisée pour stocker un ou plusieurs éléments dans la zone de stockage.
+
{{WebExtAPIRef("storage.StorageArea.set()")}}
+
Stocke un ou plusieurs éléments dans la zone de stockage. Si un élément existe déjà, sa valeur sera mise à jour.
+
{{WebExtAPIRef("storage.StorageArea.remove()")}}
+
Supprime un ou plusieurs éléments de la zone de stockage.
+
{{WebExtAPIRef("storage.StorageArea.clear()")}}
+
Supprime tous les éléments de la zone de stockage.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.storage.StorageArea")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 1b23445b39..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/remove/index.html +++ /dev/null @@ -1,70 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Supprime un ou plusieurs éléments de la zone de stockage.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
let removingItem = browser.storage.<storageType>.remove(
-  keys             // string, or array of strings
-)
-
- -

<storageType> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync")}} ou {{WebExtAPIRef("storage.local")}}.

- -

Paramètres

- -
-
keys
-
Une chaîne ou un tableau de chaînes représentant la ou les clés de l'élément à supprimer.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.storage.StorageArea.remove")}}

- -

Exemples

- -

Supprimer un seul élément:

- -
function onRemoved() {
-  console.log("OK");
-}
-
-function onError(e) {
-  console.log(e);
-}
-
-let removeKitten = browser.storage.sync.remove("kitten");
-removeKitten.then(onRemoved, onError);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/remove/index.md b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/remove/index.md new file mode 100644 index 0000000000..1b23445b39 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/remove/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Supprime un ou plusieurs éléments de la zone de stockage.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
let removingItem = browser.storage.<storageType>.remove(
+  keys             // string, or array of strings
+)
+
+ +

<storageType> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync")}} ou {{WebExtAPIRef("storage.local")}}.

+ +

Paramètres

+ +
+
keys
+
Une chaîne ou un tableau de chaînes représentant la ou les clés de l'élément à supprimer.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.storage.StorageArea.remove")}}

+ +

Exemples

+ +

Supprimer un seul élément:

+ +
function onRemoved() {
+  console.log("OK");
+}
+
+function onError(e) {
+  console.log(e);
+}
+
+let removeKitten = browser.storage.sync.remove("kitten");
+removeKitten.then(onRemoved, onError);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
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 deleted file mode 100644 index fcd8d257a6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/set/index.html +++ /dev/null @@ -1,101 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Stocke un ou plusieurs éléments dans la zone de stockage ou met à jour les éléments existants..

- -

Lorsque vous stockez ou mettez à jour une valeur à l'aide de cette API, l'événement  {{WebExtAPIRef("storage.onChanged")}} se déclenche.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
let settingItem = browser.storage.<storageType>.set(
-  keys             // object
-)
-
- -

<storageType> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync")}} ou {{WebExtAPIRef("storage.local")}}.

- -

Paramètres

- -
-
keys
-
-

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.

- -

Les valeurs peuvent être des types primitifs tels que des nombres, des booléens et des chaînes) ou des types de tableau.

- -

Il n'est généralement pas possible de stocker d'autres types, tels que Function, Date, RegExp, Set, Map, ArrayBuffer et etc. Certains de ces types non pris en charge seront restaurés en tant qu'objet vide, et d'autres entraîneront set() à lancer une erreur. Le comportement exact ici est spécifique au navigateur.

-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.storage.StorageArea.set")}}

- -

Exemples

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/set/index.md b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/set/index.md new file mode 100644 index 0000000000..fcd8d257a6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagearea/set/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Stocke un ou plusieurs éléments dans la zone de stockage ou met à jour les éléments existants..

+ +

Lorsque vous stockez ou mettez à jour une valeur à l'aide de cette API, l'événement  {{WebExtAPIRef("storage.onChanged")}} se déclenche.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
let settingItem = browser.storage.<storageType>.set(
+  keys             // object
+)
+
+ +

<storageType> sera l'un des types de stockage accessibles en écriture — {{WebExtAPIRef("storage.sync")}} ou {{WebExtAPIRef("storage.local")}}.

+ +

Paramètres

+ +
+
keys
+
+

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.

+ +

Les valeurs peuvent être des types primitifs tels que des nombres, des booléens et des chaînes) ou des types de tableau.

+ +

Il n'est généralement pas possible de stocker d'autres types, tels que Function, Date, RegExp, Set, Map, ArrayBuffer et etc. Certains de ces types non pris en charge seront restaurés en tant qu'objet vide, et d'autres entraîneront set() à lancer une erreur. Le comportement exact ici est spécifique au navigateur.

+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.storage.StorageArea.set")}}

+ +

Exemples

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

+
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 deleted file mode 100644 index c57f065c74..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/storage/storagechange/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
StorageChange est un objet représentant une modification d'une zone de stockage.
- -

Type

- -

Les objets StorageChange contiennent les propriétés suivantes :

- -
-
oldValue{{optional_inline}}
-
L'ancienne valeur de l'article, s'il y avait une ancienne valeur. Cela peut être n'importe quel type de données.
-
newValue{{optional_inline}}
-
La nouvelle valeur de l'article, s'il y a une nouvelle valeur. Cela peut être n'importe quel type de données.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.storage.StorageChange")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/storagechange/index.md b/files/fr/mozilla/add-ons/webextensions/api/storage/storagechange/index.md new file mode 100644 index 0000000000..c57f065c74 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/storage/storagechange/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
StorageChange est un objet représentant une modification d'une zone de stockage.
+ +

Type

+ +

Les objets StorageChange contiennent les propriétés suivantes :

+ +
+
oldValue{{optional_inline}}
+
L'ancienne valeur de l'article, s'il y avait une ancienne valeur. Cela peut être n'importe quel type de données.
+
newValue{{optional_inline}}
+
La nouvelle valeur de l'article, s'il y a une nouvelle valeur. Cela peut être n'importe quel type de données.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.storage.StorageChange")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 52b1c4724f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/storage/sync/index.html +++ /dev/null @@ -1,109 +0,0 @@ ---- -title: storage.sync -slug: Mozilla/Add-ons/WebExtensions/API/storage/sync -translation_of: Mozilla/Add-ons/WebExtensions/API/storage/sync -browser-compat: webextensions.api.storage.sync ---- -
{{AddonSidebar()}}
- -

Représente la zone de stockage sync (pour la synchronisation). Les éléments stockés dans le stockage sync sont synchronisés par le navigateur et disponibles sur toutes les instances de ce navigateur auxquelles l'utilisatrice ou l'utilisateur est connecté (par exemple via la synchronisation Firefox ou un compte Google), sur différents appareils.

- -

Pour Firefox, il faut au préalable avoir coché « Modules complémentaires » dans les options « Réglages de Sync » dans « about:preferences.

- -

Notez que l'implémentation de storage.sync dans Firefox repose sur l'ID de l'extension. Si vous utilisez storage.sync, vous devez définir un ID pour votre extension à l'aide de la clé de manifeste browser_specific_settings.

- -

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.

- -

Quotas de stockage pour les données synchronisées

- -

Le navigateur impose des limites sur la quantité de données que chaque extension peut stocker dans le stockage sync :

- - - - - - - - - - - - - - - - - - - - - - - - - - -
NomDescriptionValeur en octets
Taille de stockage maximaleLa quantité totale maximale que chaque extension peut stocker dans la zone de stockage sync, telle que mesurée par la conversion en chaîne de caractères JSON de chaque valeur avec la longueur de sa clé.102400
Taille maximale d'un élémentLa taille maximale pour un élément que l'extension peut stocker dans la zone sync, telle que mesurée par la conversion en chaîne de caractères JSON de la valeur de l'élément avec la longueur de sa clé.8192
Nombre maximal d'élémentsLe nombre maximal d'éléments que chaque extension peut stocker dans l'espace de stockage sync. -

512

-
- -

Si une extension tente de stocker des éléments qui dépassent ces limites, l'appel à storage.sync.set() sera rejeté avec une erreur. Une extension peut utiliser storage.sync.getBytesInUse() afin de connaître le quota d'espace déjà utilisé.

- -

Méthodes

- -

L'objet sync implémente les méthodes définies sur le type {{WebExtAPIRef("storage.StorageArea")}} :

- -
-
storage.StorageArea.get()
-
Récupère un ou plusieurs éléments de la zone de stockage.
-
storage.StorageArea.getBytesInUse()
-
Récupère la quantité d'espace de stockage utilisée (exprimée en octets) utilisée pou un ou plusieurs éléments entreposés dans la zone de stockage.
-
storage.StorageArea.set()
-
Stocke un ou plusieurs éléments dans la zone de stockage. Si l'élément existe déjà, sa valeur est mise à jour.
-
storage.StorageArea.remove()
-
Supprime un ou plusieurs éléments de la zone de stockage.
-
storage.StorageArea.clear()
-
Supprime tous les éléments de la zone de stockage.
-
- -

Compatibilité des navigateurs

- -

{{Compat}}

- -

Remerciements :

- -

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

- - - diff --git a/files/fr/mozilla/add-ons/webextensions/api/storage/sync/index.md b/files/fr/mozilla/add-ons/webextensions/api/storage/sync/index.md new file mode 100644 index 0000000000..52b1c4724f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/storage/sync/index.md @@ -0,0 +1,109 @@ +--- +title: storage.sync +slug: Mozilla/Add-ons/WebExtensions/API/storage/sync +translation_of: Mozilla/Add-ons/WebExtensions/API/storage/sync +browser-compat: webextensions.api.storage.sync +--- +
{{AddonSidebar()}}
+ +

Représente la zone de stockage sync (pour la synchronisation). Les éléments stockés dans le stockage sync sont synchronisés par le navigateur et disponibles sur toutes les instances de ce navigateur auxquelles l'utilisatrice ou l'utilisateur est connecté (par exemple via la synchronisation Firefox ou un compte Google), sur différents appareils.

+ +

Pour Firefox, il faut au préalable avoir coché « Modules complémentaires » dans les options « Réglages de Sync » dans « about:preferences.

+ +

Notez que l'implémentation de storage.sync dans Firefox repose sur l'ID de l'extension. Si vous utilisez storage.sync, vous devez définir un ID pour votre extension à l'aide de la clé de manifeste browser_specific_settings.

+ +

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.

+ +

Quotas de stockage pour les données synchronisées

+ +

Le navigateur impose des limites sur la quantité de données que chaque extension peut stocker dans le stockage sync :

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
NomDescriptionValeur en octets
Taille de stockage maximaleLa quantité totale maximale que chaque extension peut stocker dans la zone de stockage sync, telle que mesurée par la conversion en chaîne de caractères JSON de chaque valeur avec la longueur de sa clé.102400
Taille maximale d'un élémentLa taille maximale pour un élément que l'extension peut stocker dans la zone sync, telle que mesurée par la conversion en chaîne de caractères JSON de la valeur de l'élément avec la longueur de sa clé.8192
Nombre maximal d'élémentsLe nombre maximal d'éléments que chaque extension peut stocker dans l'espace de stockage sync. +

512

+
+ +

Si une extension tente de stocker des éléments qui dépassent ces limites, l'appel à storage.sync.set() sera rejeté avec une erreur. Une extension peut utiliser storage.sync.getBytesInUse() afin de connaître le quota d'espace déjà utilisé.

+ +

Méthodes

+ +

L'objet sync implémente les méthodes définies sur le type {{WebExtAPIRef("storage.StorageArea")}} :

+ +
+
storage.StorageArea.get()
+
Récupère un ou plusieurs éléments de la zone de stockage.
+
storage.StorageArea.getBytesInUse()
+
Récupère la quantité d'espace de stockage utilisée (exprimée en octets) utilisée pou un ou plusieurs éléments entreposés dans la zone de stockage.
+
storage.StorageArea.set()
+
Stocke un ou plusieurs éléments dans la zone de stockage. Si l'élément existe déjà, sa valeur est mise à jour.
+
storage.StorageArea.remove()
+
Supprime un ou plusieurs éléments de la zone de stockage.
+
storage.StorageArea.clear()
+
Supprime tous les éléments de la zone de stockage.
+
+ +

Compatibilité des navigateurs

+ +

{{Compat}}

+ +

Remerciements :

+ +

Cette API est basée sur l'API Chromium chrome.storage. Cette documentation est dérivée de storage.json dans le code de Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+ + + 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 deleted file mode 100644 index 4813a4bfd8..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/capturetab/index.html +++ /dev/null @@ -1,100 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Crée un URI de données codant une image de la zone visible de l'onglet donné. Vous devez avoir la permission <all_urls> pour utiliser cette méthode.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var capturing = browser.tabs.captureTab(
-  tabId,               // optional integer
-  options              // optional extensionTypes.ImageDetails
-)
-
- -

Paramètres

- -
-
tabId{{optional_inline}}
-
integer. ID de l'onglet à capturer. Par défaut à l'onglet actif dans la fenêtre en cours.
-
options{{optional_inline}}
-
{{WebExtAPIRef('extensionTypes.ImageDetails')}}.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Capturez une image de l'onglet actif dans la fenêtre actuelle, avec les paramètres par défaut :

- -
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);
-});
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.captureTab")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/capturetab/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/capturetab/index.md new file mode 100644 index 0000000000..4813a4bfd8 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/capturetab/index.md @@ -0,0 +1,100 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Crée un URI de données codant une image de la zone visible de l'onglet donné. Vous devez avoir la permission <all_urls> pour utiliser cette méthode.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var capturing = browser.tabs.captureTab(
+  tabId,               // optional integer
+  options              // optional extensionTypes.ImageDetails
+)
+
+ +

Paramètres

+ +
+
tabId{{optional_inline}}
+
integer. ID de l'onglet à capturer. Par défaut à l'onglet actif dans la fenêtre en cours.
+
options{{optional_inline}}
+
{{WebExtAPIRef('extensionTypes.ImageDetails')}}.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Capturez une image de l'onglet actif dans la fenêtre actuelle, avec les paramètres par défaut :

+ +
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);
+});
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.captureTab")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+
+ + 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 deleted file mode 100644 index a606cd1e70..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/capturevisibletab/index.html +++ /dev/null @@ -1,103 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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  permission <all_urls> pour utiliser cette méthode. (Alternativement, Chrome permet l'utilisation de cette méthode avec la permission activeTab et un geste utilisateur qualifiant).

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var capturing = browser.tabs.captureVisibleTab(
-  windowId,               // optional integer
-  options                 // optional extensionTypes.ImageDetails
-)
-
- -

Paramètres

- -
-
windowId{{optional_inline}}
-
integer. La fenêtre cible Par défaut à la fenêtre actuelle.
-
options{{optional_inline}}
-
{{WebExtAPIRef('extensionTypes.ImageDetails')}}.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Capturez une image de l'onglet actif dans la fenêtre actuelle, avec les paramètres par défaut :

- -
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);
-});
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.captureVisibleTab")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/capturevisibletab/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/capturevisibletab/index.md new file mode 100644 index 0000000000..a606cd1e70 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/capturevisibletab/index.md @@ -0,0 +1,103 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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  permission <all_urls> pour utiliser cette méthode. (Alternativement, Chrome permet l'utilisation de cette méthode avec la permission activeTab et un geste utilisateur qualifiant).

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var capturing = browser.tabs.captureVisibleTab(
+  windowId,               // optional integer
+  options                 // optional extensionTypes.ImageDetails
+)
+
+ +

Paramètres

+ +
+
windowId{{optional_inline}}
+
integer. La fenêtre cible Par défaut à la fenêtre actuelle.
+
options{{optional_inline}}
+
{{WebExtAPIRef('extensionTypes.ImageDetails')}}.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Capturez une image de l'onglet actif dans la fenêtre actuelle, avec les paramètres par défaut :

+ +
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);
+});
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.captureVisibleTab")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 146df70ced..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/connect/index.html +++ /dev/null @@ -1,120 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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 scripts de contenu appartenant à cette extension et s'exécutant dans l'onglet spécifié. Cette fonction renvoie un objet {{WebExtAPIRef("runtime.Port")}}.

- -

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 Port pour échanger des messages.

- -

Pour plus de détails, voir connection-based messaging.

- -

Syntax

- -
browser.tabs.connect(
-  tabId,      // integer
-  connectInfo // optional object
-)
-
- -

Parameters

- -
-
tabId
-
integer. ID of the tab whose content scripts we want to connect to.
-
connectInfo{{optional_inline}}
-

object.

-
-
name{{optional_inline}}
-
string. Will be passed into {{WebExtAPIRef("runtime.onConnect")}} event listeners in content scripts belonging to this extension and running in the specified tab.
-
frameId{{optional_inline}}
-
integer. Open a port to a specific frame identified by frameId instead of all frames in the tab.
-
-
-
- -

Return value

- -

{{WebExtAPIRef('runtime.Port')}}. A port that can be used to communicate with the content scripts running in the specified tab.

- -

Examples

- -

In this example a background script listens for a click on a browser action, then connects to the currently active tab, then sends a message using the Port that's returned from connect():

- -
function connectToTab(tabs) {
-  if (tabs.length > 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);
-});
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.connect")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/connect/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/connect/index.md new file mode 100644 index 0000000000..146df70ced --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/connect/index.md @@ -0,0 +1,120 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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 scripts de contenu appartenant à cette extension et s'exécutant dans l'onglet spécifié. Cette fonction renvoie un objet {{WebExtAPIRef("runtime.Port")}}.

+ +

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 Port pour échanger des messages.

+ +

Pour plus de détails, voir connection-based messaging.

+ +

Syntax

+ +
browser.tabs.connect(
+  tabId,      // integer
+  connectInfo // optional object
+)
+
+ +

Parameters

+ +
+
tabId
+
integer. ID of the tab whose content scripts we want to connect to.
+
connectInfo{{optional_inline}}
+

object.

+
+
name{{optional_inline}}
+
string. Will be passed into {{WebExtAPIRef("runtime.onConnect")}} event listeners in content scripts belonging to this extension and running in the specified tab.
+
frameId{{optional_inline}}
+
integer. Open a port to a specific frame identified by frameId instead of all frames in the tab.
+
+
+
+ +

Return value

+ +

{{WebExtAPIRef('runtime.Port')}}. A port that can be used to communicate with the content scripts running in the specified tab.

+ +

Examples

+ +

In this example a background script listens for a click on a browser action, then connects to the currently active tab, then sends a message using the Port that's returned from connect():

+ +
function connectToTab(tabs) {
+  if (tabs.length > 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);
+});
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.connect")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 95244d6e3e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/create/index.html +++ /dev/null @@ -1,137 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Crée un nouvel onglet

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var creating = browser.tabs.create(
-  createProperties   // object
-)
-
- -

Paramètres

- -
-
createProperties
-

object.Propriétés pour donner le nouvel onglet. Pour en savoir plus sur ces propriétés, consultez la documentation {{WebExtAPIRef("tabs.Tab")}}.

-
-
active{{optional_inline}}
-
boolean. Si l'onglet doit devenir l'onglet actif dans la fenêtre. Si elle est false, elle n'a aucun effet. N'affecte pas si la fenêtre est mise au point (voir {{WebExtAPIRef('windows.update')}}). Par défaut à  true.
-
cookieStoreId {{optional_inline}}
-
string. Utilisez-le pour créer un onglet dont l'ID de cookie estCette option n'est disponible que si l'extension a  la  permission "cookies".
-
index{{optional_inline}}
-
integer. 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.
-
openerTabId{{optional_inline}}
-
integer. 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éé.
-
openInReaderMode{{optional_inline}}
-
boolean. si true, ouvrez cet onglet en mode lecture. Par défaut à  false.
-
pinned{{optional_inline}}
-
boolean. Si l'onglet doit être épinglé. Par défaut à false.
-
selected{{optional_inline}}
-

boolean. Si l'onglet doit devenir l'onglet sélectionné dans la fenêtre. Par défaut à true.

-

Attention : Cette propriété est obsolète et n'est pas prise en charge dans Firefox. Utilisez  actif à la place.

-
-
url{{optional_inline}}
-

string. 'URL permettant de naviguer dans l'onglet initialement. Par défaut à la page Nouvel onglet.

-

Les URL complètes doivent inclure un schéma (i.e. 'http://www.google.com', par 'www.google.com').

-

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 :

-
    -
  • chrome: URLs
  • -
  • javascript: URLs
  • -
  • data: URLs
  • -
  • 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)
  • -
  • privileged about: URLs (par exemple, about:config, about:addons, about:debugging). Les URL non privilégiées (e.g., about:blank) sont autorisés.
  • -
  • La page Nouvel onglet (about:newtab) peut être ouverte si aucune valeur n'est fournie pour l'URL.
  • -
- -

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.

-
-
windowId{{optional_inline}}
-
integer. La fenêtre pour créer le nouvel onglet. Par défaut à la fenêtre actuelle.
-
-
-
- -

Valeur retournée

- -

A Promise 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 url used a privileged scheme) the promise will be rejected with an error message.

- -

Exemples

- -

Ouvre "https://example.org" dans un nouvel onglet :

- -
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);
-});
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.create", 10)}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/create/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/create/index.md new file mode 100644 index 0000000000..95244d6e3e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/create/index.md @@ -0,0 +1,137 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Crée un nouvel onglet

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var creating = browser.tabs.create(
+  createProperties   // object
+)
+
+ +

Paramètres

+ +
+
createProperties
+

object.Propriétés pour donner le nouvel onglet. Pour en savoir plus sur ces propriétés, consultez la documentation {{WebExtAPIRef("tabs.Tab")}}.

+
+
active{{optional_inline}}
+
boolean. Si l'onglet doit devenir l'onglet actif dans la fenêtre. Si elle est false, elle n'a aucun effet. N'affecte pas si la fenêtre est mise au point (voir {{WebExtAPIRef('windows.update')}}). Par défaut à  true.
+
cookieStoreId {{optional_inline}}
+
string. Utilisez-le pour créer un onglet dont l'ID de cookie estCette option n'est disponible que si l'extension a  la  permission "cookies".
+
index{{optional_inline}}
+
integer. 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.
+
openerTabId{{optional_inline}}
+
integer. 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éé.
+
openInReaderMode{{optional_inline}}
+
boolean. si true, ouvrez cet onglet en mode lecture. Par défaut à  false.
+
pinned{{optional_inline}}
+
boolean. Si l'onglet doit être épinglé. Par défaut à false.
+
selected{{optional_inline}}
+

boolean. Si l'onglet doit devenir l'onglet sélectionné dans la fenêtre. Par défaut à true.

+

Attention : Cette propriété est obsolète et n'est pas prise en charge dans Firefox. Utilisez  actif à la place.

+
+
url{{optional_inline}}
+

string. 'URL permettant de naviguer dans l'onglet initialement. Par défaut à la page Nouvel onglet.

+

Les URL complètes doivent inclure un schéma (i.e. 'http://www.google.com', par 'www.google.com').

+

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 :

+
    +
  • chrome: URLs
  • +
  • javascript: URLs
  • +
  • data: URLs
  • +
  • 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)
  • +
  • privileged about: URLs (par exemple, about:config, about:addons, about:debugging). Les URL non privilégiées (e.g., about:blank) sont autorisés.
  • +
  • La page Nouvel onglet (about:newtab) peut être ouverte si aucune valeur n'est fournie pour l'URL.
  • +
+ +

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.

+
+
windowId{{optional_inline}}
+
integer. La fenêtre pour créer le nouvel onglet. Par défaut à la fenêtre actuelle.
+
+
+
+ +

Valeur retournée

+ +

A Promise 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 url used a privileged scheme) the promise will be rejected with an error message.

+ +

Exemples

+ +

Ouvre "https://example.org" dans un nouvel onglet :

+ +
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);
+});
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.create", 10)}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 8a9a96a508..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/detectlanguage/index.html +++ /dev/null @@ -1,127 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Détecte la langue principale du contenu dans un onglet, en utilisant le détecteur de langue compact (CLD).

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var detecting = browser.tabs.detectLanguage(
-  tabId,                  // optional integer
-  callback                // optional function
-)
-
- -

Paramètres

- -
-
tabId {{optional_inline}}
-
integer. Par défaut à l'onglet actif de la fenêtre en cours.
-
callback {{optional_inline}}
-
function. Actuellement, si un tabId 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é en ou fr.
-
- -

Valeur retournée

- -

Une Promisequi sera remplie avec une chaîne représentant un code de langue ISO tel que en ou fr. Pour une liste complète des langues prises en charge par cette méthode, see kLanguageInfoTable. Pour une langue inconnue, "und" sera retourné (mais voir bug 1288263). Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

- -

Exemples

- -

Détecter et enregistrer la langue de l'onglet actif lorsque l'utilisateur clique sur une action du navigateur :

- -
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);
-});
- -

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 permission "tabs") :

- -
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);
-});
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.tabs.detectLanguage")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/detectlanguage/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/detectlanguage/index.md new file mode 100644 index 0000000000..8a9a96a508 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/detectlanguage/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Détecte la langue principale du contenu dans un onglet, en utilisant le détecteur de langue compact (CLD).

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var detecting = browser.tabs.detectLanguage(
+  tabId,                  // optional integer
+  callback                // optional function
+)
+
+ +

Paramètres

+ +
+
tabId {{optional_inline}}
+
integer. Par défaut à l'onglet actif de la fenêtre en cours.
+
callback {{optional_inline}}
+
function. Actuellement, si un tabId 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é en ou fr.
+
+ +

Valeur retournée

+ +

Une Promisequi sera remplie avec une chaîne représentant un code de langue ISO tel que en ou fr. Pour une liste complète des langues prises en charge par cette méthode, see kLanguageInfoTable. Pour une langue inconnue, "und" sera retourné (mais voir bug 1288263). Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

+ +

Exemples

+ +

Détecter et enregistrer la langue de l'onglet actif lorsque l'utilisateur clique sur une action du navigateur :

+ +
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);
+});
+ +

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 permission "tabs") :

+ +
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);
+});
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.tabs.detectLanguage")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index c1dd5c9470..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/discard/index.html +++ /dev/null @@ -1,113 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Rejette un ou plusieurs onglets.

- -

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é.

- -

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.

- -

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 beforeunload qui afficherait une invite.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var discarding = browser.tabs.discard(
-  tabIds          // integer or integer array
-)
-
- -

Paramètres

- -
-
tabIds
-
integer or array of integer. Les ID de l'onglet ou des onglets à ignorer.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Supprimer un seul onglet :

- -
function onDiscarded() {
-  console.log(`Discarded`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var discarding = browser.tabs.discard(2);
-discarding.then(onDiscarded, onError);
- -

Ignorer plusieurs onglets :

- -
function onDiscarded() {
-  console.log(`Discarded`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var discarding = browser.tabs.discard([15, 14, 1]);
-discarding.then(onDiscarded, onError);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.discard", 10)}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/discard/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/discard/index.md new file mode 100644 index 0000000000..c1dd5c9470 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/discard/index.md @@ -0,0 +1,113 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Rejette un ou plusieurs onglets.

+ +

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é.

+ +

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.

+ +

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 beforeunload qui afficherait une invite.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var discarding = browser.tabs.discard(
+  tabIds          // integer or integer array
+)
+
+ +

Paramètres

+ +
+
tabIds
+
integer or array of integer. Les ID de l'onglet ou des onglets à ignorer.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Supprimer un seul onglet :

+ +
function onDiscarded() {
+  console.log(`Discarded`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var discarding = browser.tabs.discard(2);
+discarding.then(onDiscarded, onError);
+ +

Ignorer plusieurs onglets :

+ +
function onDiscarded() {
+  console.log(`Discarded`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var discarding = browser.tabs.discard([15, 14, 1]);
+discarding.then(onDiscarded, onError);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.discard", 10)}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs.

+
+ + 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 deleted file mode 100644 index 177cec75a3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/duplicate/index.html +++ /dev/null @@ -1,120 +0,0 @@ ---- -title: tabs.duplicate() -slug: Mozilla/Add-ons/WebExtensions/API/tabs/duplicate -translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/duplicate -browser-compat: webextensions.api.tabs.duplicate ---- -
{{AddonSidebar()}}
- -

Duplique un onglet dont l'identifiant est donné.

- -

Il s'agit d'une fonction asynchrone qui renvoie une promesse (Promise).

- -

Syntaxe

- -
-let duplicating = browser.tabs.duplicate(
-  tabId,              // entier
-  duplicateProperties // objet optionnel
-);
-
- -

Paramètres

- -
-
tabId
-
integer. L'identifiant de l'onglet à dupliquer.
-
duplicateProperties Optionnel
-

object. Un objet décrivant la façon dont l'onglet est dupliqué. Il contient les propriétés suivantes :

-
-
index Optionnel
-
integer. La position du nouvel onglet dans la fenêtre. La valeur est restreinte à l'intervalle entre zéro et le nombre d'onglets dans la fenêtre.
-
active Optionnel
-
-

boolean. Si l'onglet devient l'onglet actif dans la fenêtre. Cela ne change pas l'état du focus pour la fenêtre. true par défaut.

-
-
-
-
- -

Valeur de retour

- -

Une promesse (Promise) dont la valeur de résolution sera un objet tabs.Tab contenant des détails sur l'onglet dupliqué. L'objet Tab contiendra les propriétés url, title et favIconUrl uniquement si l'extension dispose de la permission "tabs" ou lorsque l'hôte correspond à un hôte ciblé dans les permissions. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

- -
-

Note : À partir de Firefox 68, la promesse renvoyée par browser.tabs.duplicate() se résout dès que l'onglet a été dupliqué. Auparavant, la promesse n'était résolue qu'une fois l'onglet entièrement chargé.

-
- -

Exemples

- -

Duplique le premier onglet, puis affiche l'identifiant de l'onglet nouvellement créé :

- -
-function onDuplicated(tabInfo) {
-  console.log(tabInfo.id);
-}
-
-function onError(error) {
-  console.error(error);
-}
-
-// Duplique le premier onglet du tableau
-function duplicateFirstTab(tabs) {
-  console.log(tabs);
-  if (tabs.length > 0) {
-    let duplicating = browser.tabs.duplicate(tabs[0].id);
-    duplicating.then(onDuplicated, onError);
-  }
-}
-
-// On récupère tous les onglets ouverts
-let querying = browser.tabs.query({});
-querying.then(duplicateFirstTab, onError);
- -

Exemple d'extensions

- - - -

Compatibilité des navigateurs

- -

{{Compat}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/duplicate/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/duplicate/index.md new file mode 100644 index 0000000000..177cec75a3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/duplicate/index.md @@ -0,0 +1,120 @@ +--- +title: tabs.duplicate() +slug: Mozilla/Add-ons/WebExtensions/API/tabs/duplicate +translation_of: Mozilla/Add-ons/WebExtensions/API/tabs/duplicate +browser-compat: webextensions.api.tabs.duplicate +--- +
{{AddonSidebar()}}
+ +

Duplique un onglet dont l'identifiant est donné.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une promesse (Promise).

+ +

Syntaxe

+ +
+let duplicating = browser.tabs.duplicate(
+  tabId,              // entier
+  duplicateProperties // objet optionnel
+);
+
+ +

Paramètres

+ +
+
tabId
+
integer. L'identifiant de l'onglet à dupliquer.
+
duplicateProperties Optionnel
+

object. Un objet décrivant la façon dont l'onglet est dupliqué. Il contient les propriétés suivantes :

+
+
index Optionnel
+
integer. La position du nouvel onglet dans la fenêtre. La valeur est restreinte à l'intervalle entre zéro et le nombre d'onglets dans la fenêtre.
+
active Optionnel
+
+

boolean. Si l'onglet devient l'onglet actif dans la fenêtre. Cela ne change pas l'état du focus pour la fenêtre. true par défaut.

+
+
+
+
+ +

Valeur de retour

+ +

Une promesse (Promise) dont la valeur de résolution sera un objet tabs.Tab contenant des détails sur l'onglet dupliqué. L'objet Tab contiendra les propriétés url, title et favIconUrl uniquement si l'extension dispose de la permission "tabs" ou lorsque l'hôte correspond à un hôte ciblé dans les permissions. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

+ +
+

Note : À partir de Firefox 68, la promesse renvoyée par browser.tabs.duplicate() se résout dès que l'onglet a été dupliqué. Auparavant, la promesse n'était résolue qu'une fois l'onglet entièrement chargé.

+
+ +

Exemples

+ +

Duplique le premier onglet, puis affiche l'identifiant de l'onglet nouvellement créé :

+ +
+function onDuplicated(tabInfo) {
+  console.log(tabInfo.id);
+}
+
+function onError(error) {
+  console.error(error);
+}
+
+// Duplique le premier onglet du tableau
+function duplicateFirstTab(tabs) {
+  console.log(tabs);
+  if (tabs.length > 0) {
+    let duplicating = browser.tabs.duplicate(tabs[0].id);
+    duplicating.then(onDuplicated, onError);
+  }
+}
+
+// On récupère tous les onglets ouverts
+let querying = browser.tabs.query({});
+querying.then(duplicateFirstTab, onError);
+ +

Exemple d'extensions

+ + + +

Compatibilité des navigateurs

+ +

{{Compat}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 0b790a369a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/executescript/index.html +++ /dev/null @@ -1,173 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Injecte du code JavaScript dans une page.

- -

Vous pouvez injecter du code dans des pages dont l'URL peut être exprimée à l'aide d'un modèle de correspondance : 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 permission d'hôte, ou via la permission activeTab.

- -

Vous pouvez également injecter du code dans des pages empaquetées avec votre propre extension :

- -
browser.tabs.create({url: "/my-page.html"}).then(() => {
-  browser.tabs.executeScript({
-    code: `console.log('location:', window.location.href);`
-  });
-});
- -

Vous n'avez pas besoin de permissions spéciales pour le faire.

- -

Vous ne pouvez pas 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.

- -

Les scripts que vous injectez s’appellent des scripts de contenu. En savoir plus sur les scripts de contenu.

- -

Il s’agit d’une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var executing = browser.tabs.executeScript(
-  tabId,                 // optional integer
-  details                // object
-)
-
- -

Paramètres

- -
-
tabId {{optional_inline}}
-
integer. L’ID de l’onglet dans lequel exécuter le script. Par défaut, l’onglet actif de la fenêtre en cours.
-
details
-

Un objet décrivant le script à exécuter. Il contient les propriétés suivantes :

-
-
allFrames {{optional_inline}}
-
boolean. Si true, le code sera injecté dans toutes les cadres de la page courante. Si true et frameId est défini, alors il y aura une erreur, frameId et allFrames sont mutuellement exclusifs. Si c'est false, le code n'est injecté que dans le cadre supérieur. La valeur par défaut est false.
-
code {{optional_inline}}
-
string. Code à injecter, sous la forme d’une chaine de texte. Attention : 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é.
-
file {{optional_inline}}
-
string. 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 : "/path/to/script.js".
-
frameId {{optional_inline}}
-
integer. Le cadre où le code doit être injecté. La valeur par défaut est 0 (le cadre de niveau supérieur).
-
matchAboutBlank {{optional_inline}}
-
boolean. Si true, le code sera injecté dans des cadres about:blank et about:srcdoc inclus depuis une page si votre extension a accès à leur document parent. Le code ne peut pas être inséré dans les cadres about: de niveau supérieur. Par défaut, false.
-
runAt {{optional_inline}}
-
{{WebExtAPIRef('extensionTypes.RunAt')}}. Le moment le plus tôt auquel le code sera injecté dans l’onglet. Par défaut, document_idle.
-
-
-
- -

Valeur de retour

- -

Une Promise résolue avec un tableau d’objets représentant le résultat du script dans chaque cadre où le script a été injecté.

- -

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 console.log()) si vous exécutiez le script dans la Console Web. Par exemple, considérez un script comme celui-ci :

- -
var foo='my result';foo;
- -

Ici, le tableau des résultats contiendra la chaîne "my result" en tant qu’élément. Les valeurs de résultat doivent être clonables tructurées. La dernière déclaration peut également être une Promise, mais cette fonctionnalité n'est pas supportée par la bibliothèque webextension-polyfill.
- Si une erreur se produit, la promesse sera rejetée avec un message d’erreur.

- -

Exemples

- -

Cet exemple exécute un extrait de code d’une ligne dans l’onglet actuellement actif :

- -
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);
- -

L’exemple suivant exécute un script à partir d’un fichier empaqueté avec l’extension appelé content-script.js. 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 :

- -
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);
- -

L’exemple suivant exécute un script à partir d’un fichier empaqueté avec l’extension appelé content-script.js. Le script est exécuté dans l’onglet ayant l’ID 2 :

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.api.tabs.executeScript")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/executescript/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/executescript/index.md new file mode 100644 index 0000000000..0b790a369a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/executescript/index.md @@ -0,0 +1,173 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Injecte du code JavaScript dans une page.

+ +

Vous pouvez injecter du code dans des pages dont l'URL peut être exprimée à l'aide d'un modèle de correspondance : 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 permission d'hôte, ou via la permission activeTab.

+ +

Vous pouvez également injecter du code dans des pages empaquetées avec votre propre extension :

+ +
browser.tabs.create({url: "/my-page.html"}).then(() => {
+  browser.tabs.executeScript({
+    code: `console.log('location:', window.location.href);`
+  });
+});
+ +

Vous n'avez pas besoin de permissions spéciales pour le faire.

+ +

Vous ne pouvez pas 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.

+ +

Les scripts que vous injectez s’appellent des scripts de contenu. En savoir plus sur les scripts de contenu.

+ +

Il s’agit d’une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var executing = browser.tabs.executeScript(
+  tabId,                 // optional integer
+  details                // object
+)
+
+ +

Paramètres

+ +
+
tabId {{optional_inline}}
+
integer. L’ID de l’onglet dans lequel exécuter le script. Par défaut, l’onglet actif de la fenêtre en cours.
+
details
+

Un objet décrivant le script à exécuter. Il contient les propriétés suivantes :

+
+
allFrames {{optional_inline}}
+
boolean. Si true, le code sera injecté dans toutes les cadres de la page courante. Si true et frameId est défini, alors il y aura une erreur, frameId et allFrames sont mutuellement exclusifs. Si c'est false, le code n'est injecté que dans le cadre supérieur. La valeur par défaut est false.
+
code {{optional_inline}}
+
string. Code à injecter, sous la forme d’une chaine de texte. Attention : 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é.
+
file {{optional_inline}}
+
string. 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 : "/path/to/script.js".
+
frameId {{optional_inline}}
+
integer. Le cadre où le code doit être injecté. La valeur par défaut est 0 (le cadre de niveau supérieur).
+
matchAboutBlank {{optional_inline}}
+
boolean. Si true, le code sera injecté dans des cadres about:blank et about:srcdoc inclus depuis une page si votre extension a accès à leur document parent. Le code ne peut pas être inséré dans les cadres about: de niveau supérieur. Par défaut, false.
+
runAt {{optional_inline}}
+
{{WebExtAPIRef('extensionTypes.RunAt')}}. Le moment le plus tôt auquel le code sera injecté dans l’onglet. Par défaut, document_idle.
+
+
+
+ +

Valeur de retour

+ +

Une Promise résolue avec un tableau d’objets représentant le résultat du script dans chaque cadre où le script a été injecté.

+ +

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 console.log()) si vous exécutiez le script dans la Console Web. Par exemple, considérez un script comme celui-ci :

+ +
var foo='my result';foo;
+ +

Ici, le tableau des résultats contiendra la chaîne "my result" en tant qu’élément. Les valeurs de résultat doivent être clonables tructurées. La dernière déclaration peut également être une Promise, mais cette fonctionnalité n'est pas supportée par la bibliothèque webextension-polyfill.
+ Si une erreur se produit, la promesse sera rejetée avec un message d’erreur.

+ +

Exemples

+ +

Cet exemple exécute un extrait de code d’une ligne dans l’onglet actuellement actif :

+ +
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);
+ +

L’exemple suivant exécute un script à partir d’un fichier empaqueté avec l’extension appelé content-script.js. 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 :

+ +
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);
+ +

L’exemple suivant exécute un script à partir d’un fichier empaqueté avec l’extension appelé content-script.js. Le script est exécuté dans l’onglet ayant l’ID 2 :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.api.tabs.executeScript")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+
+ + 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 deleted file mode 100644 index c889a95e70..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/get/index.html +++ /dev/null @@ -1,95 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Étant donné un ID d'onglet, obtenez les détails de l'onglet en tant qu'objet {{WebExtAPIRef("tabs.Tab")}}.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getting = browser.tabs.get(
-  tabId              // integer
-)
-
- -

Paramètres

- -
-
tabId
-
integer. ID de l'onglet à obtenir.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Obtenir des informations sur un onglet lorsqu'il est activé :

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.get")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/get/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/get/index.md new file mode 100644 index 0000000000..c889a95e70 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/get/index.md @@ -0,0 +1,95 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Étant donné un ID d'onglet, obtenez les détails de l'onglet en tant qu'objet {{WebExtAPIRef("tabs.Tab")}}.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getting = browser.tabs.get(
+  tabId              // integer
+)
+
+ +

Paramètres

+ +
+
tabId
+
integer. ID de l'onglet à obtenir.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Obtenir des informations sur un onglet lorsqu'il est activé :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.get")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+
+ + 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 deleted file mode 100644 index da8b786701..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/getallinwindow/index.html +++ /dev/null @@ -1,88 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}} -
-

Deprecated
- Cette méthode est dépréciée. Utilisez {{WebExtAPIRef("tabs.query", "tabs.query({currentWindow: true})")}} à la place.

-
-
- -

Obtient des détails sur tous les onglets de la fenêtre spécifiée.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getting = browser.tabs.getAllInWindow(
-  windowId            // optional integer
-)
-
- -

Paramètres

- -
-
windowId{{Optional_Inline}}
-
integer. Par défaut à la fenêtre actuelle.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un tableau d'ojets {{WebExtAPIRef('tabs.Tab')}} 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.getAllInWindow")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/getallinwindow/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/getallinwindow/index.md new file mode 100644 index 0000000000..da8b786701 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/getallinwindow/index.md @@ -0,0 +1,88 @@ +--- +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 +--- +
{{AddonSidebar}} +
+

Deprecated
+ Cette méthode est dépréciée. Utilisez {{WebExtAPIRef("tabs.query", "tabs.query({currentWindow: true})")}} à la place.

+
+
+ +

Obtient des détails sur tous les onglets de la fenêtre spécifiée.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getting = browser.tabs.getAllInWindow(
+  windowId            // optional integer
+)
+
+ +

Paramètres

+ +
+
windowId{{Optional_Inline}}
+
integer. Par défaut à la fenêtre actuelle.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un tableau d'ojets {{WebExtAPIRef('tabs.Tab')}} 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.getAllInWindow")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index ee26a84063..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/getcurrent/index.html +++ /dev/null @@ -1,94 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtenez un {{WebExtAPIRef("tabs.Tab")}} contenant des informations sur l'onglet dans lequel ce script s'exécute.

- -

Vous pouvez appeler cette fonction dans des contextes comportant un onglet de navigateur, par exemple une pages d'options. Si vous l'appelez à partir d'un script d'arrière-plan ou d'une fenêtre contextuelle, elle renverra undefined.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingCurrent = browser.tabs.getCurrent()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Obtenir les informations sur l'onglet en cours :

- -
function onGot(tabInfo) {
-  console.log(tabInfo);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var gettingCurrent = browser.tabs.getCurrent();
-gettingCurrent.then(onGot, onError);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.getCurrent")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/getcurrent/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/getcurrent/index.md new file mode 100644 index 0000000000..ee26a84063 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/getcurrent/index.md @@ -0,0 +1,94 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtenez un {{WebExtAPIRef("tabs.Tab")}} contenant des informations sur l'onglet dans lequel ce script s'exécute.

+ +

Vous pouvez appeler cette fonction dans des contextes comportant un onglet de navigateur, par exemple une pages d'options. Si vous l'appelez à partir d'un script d'arrière-plan ou d'une fenêtre contextuelle, elle renverra undefined.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingCurrent = browser.tabs.getCurrent()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Obtenir les informations sur l'onglet en cours :

+ +
function onGot(tabInfo) {
+  console.log(tabInfo);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var gettingCurrent = browser.tabs.getCurrent();
+gettingCurrent.then(onGot, onError);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.getCurrent")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 20fe260b83..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/getselected/index.html +++ /dev/null @@ -1,87 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

Attention : Cette méthode est dépréciée. utilisez {{WebExtAPIRef("tabs.query", "tabs.query({active: true})")}} à la place.

-
- -

Obtient l'onglet sélectionné dans la fenêtre spécifiée

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingSelected = browser.tabs.getSelected(
-  windowId           // optional integer
-)
-
- -

Paramètres

- -
-
windowId{{optional_inline}}
-
integer. Par défaut à la fenêtre actuelle.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un objet tabs.Tab 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.getSelected")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/getselected/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/getselected/index.md new file mode 100644 index 0000000000..20fe260b83 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/getselected/index.md @@ -0,0 +1,87 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

Attention : Cette méthode est dépréciée. utilisez {{WebExtAPIRef("tabs.query", "tabs.query({active: true})")}} à la place.

+
+ +

Obtient l'onglet sélectionné dans la fenêtre spécifiée

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingSelected = browser.tabs.getSelected(
+  windowId           // optional integer
+)
+
+ +

Paramètres

+ +
+
windowId{{optional_inline}}
+
integer. Par défaut à la fenêtre actuelle.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un objet tabs.Tab 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.getSelected")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 7b97eca351..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoom/index.html +++ /dev/null @@ -1,110 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient le facteur de zoom actuel pour l'onglet spécifié.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingZoom = browser.tabs.getZoom(
-  tabId                     // optional integer
-)
-
- -

Paramètres

- -
-
tabId{{optional_inline}}
-
integer. L'ID de l'onglet pour obtenir le facteur de zoom actuel. Par défaut à l'onglet actif de la fenêtre en cours.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Obtenez le facteur de zoom  pour l'onglet actuel :

- -
function onGot(zoom) {
-  console.log(zoom);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var gettingZoom = browser.tabs.getZoom();
-gettingZoom.then(onGot, onError);
- -

Obtenez le facteur zoom pour l'onglet dont l'ID est 2:

- -
function onGot(zoom) {
-  console.log(zoom);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var gettingZoom = browser.tabs.getZoom(2);
-gettingZoom.then(onGot, onError);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.getZoom")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoom/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoom/index.md new file mode 100644 index 0000000000..7b97eca351 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoom/index.md @@ -0,0 +1,110 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient le facteur de zoom actuel pour l'onglet spécifié.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingZoom = browser.tabs.getZoom(
+  tabId                     // optional integer
+)
+
+ +

Paramètres

+ +
+
tabId{{optional_inline}}
+
integer. L'ID de l'onglet pour obtenir le facteur de zoom actuel. Par défaut à l'onglet actif de la fenêtre en cours.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Obtenez le facteur de zoom  pour l'onglet actuel :

+ +
function onGot(zoom) {
+  console.log(zoom);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var gettingZoom = browser.tabs.getZoom();
+gettingZoom.then(onGot, onError);
+ +

Obtenez le facteur zoom pour l'onglet dont l'ID est 2:

+ +
function onGot(zoom) {
+  console.log(zoom);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var gettingZoom = browser.tabs.getZoom(2);
+gettingZoom.then(onGot, onError);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.getZoom")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 89934d27f2..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoomsettings/index.html +++ /dev/null @@ -1,97 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient les paramètres de zoom actuels pour un onglet spécifié.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingZoomSettings = browser.tabs.getZoomSettings(
-  tabId                       // optional integer
-)
-
- -

Paramètres

- -
-
tabId{{optional_inline}}
-
integer. 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.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Obtenez les paramètres de zoom pour l'onglet en cours :

- -
function onGot(settings) {
-  console.log(settings);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var gettingZoomSettings = browser.tabs.getZoomSettings();
-gettingZoomSettings.then(onGot, onError);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.getZoomSettings")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoomsettings/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoomsettings/index.md new file mode 100644 index 0000000000..89934d27f2 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/getzoomsettings/index.md @@ -0,0 +1,97 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient les paramètres de zoom actuels pour un onglet spécifié.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingZoomSettings = browser.tabs.getZoomSettings(
+  tabId                       // optional integer
+)
+
+ +

Paramètres

+ +
+
tabId{{optional_inline}}
+
integer. 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.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Obtenez les paramètres de zoom pour l'onglet en cours :

+ +
function onGot(settings) {
+  console.log(settings);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var gettingZoomSettings = browser.tabs.getZoomSettings();
+gettingZoomSettings.then(onGot, onError);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.getZoomSettings")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index f0c2dc8c64..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/goback/index.html +++ /dev/null @@ -1,101 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Naviguer à la page précédente dans l'historique de l'onglet, si disponible.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var  withgoingBack = browser.tabs.goBack(
-  tabId,                  // optional integer
-  callback                  // optional function
-)
-
- -

Paramètres

- -
-
tabId{{optional_inline}}
-
integer. L'ID de l'onglet à naviguer. Par défaut, l'onglet actif de la fenêtre en cours.
-
callback{{optional_inline}}
-
function. Lorsque la navigation sur la page se termine, cette fonction est appelée sans paramètres.
-
- -

Valeur retournée

- -

Une Promise qui est tenue lorsque la navigation sur la page se termine.

- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.tabs.goBack")}}

- -

Exemples

- -

Retournez à la page précédente dans l'onglet en cours :

- -
function onGoBack() {
-  console.log("Gone back");
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var goingBack = browser.tabs.goBack();
-goingBack.then(onGoBack, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/goback/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/goback/index.md new file mode 100644 index 0000000000..f0c2dc8c64 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/goback/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Naviguer à la page précédente dans l'historique de l'onglet, si disponible.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var  withgoingBack = browser.tabs.goBack(
+  tabId,                  // optional integer
+  callback                  // optional function
+)
+
+ +

Paramètres

+ +
+
tabId{{optional_inline}}
+
integer. L'ID de l'onglet à naviguer. Par défaut, l'onglet actif de la fenêtre en cours.
+
callback{{optional_inline}}
+
function. Lorsque la navigation sur la page se termine, cette fonction est appelée sans paramètres.
+
+ +

Valeur retournée

+ +

Une Promise qui est tenue lorsque la navigation sur la page se termine.

+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.tabs.goBack")}}

+ +

Exemples

+ +

Retournez à la page précédente dans l'onglet en cours :

+ +
function onGoBack() {
+  console.log("Gone back");
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var goingBack = browser.tabs.goBack();
+goingBack.then(onGoBack, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index fce5647bc7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/goforward/index.html +++ /dev/null @@ -1,101 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Passez à la page suivante dans l'historique de l'onglet, si disponible.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var goingForward = browser.tabs.goForward(
-  tabId,                       // optional integer
-  callback                     // optional function
-)
-
- -

Paramètres

- -
-
tabId{{optional_inline}}
-
integer. L'ID de l'onglet à naviguer. Par défaut, l'onglet actif de la fenêtre en cours.
-
callback{{optional_inline}}
-
function. Lorsque la navigation sur la page se termine, cette fonction est appelée sans paramètres.
-
- -

Valeur retournée

- -

Une Promise qui est tenue lorsque la navigation sur la page se termine.

- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.tabs.goForward")}}

- -

Exemples

- -

Passez à la page suivante dans l'onglet en cours :

- -
function onGoForward() {
-  console.log("Gone forward");
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var goingForward = browser.tabs.goForward();
-goingForward.then(onGoForward, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API chrome.tabs de Chromium.Cette documentation est dérivée de tabs.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/goforward/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/goforward/index.md new file mode 100644 index 0000000000..fce5647bc7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/goforward/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Passez à la page suivante dans l'historique de l'onglet, si disponible.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var goingForward = browser.tabs.goForward(
+  tabId,                       // optional integer
+  callback                     // optional function
+)
+
+ +

Paramètres

+ +
+
tabId{{optional_inline}}
+
integer. L'ID de l'onglet à naviguer. Par défaut, l'onglet actif de la fenêtre en cours.
+
callback{{optional_inline}}
+
function. Lorsque la navigation sur la page se termine, cette fonction est appelée sans paramètres.
+
+ +

Valeur retournée

+ +

Une Promise qui est tenue lorsque la navigation sur la page se termine.

+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.tabs.goForward")}}

+ +

Exemples

+ +

Passez à la page suivante dans l'onglet en cours :

+ +
function onGoForward() {
+  console.log("Gone forward");
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var goingForward = browser.tabs.goForward();
+goingForward.then(onGoForward, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API chrome.tabs de Chromium.Cette documentation est dérivée de tabs.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 5686440252..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/hide/index.html +++ /dev/null @@ -1,87 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Masque un ou plusieurs onglets.

- -

Les onglets cachés ne sont plus visibles dans l'onglet du navigateur. Les onglets cachés ne sont pas automatiquement supprimés :  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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Tous les onglets ne peuvent pas être masqués :

- - - -

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.

- -

Pour utiliser cette API, vous devez disposer de  la permission "tabHide".

- -

Syntaxe

- -
var hiding = browser.tabs.hide(
-  tabIds          // integer or integer array
-)
-
- -

Paramètres

- -
-
tabIds
-

integer or array of integer. Les ID de l'onglet ou des onglets à masquer.

-

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 [1, 3], et 1 identifie l'onglet actif, alors seulement 3 seront cachés.

-

Cependant, si l'un des ID d'onglet n'est pas valide, l'appel échouera et aucun onglet ne sera masqué.

-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Masquer un seul onglet :

- -
function onHidden() {
-  console.log(`Hidden`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-browser.tabs.hide(2).then(onHidden, onError);
- -

Masquer plusieurs onglets :

- -
function onHidden() {
-  console.log(`Hidden`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-browser.tabs.hide([15, 14, 1]).then(onHidden, onError);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.hide")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/hide/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/hide/index.md new file mode 100644 index 0000000000..5686440252 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/hide/index.md @@ -0,0 +1,87 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Masque un ou plusieurs onglets.

+ +

Les onglets cachés ne sont plus visibles dans l'onglet du navigateur. Les onglets cachés ne sont pas automatiquement supprimés :  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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Tous les onglets ne peuvent pas être masqués :

+ + + +

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.

+ +

Pour utiliser cette API, vous devez disposer de  la permission "tabHide".

+ +

Syntaxe

+ +
var hiding = browser.tabs.hide(
+  tabIds          // integer or integer array
+)
+
+ +

Paramètres

+ +
+
tabIds
+

integer or array of integer. Les ID de l'onglet ou des onglets à masquer.

+

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 [1, 3], et 1 identifie l'onglet actif, alors seulement 3 seront cachés.

+

Cependant, si l'un des ID d'onglet n'est pas valide, l'appel échouera et aucun onglet ne sera masqué.

+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Masquer un seul onglet :

+ +
function onHidden() {
+  console.log(`Hidden`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+browser.tabs.hide(2).then(onHidden, onError);
+ +

Masquer plusieurs onglets :

+ +
function onHidden() {
+  console.log(`Hidden`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+browser.tabs.hide([15, 14, 1]).then(onHidden, onError);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.hide")}}

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 deleted file mode 100644 index f96c75b883..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/highlight/index.html +++ /dev/null @@ -1,99 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
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.
- -
- -
-

C'est une fonction asynchrone qui renvoie une Promise.

-
- -

Syntaxe

- -
var highlighting = browser.tabs.highlight(
-  highlightInfo         // object
-)
-
- -

Paramètres

- -
-
highlightInfo
-

object.

-
-
windowId{{optional_inline}}
-
integer. ID de la fenêtre contenant les onglets.
-
populate{{optional_inline}}
-

boolean. Par défaut la valeur est true. S'il est défini sur false, l'objet {{WebExtAPIRef('windows.Window')}} n'aura pas de propriété tabs contenant une liste d'objets {{WebExtAPIRef('tabs.Tab')}} représentant les onglets ouverts dans la fenêtre.

-
-

Note : 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é populate à false si vous n'avez pas besoin des détails de l'onglet.

-
-
-
tabs
-
array 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 onglets cesseront d'être surlignés. Le premier onglet des onglets devient actif.
-
-
-
- -

Valeur retournée

- -

Une Promise  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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.highlight",2)}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/highlight/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/highlight/index.md new file mode 100644 index 0000000000..f96c75b883 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/highlight/index.md @@ -0,0 +1,99 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
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.
+ +
+ +
+

C'est une fonction asynchrone qui renvoie une Promise.

+
+ +

Syntaxe

+ +
var highlighting = browser.tabs.highlight(
+  highlightInfo         // object
+)
+
+ +

Paramètres

+ +
+
highlightInfo
+

object.

+
+
windowId{{optional_inline}}
+
integer. ID de la fenêtre contenant les onglets.
+
populate{{optional_inline}}
+

boolean. Par défaut la valeur est true. S'il est défini sur false, l'objet {{WebExtAPIRef('windows.Window')}} n'aura pas de propriété tabs contenant une liste d'objets {{WebExtAPIRef('tabs.Tab')}} représentant les onglets ouverts dans la fenêtre.

+
+

Note : 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é populate à false si vous n'avez pas besoin des détails de l'onglet.

+
+
+
tabs
+
array 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 onglets cesseront d'être surlignés. Le premier onglet des onglets devient actif.
+
+
+
+ +

Valeur retournée

+ +

Une Promise  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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.highlight",2)}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/index.html b/files/fr/mozilla/add-ons/webextensions/api/tabs/index.html deleted file mode 100644 index cfea5b78c9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/index.html +++ /dev/null @@ -1,223 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Permet d'interagir avec le système d'onglets du navigateur.

- -

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()")}}.

- -

Vous pouvez utiliser la majeure partie de cette API sans autorisation spéciale. Toutefois :

- - - -

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 permission "activeTab".

- -

De nombreuses opérations d'onglet utilisent un identifiant (id) d'onglet. Les id 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()")}}.

- -

Types

- -
-
{{WebExtAPIRef("tabs.MutedInfoReason")}}
-
Spécifie la raison pour laquelle un onglet a été rendu silencieux ou à nouveau sonore.
-
{{WebExtAPIRef("tabs.MutedInfo")}}
-
Cet objet contient un booléen indiquant si l'onglet est silencieux et la raison de la dernière modification de l'état.
-
{{WebExtAPIRef("tabs.PageSettings")}}
-
-

Permet de contrôler le rendu d'un onglet au format PDF par la méthode {{WebExtAPIRef("tabs.saveAsPDF()")}}.

-
-
{{WebExtAPIRef("tabs.Tab")}}
-
Ce type contient des informations sur un onglet.
-
{{WebExtAPIRef("tabs.TabStatus")}}
-
Indique si l'onglet a fini de charger.
-
{{WebExtAPIRef("tabs.WindowType")}}
-
Le type de fenêtre qui héberge cet onglet.
-
{{WebExtAPIRef("tabs.ZoomSettingsMode")}}
-
Définit si les modifications de zoom sont traitées par le navigateur, par l'extension ou sont désactivées.
-
{{WebExtAPIRef("tabs.ZoomSettingsScope")}}
-
Définit si les modifications de zoom persisteront pour l'origine de la page ou ne prendront effet que dans cet onglet.
-
{{WebExtAPIRef("tabs.ZoomSettings")}}
-
Définit les paramètres de zoom {{WebExtAPIRef("tabs.ZoomSettingsMode", "mode")}}, {{WebExtAPIRef("tabs.ZoomSettingsScope", "scope")}}, et le facteur de zoom par défaut.
-
- -

Propriétés

- -
-
{{WebExtAPIRef("tabs.TAB_ID_NONE")}}
-
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 devtools).
-
- -

Fonctions

- -
-
{{WebExtAPIRef("tabs.captureTab()")}}
-
Crée un URI de données codant une image de la zone visible de l'onglet donné.
-
{{WebExtAPIRef("tabs.captureVisibleTab()")}}
-
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.
-
{{WebExtAPIRef("tabs.connect()")}}
-
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 popups ou les scripts de page d'options) et les scripts de contenu s'exécutant dans l'onglet spécifié.
-
{{WebExtAPIRef("tabs.create()")}}
-
Crée un nouvel onglet.
-
{{WebExtAPIRef("tabs.detectLanguage()")}}
-
Détecte la langue principale du contenu dans un onglet.
-
{{WebExtAPIRef("tabs.discard()")}}
-
Évince un ou plusieurs onglets.
-
{{WebExtAPIRef("tabs.duplicate()")}}
-
Duplique un onglet.
-
{{WebExtAPIRef("tabs.executeScript()")}}
-
Injecte du code JavaScript dans une page.
-
{{WebExtAPIRef("tabs.get()")}}
-
Obtient des détails sur l'onglet spécifié.
-
{{WebExtAPIRef("tabs.getAllInWindow()")}} {{deprecated_inline}}
-
Obtient des détails sur tous les onglets de la fenêtre spécifiée.
-
{{WebExtAPIRef("tabs.getCurrent()")}}
-
Obtient des informations sur l'onglet dans lequel ce script s'exécute, en tant qu'objet {{WebExtAPIRef("tabs.Tab")}}.
-
{{WebExtAPIRef("tabs.getSelected()")}} {{deprecated_inline}}
-
Obtient l'onglet sélectionné dans la fenêtre spécifiée. Deprecated: utilisez plutôt tabs.query({active: true}).
-
{{WebExtAPIRef("tabs.getZoom()")}}
-
Obtient le facteur de zoom actuel de l'onglet spécifié.
-
{{WebExtAPIRef("tabs.getZoomSettings()")}}
-
Obtient les paramètres de zoom actuels pour l'onglet spécifié.
-
{{WebExtAPIRef("tabs.goForward()")}}
-
Passez à la page suivante, si vous en avez une.
-
{{WebExtAPIRef("tabs.goBack()")}}
-
Retour à la page précédente, si elle est disponible.
-
{{WebExtAPIRef("tabs.hide()")}} {{experimental_inline}}
-
Masque un ou plusieurs onglets.
-
{{WebExtAPIRef("tabs.highlight()")}}
-
Met en évidence un ou plusieurs onglets.
-
{{WebExtAPIRef("tabs.insertCSS()")}}
-
Injecte CSS dans une page.
-
{{WebExtAPIRef("tabs.move()")}}
-
Déplace un ou plusieurs onglets vers une nouvelle position dans la même fenêtre ou vers une autre fenêtre.
-
{{WebExtApiRef("tabs.moveInSuccession()")}}
-
Modifie la relation de succession pour un groupe d'onglets.
-
{{WebExtAPIRef("tabs.print()")}}
-
Imprime le contenu de l'onglet actif.
-
{{WebExtAPIRef("tabs.printPreview()")}}
-
-
Ouvre l'aperçu avant impression pour l'onglet actif.
-
-
{{WebExtAPIRef("tabs.query()")}}
-
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.
-
{{WebExtAPIRef("tabs.reload()")}}
-
Recharge un onglet, en contournant éventuellement le cache web local.
-
{{WebExtAPIRef("tabs.remove()")}}
-
Ferme un ou plusieurs onglets.
-
{{WebExtAPIRef("tabs.removeCSS()")}}
-
Supprime d'une page CSS qui a été précédemment injectée en appelant {{WebExtAPIRef("tabs.insertCSS()")}}.
-
{{WebExtAPIRef("tabs.saveAsPDF()")}}
-
Enregistre la page en cours au format PDF.
-
{{WebExtAPIRef("tabs.sendMessage()")}}
-
Envoie un message unique au(x) script(s) de contenu dans l'onglet spécifié.
-
{{WebExtAPIRef("tabs.sendRequest()")}} {{deprecated_inline}}
-
Envoie une requête unique au(x) script(s) de contenu dans l'onglet spécifié. Déprécié : utilisez {{WebExtAPIRef("tabs.sendMessage()")}} à la place.
-
{{WebExtAPIRef("tabs.setZoom()")}}
-
Effectue un zoom sur l'onglet spécifié.
-
{{WebExtAPIRef("tabs.setZoomSettings()")}}
-
Définit les paramètres de zoom pour l'onglet spécifié.
-
{{WebExtAPIRef("tabs.show()")}} {{experimental_inline}}
-
Affiche un ou plusieurs onglets qui ont été {{WebExtAPIRef("tabs.hide()", "masqués")}}.
-
{{WebExtAPIRef("tabs.toggleReaderMode()")}}
-
Bascule en mode lecture pour l'onglet spécifié.
-
{{WebExtAPIRef("tabs.update()")}}
-
Charge une nouvelle URL dans l'onglet, ou modifie d'autres propriétés de l'onglet.
-
- -

Évènements

- -
-
{{WebExtAPIRef("tabs.onActivated")}}
-
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.
-
{{WebExtAPIRef("tabs.onActiveChanged")}} {{deprecated_inline}}
-
Est émis lorsque l'onglet sélectionné dans une fenêtre change. Déprécié : utilisez {{WebExtAPIRef("tabs.onActivated")}} à la place.
-
{{WebExtAPIRef("tabs.onAttached")}}
-
Est émis lorsqu'un onglet est attaché à une fenêtre, par exemple parce qu'il a été déplacé entre différentes fenêtres.
-
{{WebExtAPIRef("tabs.onCreated")}}
-
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.
-
{{WebExtAPIRef("tabs.onDetached")}}
-
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.
-
{{WebExtAPIRef("tabs.onHighlightChanged")}} {{deprecated_inline}}
-
Est émis lorsque les onglets en surbrillance ou sélectionnés dans une fenêtre changent. Déprécié : utilisez {{WebExtAPIRef("tabs.onHighlighted")}} à la place.
-
{{WebExtAPIRef("tabs.onHighlighted")}}
-
Est émis lorsque les onglets en surbrillance ou sélectionnés dans une fenêtre changent.
-
{{WebExtAPIRef("tabs.onMoved")}}
-
Est émis lorsqu'un onglet est déplacé dans une fenêtre.
-
{{WebExtAPIRef("tabs.onRemoved")}}
-
Est émis lorsqu'un onglet est fermé.
-
{{WebExtAPIRef("tabs.onReplaced")}}
-
Est émis lorsqu'un onglet est remplacé par un autre onglet en raison d'un prerendering.
-
{{WebExtAPIRef("tabs.onSelectionChanged")}} {{deprecated_inline}}
-
Est émis lorsque l'onglet sélectionné dans une fenêtre change. Déprécié : utilisez {{WebExtAPIRef("tabs.onActivated")}} à la place.
-
{{WebExtAPIRef("tabs.onUpdated")}}
-
Est émis lorsqu'un onglet est mis à jour.
-
{{WebExtAPIRef("tabs.onZoomChange")}}
-
Est émis lorsque le zoom dans un onglet est changé.
-
- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.api.tabs")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/index.md new file mode 100644 index 0000000000..cfea5b78c9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/index.md @@ -0,0 +1,223 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

Permet d'interagir avec le système d'onglets du navigateur.

+ +

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()")}}.

+ +

Vous pouvez utiliser la majeure partie de cette API sans autorisation spéciale. Toutefois :

+ + + +

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 permission "activeTab".

+ +

De nombreuses opérations d'onglet utilisent un identifiant (id) d'onglet. Les id 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()")}}.

+ +

Types

+ +
+
{{WebExtAPIRef("tabs.MutedInfoReason")}}
+
Spécifie la raison pour laquelle un onglet a été rendu silencieux ou à nouveau sonore.
+
{{WebExtAPIRef("tabs.MutedInfo")}}
+
Cet objet contient un booléen indiquant si l'onglet est silencieux et la raison de la dernière modification de l'état.
+
{{WebExtAPIRef("tabs.PageSettings")}}
+
+

Permet de contrôler le rendu d'un onglet au format PDF par la méthode {{WebExtAPIRef("tabs.saveAsPDF()")}}.

+
+
{{WebExtAPIRef("tabs.Tab")}}
+
Ce type contient des informations sur un onglet.
+
{{WebExtAPIRef("tabs.TabStatus")}}
+
Indique si l'onglet a fini de charger.
+
{{WebExtAPIRef("tabs.WindowType")}}
+
Le type de fenêtre qui héberge cet onglet.
+
{{WebExtAPIRef("tabs.ZoomSettingsMode")}}
+
Définit si les modifications de zoom sont traitées par le navigateur, par l'extension ou sont désactivées.
+
{{WebExtAPIRef("tabs.ZoomSettingsScope")}}
+
Définit si les modifications de zoom persisteront pour l'origine de la page ou ne prendront effet que dans cet onglet.
+
{{WebExtAPIRef("tabs.ZoomSettings")}}
+
Définit les paramètres de zoom {{WebExtAPIRef("tabs.ZoomSettingsMode", "mode")}}, {{WebExtAPIRef("tabs.ZoomSettingsScope", "scope")}}, et le facteur de zoom par défaut.
+
+ +

Propriétés

+ +
+
{{WebExtAPIRef("tabs.TAB_ID_NONE")}}
+
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 devtools).
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("tabs.captureTab()")}}
+
Crée un URI de données codant une image de la zone visible de l'onglet donné.
+
{{WebExtAPIRef("tabs.captureVisibleTab()")}}
+
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.
+
{{WebExtAPIRef("tabs.connect()")}}
+
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 popups ou les scripts de page d'options) et les scripts de contenu s'exécutant dans l'onglet spécifié.
+
{{WebExtAPIRef("tabs.create()")}}
+
Crée un nouvel onglet.
+
{{WebExtAPIRef("tabs.detectLanguage()")}}
+
Détecte la langue principale du contenu dans un onglet.
+
{{WebExtAPIRef("tabs.discard()")}}
+
Évince un ou plusieurs onglets.
+
{{WebExtAPIRef("tabs.duplicate()")}}
+
Duplique un onglet.
+
{{WebExtAPIRef("tabs.executeScript()")}}
+
Injecte du code JavaScript dans une page.
+
{{WebExtAPIRef("tabs.get()")}}
+
Obtient des détails sur l'onglet spécifié.
+
{{WebExtAPIRef("tabs.getAllInWindow()")}} {{deprecated_inline}}
+
Obtient des détails sur tous les onglets de la fenêtre spécifiée.
+
{{WebExtAPIRef("tabs.getCurrent()")}}
+
Obtient des informations sur l'onglet dans lequel ce script s'exécute, en tant qu'objet {{WebExtAPIRef("tabs.Tab")}}.
+
{{WebExtAPIRef("tabs.getSelected()")}} {{deprecated_inline}}
+
Obtient l'onglet sélectionné dans la fenêtre spécifiée. Deprecated: utilisez plutôt tabs.query({active: true}).
+
{{WebExtAPIRef("tabs.getZoom()")}}
+
Obtient le facteur de zoom actuel de l'onglet spécifié.
+
{{WebExtAPIRef("tabs.getZoomSettings()")}}
+
Obtient les paramètres de zoom actuels pour l'onglet spécifié.
+
{{WebExtAPIRef("tabs.goForward()")}}
+
Passez à la page suivante, si vous en avez une.
+
{{WebExtAPIRef("tabs.goBack()")}}
+
Retour à la page précédente, si elle est disponible.
+
{{WebExtAPIRef("tabs.hide()")}} {{experimental_inline}}
+
Masque un ou plusieurs onglets.
+
{{WebExtAPIRef("tabs.highlight()")}}
+
Met en évidence un ou plusieurs onglets.
+
{{WebExtAPIRef("tabs.insertCSS()")}}
+
Injecte CSS dans une page.
+
{{WebExtAPIRef("tabs.move()")}}
+
Déplace un ou plusieurs onglets vers une nouvelle position dans la même fenêtre ou vers une autre fenêtre.
+
{{WebExtApiRef("tabs.moveInSuccession()")}}
+
Modifie la relation de succession pour un groupe d'onglets.
+
{{WebExtAPIRef("tabs.print()")}}
+
Imprime le contenu de l'onglet actif.
+
{{WebExtAPIRef("tabs.printPreview()")}}
+
+
Ouvre l'aperçu avant impression pour l'onglet actif.
+
+
{{WebExtAPIRef("tabs.query()")}}
+
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.
+
{{WebExtAPIRef("tabs.reload()")}}
+
Recharge un onglet, en contournant éventuellement le cache web local.
+
{{WebExtAPIRef("tabs.remove()")}}
+
Ferme un ou plusieurs onglets.
+
{{WebExtAPIRef("tabs.removeCSS()")}}
+
Supprime d'une page CSS qui a été précédemment injectée en appelant {{WebExtAPIRef("tabs.insertCSS()")}}.
+
{{WebExtAPIRef("tabs.saveAsPDF()")}}
+
Enregistre la page en cours au format PDF.
+
{{WebExtAPIRef("tabs.sendMessage()")}}
+
Envoie un message unique au(x) script(s) de contenu dans l'onglet spécifié.
+
{{WebExtAPIRef("tabs.sendRequest()")}} {{deprecated_inline}}
+
Envoie une requête unique au(x) script(s) de contenu dans l'onglet spécifié. Déprécié : utilisez {{WebExtAPIRef("tabs.sendMessage()")}} à la place.
+
{{WebExtAPIRef("tabs.setZoom()")}}
+
Effectue un zoom sur l'onglet spécifié.
+
{{WebExtAPIRef("tabs.setZoomSettings()")}}
+
Définit les paramètres de zoom pour l'onglet spécifié.
+
{{WebExtAPIRef("tabs.show()")}} {{experimental_inline}}
+
Affiche un ou plusieurs onglets qui ont été {{WebExtAPIRef("tabs.hide()", "masqués")}}.
+
{{WebExtAPIRef("tabs.toggleReaderMode()")}}
+
Bascule en mode lecture pour l'onglet spécifié.
+
{{WebExtAPIRef("tabs.update()")}}
+
Charge une nouvelle URL dans l'onglet, ou modifie d'autres propriétés de l'onglet.
+
+ +

Évènements

+ +
+
{{WebExtAPIRef("tabs.onActivated")}}
+
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.
+
{{WebExtAPIRef("tabs.onActiveChanged")}} {{deprecated_inline}}
+
Est émis lorsque l'onglet sélectionné dans une fenêtre change. Déprécié : utilisez {{WebExtAPIRef("tabs.onActivated")}} à la place.
+
{{WebExtAPIRef("tabs.onAttached")}}
+
Est émis lorsqu'un onglet est attaché à une fenêtre, par exemple parce qu'il a été déplacé entre différentes fenêtres.
+
{{WebExtAPIRef("tabs.onCreated")}}
+
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.
+
{{WebExtAPIRef("tabs.onDetached")}}
+
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.
+
{{WebExtAPIRef("tabs.onHighlightChanged")}} {{deprecated_inline}}
+
Est émis lorsque les onglets en surbrillance ou sélectionnés dans une fenêtre changent. Déprécié : utilisez {{WebExtAPIRef("tabs.onHighlighted")}} à la place.
+
{{WebExtAPIRef("tabs.onHighlighted")}}
+
Est émis lorsque les onglets en surbrillance ou sélectionnés dans une fenêtre changent.
+
{{WebExtAPIRef("tabs.onMoved")}}
+
Est émis lorsqu'un onglet est déplacé dans une fenêtre.
+
{{WebExtAPIRef("tabs.onRemoved")}}
+
Est émis lorsqu'un onglet est fermé.
+
{{WebExtAPIRef("tabs.onReplaced")}}
+
Est émis lorsqu'un onglet est remplacé par un autre onglet en raison d'un prerendering.
+
{{WebExtAPIRef("tabs.onSelectionChanged")}} {{deprecated_inline}}
+
Est émis lorsque l'onglet sélectionné dans une fenêtre change. Déprécié : utilisez {{WebExtAPIRef("tabs.onActivated")}} à la place.
+
{{WebExtAPIRef("tabs.onUpdated")}}
+
Est émis lorsqu'un onglet est mis à jour.
+
{{WebExtAPIRef("tabs.onZoomChange")}}
+
Est émis lorsque le zoom dans un onglet est changé.
+
+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.api.tabs")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index d51ca99171..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/insertcss/index.html +++ /dev/null @@ -1,141 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Injecter du code CSS dans une page web.

- -

Pour utiliser cette API vous devez avoir la permission "host permission" ou utiliser la permission "activeTab permission".

- -

Vous ne pouvez injecter du CSS que dans des pages dont l'URL peut être exprimée en utilisant un motif de correspondance,  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.

- -
-

Note : 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é.

-
- -

Le CSS inséré peut être retiré à nouveau en appelant  {{WebExtAPIRef("tabs.removeCSS()")}}.

- -

C'est une fonction asynchrone qui renvoie une Promise (sur Firefox seulement).

- -

Syntaxe

- -
var inserting = browser.tabs.insertCSS(
-  tabId,           // optional integer
-  details          // object
-)
-
- -

Paramètres

- -
-
tabId {{optional_inline}}
-
integer. L'ID de l'onglet dans lequel insérer le CSS. Par défaut à l'onglet actif de la fenêtre en cours.
-
details
-

Un objet décrivant le CSS à insérer. Il contient les propriétés suivantes :

-
-
allFrames{{optional_inline}}
-
boolean. Si true, le CSS sera injecté dans toutes les images de la page en cours. Si c'est false, CSS est seulement injecté dans le cadre supérieur. Par défaut à false.
-
code{{optional_inline}}
-
string. Code à injecter, sous la forme d'une chaîne de texte.
-
cssOrigin{{optional_inline}}
-
string. 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 la commande en cascade. Si cette option est omise, le CSS est ajouté en tant que feuille de style auteur.
-
file{{optional_inline}}
-
string. 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 : "/path/to/stylesheet.css".
-
frameId{{optional_inline}}
-
integer. Le cadre où le CSS doit être injecté. La valeur par défaut est 0 (l'image de niveau supérieur).
-
matchAboutBlank{{optional_inline}}
-
boolean. Sitrue, 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 à false.
-
runAt{{optional_inline}}
-
{{WebExtAPIRef('extensionTypes.RunAt')}}. Le plus tôt que le code sera injecté dans l'onglet. Par défaut à "document_idle".
-
-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Cet exemple s'insère dans l'onglet CSS actif qui provient d'une chaîne.

- -
var css = "body { border: 20px dotted pink; }";
-
-browser.browserAction.onClicked.addListener(() => {
-
-  function onError(error) {
-    console.log(`Error: ${error}`);
-  }
-
-  var insertingCSS = browser.tabs.insertCSS({code: css});
-  insertingCSS.then(null, onError);
-});
- -

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 :

- -
browser.browserAction.onClicked.addListener(() => {
-
-  function onError(error) {
-    console.log(`Error: ${error}`);
-  }
-
-  var insertingCSS = browser.tabs.insertCSS(2, {file: "content-style.css"});
-  insertingCSS.then(null, onError);
-});
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.insertCSS")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/insertcss/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/insertcss/index.md new file mode 100644 index 0000000000..d51ca99171 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/insertcss/index.md @@ -0,0 +1,141 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Injecter du code CSS dans une page web.

+ +

Pour utiliser cette API vous devez avoir la permission "host permission" ou utiliser la permission "activeTab permission".

+ +

Vous ne pouvez injecter du CSS que dans des pages dont l'URL peut être exprimée en utilisant un motif de correspondance,  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.

+ +
+

Note : 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é.

+
+ +

Le CSS inséré peut être retiré à nouveau en appelant  {{WebExtAPIRef("tabs.removeCSS()")}}.

+ +

C'est une fonction asynchrone qui renvoie une Promise (sur Firefox seulement).

+ +

Syntaxe

+ +
var inserting = browser.tabs.insertCSS(
+  tabId,           // optional integer
+  details          // object
+)
+
+ +

Paramètres

+ +
+
tabId {{optional_inline}}
+
integer. L'ID de l'onglet dans lequel insérer le CSS. Par défaut à l'onglet actif de la fenêtre en cours.
+
details
+

Un objet décrivant le CSS à insérer. Il contient les propriétés suivantes :

+
+
allFrames{{optional_inline}}
+
boolean. Si true, le CSS sera injecté dans toutes les images de la page en cours. Si c'est false, CSS est seulement injecté dans le cadre supérieur. Par défaut à false.
+
code{{optional_inline}}
+
string. Code à injecter, sous la forme d'une chaîne de texte.
+
cssOrigin{{optional_inline}}
+
string. 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 la commande en cascade. Si cette option est omise, le CSS est ajouté en tant que feuille de style auteur.
+
file{{optional_inline}}
+
string. 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 : "/path/to/stylesheet.css".
+
frameId{{optional_inline}}
+
integer. Le cadre où le CSS doit être injecté. La valeur par défaut est 0 (l'image de niveau supérieur).
+
matchAboutBlank{{optional_inline}}
+
boolean. Sitrue, 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 à false.
+
runAt{{optional_inline}}
+
{{WebExtAPIRef('extensionTypes.RunAt')}}. Le plus tôt que le code sera injecté dans l'onglet. Par défaut à "document_idle".
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Cet exemple s'insère dans l'onglet CSS actif qui provient d'une chaîne.

+ +
var css = "body { border: 20px dotted pink; }";
+
+browser.browserAction.onClicked.addListener(() => {
+
+  function onError(error) {
+    console.log(`Error: ${error}`);
+  }
+
+  var insertingCSS = browser.tabs.insertCSS({code: css});
+  insertingCSS.then(null, onError);
+});
+ +

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 :

+ +
browser.browserAction.onClicked.addListener(() => {
+
+  function onError(error) {
+    console.log(`Error: ${error}`);
+  }
+
+  var insertingCSS = browser.tabs.insertCSS(2, {file: "content-style.css"});
+  insertingCSS.then(null, onError);
+});
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.insertCSS")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 4e2d2605a9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/move/index.html +++ /dev/null @@ -1,166 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Déplace un ou plusieurs onglets vers une nouvelle position dans la même fenêtre ou vers une autre fenêtre.

- -

Vous pouvez uniquement déplacer des onglets vers et à partir de fenêtres dont {{WebExtAPIRef('windows.WindowType', 'WindowType')}} est "normal".

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var moving = browser.tabs.move(
-  tabIds,              // integer or integer array
-  moveProperties       // object
-)
-
- -

Paramètres

- -
-
tabIds
-
integer ou array d'integer. ID du {{WebExtAPIRef('tabs.Tab', 'tab')}}à déplacer, ou un tableau d'ID d'onglet.
-
moveProperties
-

object. Un objet qui spécifie où déplacer le(s) onglet(s).

-
-
windowId{{optional_inline}}
-
integer. 'ID de la fenêtre dans laquelle vous souhaitez déplacer les onglet(s). Si vous omettez cela, chaque onglet de tabIds sera déplacé vers l' index dans sa fenêtre actuelle. Si vous incluez ceci, et tabIds contient plus d'un onglet, alors le premier onglet de tabIds sera déplacé vers l'index, et les autres onglets le suivront dans l'ordre donné dans tabIds.
-
index
-

integer. 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.

-

Si vous passez une valeur inférieure à -1, la fonction renvoie une erreur.

-

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).

-
-
-
-
- -

Valeur retournée

- -

Une Promise qui sera satisfaite avec un objet {{WebExtAPIRef('tabs.Tab')}} ou un tableau d'objets {{WebExtAPIRef('tabs.Tab')}}, 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.

- -

Exemples

- -

Déplacer le premier onglet de la fenêtre en cours vers la dernière position de la fenêtre en cours :

- -
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);
-});
- -

Déplacer tous les onglets servis via HTTP ou HTTPS depuis * .mozilla.org jusqu'à la fin de leur fenêtre :

- -
function onMoved(tab) {
-  console.log(`Moved: ${tab}`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-function moveMoz(tabs) {
-  var mozTabIds = tabs.map(tabInfo => 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);
-});
- -

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 :

- -
function onMoved(tab) {
-  console.log(`Moved: ${tab}`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-function moveMoz(tabs) {
-  var mozTabIds = tabs.map(tabInfo => 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);
-});
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.move")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/move/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/move/index.md new file mode 100644 index 0000000000..4e2d2605a9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/move/index.md @@ -0,0 +1,166 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Déplace un ou plusieurs onglets vers une nouvelle position dans la même fenêtre ou vers une autre fenêtre.

+ +

Vous pouvez uniquement déplacer des onglets vers et à partir de fenêtres dont {{WebExtAPIRef('windows.WindowType', 'WindowType')}} est "normal".

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var moving = browser.tabs.move(
+  tabIds,              // integer or integer array
+  moveProperties       // object
+)
+
+ +

Paramètres

+ +
+
tabIds
+
integer ou array d'integer. ID du {{WebExtAPIRef('tabs.Tab', 'tab')}}à déplacer, ou un tableau d'ID d'onglet.
+
moveProperties
+

object. Un objet qui spécifie où déplacer le(s) onglet(s).

+
+
windowId{{optional_inline}}
+
integer. 'ID de la fenêtre dans laquelle vous souhaitez déplacer les onglet(s). Si vous omettez cela, chaque onglet de tabIds sera déplacé vers l' index dans sa fenêtre actuelle. Si vous incluez ceci, et tabIds contient plus d'un onglet, alors le premier onglet de tabIds sera déplacé vers l'index, et les autres onglets le suivront dans l'ordre donné dans tabIds.
+
index
+

integer. 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.

+

Si vous passez une valeur inférieure à -1, la fonction renvoie une erreur.

+

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).

+
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera satisfaite avec un objet {{WebExtAPIRef('tabs.Tab')}} ou un tableau d'objets {{WebExtAPIRef('tabs.Tab')}}, 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.

+ +

Exemples

+ +

Déplacer le premier onglet de la fenêtre en cours vers la dernière position de la fenêtre en cours :

+ +
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);
+});
+ +

Déplacer tous les onglets servis via HTTP ou HTTPS depuis * .mozilla.org jusqu'à la fin de leur fenêtre :

+ +
function onMoved(tab) {
+  console.log(`Moved: ${tab}`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+function moveMoz(tabs) {
+  var mozTabIds = tabs.map(tabInfo => 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);
+});
+ +

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 :

+ +
function onMoved(tab) {
+  console.log(`Moved: ${tab}`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+function moveMoz(tabs) {
+  var mozTabIds = tabs.map(tabInfo => 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);
+});
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.move")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 261cb96adf..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/moveinsuccession/index.html +++ /dev/null @@ -1,51 +0,0 @@ ---- -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 ---- -

{{AddonSidebar()}}

- -

Modifie la relation de succession pour un groupe d'onglets.

- -

Using the {{WebExtAPIRef('tabs')}} API, a tab can be assigned a successor 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 predecessor 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.

- -

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 moving a tab (B) from its line of succession.

- -

tabs.moveInSuccession() 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 not 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.

- -

While the successor tab can be assigned with {{WebExtAPIRef('tabs.update()')}}, it is often desirable to use tabs.moveInSuccession() to change successors, even if only a single tab is having its successor assigned. The difference is that browser.tabs.moveInSuccession([a], b) moves tab a from its line of succession, so any predecessors of a will adopt a's previous successor; whereas if browser.tabs.update(a, {successorTabId: b}) is used instead, tab a may continue to be the successor of other tabs, which could be unexpected. Another advantage of tabs.moveInSuccession() 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.

- -

Syntaxe

- -
browser.tabs.moveInSuccession([1, 3, 5, 7, 2, 9], 4, {insert:true})
- -

Paramètres

- -
-
tabIds
-
array of integer. Un tableau  d'IDs. L'ordre des éléments dans le tableau définit la relation des onglets. Tout ID d'onglet invalide, ou l'ID d'onglet correspondant à des onglets qui ne sont pas dans la même fenêtre que tabId (ou le premier onglet du tableau, si  tabId est omis), sera ignoré - ils conserveront leurs successeurs et prédécesseurs actuels.
-
tabId {{optional_inline}}
-
integer. L'ID de l'onglet qui succédera au dernier onglet du tableau tabIds. Si cet ID est invalide ou {{WebExtAPIRef('tabs.TAB_ID_NONE')}}, le dernier onglet n'aura pas de successeur. Par défaut {{WebExtAPIRef('tabs.TAB_ID_NONE')}}.
-
options {{optional_inline}}
-

object.

-
-
append {{optional_inline}}
-
boolean. Détermine s'il faut déplacer les onglets dans les tabIds avant ou après tabId dans la succession. Si false, les onglets sont déplacés avant tabId, si true, les onglets sont déplacés après tabId. Par défaut à false.
-
insert {{optional_inline}}
-
boolean. Détermine s'il faut lier les prédécesseurs ou successeurs actuels (selon options.append) de tabIdà 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 options.append est false, le premier onglet du tableau est défini comme successeur de tout prédécesseur actuel de  tabId; Si options.append est true, le successeur actuel de tabId est défini comme le successeur du dernier onglet du tableau. La valeur par défaut est false.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.moveInSuccession", 10)}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/moveinsuccession/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/moveinsuccession/index.md new file mode 100644 index 0000000000..261cb96adf --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/moveinsuccession/index.md @@ -0,0 +1,51 @@ +--- +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 +--- +

{{AddonSidebar()}}

+ +

Modifie la relation de succession pour un groupe d'onglets.

+ +

Using the {{WebExtAPIRef('tabs')}} API, a tab can be assigned a successor 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 predecessor 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.

+ +

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 moving a tab (B) from its line of succession.

+ +

tabs.moveInSuccession() 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 not 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.

+ +

While the successor tab can be assigned with {{WebExtAPIRef('tabs.update()')}}, it is often desirable to use tabs.moveInSuccession() to change successors, even if only a single tab is having its successor assigned. The difference is that browser.tabs.moveInSuccession([a], b) moves tab a from its line of succession, so any predecessors of a will adopt a's previous successor; whereas if browser.tabs.update(a, {successorTabId: b}) is used instead, tab a may continue to be the successor of other tabs, which could be unexpected. Another advantage of tabs.moveInSuccession() 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.

+ +

Syntaxe

+ +
browser.tabs.moveInSuccession([1, 3, 5, 7, 2, 9], 4, {insert:true})
+ +

Paramètres

+ +
+
tabIds
+
array of integer. Un tableau  d'IDs. L'ordre des éléments dans le tableau définit la relation des onglets. Tout ID d'onglet invalide, ou l'ID d'onglet correspondant à des onglets qui ne sont pas dans la même fenêtre que tabId (ou le premier onglet du tableau, si  tabId est omis), sera ignoré - ils conserveront leurs successeurs et prédécesseurs actuels.
+
tabId {{optional_inline}}
+
integer. L'ID de l'onglet qui succédera au dernier onglet du tableau tabIds. Si cet ID est invalide ou {{WebExtAPIRef('tabs.TAB_ID_NONE')}}, le dernier onglet n'aura pas de successeur. Par défaut {{WebExtAPIRef('tabs.TAB_ID_NONE')}}.
+
options {{optional_inline}}
+

object.

+
+
append {{optional_inline}}
+
boolean. Détermine s'il faut déplacer les onglets dans les tabIds avant ou après tabId dans la succession. Si false, les onglets sont déplacés avant tabId, si true, les onglets sont déplacés après tabId. Par défaut à false.
+
insert {{optional_inline}}
+
boolean. Détermine s'il faut lier les prédécesseurs ou successeurs actuels (selon options.append) de tabIdà 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 options.append est false, le premier onglet du tableau est défini comme successeur de tout prédécesseur actuel de  tabId; Si options.append est true, le successeur actuel de tabId est défini comme le successeur du dernier onglet du tableau. La valeur par défaut est false.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.moveInSuccession", 10)}}

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 deleted file mode 100644 index 2c900b4551..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinfo/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Cet objet contient un booléen indiquant si l'onglet est muet et la raison du dernier changement d'état.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
extensionId{{optional_inline}}
-
string. 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.
-
muted
-
boolean. Si l'onglet est actuellement coupé. Équivalent à l'affichage de l'indicateur audio coupé.
-
reason{{optional_inline}}
-
{{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é.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.MutedInfo")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinfo/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinfo/index.md new file mode 100644 index 0000000000..2c900b4551 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinfo/index.md @@ -0,0 +1,75 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Cet objet contient un booléen indiquant si l'onglet est muet et la raison du dernier changement d'état.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
extensionId{{optional_inline}}
+
string. 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.
+
muted
+
boolean. Si l'onglet est actuellement coupé. Équivalent à l'affichage de l'indicateur audio coupé.
+
reason{{optional_inline}}
+
{{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é.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.MutedInfo")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 1d1e71bcdb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinforeason/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Spécifie la raison pour laquelle un onglet a été désactivé ou désactivé.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- -
-
"capture"
-
La capture d'onglets a commencé, forçant un changement d'état muet.
-
"extension"
-
Une extension définit l'état muet. Si c'est la raison, extensionId dans {{WebExtAPIRef("tabs.mutedInfo")}} contiendra l'ID de l'extension responsable.
-
"user"
-
L'utilisateur définit l'état muet.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.MutedInfoReason")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinforeason/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinforeason/index.md new file mode 100644 index 0000000000..1d1e71bcdb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/mutedinforeason/index.md @@ -0,0 +1,75 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Spécifie la raison pour laquelle un onglet a été désactivé ou désactivé.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ +
+
"capture"
+
La capture d'onglets a commencé, forçant un changement d'état muet.
+
"extension"
+
Une extension définit l'état muet. Si c'est la raison, extensionId dans {{WebExtAPIRef("tabs.mutedInfo")}} contiendra l'ID de l'extension responsable.
+
"user"
+
L'utilisateur définit l'état muet.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.MutedInfoReason")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 8032a515ae..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivated/index.html +++ /dev/null @@ -1,118 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.tabs.onActivated.addListener(listener)
-browser.tabs.onActivated.removeListener(listener)
-browser.tabs.onActivated.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement
-
removeListener(listener)
-
 Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
activeInfo
-
object. ID de l'onglet qui a été activé, et ID de sa fenêtre.
-
-
-
- -

Objets supplémentaires

- -

activeInfo

- -
-
previousTabId
-
integer. L'ID de l'onglet activé précédent, si cet onglet est encore ouvert.
-
tabId
-
integer. L'ID de l'onglet qui est devenu actif.
-
windowId
-
integer. L'ID de la fenêtre de l'onglet.
-
- -

Exemples

- -

Écouter et enregistrer les événements d'activation des onglets :

- -
function handleActivated(activeInfo) {
-  console.log("Tab " + activeInfo.tabId +
-              " was activated");
-}
-
-browser.tabs.onActivated.addListener(handleActivated);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onActivated")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivated/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivated/index.md new file mode 100644 index 0000000000..8032a515ae --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivated/index.md @@ -0,0 +1,118 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.tabs.onActivated.addListener(listener)
+browser.tabs.onActivated.removeListener(listener)
+browser.tabs.onActivated.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement
+
removeListener(listener)
+
 Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
activeInfo
+
object. ID de l'onglet qui a été activé, et ID de sa fenêtre.
+
+
+
+ +

Objets supplémentaires

+ +

activeInfo

+ +
+
previousTabId
+
integer. L'ID de l'onglet activé précédent, si cet onglet est encore ouvert.
+
tabId
+
integer. L'ID de l'onglet qui est devenu actif.
+
windowId
+
integer. L'ID de la fenêtre de l'onglet.
+
+ +

Exemples

+ +

Écouter et enregistrer les événements d'activation des onglets :

+ +
function handleActivated(activeInfo) {
+  console.log("Tab " + activeInfo.tabId +
+              " was activated");
+}
+
+browser.tabs.onActivated.addListener(handleActivated);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onActivated")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+
+ + 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 deleted file mode 100644 index 1e64ef3cfa..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivechanged/index.html +++ /dev/null @@ -1,118 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

Attention : Cet événement est obsolète. Utilisez {{WebExtAPIRef("tabs.onActivated")}} à la place.

-
- -

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.

- -

Syntaxe

- -
browser.tabs.onActiveChanged.addListener(listener)
-browser.tabs.onActiveChanged.removeListener(listener)
-browser.tabs.onActiveChanged.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement..
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoietrue s'il écoute, sinon false.
-
- -
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
tabId
-
integer. L'ID de l'onglet qui est devenu actif.
-
- -
-
selectInfo
-
object.
-
-
-
- -

Objets supplémentaires

- -

selectInfo

- -
-
windowId
-
integer. L'ID de la fenêtre contenant l'onglet sélectionné.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onActiveChanged")}}

- -

-

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
-

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivechanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivechanged/index.md new file mode 100644 index 0000000000..1e64ef3cfa --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onactivechanged/index.md @@ -0,0 +1,118 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

Attention : Cet événement est obsolète. Utilisez {{WebExtAPIRef("tabs.onActivated")}} à la place.

+
+ +

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.

+ +

Syntaxe

+ +
browser.tabs.onActiveChanged.addListener(listener)
+browser.tabs.onActiveChanged.removeListener(listener)
+browser.tabs.onActiveChanged.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement..
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoietrue s'il écoute, sinon false.
+
+ +
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
tabId
+
integer. L'ID de l'onglet qui est devenu actif.
+
+ +
+
selectInfo
+
object.
+
+
+
+ +

Objets supplémentaires

+ +

selectInfo

+ +
+
windowId
+
integer. L'ID de la fenêtre contenant l'onglet sélectionné.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onActiveChanged")}}

+ +

+

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+

+ + 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 deleted file mode 100644 index 6e28fc017e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/onattached/index.html +++ /dev/null @@ -1,124 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'un onglet est attaché à une fenêtre, par exemple parce qu'il a été déplacé entre les fenêtres.

- -

Syntaxe

- -
browser.tabs.onAttached.addListener(listener)
-browser.tabs.onAttached.removeListener(listener)
-browser.tabs.onAttached.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
CVérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
tabId
-
integer. ID de l'onglet qui a été attaché à une nouvelle fenêtre..
-
- -
-
attachInfo
-
object. ID de la nouvelle fenêtre, et index de l'onglet à l'intérieur.
-
-
-
- -

Objets supplémentaires

- -

attachInfo

- -
-
newWindowId
-
integer. ID de la nouvelle fenêtre.
-
newPosition
-
integer. Position de l'index que l'onglet a dans la nouvelle fenêtre.
-
- -

Exemples

- -

Écoutez les événements attachés et consignez les informations :

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onAttached")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onattached/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/onattached/index.md new file mode 100644 index 0000000000..6e28fc017e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onattached/index.md @@ -0,0 +1,124 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'un onglet est attaché à une fenêtre, par exemple parce qu'il a été déplacé entre les fenêtres.

+ +

Syntaxe

+ +
browser.tabs.onAttached.addListener(listener)
+browser.tabs.onAttached.removeListener(listener)
+browser.tabs.onAttached.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
CVérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
tabId
+
integer. ID de l'onglet qui a été attaché à une nouvelle fenêtre..
+
+ +
+
attachInfo
+
object. ID de la nouvelle fenêtre, et index de l'onglet à l'intérieur.
+
+
+
+ +

Objets supplémentaires

+ +

attachInfo

+ +
+
newWindowId
+
integer. ID de la nouvelle fenêtre.
+
newPosition
+
integer. Position de l'index que l'onglet a dans la nouvelle fenêtre.
+
+ +

Exemples

+ +

Écoutez les événements attachés et consignez les informations :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onAttached")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 41488ce2c1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/oncreated/index.html +++ /dev/null @@ -1,108 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'un onglet est créé.

- -

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.

- -

Syntaxe

- -
browser.tabs.onCreated.addListener(callback)
-browser.tabs.onCreated.removeListener(listener)
-browser.tabs.onCreated.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument de listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si le listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
tab
-
{{WebExtAPIRef('tabs.Tab')}}. Détails de l'onglet qui a été créé.
-
-
-
- -

Examples

- -

Consignez les ID des nouveaux onglets créés :

- -
function handleCreated(tab) {
-  console.log(tab.id);
-}
-
-browser.tabs.onCreated.addListener(handleCreated);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onCreated")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/oncreated/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/oncreated/index.md new file mode 100644 index 0000000000..41488ce2c1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/oncreated/index.md @@ -0,0 +1,108 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'un onglet est créé.

+ +

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.

+ +

Syntaxe

+ +
browser.tabs.onCreated.addListener(callback)
+browser.tabs.onCreated.removeListener(listener)
+browser.tabs.onCreated.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument de listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si le listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
tab
+
{{WebExtAPIRef('tabs.Tab')}}. Détails de l'onglet qui a été créé.
+
+
+
+ +

Examples

+ +

Consignez les ID des nouveaux onglets créés :

+ +
function handleCreated(tab) {
+  console.log(tab.id);
+}
+
+browser.tabs.onCreated.addListener(handleCreated);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onCreated")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index c6b5e83254..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/ondetached/index.html +++ /dev/null @@ -1,124 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'un onglet est détaché d'une fenêtre, par exemple parce qu'il est déplacé entre des fenêtres.

- -

Syntaxe

- -
browser.tabs.onDetached.addListener(listener)
-browser.tabs.onDetached.removeListener(listener)
-browser.tabs.onDetached.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument de listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si l'écouteur est enregistré pour cet événemen. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
tabId
-
integer. ID de l'onglet qui a été détaché.
-
- -
-
detachInfo
-
object. ID de la fenêtre précédente et index de l'onglet à l'intérieur.
-
-
-
- -

Objets supplémentaires

- -

detachInfo

- -
-
oldWindowId
-
integer. ID de la fenêtre précédente
-
oldPosition
-
integer. Position de l'index que l'onglet avait dans l'ancienne fenêtre.
-
- -

Exemples

- -

Ecoutez les événements de détachement et consignez les informations :

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onDetached")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/ondetached/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/ondetached/index.md new file mode 100644 index 0000000000..c6b5e83254 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/ondetached/index.md @@ -0,0 +1,124 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'un onglet est détaché d'une fenêtre, par exemple parce qu'il est déplacé entre des fenêtres.

+ +

Syntaxe

+ +
browser.tabs.onDetached.addListener(listener)
+browser.tabs.onDetached.removeListener(listener)
+browser.tabs.onDetached.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument de listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si l'écouteur est enregistré pour cet événemen. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
tabId
+
integer. ID de l'onglet qui a été détaché.
+
+ +
+
detachInfo
+
object. ID de la fenêtre précédente et index de l'onglet à l'intérieur.
+
+
+
+ +

Objets supplémentaires

+ +

detachInfo

+ +
+
oldWindowId
+
integer. ID de la fenêtre précédente
+
oldPosition
+
integer. Position de l'index que l'onglet avait dans l'ancienne fenêtre.
+
+ +

Exemples

+ +

Ecoutez les événements de détachement et consignez les informations :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onDetached")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 5ada516c51..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlightchanged/index.html +++ /dev/null @@ -1,111 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

Attention : Cet événement est obsolète. Utilisez {{WebExtAPIRef("tabs.onHighlighted")}} à la place.

- -

Lancé lorsque les onglets en surbrillance ou sélectionnés dans une fenêtre changent.

- -

Syntaxe

- -
browser.tabs.onHighlightChanged.addListener(listener)
-browser.tabs.onHighlightChanged.removeListener(listener)
-browser.tabs.onHighlightChanged.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie trues'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
selectInfo
-
object.
-
-
-
- -

Objets supplémentaires

- -

selectInfo

- -
-
windowId
-
integer. La fenêtre dont les onglets ont changé.
-
tabIds
-
array d'integer. Tous les onglets en surbrillance dans la fenêtre.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onHighlightChanged")}}

- -

-

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
-

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlightchanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlightchanged/index.md new file mode 100644 index 0000000000..5ada516c51 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlightchanged/index.md @@ -0,0 +1,111 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

Attention : Cet événement est obsolète. Utilisez {{WebExtAPIRef("tabs.onHighlighted")}} à la place.

+ +

Lancé lorsque les onglets en surbrillance ou sélectionnés dans une fenêtre changent.

+ +

Syntaxe

+ +
browser.tabs.onHighlightChanged.addListener(listener)
+browser.tabs.onHighlightChanged.removeListener(listener)
+browser.tabs.onHighlightChanged.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie trues'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
selectInfo
+
object.
+
+
+
+ +

Objets supplémentaires

+ +

selectInfo

+ +
+
windowId
+
integer. La fenêtre dont les onglets ont changé.
+
tabIds
+
array d'integer. Tous les onglets en surbrillance dans la fenêtre.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onHighlightChanged")}}

+ +

+

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+

+ + 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 deleted file mode 100644 index 58a21f1e5d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlighted/index.html +++ /dev/null @@ -1,117 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsque l'ensemble des onglets en surbrillance dans une fenêtre change

- -

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")}}.

- -

Syntaxe

- -
browser.tabs.onHighlighted.addListener(listener)
-browser.tabs.onHighlighted.removeListener(listener)
-browser.tabs.onHighlighted.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener de l'écouteur est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
highlightInfo
-
object. ID(s) des onglets en surbrillance, et ID de leur fenêtre.
-
-
-
- -

Objets supplémentaires

- -

highlightInfo

- -
-
windowId
-
integer. ID de la fenêtre dont les onglets ont changé.
-
tabIds
-
array d'integer. Identifiants des onglets en surbrillance dans la fenêtre
-
- -

Exemples

- -

Ecoutez les événements en surbrillance et consignez les ID des onglets mis en surbrillance

- -
function handleHighlighted(highlightInfo) {
-  console.log("Highlighted tabs: " + highlightInfo.tabIds);
-}
-
-browser.tabs.onHighlighted.addListener(handleHighlighted);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onHighlighted")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlighted/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlighted/index.md new file mode 100644 index 0000000000..58a21f1e5d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onhighlighted/index.md @@ -0,0 +1,117 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque l'ensemble des onglets en surbrillance dans une fenêtre change

+ +

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")}}.

+ +

Syntaxe

+ +
browser.tabs.onHighlighted.addListener(listener)
+browser.tabs.onHighlighted.removeListener(listener)
+browser.tabs.onHighlighted.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener de l'écouteur est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
highlightInfo
+
object. ID(s) des onglets en surbrillance, et ID de leur fenêtre.
+
+
+
+ +

Objets supplémentaires

+ +

highlightInfo

+ +
+
windowId
+
integer. ID de la fenêtre dont les onglets ont changé.
+
tabIds
+
array d'integer. Identifiants des onglets en surbrillance dans la fenêtre
+
+ +

Exemples

+ +

Ecoutez les événements en surbrillance et consignez les ID des onglets mis en surbrillance

+ +
function handleHighlighted(highlightInfo) {
+  console.log("Highlighted tabs: " + highlightInfo.tabIds);
+}
+
+browser.tabs.onHighlighted.addListener(handleHighlighted);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onHighlighted")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+
+ + 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 deleted file mode 100644 index a9ab08a87f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/onmoved/index.html +++ /dev/null @@ -1,131 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'un onglet est déplacé dans une fenêtre

- -

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')}}.

- -

Syntaxe

- -
browser.tabs.onMoved.addListener(listener)
-browser.tabs.onMoved.removeListener(listener)
-browser.tabs.onMoved.hasListener(listener)
-
- -

Les événements ont trois fonctions:

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener st l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si le listenerest enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
tabId
-
integer. ID de l'onglet déplacé par l'utilisateur.
-
- -
-
moveInfo
-
object. Informations sur le déménagement.
-
-
-
- -

Objets supplémentaires

- -

moveInfo

- -
-
windowId
-
integer. ID de la fenêtre de cet onglet.
-
fromIndex
-
integer. Index initial de cet onglet dans la fenêtre.
-
toIndex
-
integer. Index final de cet onglet dans la fenêtre
-
- -

Exemples

- -

Écouter et enregistrer les événements de déplacement :

- -
function handleMoved(tabId, moveInfo) {
-  console.log("Tab " + tabId +
-              " moved from " + moveInfo.fromIndex +
-              " to " + moveInfo.toIndex);
-}
-
-browser.tabs.onMoved.addListener(handleMoved);
- -

{{WebExtExamples}}

- -
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onMoved")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onmoved/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/onmoved/index.md new file mode 100644 index 0000000000..a9ab08a87f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onmoved/index.md @@ -0,0 +1,131 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'un onglet est déplacé dans une fenêtre

+ +

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')}}.

+ +

Syntaxe

+ +
browser.tabs.onMoved.addListener(listener)
+browser.tabs.onMoved.removeListener(listener)
+browser.tabs.onMoved.hasListener(listener)
+
+ +

Les événements ont trois fonctions:

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener st l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si le listenerest enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
tabId
+
integer. ID de l'onglet déplacé par l'utilisateur.
+
+ +
+
moveInfo
+
object. Informations sur le déménagement.
+
+
+
+ +

Objets supplémentaires

+ +

moveInfo

+ +
+
windowId
+
integer. ID de la fenêtre de cet onglet.
+
fromIndex
+
integer. Index initial de cet onglet dans la fenêtre.
+
toIndex
+
integer. Index final de cet onglet dans la fenêtre
+
+ +

Exemples

+ +

Écouter et enregistrer les événements de déplacement :

+ +
function handleMoved(tabId, moveInfo) {
+  console.log("Tab " + tabId +
+              " moved from " + moveInfo.fromIndex +
+              " to " + moveInfo.toIndex);
+}
+
+browser.tabs.onMoved.addListener(handleMoved);
+ +

{{WebExtExamples}}

+ +
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onMoved")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 360e8ac589..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/onremoved/index.html +++ /dev/null @@ -1,127 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé quand un onglet est fermé.

- -

Syntaxe

- -
browser.tabs.onRemoved.addListener(callback)
-browser.tabs.onRemoved.removeListener(listener)
-browser.tabs.onRemoved.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
tabId
-
integer. ID de l'onglet qui s'est fermé.
-
- -
-
removeInfo
-
object. L'ID de la fenêtre de l'onglet et un booléen indiquant si la fenêtre est également fermée.
-
-
-
- -

Objets supplémentaires

- -

removeInfo

- -
-
windowId
-
integer. La fenêtre dont l'onglet est fermé.
-
isWindowClosing
-
boolean. true si l'onglet est fermé car sa fenêtre est en cours de fermeture.
-
- -

Exemples

- -

Écoutez les événements proches et consignez les informations :

- -
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);
- -

{{WebExtExamples}}

- -
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onRemoved")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onremoved/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/onremoved/index.md new file mode 100644 index 0000000000..360e8ac589 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onremoved/index.md @@ -0,0 +1,127 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé quand un onglet est fermé.

+ +

Syntaxe

+ +
browser.tabs.onRemoved.addListener(callback)
+browser.tabs.onRemoved.removeListener(listener)
+browser.tabs.onRemoved.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
tabId
+
integer. ID de l'onglet qui s'est fermé.
+
+ +
+
removeInfo
+
object. L'ID de la fenêtre de l'onglet et un booléen indiquant si la fenêtre est également fermée.
+
+
+
+ +

Objets supplémentaires

+ +

removeInfo

+ +
+
windowId
+
integer. La fenêtre dont l'onglet est fermé.
+
isWindowClosing
+
boolean. true si l'onglet est fermé car sa fenêtre est en cours de fermeture.
+
+ +

Exemples

+ +

Écoutez les événements proches et consignez les informations :

+ +
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);
+ +

{{WebExtExamples}}

+ +
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onRemoved")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 346770d48e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/onreplaced/index.html +++ /dev/null @@ -1,117 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsqu'un onglet est remplacé par un autre en raison d'un prérendering ou d'un instantané.

- -

Cet événement peut ne pas être pertinent ou pris en charge par des navigateurs autres que Chrome.

- -

Syntaxe

- -
browser.tabs.onReplaced.addListener(listener)
-browser.tabs.onReplaced.removeListener(listener)
-browser.tabs.onReplaced.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
addedTabId
-
integer. ID de l'onglet de remplacement.
-
- -
-
removedTabId
-
integer. ID de l'onglet qui a été remplacé.
-
-
-
- -

Exemples

- -

Écoutez les événements de remplacement et consignez les informations associées :

- -
function handleReplaced(addedTabId, removedTabId) {
-  console.log("New tab: " + addedTabId);
-  console.log("Old tab: " + removedTabId);
-}
-
-browser.tabs.onReplaced.addListener(handleReplaced);
-
- -

{{WebExtExamples}}

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onReplaced")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onreplaced/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/onreplaced/index.md new file mode 100644 index 0000000000..346770d48e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onreplaced/index.md @@ -0,0 +1,117 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsqu'un onglet est remplacé par un autre en raison d'un prérendering ou d'un instantané.

+ +

Cet événement peut ne pas être pertinent ou pris en charge par des navigateurs autres que Chrome.

+ +

Syntaxe

+ +
browser.tabs.onReplaced.addListener(listener)
+browser.tabs.onReplaced.removeListener(listener)
+browser.tabs.onReplaced.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
addedTabId
+
integer. ID de l'onglet de remplacement.
+
+ +
+
removedTabId
+
integer. ID de l'onglet qui a été remplacé.
+
+
+
+ +

Exemples

+ +

Écoutez les événements de remplacement et consignez les informations associées :

+ +
function handleReplaced(addedTabId, removedTabId) {
+  console.log("New tab: " + addedTabId);
+  console.log("Old tab: " + removedTabId);
+}
+
+browser.tabs.onReplaced.addListener(handleReplaced);
+
+ +

{{WebExtExamples}}

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onReplaced")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 32841dc868..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/onselectionchanged/index.html +++ /dev/null @@ -1,115 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

Attention : Cet événement est obsolète. Utilisez {{WebExtAPIRef("tabs.onActivated")}} à la place.

-
- -

Se déclenche lorsque l'onglet sélectionné dans une fenêtre change.

- -

Syntaxe

- -
browser.tabs.onSelectionChanged.addListener(listener)
-browser.tabs.onSelectionChanged.removeListener(listener)
-browser.tabs.onSelectionChanged.hasListener(listener)
-
- -

Les événements ont trois fonctions:

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
 Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
tabId
-
integer. L'ID de l'onglet qui est devenu actif.
-
- -
-
selectInfo
-
object.
-
-
-
- -

Objets supplémentaires

- -

selectInfo

- -
-
windowId
-
integer. L'ID de la fenêtre dans laquelle l'onglet sélectionné a changé.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onSelectionChanged")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onselectionchanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/onselectionchanged/index.md new file mode 100644 index 0000000000..32841dc868 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onselectionchanged/index.md @@ -0,0 +1,115 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

Attention : Cet événement est obsolète. Utilisez {{WebExtAPIRef("tabs.onActivated")}} à la place.

+
+ +

Se déclenche lorsque l'onglet sélectionné dans une fenêtre change.

+ +

Syntaxe

+ +
browser.tabs.onSelectionChanged.addListener(listener)
+browser.tabs.onSelectionChanged.removeListener(listener)
+browser.tabs.onSelectionChanged.hasListener(listener)
+
+ +

Les événements ont trois fonctions:

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
 Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
tabId
+
integer. L'ID de l'onglet qui est devenu actif.
+
+ +
+
selectInfo
+
object.
+
+
+
+ +

Objets supplémentaires

+ +

selectInfo

+ +
+
windowId
+
integer. L'ID de la fenêtre dans laquelle l'onglet sélectionné a changé.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onSelectionChanged")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index a434d27b61..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/onupdated/index.html +++ /dev/null @@ -1,272 +0,0 @@ ---- -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 ---- -

C'est déclenché lorsqu'un onglet est mis à jour.

- -

Lorsque l'utilisateur navigue vers une nouvelle URL dans un onglet, cela génère généralement plusieurs événements onUpdated au fur et à mesure que diverses propriétés de l'objet {{WebExtAPIRef("tabs.Tab")}} sont mises à jour. Ceci inclut l' url, mais aussi potentiellement le title et les propriétés favIconUrl. La propriété du  status passe par le "loading" et "complete".

- -

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é pinned) et le muting ou le unmuting (qui met à jour les propriétés  audible et mutedInfo).

- -

Vous pouvez filtrer cet événement, en le rendant uniquement valable pour les onglets dont les urls correspondent à des patterns 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.

- -

Syntaxe

- -
browser.tabs.onUpdated.addListener(listener[, extraParameters])
-browser.tabs.onUpdated.removeListener(listener)
-browser.tabs.onUpdated.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback[, extraParameters])
-
Ajoute un écouteur à cet événement
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

- -
-
tabId
-
integer. ID de l'onglet qui a été mis à jour.
-
changeInfo
-
object. ontient les propriétés des propriétés de l'onglet qui ont été modifiées. Voir changeInfo ci-dessous.
-
tab
-
{{WebExtAPIRef('tabs.Tab')}}. Le nouvel état de l'onglet.
-
-
-
extraParameters{{optional_inline}}
-
-

object. 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.

- -
-
urls
-
Array. Un tableau match patterns. Ne déclenchez l'événement que pour les onglets dont la propriété de l'url courante correspond à l'un des motifs.
-
properties
-
-

Array. 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 :

- -
    -
  • "attention"
  • -
  • "audible"
  • -
  • "discarded"
  • -
  • "favIconUrl"
  • -
  • "hidden"
  • -
  • "isArticle"
  • -
  • "mutedInfo"
  • -
  • "pinned"
  • -
  • "sharingState"
  • -
  • "status"
  • -
  • "title"
  • -
-
-
tabId
-
Integer. Ne déclenchez cet événement que pour l'onglet identifié par cet ID.
-
windowId
-
Integer. N'activez cet événement que pour les onglets qui se trouvent actuellement dans la fenêtre identifiée par cet ID.
-
-
-
- -

Objets supplémentaires

- -

changeInfo

- -

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")}}.

- -
-
attention {{optional_inline}}
-
boolean. Indique si l'onglet attire l'attention. Par exemple, lorsque l'onglet affiche un dialogue modal, attention sera true.
-
audible{{optional_inline}}
-
boolean. Nouvel état audible de l'onglet.
-
discarded {{optional_inline}}
-
boolean. 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é.
-
favIconUrl{{optional_inline}}
-
string. Nouvelle URL de favicon de l'onglet.
-
mutedInfo{{optional_inline}}
-
{{WebExtAPIRef('tabs.MutedInfo')}}. Le nouvel état muet de l'onglet et la raison du changement.
-
pinned{{optional_inline}}
-
boolean. Nouvel état épinglé de l'onglet.
-
status{{optional_inline}}
-
string. Le statut de l'onglet. Peut être soit chargé ou complet.
-
title{{optional_inline}}
-
string. Le nouveau titre de l'onglet.
-
url{{optional_inline}}
-
string. L'URL de l'onglet s'il a changé.
-
- -

Exemples

- -

Écoutez et connectez toutes les informations de changement et nouvel état:

- -
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);
- -

Consigner les modifications dans les URL :

- -
function handleUpdated(tabId, changeInfo, tabInfo) {
-  if (changeInfo.url) {
-    console.log("Tab: " + tabId +
-                " URL changed to " + changeInfo.url);
-  }
-}
-
-browser.tabs.onUpdated.addListener(handleUpdated);
- -

Filtering examples

- -

Le journal ne change que pour les onglets dont la propriété url est matched par "https://developer.mozilla.org/*" ou "https://twitter.com/mozdevnet":

- -
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);
- -

Le journal ne change que la propriété épinglée des onglets (c'est-à-dire les actions d'épinglage et de déblocage) :

- -
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);
- -

Combiner les deux filtres précédents : changements de journal seulement :

- - - -
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);
- -

Changements dans le journal seulement :

- - - -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onUpdated", 10)}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

-
- - - -

{{AddonSidebar}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onupdated/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/onupdated/index.md new file mode 100644 index 0000000000..a434d27b61 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onupdated/index.md @@ -0,0 +1,272 @@ +--- +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 +--- +

C'est déclenché lorsqu'un onglet est mis à jour.

+ +

Lorsque l'utilisateur navigue vers une nouvelle URL dans un onglet, cela génère généralement plusieurs événements onUpdated au fur et à mesure que diverses propriétés de l'objet {{WebExtAPIRef("tabs.Tab")}} sont mises à jour. Ceci inclut l' url, mais aussi potentiellement le title et les propriétés favIconUrl. La propriété du  status passe par le "loading" et "complete".

+ +

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é pinned) et le muting ou le unmuting (qui met à jour les propriétés  audible et mutedInfo).

+ +

Vous pouvez filtrer cet événement, en le rendant uniquement valable pour les onglets dont les urls correspondent à des patterns 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.

+ +

Syntaxe

+ +
browser.tabs.onUpdated.addListener(listener[, extraParameters])
+browser.tabs.onUpdated.removeListener(listener)
+browser.tabs.onUpdated.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback[, extraParameters])
+
Ajoute un écouteur à cet événement
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

+ +
+
tabId
+
integer. ID de l'onglet qui a été mis à jour.
+
changeInfo
+
object. ontient les propriétés des propriétés de l'onglet qui ont été modifiées. Voir changeInfo ci-dessous.
+
tab
+
{{WebExtAPIRef('tabs.Tab')}}. Le nouvel état de l'onglet.
+
+
+
extraParameters{{optional_inline}}
+
+

object. 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.

+ +
+
urls
+
Array. Un tableau match patterns. Ne déclenchez l'événement que pour les onglets dont la propriété de l'url courante correspond à l'un des motifs.
+
properties
+
+

Array. 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 :

+ +
    +
  • "attention"
  • +
  • "audible"
  • +
  • "discarded"
  • +
  • "favIconUrl"
  • +
  • "hidden"
  • +
  • "isArticle"
  • +
  • "mutedInfo"
  • +
  • "pinned"
  • +
  • "sharingState"
  • +
  • "status"
  • +
  • "title"
  • +
+
+
tabId
+
Integer. Ne déclenchez cet événement que pour l'onglet identifié par cet ID.
+
windowId
+
Integer. N'activez cet événement que pour les onglets qui se trouvent actuellement dans la fenêtre identifiée par cet ID.
+
+
+
+ +

Objets supplémentaires

+ +

changeInfo

+ +

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")}}.

+ +
+
attention {{optional_inline}}
+
boolean. Indique si l'onglet attire l'attention. Par exemple, lorsque l'onglet affiche un dialogue modal, attention sera true.
+
audible{{optional_inline}}
+
boolean. Nouvel état audible de l'onglet.
+
discarded {{optional_inline}}
+
boolean. 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é.
+
favIconUrl{{optional_inline}}
+
string. Nouvelle URL de favicon de l'onglet.
+
mutedInfo{{optional_inline}}
+
{{WebExtAPIRef('tabs.MutedInfo')}}. Le nouvel état muet de l'onglet et la raison du changement.
+
pinned{{optional_inline}}
+
boolean. Nouvel état épinglé de l'onglet.
+
status{{optional_inline}}
+
string. Le statut de l'onglet. Peut être soit chargé ou complet.
+
title{{optional_inline}}
+
string. Le nouveau titre de l'onglet.
+
url{{optional_inline}}
+
string. L'URL de l'onglet s'il a changé.
+
+ +

Exemples

+ +

Écoutez et connectez toutes les informations de changement et nouvel état:

+ +
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);
+ +

Consigner les modifications dans les URL :

+ +
function handleUpdated(tabId, changeInfo, tabInfo) {
+  if (changeInfo.url) {
+    console.log("Tab: " + tabId +
+                " URL changed to " + changeInfo.url);
+  }
+}
+
+browser.tabs.onUpdated.addListener(handleUpdated);
+ +

Filtering examples

+ +

Le journal ne change que pour les onglets dont la propriété url est matched par "https://developer.mozilla.org/*" ou "https://twitter.com/mozdevnet":

+ +
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);
+ +

Le journal ne change que la propriété épinglée des onglets (c'est-à-dire les actions d'épinglage et de déblocage) :

+ +
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);
+ +

Combiner les deux filtres précédents : changements de journal seulement :

+ + + +
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);
+ +

Changements dans le journal seulement :

+ + + +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onUpdated", 10)}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+
+ + + +

{{AddonSidebar}}

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 deleted file mode 100644 index 67b0c63bd5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/onzoomchange/index.html +++ /dev/null @@ -1,126 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Envoyé lorsqu'un onglet est agrandi.

- -

Syntaxe

- -
browser.tabs.onZoomChange.addListener(listener)
-browser.tabs.onZoomChange.removeListener(listener)
-browser.tabs.onZoomChange.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener de l'écouteur est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
ZoomChangeInfo
-
object. Informations sur l'événement de zoom.
-
-
-
- -

Objets supplémentaires

- -

ZoomChangeInfo

- -
-
tabId
-
integer. ID de l'onglet qui a été zoomé.
-
oldZoomFactor
-
number. Le facteur de zoom précédent.
-
newZoomFactor
-
number. Le nouveau facteur de zoom.
-
zoomSettings
-
{{WebExtAPIRef('tabs.ZoomSettings')}}. Paramètres de zoom pour l'onglet.
-
- -

Exemples

- -

Ecoutez les événements de zoom et consignez les informations :

- -
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);
- -

{{WebExtExamples}}

- -
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.onZoomChange")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/onzoomchange/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/onzoomchange/index.md new file mode 100644 index 0000000000..67b0c63bd5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/onzoomchange/index.md @@ -0,0 +1,126 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Envoyé lorsqu'un onglet est agrandi.

+ +

Syntaxe

+ +
browser.tabs.onZoomChange.addListener(listener)
+browser.tabs.onZoomChange.removeListener(listener)
+browser.tabs.onZoomChange.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener de l'écouteur est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
ZoomChangeInfo
+
object. Informations sur l'événement de zoom.
+
+
+
+ +

Objets supplémentaires

+ +

ZoomChangeInfo

+ +
+
tabId
+
integer. ID de l'onglet qui a été zoomé.
+
oldZoomFactor
+
number. Le facteur de zoom précédent.
+
newZoomFactor
+
number. Le nouveau facteur de zoom.
+
zoomSettings
+
{{WebExtAPIRef('tabs.ZoomSettings')}}. Paramètres de zoom pour l'onglet.
+
+ +

Exemples

+ +

Ecoutez les événements de zoom et consignez les informations :

+ +
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);
+ +

{{WebExtExamples}}

+ +
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.onZoomChange")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index aae4f3a3e7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/pagesettings/index.html +++ /dev/null @@ -1,86 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Le type tabs.PageSettings est utilisé pour contrôler le rendu d'un onglet au format PDF par la méthode  {{WebExtAPIRef("tabs.saveAsPDF()")}}.

- -

Toutes ses propriétés sont facultatives.

- -

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 :

- - - -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
edgeBottom {{optional_inline}}
-
number. L'espacement entre le bas des pieds et le bord inférieur du papier (pouces). Par défaut : 0.
-
edgeLeft {{optional_inline}}
-
number. L'espacement entre l'en-tête / pied de page gauche et le bord gauche du papier (pouces). Par défaut : 0
-
edgeRight {{optional_inline}}
-
number. L'espacement entre l'en-tête / pied droit et le bord gauche du papier (pouces). Par défaut : 0.
-
edgeTop {{optional_inline}}
-
number. L'espacement entre le haut des en-têtes et le bord supérieur du papier (pouces). Par défaut : 0
-
footerCenter {{optional_inline}}
-
string. Le texte du pied de page central de la page. Défaut : ''.
-
footerLeft {{optional_inline}}
-
string. Le texte pour le pied gauche de la page. Par défaut :  '&PT'.
-
footerRight {{optional_inline}}
-
string. Le texte pour le pied droit de la page. Par défaut : '&D'.
-
headerCenter {{optional_inline}}
-
string. Le texte de l'en-tête du centre de la page. Défaut : ''.
-
headerLeft {{optional_inline}}
-
string. Le texte de l'en-tête gauche de la page. Par défaut : '&T'.
-
headerRight {{optional_inline}}
-
string. Le texte de l'en-tête de la page. Par défaut : '&U'.
-
marginBottom {{optional_inline}}
-
number. La marge entre le contenu de la page et le bord inférieur du papier (pouces). Par défaut : 0.5.
-
marginLeft {{optional_inline}}
-
number. La marge entre le contenu de la page et le bord gauche du papier (pouces). Par défaut : 0.5.
-
marginRight {{optional_inline}}
-
number. La marge entre le contenu de la page et le bord droit du papier (en pouces). Par défaut : 0.5.
-
marginTop {{optional_inline}}
-
number. La marge entre le contenu de la page et le bord supérieur du papier (pouces). Par défaut : 0.5.
-
orientation {{optional_inline}}
-
integer. Orientation de la page: 0 signifie "portrait", 1 signifie "paysage". Par défaut : 0.
-
paperHeight {{optional_inline}}
-
number. La hauteur du papier dans les unités de format papier. Par défaut : 11.0.
-
paperSizeUnit {{optional_inline}}
-
integer. L'unité de format de papier: 0 = pouces, 1 = millimètres. Par défaut : 0.
-
paperWidth {{optional_inline}}
-
number. La largeur du papier dans les unités de format papier. Par défaut : 8.5.
-
scaling {{optional_inline}}
-
number. Facteur d'échelle du contenu de la page. 1 signifie 100% ou taille normale. Par défaut : 1.
-
showBackgroundColors {{optional_inline}}
-
boolean. Si les couleurs d'arrière-plan de la page doivent être affichées. Par défaut : false.
-
showBackgroundImages {{optional_inline}}
-
boolean. Si les images d'arrière-plan de la page doivent être affichées. Par défaut : false.
-
shrinkToFit {{optional_inline}}
-
boolean. 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.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.PageSettings")}}

- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/pagesettings/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/pagesettings/index.md new file mode 100644 index 0000000000..aae4f3a3e7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/pagesettings/index.md @@ -0,0 +1,86 @@ +--- +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 +--- +
{{AddonSidebar}}
+ +

Le type tabs.PageSettings est utilisé pour contrôler le rendu d'un onglet au format PDF par la méthode  {{WebExtAPIRef("tabs.saveAsPDF()")}}.

+ +

Toutes ses propriétés sont facultatives.

+ +

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 :

+ + + +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
edgeBottom {{optional_inline}}
+
number. L'espacement entre le bas des pieds et le bord inférieur du papier (pouces). Par défaut : 0.
+
edgeLeft {{optional_inline}}
+
number. L'espacement entre l'en-tête / pied de page gauche et le bord gauche du papier (pouces). Par défaut : 0
+
edgeRight {{optional_inline}}
+
number. L'espacement entre l'en-tête / pied droit et le bord gauche du papier (pouces). Par défaut : 0.
+
edgeTop {{optional_inline}}
+
number. L'espacement entre le haut des en-têtes et le bord supérieur du papier (pouces). Par défaut : 0
+
footerCenter {{optional_inline}}
+
string. Le texte du pied de page central de la page. Défaut : ''.
+
footerLeft {{optional_inline}}
+
string. Le texte pour le pied gauche de la page. Par défaut :  '&PT'.
+
footerRight {{optional_inline}}
+
string. Le texte pour le pied droit de la page. Par défaut : '&D'.
+
headerCenter {{optional_inline}}
+
string. Le texte de l'en-tête du centre de la page. Défaut : ''.
+
headerLeft {{optional_inline}}
+
string. Le texte de l'en-tête gauche de la page. Par défaut : '&T'.
+
headerRight {{optional_inline}}
+
string. Le texte de l'en-tête de la page. Par défaut : '&U'.
+
marginBottom {{optional_inline}}
+
number. La marge entre le contenu de la page et le bord inférieur du papier (pouces). Par défaut : 0.5.
+
marginLeft {{optional_inline}}
+
number. La marge entre le contenu de la page et le bord gauche du papier (pouces). Par défaut : 0.5.
+
marginRight {{optional_inline}}
+
number. La marge entre le contenu de la page et le bord droit du papier (en pouces). Par défaut : 0.5.
+
marginTop {{optional_inline}}
+
number. La marge entre le contenu de la page et le bord supérieur du papier (pouces). Par défaut : 0.5.
+
orientation {{optional_inline}}
+
integer. Orientation de la page: 0 signifie "portrait", 1 signifie "paysage". Par défaut : 0.
+
paperHeight {{optional_inline}}
+
number. La hauteur du papier dans les unités de format papier. Par défaut : 11.0.
+
paperSizeUnit {{optional_inline}}
+
integer. L'unité de format de papier: 0 = pouces, 1 = millimètres. Par défaut : 0.
+
paperWidth {{optional_inline}}
+
number. La largeur du papier dans les unités de format papier. Par défaut : 8.5.
+
scaling {{optional_inline}}
+
number. Facteur d'échelle du contenu de la page. 1 signifie 100% ou taille normale. Par défaut : 1.
+
showBackgroundColors {{optional_inline}}
+
boolean. Si les couleurs d'arrière-plan de la page doivent être affichées. Par défaut : false.
+
showBackgroundImages {{optional_inline}}
+
boolean. Si les images d'arrière-plan de la page doivent être affichées. Par défaut : false.
+
shrinkToFit {{optional_inline}}
+
boolean. 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.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.PageSettings")}}

+ +

{{WebExtExamples}}

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 deleted file mode 100644 index c2ab587834..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/print/index.html +++ /dev/null @@ -1,46 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.tabs.print()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

None.

- -

Exemples

- -

Dans cet exemple, un script d'arrière-plan écoute un clic sur une action navigateur, puis tente d'imprimer l'onglet actuellement actif :

- -
browser.browserAction.onClicked.addListener(() => {
-  browser.tabs.print();
-});
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.print")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/print/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/print/index.md new file mode 100644 index 0000000000..c2ab587834 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/print/index.md @@ -0,0 +1,46 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.tabs.print()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

None.

+ +

Exemples

+ +

Dans cet exemple, un script d'arrière-plan écoute un clic sur une action navigateur, puis tente d'imprimer l'onglet actuellement actif :

+ +
browser.browserAction.onClicked.addListener(() => {
+  browser.tabs.print();
+});
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.print")}}

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 deleted file mode 100644 index 277bc5af28..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/printpreview/index.html +++ /dev/null @@ -1,62 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Ouvre l'aperçu avant impression pour l'onglet actif.
- -
- -
C'est une fonction asynchrone qui renvoie une Promise.
- -
- -
Une extension peut détecter lorsque l'aperçu d'impression a été fermé en écoutant l'événement afterprint :
- -
- -
-
window.addEventListener("afterprint", resumeFunction, false);
-
- -

Syntaxe

- -
var openingPreview = browser.tabs.printPreview()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui sera remplie sans argument lorsque la page d'aperçu est ouverte.

- -

Exemples

- -

Dans cet exemple, un script d'arrière-plan écoute un clic sur une action de navigateur, puis ouvre l'aperçu avant impression pour l'onglet actuellement actif :

- -
browser.browserAction.onClicked.addListener(() => {
-  browser.tabs.printPreview()
-    .then(() => {
-      console.log("Entered print preview");
-    });
-});
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.printPreview")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/printpreview/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/printpreview/index.md new file mode 100644 index 0000000000..277bc5af28 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/printpreview/index.md @@ -0,0 +1,62 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Ouvre l'aperçu avant impression pour l'onglet actif.
+ +
+ +
C'est une fonction asynchrone qui renvoie une Promise.
+ +
+ +
Une extension peut détecter lorsque l'aperçu d'impression a été fermé en écoutant l'événement afterprint :
+ +
+ +
+
window.addEventListener("afterprint", resumeFunction, false);
+
+ +

Syntaxe

+ +
var openingPreview = browser.tabs.printPreview()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie sans argument lorsque la page d'aperçu est ouverte.

+ +

Exemples

+ +

Dans cet exemple, un script d'arrière-plan écoute un clic sur une action de navigateur, puis ouvre l'aperçu avant impression pour l'onglet actuellement actif :

+ +
browser.browserAction.onClicked.addListener(() => {
+  browser.tabs.printPreview()
+    .then(() => {
+      console.log("Entered print preview");
+    });
+});
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.printPreview")}}

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 deleted file mode 100644 index 7e7a756610..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/query/index.html +++ /dev/null @@ -1,187 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var querying = browser.tabs.query(
-  queryInfo             // object
-)
-
- -

Paramètres

- -
-
queryInfo
-

object. La fonction query() 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")}}.

-
-
active{{optional_inline}}
-
boolean. Si les onglets sont actifs dans leurs fenêtres.
-
audible{{optional_inline}}
-
boolean. Si les onglets sont audibles.
-
autoDiscardable{{optional_inline}}
-
boolean. Si les onglets peuvent être supprimés automatiquement par le navigateur lorsque les ressources sont faibles.
-
cookieStoreId {{optional_inline}}
-
string. Utilisez cette option pour renvoyer uniquement les onglets dont l'ID est cookieStoreId. Cette option n'est disponible que si l'extension à la  permission "cookies"
-
currentWindow{{optional_inline}}
-
boolean. Si les onglets sont dans la fenêtre actuelle.
-
discarded{{optional_inline}}
-
boolean. 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é.***
-
hidden{{optional_inline}}
-
boolean. Si les onglets sont cachés.
-
highlighted{{optional_inline}}
-
boolean. Si les onglets sont en surbrillance.
-
index{{optional_inline}}
-
integer. La position des onglets dans leurs fenêtres.
-
muted{{optional_inline}}
-
boolean. Si les onglets sont en sourdine.
-
lastFocusedWindow{{optional_inline}}
-
boolean. Si les onglets sont dans la dernière fenêtre focalisée.
-
openerTabId{{optional_inline}}
-
integer. L'ID de l'onglet qui a ouvert cet onglet.
-
pinned{{optional_inline}}
-
boolean. Si les onglets sont épinglés.
-
status{{optional_inline}}
-
{{WebExtAPIRef('tabs.TabStatus')}}. Si les onglets ont terminé le chargement.
-
title{{optional_inline}}
-
string. Faites correspondre les titres de page à un motif.
-
url{{optional_inline}}
-
string ou array de string. Faites correspondre les onglets avec un ou plusieurs modèle de correspondance. Notez que les identificateurs de fragment ne sont pas appariés.
-
windowId{{optional_inline}}
-
integer. L'ID de la fenêtre parente, ou  {{WebExtAPIRef('windows.WINDOW_ID_CURRENT')}} pour la fenêtre en cours.
-
windowType{{optional_inline}}
-
{{WebExtAPIRef('tabs.WindowType')}}. Le type de fenêtre dans lequel les onglets y  sont.
-
-
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un tableau d'objets {{WebExtAPIRef('tabs.Tab')}}, contenant des informations sur chaque onglet correspondant. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

- -

Exemples

- -

Obtenez tous les onglets :

- -
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);
- -

Obtenez tous les onglets dans la fenêtre actuelle :

- -
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);
- -

Obtenez l'onglet actif dans la fenêtre actuelle :

- -
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);
- -

Obtenez des onglets pour toutes les URL HTTP et HTTPS sous "mozilla.org" ou l'un de ses sous-domaines :

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.query")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/query/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/query/index.md new file mode 100644 index 0000000000..7e7a756610 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/query/index.md @@ -0,0 +1,187 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var querying = browser.tabs.query(
+  queryInfo             // object
+)
+
+ +

Paramètres

+ +
+
queryInfo
+

object. La fonction query() 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")}}.

+
+
active{{optional_inline}}
+
boolean. Si les onglets sont actifs dans leurs fenêtres.
+
audible{{optional_inline}}
+
boolean. Si les onglets sont audibles.
+
autoDiscardable{{optional_inline}}
+
boolean. Si les onglets peuvent être supprimés automatiquement par le navigateur lorsque les ressources sont faibles.
+
cookieStoreId {{optional_inline}}
+
string. Utilisez cette option pour renvoyer uniquement les onglets dont l'ID est cookieStoreId. Cette option n'est disponible que si l'extension à la  permission "cookies"
+
currentWindow{{optional_inline}}
+
boolean. Si les onglets sont dans la fenêtre actuelle.
+
discarded{{optional_inline}}
+
boolean. 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é.***
+
hidden{{optional_inline}}
+
boolean. Si les onglets sont cachés.
+
highlighted{{optional_inline}}
+
boolean. Si les onglets sont en surbrillance.
+
index{{optional_inline}}
+
integer. La position des onglets dans leurs fenêtres.
+
muted{{optional_inline}}
+
boolean. Si les onglets sont en sourdine.
+
lastFocusedWindow{{optional_inline}}
+
boolean. Si les onglets sont dans la dernière fenêtre focalisée.
+
openerTabId{{optional_inline}}
+
integer. L'ID de l'onglet qui a ouvert cet onglet.
+
pinned{{optional_inline}}
+
boolean. Si les onglets sont épinglés.
+
status{{optional_inline}}
+
{{WebExtAPIRef('tabs.TabStatus')}}. Si les onglets ont terminé le chargement.
+
title{{optional_inline}}
+
string. Faites correspondre les titres de page à un motif.
+
url{{optional_inline}}
+
string ou array de string. Faites correspondre les onglets avec un ou plusieurs modèle de correspondance. Notez que les identificateurs de fragment ne sont pas appariés.
+
windowId{{optional_inline}}
+
integer. L'ID de la fenêtre parente, ou  {{WebExtAPIRef('windows.WINDOW_ID_CURRENT')}} pour la fenêtre en cours.
+
windowType{{optional_inline}}
+
{{WebExtAPIRef('tabs.WindowType')}}. Le type de fenêtre dans lequel les onglets y  sont.
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un tableau d'objets {{WebExtAPIRef('tabs.Tab')}}, contenant des informations sur chaque onglet correspondant. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

+ +

Exemples

+ +

Obtenez tous les onglets :

+ +
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);
+ +

Obtenez tous les onglets dans la fenêtre actuelle :

+ +
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);
+ +

Obtenez l'onglet actif dans la fenêtre actuelle :

+ +
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);
+ +

Obtenez des onglets pour toutes les URL HTTP et HTTPS sous "mozilla.org" ou l'un de ses sous-domaines :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.query")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index af9306d5fa..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/reload/index.html +++ /dev/null @@ -1,113 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Rechargez un onglet, en contournant éventuellement le cache Web local.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var reloading = browser.tabs.reload(
-  tabId,            // optional integer
-  reloadProperties  // optional object
-)
-
- -

Paramètres

- -
-
tabId{{optional_inline}}
-
integer. L'ID de l'onglet à recharger. Par défaut à l'onglet sélectionné de la fenêtre en cours.
-
reloadProperties{{optional_inline}}
-

object.

-
-
bypassCache{{optional_inline}}
-
boolean. Contourner le cache web local. La valeur par défaut est false.
-
-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Recharger l'onglet actif de la fenêtre en cours :

- -
browser.tabs.reload();
- -

Rechargez l'onglet actif de la fenêtre en cours, en ignorant le cache :

- -
browser.tabs.reload({bypassCache: true});
- -

Rechargez l'onglet dont l'ID est 2, en ignorant le cache et en appelant un rappel lorsque vous avez terminé :

- -
function onReloaded() {
-  console.log(`Reloaded`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var reloading = browser.tabs.reload(2, {bypassCache: true});
-reloading.then(onReloaded, onError);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.reload")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/reload/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/reload/index.md new file mode 100644 index 0000000000..af9306d5fa --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/reload/index.md @@ -0,0 +1,113 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Rechargez un onglet, en contournant éventuellement le cache Web local.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var reloading = browser.tabs.reload(
+  tabId,            // optional integer
+  reloadProperties  // optional object
+)
+
+ +

Paramètres

+ +
+
tabId{{optional_inline}}
+
integer. L'ID de l'onglet à recharger. Par défaut à l'onglet sélectionné de la fenêtre en cours.
+
reloadProperties{{optional_inline}}
+

object.

+
+
bypassCache{{optional_inline}}
+
boolean. Contourner le cache web local. La valeur par défaut est false.
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Recharger l'onglet actif de la fenêtre en cours :

+ +
browser.tabs.reload();
+ +

Rechargez l'onglet actif de la fenêtre en cours, en ignorant le cache :

+ +
browser.tabs.reload({bypassCache: true});
+ +

Rechargez l'onglet dont l'ID est 2, en ignorant le cache et en appelant un rappel lorsque vous avez terminé :

+ +
function onReloaded() {
+  console.log(`Reloaded`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var reloading = browser.tabs.reload(2, {bypassCache: true});
+reloading.then(onReloaded, onError);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.reload")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 90deff9f09..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/remove/index.html +++ /dev/null @@ -1,110 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Ferme un ou plusieurs onglets.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.tabs.remove(
-  tabIds          // integer or integer array
-)
-
- -

Paramètres

- -
-
tabIds
-
integer or array of integer. Les identifiants de l'onglet ou des onglets à fermer.
-
- -

Valeur retournée

- -

Une Promise qui sera remplie sans arguments lorsque tous les onglets spécifiés ont été supprimés ou que leurs invites beforeunload ont été traitées. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

- -

Exemples

- -

Fermer un seul onglet :

- -
function onRemoved() {
-  console.log(`Removed`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var removing = browser.tabs.remove(2);
-removing.then(onRemoved, onError);
- -

Fermer plusieurs onglets :

- -
function onRemoved() {
-  console.log(`Removed`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var removing = browser.tabs.remove([15, 14, 1]);
-removing.then(onRemoved, onError);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.remove")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/remove/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/remove/index.md new file mode 100644 index 0000000000..90deff9f09 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/remove/index.md @@ -0,0 +1,110 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Ferme un ou plusieurs onglets.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.tabs.remove(
+  tabIds          // integer or integer array
+)
+
+ +

Paramètres

+ +
+
tabIds
+
integer or array of integer. Les identifiants de l'onglet ou des onglets à fermer.
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie sans arguments lorsque tous les onglets spécifiés ont été supprimés ou que leurs invites beforeunload ont été traitées. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

+ +

Exemples

+ +

Fermer un seul onglet :

+ +
function onRemoved() {
+  console.log(`Removed`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var removing = browser.tabs.remove(2);
+removing.then(onRemoved, onError);
+ +

Fermer plusieurs onglets :

+ +
function onRemoved() {
+  console.log(`Removed`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var removing = browser.tabs.remove([15, 14, 1]);
+removing.then(onRemoved, onError);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.remove")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 42cc08592e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/removecss/index.html +++ /dev/null @@ -1,119 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Supprime d'une page CSS précédemment injectée par un appel à {{WebExtAPIRef("tabs.insertCSS()")}}.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.tabs.removeCSS(
-  tabId,           // optional integer
-  details          // object
-)
-
- -

Paramètres

- -
-
tabId {{optional_inline}}
-
integer. L'ID de l'onglet à partir duquel supprimer le CSS. Par défaut à l'onglet actif de la fenêtre en cours.
-
details
-
Un objet décrivant le CSS à retirer de la page. Il contient les propriétés suivantes : -
-
-
allFrames{{optional_inline}}
-
boolean. si true, le code sera supprimé de toutes les images de la page en cours. si c'est false, le code est seulement retiré du cadre supérieur. Par défaut à false.
-
code{{optional_inline}}
-
string. 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()")}}.
-
cssOrigin{{optional_inline}}
-
string. 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.
-
file{{optional_inline}}
-
string. 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()")}}.
-
frameId{{optional_inline}}
-
integer. Le cadre à partir duquel supprimer le CSS. La valeur par défaut est 0 (l'image de niveau supérieur).
-
matchAboutBlank{{optional_inline}}
-
boolean. si true, 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 à false.
-
-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Cet exemple ajoute du code CSS en utilisant {{WebExtAPIRef("tabs.insertCSS")}}, puis le supprime à nouveau lorsque l'utilisateur clique sur une action du navigateur :

- -
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(() => {
-  var removing = browser.tabs.removeCSS(2, {code: css});
-  removing.then(null, onError);
-});
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.removeCSS")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/removecss/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/removecss/index.md new file mode 100644 index 0000000000..42cc08592e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/removecss/index.md @@ -0,0 +1,119 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Supprime d'une page CSS précédemment injectée par un appel à {{WebExtAPIRef("tabs.insertCSS()")}}.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.tabs.removeCSS(
+  tabId,           // optional integer
+  details          // object
+)
+
+ +

Paramètres

+ +
+
tabId {{optional_inline}}
+
integer. L'ID de l'onglet à partir duquel supprimer le CSS. Par défaut à l'onglet actif de la fenêtre en cours.
+
details
+
Un objet décrivant le CSS à retirer de la page. Il contient les propriétés suivantes : +
+
+
allFrames{{optional_inline}}
+
boolean. si true, le code sera supprimé de toutes les images de la page en cours. si c'est false, le code est seulement retiré du cadre supérieur. Par défaut à false.
+
code{{optional_inline}}
+
string. 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()")}}.
+
cssOrigin{{optional_inline}}
+
string. 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.
+
file{{optional_inline}}
+
string. 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()")}}.
+
frameId{{optional_inline}}
+
integer. Le cadre à partir duquel supprimer le CSS. La valeur par défaut est 0 (l'image de niveau supérieur).
+
matchAboutBlank{{optional_inline}}
+
boolean. si true, 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 à false.
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Cet exemple ajoute du code CSS en utilisant {{WebExtAPIRef("tabs.insertCSS")}}, puis le supprime à nouveau lorsque l'utilisateur clique sur une action du navigateur :

+ +
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(() => {
+  var removing = browser.tabs.removeCSS(2, {code: css});
+  removing.then(null, onError);
+});
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.removeCSS")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index c13d1cfeae..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/saveaspdf/index.html +++ /dev/null @@ -1,60 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var saving = browser.tabs.saveAsPDF(
-  pageSettings   // object
-)
-
- -

Paramètres

- -
-
pageSettings
-
object. 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")}}.
-
- -

Valeur retournée

- -

Une Promise 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 :

- - - -

Exemples

- -

Dans cet exemple, un script d'arrière-plan écoute un clic sur une action du navigateur, puis tente d'enregistrer l'onglet actif en tant que fichier PDF, puis enregistre le résultat:

- -
browser.browserAction.onClicked.addListener(() => {
-  browser.tabs.saveAsPDF({})
-    .then((status) => {
-      console.log(status);
-    });
-});
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.saveAsPDF")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/saveaspdf/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/saveaspdf/index.md new file mode 100644 index 0000000000..c13d1cfeae --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/saveaspdf/index.md @@ -0,0 +1,60 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var saving = browser.tabs.saveAsPDF(
+  pageSettings   // object
+)
+
+ +

Paramètres

+ +
+
pageSettings
+
object. 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")}}.
+
+ +

Valeur retournée

+ +

Une Promise 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 :

+ + + +

Exemples

+ +

Dans cet exemple, un script d'arrière-plan écoute un clic sur une action du navigateur, puis tente d'enregistrer l'onglet actif en tant que fichier PDF, puis enregistre le résultat:

+ +
browser.browserAction.onClicked.addListener(() => {
+  browser.tabs.saveAsPDF({})
+    .then((status) => {
+      console.log(status);
+    });
+});
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.saveAsPDF")}}

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 deleted file mode 100644 index 02c287215f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/sendmessage/index.html +++ /dev/null @@ -1,145 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
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 script de contenu concerné par l'extension et qui s'execute dans l'onglet spécifié.
- -
Ce message sera reçu dans script de contenu par n'importe quel gestionnaire d'évènements à l'écoute de l'évènement
- -

{{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 sendResponse.

- -

Il s'agit d'une fonction asynchrone qui renvoit un objet Promise.

- -
-

Note : Vous pouvez également utiliser une approche basée sur la connexion pour échanger des messages.

-
- - - -

Syntaxe

- -
var sending = browser.tabs.sendMessage(
-  tabId,                   // integer
-  message,                 // any
-  options                  // optional object
-)
-
- -

Paramètres

- -
-
tabId
-
integer. ID de l'onglet qui contient le script de contenu auquel on veut envoyer un message.
-
message
-
any. Un objet qui peut être sérialisé en JSON.
-
options{{optional_inline}}
-

object.

-
-
frameId{{optional_inline}}
-
integer.  Envoie le message à un cadre (iframe) spécifique identifiée par frameId 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 all_frames dans la section  content_scripts de manifest.json.
-
-
-
- -

Valeur renvoyée

- -

Un objet Promise 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

- -

Exemples

- -

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:

- -
// 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 => {
-      console.log("Message from the content script:");
-      console.log(response.response);
-    }).catch(onError);
-  }
-}
-
-browser.browserAction.onClicked.addListener(() => {
-  browser.tabs.query({
-    currentWindow: true,
-    active: true
-  }).then(sendMessageToTabs).catch(onError);
-});
- -

Voici le script de contenu associé:

- -
// content-script.js
-"use strict";
-
-browser.runtime.onMessage.addListener(request => {
-  console.log("Message from the background script:");
-  console.log(request.greeting);
-  return Promise.resolve({response: "Hi from content script"});
-});
- -

{{WebExtExamples}}

- -

Compatiblité des navigateurs

- -

{{Compat("webextensions.api.tabs.sendMessage")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/sendmessage/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/sendmessage/index.md new file mode 100644 index 0000000000..02c287215f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/sendmessage/index.md @@ -0,0 +1,145 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
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 script de contenu concerné par l'extension et qui s'execute dans l'onglet spécifié.
+ +
Ce message sera reçu dans script de contenu par n'importe quel gestionnaire d'évènements à l'écoute de l'évènement
+ +

{{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 sendResponse.

+ +

Il s'agit d'une fonction asynchrone qui renvoit un objet Promise.

+ +
+

Note : Vous pouvez également utiliser une approche basée sur la connexion pour échanger des messages.

+
+ + + +

Syntaxe

+ +
var sending = browser.tabs.sendMessage(
+  tabId,                   // integer
+  message,                 // any
+  options                  // optional object
+)
+
+ +

Paramètres

+ +
+
tabId
+
integer. ID de l'onglet qui contient le script de contenu auquel on veut envoyer un message.
+
message
+
any. Un objet qui peut être sérialisé en JSON.
+
options{{optional_inline}}
+

object.

+
+
frameId{{optional_inline}}
+
integer.  Envoie le message à un cadre (iframe) spécifique identifiée par frameId 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 all_frames dans la section  content_scripts de manifest.json.
+
+
+
+ +

Valeur renvoyée

+ +

Un objet Promise 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

+ +

Exemples

+ +

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:

+ +
// 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 => {
+      console.log("Message from the content script:");
+      console.log(response.response);
+    }).catch(onError);
+  }
+}
+
+browser.browserAction.onClicked.addListener(() => {
+  browser.tabs.query({
+    currentWindow: true,
+    active: true
+  }).then(sendMessageToTabs).catch(onError);
+});
+ +

Voici le script de contenu associé:

+ +
// content-script.js
+"use strict";
+
+browser.runtime.onMessage.addListener(request => {
+  console.log("Message from the background script:");
+  console.log(request.greeting);
+  return Promise.resolve({response: "Hi from content script"});
+});
+ +

{{WebExtExamples}}

+ +

Compatiblité des navigateurs

+ +

{{Compat("webextensions.api.tabs.sendMessage")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index a1c4fea52c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/sendrequest/index.html +++ /dev/null @@ -1,87 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

Attention : Cette méthode a été dépréciée. Utilisez {{WebExtAPIRef("tabs.sendMessage()")}} à la place.

-
- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var sending = browser.tabs.sendRequest(
-  tabId,                   // integer
-  request                  // any
-)
-
- -

Paramètres

- -
-
tabId
-
integer.
-
request
-
any.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.sendRequest")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/sendrequest/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/sendrequest/index.md new file mode 100644 index 0000000000..a1c4fea52c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/sendrequest/index.md @@ -0,0 +1,87 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

Attention : Cette méthode a été dépréciée. Utilisez {{WebExtAPIRef("tabs.sendMessage()")}} à la place.

+
+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var sending = browser.tabs.sendRequest(
+  tabId,                   // integer
+  request                  // any
+)
+
+ +

Paramètres

+ +
+
tabId
+
integer.
+
request
+
any.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.sendRequest")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e8d668c96f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoom/index.html +++ /dev/null @@ -1,105 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Effectue un zoom sur l'onglet spécifié.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var zooming = browser.tabs.setZoom(
-  tabId,           // optional integer
-  zoomFactor       // number
-)
-
- -

Paramètres

- -
-
tabId{{optional_inline}}
-
integer. L'ID de l'onglet à zoomer. Par défaut à l'onglet actif de la fenêtre en cours.
-
zoomFactor
-
number. 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.
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Set the zoom factor for the current tab to 2:

- -
function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var setting = browser.tabs.setZoom(2);
-setting.then(null, onError);
- -

Set the zoom factor for the tab whose ID is 16 tab to 0.5:

- -
function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var setting = browser.tabs.setZoom(16, 0.5);
-setting.then(null, onError);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.setZoom")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoom/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoom/index.md new file mode 100644 index 0000000000..e8d668c96f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoom/index.md @@ -0,0 +1,105 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Effectue un zoom sur l'onglet spécifié.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var zooming = browser.tabs.setZoom(
+  tabId,           // optional integer
+  zoomFactor       // number
+)
+
+ +

Paramètres

+ +
+
tabId{{optional_inline}}
+
integer. L'ID de l'onglet à zoomer. Par défaut à l'onglet actif de la fenêtre en cours.
+
zoomFactor
+
number. 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.
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Set the zoom factor for the current tab to 2:

+ +
function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var setting = browser.tabs.setZoom(2);
+setting.then(null, onError);
+ +

Set the zoom factor for the tab whose ID is 16 tab to 0.5:

+ +
function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var setting = browser.tabs.setZoom(16, 0.5);
+setting.then(null, onError);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.setZoom")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 626942a3fb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoomsettings/index.html +++ /dev/null @@ -1,100 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var settingZoomSettings = browser.tabs.setZoomSettings(
-  tabId,           // optional integer
-  zoomSettings     // ZoomSettings
-)
-
- -

Paramètres

- -
-
tabId{{optional_inline}}
-
integer. 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.
-
zoomSettings
-
{{WebExtAPIRef('tabs.ZoomSettings')}}. Définit comment les modifications de zoom sont gérées et à quelle portée.
-
- -

Valeur retournée

- -

une Promise 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.

- -

Exemples

- -

Désactiver le zoom pour l'onglet actuel :

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.setZoomSettings")}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoomsettings/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoomsettings/index.md new file mode 100644 index 0000000000..626942a3fb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/setzoomsettings/index.md @@ -0,0 +1,100 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var settingZoomSettings = browser.tabs.setZoomSettings(
+  tabId,           // optional integer
+  zoomSettings     // ZoomSettings
+)
+
+ +

Paramètres

+ +
+
tabId{{optional_inline}}
+
integer. 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.
+
zoomSettings
+
{{WebExtAPIRef('tabs.ZoomSettings')}}. Définit comment les modifications de zoom sont gérées et à quelle portée.
+
+ +

Valeur retournée

+ +

une Promise 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.

+ +

Exemples

+ +

Désactiver le zoom pour l'onglet actuel :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.setZoomSettings")}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 5f78d0937c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/show/index.html +++ /dev/null @@ -1,69 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Affiche un ou plusieurs onglets précédemment masqués par un appel à {{WebExtAPIRef("tabs.hide")}}.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var showing = browser.tabs.show(
-  tabIds          // integer or integer array
-)
-
- -

Paramètres

- -
-
tabIds
-
integer or array of integer. Les ID de l'onglet ou des onglets à afficher.
-
- -

Valeur retournée

- -

Une Promise qui sera accomplie sans arguments. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

- -

Exemples

- -

Afficher un seul onglet :

- -
function onShown() {
-  console.log(`Shown`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-browser.tabs.show(2).then(onShown, onError);
- -

Afficher plusieurs onglets :

- -
function onShown() {
-  console.log(`Shown`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-browser.tabs.show([15, 14, 1]).then(onShown, onError);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.show")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/show/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/show/index.md new file mode 100644 index 0000000000..5f78d0937c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/show/index.md @@ -0,0 +1,69 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Affiche un ou plusieurs onglets précédemment masqués par un appel à {{WebExtAPIRef("tabs.hide")}}.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var showing = browser.tabs.show(
+  tabIds          // integer or integer array
+)
+
+ +

Paramètres

+ +
+
tabIds
+
integer or array of integer. Les ID de l'onglet ou des onglets à afficher.
+
+ +

Valeur retournée

+ +

Une Promise qui sera accomplie sans arguments. Si une erreur se produit, la promesse sera rejetée avec un message d'erreur.

+ +

Exemples

+ +

Afficher un seul onglet :

+ +
function onShown() {
+  console.log(`Shown`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+browser.tabs.show(2).then(onShown, onError);
+ +

Afficher plusieurs onglets :

+ +
function onShown() {
+  console.log(`Shown`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+browser.tabs.show([15, 14, 1]).then(onShown, onError);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.show")}}

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 deleted file mode 100644 index b6f12e9c87..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/tab/index.html +++ /dev/null @@ -1,125 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type tabs.Tab 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.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
active
-

boolean. 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.

-

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.

-
attention {{optional_inline}}
-
boolean. Indique si l'onglet attire l'attention. Par exemple, lorsque l'onglet affiche un dialogue modal, attention sera à true.
-
audible {{optional_inline}}
-
boolean. 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.
-
autoDiscardable {{optional_inline}}
-
boolean. Si l'onglet peut être supprimé automatiquement par le navigateur lorsque les ressources sont faibles.
-
cookieStoreId {{optional_inline}}
-
string. 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'identitié contextuelle), vous pouvez passer cette option storeId 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 permission "cookies".
-
discarded {{optional_inline}}
-
boolean. 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é.
-
favIconUrl {{optional_inline}}
-
string. L'URL de la favicon de l'onglet. Seulement présent si l'extension a la permission "tabs". Il peut également s'agir d'une chaîne vide si l'onglet est en cours de chargement.
-
height {{optional_inline}}
-
integer. La hauteur de l'onglet en pixels.
-
hidden
-
boolean. Si l'onglet est caché.
-
highlighted
-

boolean. 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 Ctrl, Shift ou ⌘ Command .

-

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  browser.tabs.multiselect (activé par défaut).

-
id {{optional_inline}}
-
integer. 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).
-
incognito
-
boolean. Si l'onglet est dans une fenêtre de navigation privée.
-
index
-
integer. L'indice de base zéro de l'onglet dans sa fenêtre.
-
isArticle
-
boolean. Vrai si l'onglet peut être rendu en mode lecteur, sinon faux.
-
isInReaderMode
-
boolean. Vrai si l'onglet en cours de rendu en mode lecteur, sinon faux.
-
lastAccessed
-
double. Heure à laquelle l'onglet a été accédé pour la dernière fois, en millisecondes depuis l'époque.
-
mutedInfo {{optional_inline}}
-
{{WebExtAPIRef('tabs.MutedInfo')}}. L'état en sourdine actuel pour l'onglet et la raison du dernier changement d'état.
-
openerTabId {{optional_inline}}
-
integer. 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.
-
pinned
-
boolean. Si l'onglet est épinglé.
-
selected {{deprecated_inline}}
-
boolean. Si l'onglet est sélectionné. Cette propriété a été remplacée par active et highlighted.
-
sessionId {{optional_inline}}
-
string. L'identifiant de session utilisé pour identifier de façon unique un onglet  obtenu à partir de l'API {{WebExtAPIRef('sessions')}}.
-
status {{optional_inline}}
-
string. Soit charger ou compléter.
-
successorId {{optional_inline}}
-
integer L'ID du successeur de l'onglet.
-
title {{optional_inline}}
-
string. Le titre de l'onglet. Seulement présent si l'extension à la permission "tabs".
-
url {{optional_inline}}
-
string. L'URL du document que l'onglet affiche. Seulement présent si l'extension à la permission "tabs".
-
width {{optional_inline}}
-
integer. La largeur de l'onglet en pixels
-
windowId
-
integer. L'ID de la fenêtre qui héberge cet onglet.**
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.Tab", 10)}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/tab/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/tab/index.md new file mode 100644 index 0000000000..b6f12e9c87 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/tab/index.md @@ -0,0 +1,125 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type tabs.Tab 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.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
active
+

boolean. 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.

+

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.

+
attention {{optional_inline}}
+
boolean. Indique si l'onglet attire l'attention. Par exemple, lorsque l'onglet affiche un dialogue modal, attention sera à true.
+
audible {{optional_inline}}
+
boolean. 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.
+
autoDiscardable {{optional_inline}}
+
boolean. Si l'onglet peut être supprimé automatiquement par le navigateur lorsque les ressources sont faibles.
+
cookieStoreId {{optional_inline}}
+
string. 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'identitié contextuelle), vous pouvez passer cette option storeId 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 permission "cookies".
+
discarded {{optional_inline}}
+
boolean. 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é.
+
favIconUrl {{optional_inline}}
+
string. L'URL de la favicon de l'onglet. Seulement présent si l'extension a la permission "tabs". Il peut également s'agir d'une chaîne vide si l'onglet est en cours de chargement.
+
height {{optional_inline}}
+
integer. La hauteur de l'onglet en pixels.
+
hidden
+
boolean. Si l'onglet est caché.
+
highlighted
+

boolean. 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 Ctrl, Shift ou ⌘ Command .

+

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  browser.tabs.multiselect (activé par défaut).

+
id {{optional_inline}}
+
integer. 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).
+
incognito
+
boolean. Si l'onglet est dans une fenêtre de navigation privée.
+
index
+
integer. L'indice de base zéro de l'onglet dans sa fenêtre.
+
isArticle
+
boolean. Vrai si l'onglet peut être rendu en mode lecteur, sinon faux.
+
isInReaderMode
+
boolean. Vrai si l'onglet en cours de rendu en mode lecteur, sinon faux.
+
lastAccessed
+
double. Heure à laquelle l'onglet a été accédé pour la dernière fois, en millisecondes depuis l'époque.
+
mutedInfo {{optional_inline}}
+
{{WebExtAPIRef('tabs.MutedInfo')}}. L'état en sourdine actuel pour l'onglet et la raison du dernier changement d'état.
+
openerTabId {{optional_inline}}
+
integer. 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.
+
pinned
+
boolean. Si l'onglet est épinglé.
+
selected {{deprecated_inline}}
+
boolean. Si l'onglet est sélectionné. Cette propriété a été remplacée par active et highlighted.
+
sessionId {{optional_inline}}
+
string. L'identifiant de session utilisé pour identifier de façon unique un onglet  obtenu à partir de l'API {{WebExtAPIRef('sessions')}}.
+
status {{optional_inline}}
+
string. Soit charger ou compléter.
+
successorId {{optional_inline}}
+
integer L'ID du successeur de l'onglet.
+
title {{optional_inline}}
+
string. Le titre de l'onglet. Seulement présent si l'extension à la permission "tabs".
+
url {{optional_inline}}
+
string. L'URL du document que l'onglet affiche. Seulement présent si l'extension à la permission "tabs".
+
width {{optional_inline}}
+
integer. La largeur de l'onglet en pixels
+
windowId
+
integer. L'ID de la fenêtre qui héberge cet onglet.**
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.Tab", 10)}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 9ba6040cd2..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/tab_id_none/index.html +++ /dev/null @@ -1,62 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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).

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.TAB_ID_NONE")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/tab_id_none/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/tab_id_none/index.md new file mode 100644 index 0000000000..9ba6040cd2 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/tab_id_none/index.md @@ -0,0 +1,62 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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).

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.TAB_ID_NONE")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 3ed5059c4e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/tabstatus/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Indique si l'onglet a terminé le chargement.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont : "loading" et "complete".

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.TabStatus")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/tabstatus/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/tabstatus/index.md new file mode 100644 index 0000000000..3ed5059c4e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/tabstatus/index.md @@ -0,0 +1,66 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Indique si l'onglet a terminé le chargement.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont : "loading" et "complete".

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.TabStatus")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 75547d51f4..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/togglereadermode/index.html +++ /dev/null @@ -1,79 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Bascule en mode Lecteur pour l'onglet donné.

- - - -

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é.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

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 :

- - - -

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é isArticle de {{WebExtAPIRef("tabs.Tab")}}.

- -

Pour savoir si un onglet est déjà en mode Lecteur, vérifiez la propriété  isInReaderMode 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 isInReaderMode change :

- -
function handleUpdated(tabId, changeInfo, tabInfo) {
-  if (changeInfo.status === "complete") {
-    console.log(`Tab ${tabId} reader mode: ${tabInfo.isInReaderMode}`);
-  }
-}
-
-browser.tabs.onUpdated.addListener(handleUpdated);
- -

Syntaxe

- -
var toggling = browser.tabs.toggleReaderMode(
-  tabId            // optional integer
-)
-
- -

Paramètres

- -
-
tabId{{optional_inline}}
-
integer. L'ID de l'onglet à afficher en mode Lecteur. Par défaut à l'onglet sélectionné de la fenêtre en cours.
-
- -

Valeur retournée

- -

Une Promise 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..

- -

Exemples

- -

Ce code bascule chaque nouvelle page en mode lecteur, si cette page est éligible pour cela :

- -
function switchToReaderMode(tabId, changeInfo, tabInfo) {
-  if (changeInfo.isArticle) {
-    browser.tabs.toggleReaderMode(tabId);
-  }
-}
-
-browser.tabs.onUpdated.addListener(switchToReaderMode);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.toggleReaderMode")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/togglereadermode/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/togglereadermode/index.md new file mode 100644 index 0000000000..75547d51f4 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/togglereadermode/index.md @@ -0,0 +1,79 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Bascule en mode Lecteur pour l'onglet donné.

+ + + +

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é.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

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 :

+ + + +

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é isArticle de {{WebExtAPIRef("tabs.Tab")}}.

+ +

Pour savoir si un onglet est déjà en mode Lecteur, vérifiez la propriété  isInReaderMode 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 isInReaderMode change :

+ +
function handleUpdated(tabId, changeInfo, tabInfo) {
+  if (changeInfo.status === "complete") {
+    console.log(`Tab ${tabId} reader mode: ${tabInfo.isInReaderMode}`);
+  }
+}
+
+browser.tabs.onUpdated.addListener(handleUpdated);
+ +

Syntaxe

+ +
var toggling = browser.tabs.toggleReaderMode(
+  tabId            // optional integer
+)
+
+ +

Paramètres

+ +
+
tabId{{optional_inline}}
+
integer. L'ID de l'onglet à afficher en mode Lecteur. Par défaut à l'onglet sélectionné de la fenêtre en cours.
+
+ +

Valeur retournée

+ +

Une Promise 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..

+ +

Exemples

+ +

Ce code bascule chaque nouvelle page en mode lecteur, si cette page est éligible pour cela :

+ +
function switchToReaderMode(tabId, changeInfo, tabInfo) {
+  if (changeInfo.isArticle) {
+    browser.tabs.toggleReaderMode(tabId);
+  }
+}
+
+browser.tabs.onUpdated.addListener(switchToReaderMode);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.toggleReaderMode")}}

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 deleted file mode 100644 index 76f37e6a2f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/update/index.html +++ /dev/null @@ -1,162 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Parcourez l'onglet vers une nouvelle URL ou modifiez d'autres propriétés de l'onglet.

- -

Pour utiliser cette fonction, transmettez l'ID de l'onglet à mettre à jour et un objet updateProperties contenant les propriétés que vous souhaitez mettre à jour. Les propriétés qui ne sont pas spécifiées dans  updateProperties ne sont pas modifiées.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var updating = browser.tabs.update(
-  tabId,              // optional integer
-  updateProperties    // object
-)
-
- -

Paramètres

- -
-
tabId{{optional_inline}}
-
integer. Par défaut à l'onglet sélectionné de la fenêtre en cours.
-
updateProperties
-

object. 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")}}.

-
-
active{{optional_inline}}
-
boolean. Si l'onglet doit devenir actif. Ne modifie pas le focus de la fenêtre (voir {{WebExtAPIRef('windows.update')}}). Si true, les onglets surlignés non actifs cesseront d'être surlignés. Si false, ne fait rien.
-
autoDiscardable{{optional_inline}}
-
boolean. Si l'onglet doit être supprimé automatiquement par le navigateur lorsque les ressources sont faibles.
-
highlighted{{optional_inline}}
-

boolean. Ajoute ou supprime l'onglet de la sélection courante. Si true et que l'onglet n'est pas surligné, il deviendra actif par défaut.

-

Si vous voulez seulement mettre en surbrillance l'onglet sans l'activer, Firefox accepte le réglage highlighted à true et active à false. D'autres navigateurs peuvent activer l'onglet même dans ce cas.

-
-
loadReplace{{optional_inline}}
-
-

boolean. Si la nouvelle URL doit remplacer l'ancienne URL dans l'historique de navigation de l'onglet, accessible via le bouton "Retour".

- -

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 loadReplace, le bouton "retour" sera activé et ramènera l'utilisateur à "about:newtab". Si l'extension définit loadReplace, 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.

- -

Notez cependant que l'URL d'origine apparaîtra toujours dans l'historique global du navigateur.

-
-
muted{{optional_inline}}
-
boolean. Si l'onglet doit être coupé.
-
openerTabId{{optional_inline}}
-
integer. 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.
-
pinned{{optional_inline}}
-
boolean. Si l'onglet doit être épinglé.
-
selected {{deprecated_inline}} {{optional_inline}}
-
boolean. Si l'onglet doit être sélectionné. Cette propriété a été remplacée par active et highlighted.
-
successorTabId {{optional_inline}}
-
integer. L'identifiant de l'ID du successeur de l'onglet.
-
url{{optional_inline}}
-

string. Une URL pour naviguer dans l'onglet.

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 :

-
    -
  • chrome: URLs
  • -
  • javascript: URLs
  • -
  • data: URLs
  • -
  • 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)
  • -
  • confidentiel : URLs (par exemle, about:config, about:addons, about:debugging, about:newtab). Les URL non privilégiées (par exemple, about:blank) sont autorisées.
  • -
-

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.

-
-
-
- -

Valeur retournée

- -

A Promise 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' url, title et favIconUrl sauf si la permission "tabs" 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.

- -

Exemples

- -

Naviguez dans l'onglet actif de la fenêtre en cours pour https://developer.mozilla.org :

- -
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);
- -

Activez le premier onglet de la fenêtre actuelle et naviguez jusqu'à https://developer.mozilla.org:

- -
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);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.update", 10)}}

- -

Note :

- -

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/update/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/update/index.md new file mode 100644 index 0000000000..76f37e6a2f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/update/index.md @@ -0,0 +1,162 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Parcourez l'onglet vers une nouvelle URL ou modifiez d'autres propriétés de l'onglet.

+ +

Pour utiliser cette fonction, transmettez l'ID de l'onglet à mettre à jour et un objet updateProperties contenant les propriétés que vous souhaitez mettre à jour. Les propriétés qui ne sont pas spécifiées dans  updateProperties ne sont pas modifiées.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var updating = browser.tabs.update(
+  tabId,              // optional integer
+  updateProperties    // object
+)
+
+ +

Paramètres

+ +
+
tabId{{optional_inline}}
+
integer. Par défaut à l'onglet sélectionné de la fenêtre en cours.
+
updateProperties
+

object. 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")}}.

+
+
active{{optional_inline}}
+
boolean. Si l'onglet doit devenir actif. Ne modifie pas le focus de la fenêtre (voir {{WebExtAPIRef('windows.update')}}). Si true, les onglets surlignés non actifs cesseront d'être surlignés. Si false, ne fait rien.
+
autoDiscardable{{optional_inline}}
+
boolean. Si l'onglet doit être supprimé automatiquement par le navigateur lorsque les ressources sont faibles.
+
highlighted{{optional_inline}}
+

boolean. Ajoute ou supprime l'onglet de la sélection courante. Si true et que l'onglet n'est pas surligné, il deviendra actif par défaut.

+

Si vous voulez seulement mettre en surbrillance l'onglet sans l'activer, Firefox accepte le réglage highlighted à true et active à false. D'autres navigateurs peuvent activer l'onglet même dans ce cas.

+
+
loadReplace{{optional_inline}}
+
+

boolean. Si la nouvelle URL doit remplacer l'ancienne URL dans l'historique de navigation de l'onglet, accessible via le bouton "Retour".

+ +

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 loadReplace, le bouton "retour" sera activé et ramènera l'utilisateur à "about:newtab". Si l'extension définit loadReplace, 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.

+ +

Notez cependant que l'URL d'origine apparaîtra toujours dans l'historique global du navigateur.

+
+
muted{{optional_inline}}
+
boolean. Si l'onglet doit être coupé.
+
openerTabId{{optional_inline}}
+
integer. 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.
+
pinned{{optional_inline}}
+
boolean. Si l'onglet doit être épinglé.
+
selected {{deprecated_inline}} {{optional_inline}}
+
boolean. Si l'onglet doit être sélectionné. Cette propriété a été remplacée par active et highlighted.
+
successorTabId {{optional_inline}}
+
integer. L'identifiant de l'ID du successeur de l'onglet.
+
url{{optional_inline}}
+

string. Une URL pour naviguer dans l'onglet.

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 :

+
    +
  • chrome: URLs
  • +
  • javascript: URLs
  • +
  • data: URLs
  • +
  • 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)
  • +
  • confidentiel : URLs (par exemle, about:config, about:addons, about:debugging, about:newtab). Les URL non privilégiées (par exemple, about:blank) sont autorisées.
  • +
+

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.

+
+
+
+ +

Valeur retournée

+ +

A Promise 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' url, title et favIconUrl sauf si la permission "tabs" 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.

+ +

Exemples

+ +

Naviguez dans l'onglet actif de la fenêtre en cours pour https://developer.mozilla.org :

+ +
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);
+ +

Activez le premier onglet de la fenêtre actuelle et naviguez jusqu'à https://developer.mozilla.org:

+ +
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);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.update", 10)}}

+ +

Note :

+ +

Cette API est basée sur l’API chrome.tabs de Chromium. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index cfed6e3f85..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/windowtype/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type de fenêtre qui héberge cet onglet.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont:

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.WindowType")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/windowtype/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/windowtype/index.md new file mode 100644 index 0000000000..cfed6e3f85 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/windowtype/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type de fenêtre qui héberge cet onglet.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont:

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.WindowType")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2d32640a5b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettings/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
defaultZoomFactor{{optional_inline}}
-
number. Le niveau de zoom par défaut pour l'onglet actuel. Notez que ceci n'est utilisé que dans {{WebExtAPIRef("tabs.getZoomSettings")}}.
-
mode{{optional_inline}}
-
{{WebExtAPIRef('tabs.ZoomSettingsMode')}}. Définit si les modifications de zoom sont gérées par le navigateur, par l'extension ou désactivées.
-
scope{{optional_inline}}
-
{{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.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.ZoomSettings")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettings/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettings/index.md new file mode 100644 index 0000000000..2d32640a5b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettings/index.md @@ -0,0 +1,75 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
defaultZoomFactor{{optional_inline}}
+
number. Le niveau de zoom par défaut pour l'onglet actuel. Notez que ceci n'est utilisé que dans {{WebExtAPIRef("tabs.getZoomSettings")}}.
+
mode{{optional_inline}}
+
{{WebExtAPIRef('tabs.ZoomSettingsMode')}}. Définit si les modifications de zoom sont gérées par le navigateur, par l'extension ou désactivées.
+
scope{{optional_inline}}
+
{{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.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.ZoomSettings")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e9122e79e3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsmode/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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".

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- -
-
"automatic"
-
Les modifications de zoom sont gérées normalement par le navigateur.
-
"disabled"
-
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.
-
"manual"
-
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 per-origin : il ignore la portée {{WebExtAPIRef("tabs.zoomSettings", "zoom setting")}} et utilise toujours la fonction per-tab.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.ZoomSettingsMode")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsmode/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsmode/index.md new file mode 100644 index 0000000000..e9122e79e3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsmode/index.md @@ -0,0 +1,75 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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".

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ +
+
"automatic"
+
Les modifications de zoom sont gérées normalement par le navigateur.
+
"disabled"
+
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.
+
"manual"
+
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 per-origin : il ignore la portée {{WebExtAPIRef("tabs.zoomSettings", "zoom setting")}} et utilise toujours la fonction per-tab.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.ZoomSettingsMode")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 19ea5f571a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsscope/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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 à per-origin lorsque   {{WebExtAPIRef("tabs.zoomSettingsMode")}} est "automatique", et est toujours per-tab.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- -
-
"per-origin"
-
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".
-
"per-tab"
-
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 per-tab ont réinitialisés lors de la navigation ; la navigation dans un onglet charge toujours les pages avec per-origin de zoom d'origine.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.tabs.ZoomSettingsScope")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsscope/index.md b/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsscope/index.md new file mode 100644 index 0000000000..19ea5f571a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/tabs/zoomsettingsscope/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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 à per-origin lorsque   {{WebExtAPIRef("tabs.zoomSettingsMode")}} est "automatique", et est toujours per-tab.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ +
+
"per-origin"
+
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".
+
"per-tab"
+
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 per-tab ont réinitialisés lors de la navigation ; la navigation dans un onglet charge toujours les pages avec per-origin de zoom d'origine.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.tabs.ZoomSettingsScope")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.tabs. Cette documentation est dérivée de tabs.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 9c71e2d90f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/theme/getcurrent/index.html +++ /dev/null @@ -1,64 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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 propriétés de la couleur.

- -

Il s'agit d'une fonction asynchrone qui renvoie un objet Promise.

- -

Syntaxe

- -
var getting = browser.theme.getCurrent(
-  windowId    // integer
-)
-
- -

Paramètres

- -
-
windowId {{optional_inline}}
-
integer. 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é.
-
- -

Valeur retournée

- -

Un objet Promise. 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.theme.getCurrent", 10)}}

- -

Exemples

- -

Obtient les propriétés des couleurs accentcolor et toolbar dans le thème actuel.

- -
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();
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/getcurrent/index.md b/files/fr/mozilla/add-ons/webextensions/api/theme/getcurrent/index.md new file mode 100644 index 0000000000..9c71e2d90f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/theme/getcurrent/index.md @@ -0,0 +1,64 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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 propriétés de la couleur.

+ +

Il s'agit d'une fonction asynchrone qui renvoie un objet Promise.

+ +

Syntaxe

+ +
var getting = browser.theme.getCurrent(
+  windowId    // integer
+)
+
+ +

Paramètres

+ +
+
windowId {{optional_inline}}
+
integer. 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é.
+
+ +

Valeur retournée

+ +

Un objet Promise. 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.theme.getCurrent", 10)}}

+ +

Exemples

+ +

Obtient les propriétés des couleurs accentcolor et toolbar dans le thème actuel.

+ +
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();
+ +

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/index.html b/files/fr/mozilla/add-ons/webextensions/api/theme/index.html deleted file mode 100644 index 96aaffe71b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/theme/index.html +++ /dev/null @@ -1,50 +0,0 @@ ---- -title: theme -slug: Mozilla/Add-ons/WebExtensions/API/theme -tags: - - Extensions - - Themes - - WebExtensions - - add-on -translation_of: Mozilla/Add-ons/WebExtensions/API/theme ---- -
{{AddonSidebar}}
- -

Permet aux extensions du navigateur de mettre à jour le thème du navigateur.

- -

Pour utiliser cette API, une extension doit demander la permission "theme" dans son fichier manifest.json.

- -
-

Note : quand on met un thème en arrière plan, on doit déclarer la permission 'theme' et on ne peut pas utiliser la fonction theme du manifest, puisque ce n'est pas compatible.

-
- -

Types

- -
-
{{WebExtAPIRef("theme.Theme")}}
-
Représente le contenu d'un thème.
-
- -

Fonctions

- -
-
{{WebExtAPIRef("theme.getCurrent()")}}
-
Retourne le thème actuel du navigateur.
-
{{WebExtAPIRef("theme.update()")}}
-
Met à jour à le thème du navigateur.
-
{{WebExtAPIRef("theme.reset()")}}
-
Supprime les mises à jour de thèmes effectuées lors d'un appel à {{WebExtAPIRef("theme.update()")}}.
-
- -

Evénements

- -
-
{{WebExtAPIRef("theme.onUpdated")}}
-
Emis quand le thème du navigateur change.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.theme")}}

- -

{{WebExtExamples("h2")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/index.md b/files/fr/mozilla/add-ons/webextensions/api/theme/index.md new file mode 100644 index 0000000000..96aaffe71b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/theme/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Permet aux extensions du navigateur de mettre à jour le thème du navigateur.

+ +

Pour utiliser cette API, une extension doit demander la permission "theme" dans son fichier manifest.json.

+ +
+

Note : quand on met un thème en arrière plan, on doit déclarer la permission 'theme' et on ne peut pas utiliser la fonction theme du manifest, puisque ce n'est pas compatible.

+
+ +

Types

+ +
+
{{WebExtAPIRef("theme.Theme")}}
+
Représente le contenu d'un thème.
+
+ +

Fonctions

+ +
+
{{WebExtAPIRef("theme.getCurrent()")}}
+
Retourne le thème actuel du navigateur.
+
{{WebExtAPIRef("theme.update()")}}
+
Met à jour à le thème du navigateur.
+
{{WebExtAPIRef("theme.reset()")}}
+
Supprime les mises à jour de thèmes effectuées lors d'un appel à {{WebExtAPIRef("theme.update()")}}.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("theme.onUpdated")}}
+
Emis quand le thème du navigateur change.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.theme")}}

+ +

{{WebExtExamples("h2")}}

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 deleted file mode 100644 index c6a9a680d7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/theme/onupdated/index.html +++ /dev/null @@ -1,83 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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 :

- - - -

Notez que cet événement n'est pas déclenché pour les thèmes intégrés.

- -

Syntaxe

- -
browser.theme.onUpdated.addListener(listener)
-browser.theme.onUpdated.removeListener(listener)
-browser.theme.onUpdated.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(listener)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrête d'écouter cet événement. L'argument de listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifie si listener est enregistré pour cet événement. Retourne true s'il écoute, sinon  false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les paramètres suivants :

- -
-
updateInfo
-
-

object. Un objet contenant deux propriétés :

- -
-
theme
-
object. 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é.
-
windowId{{optional_inline}}
-
integer. 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.
-
-
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.theme.onUpdated", 10)}}

- -

Exemples

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/onupdated/index.md b/files/fr/mozilla/add-ons/webextensions/api/theme/onupdated/index.md new file mode 100644 index 0000000000..c6a9a680d7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/theme/onupdated/index.md @@ -0,0 +1,83 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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 :

+ + + +

Notez que cet événement n'est pas déclenché pour les thèmes intégrés.

+ +

Syntaxe

+ +
browser.theme.onUpdated.addListener(listener)
+browser.theme.onUpdated.removeListener(listener)
+browser.theme.onUpdated.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(listener)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrête d'écouter cet événement. L'argument de listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifie si listener est enregistré pour cet événement. Retourne true s'il écoute, sinon  false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les paramètres suivants :

+ +
+
updateInfo
+
+

object. Un objet contenant deux propriétés :

+ +
+
theme
+
object. 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é.
+
windowId{{optional_inline}}
+
integer. 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.
+
+
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.theme.onUpdated", 10)}}

+ +

Exemples

+ +
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);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 2b56b92f49..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/theme/reset/index.html +++ /dev/null @@ -1,78 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Réinitialise tout thème appliqué à l'aide de la méthode {{WebExtAPIRef("theme.update()")}}

- -

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 bug 1415267).

- -

Syntaxe

- -
browser.theme.reset( windowsId // integer )
-
- -

Paramètres

- -
-
windowId {{optional_inline}}
-
integer. 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.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.theme.reset")}}

- -

Exemples

- -

Ce code applique un thème, puis le supprime lorsque l'utilisateur clique sur une action du navigateur:

- -
browser.theme.update(themes.night);
-
-browser.browserAction.onClicked.addListener(() => {
-  browser.theme.reset();
-});
- -

{{WebExtExamples}}

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/reset/index.md b/files/fr/mozilla/add-ons/webextensions/api/theme/reset/index.md new file mode 100644 index 0000000000..2b56b92f49 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/theme/reset/index.md @@ -0,0 +1,78 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Réinitialise tout thème appliqué à l'aide de la méthode {{WebExtAPIRef("theme.update()")}}

+ +

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 bug 1415267).

+ +

Syntaxe

+ +
browser.theme.reset( windowsId // integer )
+
+ +

Paramètres

+ +
+
windowId {{optional_inline}}
+
integer. 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.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.theme.reset")}}

+ +

Exemples

+ +

Ce code applique un thème, puis le supprime lorsque l'utilisateur clique sur une action du navigateur:

+ +
browser.theme.update(themes.night);
+
+browser.browserAction.onClicked.addListener(() => {
+  browser.theme.reset();
+});
+ +

{{WebExtExamples}}

+ + 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 deleted file mode 100644 index ee72779ebe..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/theme/theme/index.html +++ /dev/null @@ -1,23 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet thème représente la spécification d'un thème.

- -

Type

- -

Un object JSON qui prend les mêmes propriétés que la clé du manifest "theme".

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.theme.Theme")}}

- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/theme/index.md b/files/fr/mozilla/add-ons/webextensions/api/theme/theme/index.md new file mode 100644 index 0000000000..ee72779ebe --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/theme/theme/index.md @@ -0,0 +1,23 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet thème représente la spécification d'un thème.

+ +

Type

+ +

Un object JSON qui prend les mêmes propriétés que la clé du manifest "theme".

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.theme.Theme")}}

+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 20c0ecca5c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/theme/update/index.html +++ /dev/null @@ -1,84 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Met à jour le thème du navigateur en fonction du contenu de l'objet {{WebExtAPIRef("theme.Theme", "Theme")}} donné.

- -

Syntaxe

- -
browser.theme.update(
-  windowId,    // integer
-  theme        // object
-)
-
- -

Paramètres

- -
-
windowId {{optional_inline}}
-
integer. 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.
-
- -
-
theme
-
object. Un objet {{WebExtAPIRef("theme.Theme", "Theme")}} spécifiant des valeurs pour les éléments de l'interface utilisateur que vous voulez modifier
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.theme.update", 10)}}

- -

Exemples

- -

Définit le thème du navigateur pour utiliser un graphique solaire avec une couleur de fond complémentaire:

- -
const suntheme = {
- images: {
-   headerURL: 'sun.jpg',
- },
- colors: {
-   accentcolor: '#CF723F',
-   textcolor: '#111',
- }
-};
-
-browser.theme.update(suntheme);
- -

Définissez le thème uniquement pour la fenêtre actuellement ciblée:

- -
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);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/theme/update/index.md b/files/fr/mozilla/add-ons/webextensions/api/theme/update/index.md new file mode 100644 index 0000000000..20c0ecca5c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/theme/update/index.md @@ -0,0 +1,84 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Met à jour le thème du navigateur en fonction du contenu de l'objet {{WebExtAPIRef("theme.Theme", "Theme")}} donné.

+ +

Syntaxe

+ +
browser.theme.update(
+  windowId,    // integer
+  theme        // object
+)
+
+ +

Paramètres

+ +
+
windowId {{optional_inline}}
+
integer. 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.
+
+ +
+
theme
+
object. Un objet {{WebExtAPIRef("theme.Theme", "Theme")}} spécifiant des valeurs pour les éléments de l'interface utilisateur que vous voulez modifier
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.theme.update", 10)}}

+ +

Exemples

+ +

Définit le thème du navigateur pour utiliser un graphique solaire avec une couleur de fond complémentaire:

+ +
const suntheme = {
+ images: {
+   headerURL: 'sun.jpg',
+ },
+ colors: {
+   accentcolor: '#CF723F',
+   textcolor: '#111',
+ }
+};
+
+browser.theme.update(suntheme);
+ +

Définissez le thème uniquement pour la fenêtre actuellement ciblée:

+ +
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);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 199b3d65de..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/topsites/get/index.html +++ /dev/null @@ -1,142 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient un tableau contenant des informations sur les pages que l'utilisateur a visitées souvent et récemment.

- -

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".

- -

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.

- -

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.

- -

L'API topSites.get() 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.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Pour utiliser l'API topSites, vous devez avoir la permission de l'API "topSites"

- -

Syntaxe

- -
var gettingTopSites = browser.topSites.get()
-
- -

Paramètres

- -
-
options
-

object. Options pour modifier la liste des pages retournées. Il peut s'agir de l'une des propriétés suivantes :

-
-
includeBlocked {{optional_inline}}
-
Boolean. Inclure les pages que l'utilisateur a supprimées de la page "Nouvel onglet". La valeur par défaut est false.
-
includeFavicon {{optional_inline}}
-
Boolean.  Inclure les favicons dans les résultats, pour les pages où ils sont disponibles. La valeur par défaut est false.
-
includePinned {{optional_inline}}
-
Boolean. inclure les sites que l'utilisateur a épinglés dans le nouvel onglet Firefox.
- Par défaut à false.
-
includeSearchShortcuts {{optional_inline}}
-
Boolean.  Inclut les raccourcis de recherche qui apparaissent dans le nouvel onglet Firefox.
- Par défaut à false.
-
limit {{optional_inline}}
-
Integer. Le nombre de pages à retourner. Ce chiffre doit être compris entre 1 et 100 inclusivement. La valeur par défaut est 12.
-
onePerDomain {{optional_inline}}
-
Boolean. N'incluez qu'une seule page par domaine. La valeur par défaut est true.
-
-
-
- -

Valeur retournée

- -

Une Promise. 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.topSites.get")}}

- -

Exemples

- -

Ce code enregistre le titre et l'UL de tous les sites dans la page "Nouvel onglet" :

- -
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);
-
- -

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 :

- -
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({
-  includeBlocked: true,
-  onePerDomain: false
-});
-
-gettingTopSites.then(logTopSites, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.topSites.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/topsites/get/index.md b/files/fr/mozilla/add-ons/webextensions/api/topsites/get/index.md new file mode 100644 index 0000000000..199b3d65de --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/topsites/get/index.md @@ -0,0 +1,142 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient un tableau contenant des informations sur les pages que l'utilisateur a visitées souvent et récemment.

+ +

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".

+ +

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.

+ +

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.

+ +

L'API topSites.get() 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.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Pour utiliser l'API topSites, vous devez avoir la permission de l'API "topSites"

+ +

Syntaxe

+ +
var gettingTopSites = browser.topSites.get()
+
+ +

Paramètres

+ +
+
options
+

object. Options pour modifier la liste des pages retournées. Il peut s'agir de l'une des propriétés suivantes :

+
+
includeBlocked {{optional_inline}}
+
Boolean. Inclure les pages que l'utilisateur a supprimées de la page "Nouvel onglet". La valeur par défaut est false.
+
includeFavicon {{optional_inline}}
+
Boolean.  Inclure les favicons dans les résultats, pour les pages où ils sont disponibles. La valeur par défaut est false.
+
includePinned {{optional_inline}}
+
Boolean. inclure les sites que l'utilisateur a épinglés dans le nouvel onglet Firefox.
+ Par défaut à false.
+
includeSearchShortcuts {{optional_inline}}
+
Boolean.  Inclut les raccourcis de recherche qui apparaissent dans le nouvel onglet Firefox.
+ Par défaut à false.
+
limit {{optional_inline}}
+
Integer. Le nombre de pages à retourner. Ce chiffre doit être compris entre 1 et 100 inclusivement. La valeur par défaut est 12.
+
onePerDomain {{optional_inline}}
+
Boolean. N'incluez qu'une seule page par domaine. La valeur par défaut est true.
+
+
+
+ +

Valeur retournée

+ +

Une Promise. 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.topSites.get")}}

+ +

Exemples

+ +

Ce code enregistre le titre et l'UL de tous les sites dans la page "Nouvel onglet" :

+ +
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);
+
+ +

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 :

+ +
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({
+  includeBlocked: true,
+  onePerDomain: false
+});
+
+gettingTopSites.then(logTopSites, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.topSites.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/topsites/index.html b/files/fr/mozilla/add-ons/webextensions/api/topsites/index.html deleted file mode 100644 index 9aa64c78ca..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/topsites/index.html +++ /dev/null @@ -1,81 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Utilisez l'API topSites pour obtenir un tableau contenant les pages que l'utilisateur a visitées  fréquemment.

- -

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".

- -

Pour utiliser l'API topSites, vous devez disposez de l' API permission "topSites".

- -

Types

- -
-
{{WebExtAPIRef("topSites.MostVisitedURL")}}
-
Un objet contenant le titre et l'URL d'un site web.
-
- -

Méthodes

- -
-
{{WebExtAPIRef("topSites.get()")}}
-
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.
-
- -

Compatibilité du Navigateur

- - - -

{{Compat("webextensions.api.topSites")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.topSites.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/topsites/index.md b/files/fr/mozilla/add-ons/webextensions/api/topsites/index.md new file mode 100644 index 0000000000..9aa64c78ca --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/topsites/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Utilisez l'API topSites pour obtenir un tableau contenant les pages que l'utilisateur a visitées  fréquemment.

+ +

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".

+ +

Pour utiliser l'API topSites, vous devez disposez de l' API permission "topSites".

+ +

Types

+ +
+
{{WebExtAPIRef("topSites.MostVisitedURL")}}
+
Un objet contenant le titre et l'URL d'un site web.
+
+ +

Méthodes

+ +
+
{{WebExtAPIRef("topSites.get()")}}
+
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.
+
+ +

Compatibilité du Navigateur

+ + + +

{{Compat("webextensions.api.topSites")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.topSites.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 8d8698190e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/topsites/mostvisitedurl/index.html +++ /dev/null @@ -1,79 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type MostVisitedURL contient deux propriétés : le titre de la page et son URL.

- -

Type

- -

Values of this type are objects. They contain the following properties:

- -
-
favicon {{optional_inline}}
-
String. Une donnée : URL contenant le favicon de la page, si includeFavicon était donné dans {{WebExtAPIRef("topSites.get()")}} et le favicon était disponible.
-
title
-
String. Le titre de la page.
-
url
-
String. L'URL de la page.
-
- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.topSites.MostVisitedURL")}}

- -

Exemples

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.topSites.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/topsites/mostvisitedurl/index.md b/files/fr/mozilla/add-ons/webextensions/api/topsites/mostvisitedurl/index.md new file mode 100644 index 0000000000..8d8698190e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/topsites/mostvisitedurl/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Le type MostVisitedURL contient deux propriétés : le titre de la page et son URL.

+ +

Type

+ +

Values of this type are objects. They contain the following properties:

+ +
+
favicon {{optional_inline}}
+
String. Une donnée : URL contenant le favicon de la page, si includeFavicon était donné dans {{WebExtAPIRef("topSites.get()")}} et le favicon était disponible.
+
title
+
String. Le titre de la page.
+
url
+
String. L'URL de la page.
+
+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.topSites.MostVisitedURL")}}

+ +

Exemples

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.topSites.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index be8094166a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/clear/index.html +++ /dev/null @@ -1,98 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Utilisez BrowserSetting.clear() pour effacer toutes les modification apportées à l'extension du navigateur. Le paramètre du navigateur revient à sa valeur précédente.

- -

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 BrowserSetting.set() pour en savoir plus sur le contrôle des paramètres.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise. Si la compensation a échoué, la promesse renvoie une valeur à false. Si l'effacement de la valeur a réussi, il se résout à true.

- -

Syntaxe

- -
var clearing = setting.clear(
-  details     // object
-)
-
- -

Paramètres

- -
-
details
-
Un objet vide
-
- -

Valeur retournée

- -

Une Promise qui sera rempli avec un booléen: true Si le paramètre est effacé, false sinon.

- -

Compatibilité du navigateur

- -

Voir {{WebExtAPIRef("types.BrowserSetting")}}.

- -

Exemple

- -

Effacer le paramètre webRTCIPHandlingPolicy  :

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.types.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/clear/index.md b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/clear/index.md new file mode 100644 index 0000000000..be8094166a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/clear/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Utilisez BrowserSetting.clear() pour effacer toutes les modification apportées à l'extension du navigateur. Le paramètre du navigateur revient à sa valeur précédente.

+ +

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 BrowserSetting.set() pour en savoir plus sur le contrôle des paramètres.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise. Si la compensation a échoué, la promesse renvoie une valeur à false. Si l'effacement de la valeur a réussi, il se résout à true.

+ +

Syntaxe

+ +
var clearing = setting.clear(
+  details     // object
+)
+
+ +

Paramètres

+ +
+
details
+
Un objet vide
+
+ +

Valeur retournée

+ +

Une Promise qui sera rempli avec un booléen: true Si le paramètre est effacé, false sinon.

+ +

Compatibilité du navigateur

+ +

Voir {{WebExtAPIRef("types.BrowserSetting")}}.

+ +

Exemple

+ +

Effacer le paramètre webRTCIPHandlingPolicy  :

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.types.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e4e5e2c0dd..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/get/index.html +++ /dev/null @@ -1,121 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La méthode  BrowserSetting.get() obtient la valeur actuelle du paramètre du navigateur et une énumération indiquant comment la valeur du paramètre est actuellement controléee..

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var getting = setting.get(
-  details     // object
-)
-
- -

Paramètres

- -
-
détails
-
Un objet vide.
-
- -

Valeur de retour

- -

Une Promise qui sera remplie avec un objet avec les propriétés suivantes :

- -
-
value
-
La valeur du paramètre. Le type de cette propriété est déterminé par le paramètre particulier.
-
levelOfControl
-
string. 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 BrowserSetting.set() pour plus détails. Sa valeur peut-être l'une des suivantes : - - - - - - - - - - - - - - - - - - - -
"not_controllable"Les extensions ne sont pas autorisées à modifier le paramètre.
"controlled_by_other_extensions"Une autre extension qui a été installée après celle-ci a modifié ce paramètre
"controllable_by_this_extension"Cette extension est autorisée à modifier le paramètre.
"controlled_by_this_extension"Cette extensions a déjà modifi le paramètre.
-
-
- -

Compatibilité du navigateur

- -

Voir {{WebExtAPIRef("types.BrowserSetting")}}.

- -

Exemple

- -

Enregitrez la valeur et le niveau de contrôle de la propriété networkPredictionEnabled de l'objet {{WebExtAPIRef("privacy.network")}}, pour les fenêtres de navigations privées. Notez que cela nécessite la permission du navigateur "privacy".

- -
var getting = browser.privacy.network.networkPredictionEnabled.get({});
-
-getting.then((got) => {
-  console.log(`Value: ${got.value}`);
-  console.log(`Control: ${got.levelOfControl}`);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.types.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/get/index.md b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/get/index.md new file mode 100644 index 0000000000..e4e5e2c0dd --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/get/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

La méthode  BrowserSetting.get() obtient la valeur actuelle du paramètre du navigateur et une énumération indiquant comment la valeur du paramètre est actuellement controléee..

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var getting = setting.get(
+  details     // object
+)
+
+ +

Paramètres

+ +
+
détails
+
Un objet vide.
+
+ +

Valeur de retour

+ +

Une Promise qui sera remplie avec un objet avec les propriétés suivantes :

+ +
+
value
+
La valeur du paramètre. Le type de cette propriété est déterminé par le paramètre particulier.
+
levelOfControl
+
string. 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 BrowserSetting.set() pour plus détails. Sa valeur peut-être l'une des suivantes : + + + + + + + + + + + + + + + + + + + +
"not_controllable"Les extensions ne sont pas autorisées à modifier le paramètre.
"controlled_by_other_extensions"Une autre extension qui a été installée après celle-ci a modifié ce paramètre
"controllable_by_this_extension"Cette extension est autorisée à modifier le paramètre.
"controlled_by_this_extension"Cette extensions a déjà modifi le paramètre.
+
+
+ +

Compatibilité du navigateur

+ +

Voir {{WebExtAPIRef("types.BrowserSetting")}}.

+ +

Exemple

+ +

Enregitrez la valeur et le niveau de contrôle de la propriété networkPredictionEnabled de l'objet {{WebExtAPIRef("privacy.network")}}, pour les fenêtres de navigations privées. Notez que cela nécessite la permission du navigateur "privacy".

+ +
var getting = browser.privacy.network.networkPredictionEnabled.get({});
+
+getting.then((got) => {
+  console.log(`Value: ${got.value}`);
+  console.log(`Control: ${got.levelOfControl}`);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.types.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2840431254..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/index.html +++ /dev/null @@ -1,85 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un BrowserSetting est un objet représentant un paramètre de navigateur.

- -

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.

- -

Notez que si cet objet est basé sur le type ChromeSetting, 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 scope de ChromeSetting.set()) ne sont pas implémentées.

- -

Méthodes

- -
-
{{WebExtAPIRef("types.BrowserSetting.get()")}}
-
Obtenez la valeur actuelle du paramètre et une énumération représentant la façon dont le paramètre est actuellement contrôlé.
-
{{WebExtAPIRef("types.BrowserSetting.set()")}}
-
Réglez le paramètre sur une nouvelle valeur.
-
{{WebExtAPIRef("types.BrowserSetting.clear()")}}
-
Effacez toute modification apportée au paramètre par cette extension.
-
- -

Evénements

- -
-
{{WebExtAPIRef("types.BrowserSetting.onChange")}}
-
Définit lorsque la valeur du paramètre change.
-
- -

Compatibilité du navigateur

- -

Browser compatibility

- - - -

{{Compat("webextensions.api.types.BrowserSetting")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.types.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/index.md b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/index.md new file mode 100644 index 0000000000..2840431254 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Un BrowserSetting est un objet représentant un paramètre de navigateur.

+ +

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.

+ +

Notez que si cet objet est basé sur le type ChromeSetting, 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 scope de ChromeSetting.set()) ne sont pas implémentées.

+ +

Méthodes

+ +
+
{{WebExtAPIRef("types.BrowserSetting.get()")}}
+
Obtenez la valeur actuelle du paramètre et une énumération représentant la façon dont le paramètre est actuellement contrôlé.
+
{{WebExtAPIRef("types.BrowserSetting.set()")}}
+
Réglez le paramètre sur une nouvelle valeur.
+
{{WebExtAPIRef("types.BrowserSetting.clear()")}}
+
Effacez toute modification apportée au paramètre par cette extension.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("types.BrowserSetting.onChange")}}
+
Définit lorsque la valeur du paramètre change.
+
+ +

Compatibilité du navigateur

+ +

Browser compatibility

+ + + +

{{Compat("webextensions.api.types.BrowserSetting")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.types.

+
+ + 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 deleted file mode 100644 index ba8fee4bbc..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/onchange/index.html +++ /dev/null @@ -1,128 +0,0 @@ ---- -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 ---- -

{{AddonSidebar()}}

- -

L'événement BrowserSetting.onChanged est déclenché lorsque le paramètre est modifié.

- -

Syntaxe

- -
BrowserSetting.onChanged.addListener(listener)
-BrowserSetting.onChanged.removeListener(listener)
-BrowserSetting.onChanged.hasListener(listener)
-
- -

Les événement ont trois fonctions :

- -
-
addListener(listener)
-
Ajout un auditeur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifier si l'auditeur est enregistré pour cet événement. Renvoie true si elle écoute, false sinon.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera les arguments suivants :

- -
-
details
-
Un object contenant des détails sur le changement survenu. Ses propriété sont les suivantes : -
-
value
-
La nouvelle valeur du paramètre. Le type de cette propriété est déterminé par le paramètre particulier.
-
levelOfControl
-
string. 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 BrowserSetting.set() pour plus détails. Sa valeur peut-être l'une des suivantes : - - - - - - - - - - - - - - - - - - - -
"not_controllable"Les extensions ne sont pas autorisées à modifier ce paramètre.
"controlled_by_other_extensions"Une autre extensions qui a été installée après celle-ci a modifié ce paramètre.
"controllable_by_this_extension"Cette extensions est autorisée à modifier le paramètre.
controlled_by_this_extension"Cette extensions a déjà modifié le paramètre.
-
-
-
-
-
-
- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.types.BrowserSetting.onChange")}}

- -

Exemples

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.types.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/onchange/index.md b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/onchange/index.md new file mode 100644 index 0000000000..ba8fee4bbc --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/onchange/index.md @@ -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 +--- +

{{AddonSidebar()}}

+ +

L'événement BrowserSetting.onChanged est déclenché lorsque le paramètre est modifié.

+ +

Syntaxe

+ +
BrowserSetting.onChanged.addListener(listener)
+BrowserSetting.onChanged.removeListener(listener)
+BrowserSetting.onChanged.hasListener(listener)
+
+ +

Les événement ont trois fonctions :

+ +
+
addListener(listener)
+
Ajout un auditeur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifier si l'auditeur est enregistré pour cet événement. Renvoie true si elle écoute, false sinon.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Une fonction de rappel qui sera appelée lorsque cet événement se produira. La fonction passera les arguments suivants :

+ +
+
details
+
Un object contenant des détails sur le changement survenu. Ses propriété sont les suivantes : +
+
value
+
La nouvelle valeur du paramètre. Le type de cette propriété est déterminé par le paramètre particulier.
+
levelOfControl
+
string. 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 BrowserSetting.set() pour plus détails. Sa valeur peut-être l'une des suivantes : + + + + + + + + + + + + + + + + + + + +
"not_controllable"Les extensions ne sont pas autorisées à modifier ce paramètre.
"controlled_by_other_extensions"Une autre extensions qui a été installée après celle-ci a modifié ce paramètre.
"controllable_by_this_extension"Cette extensions est autorisée à modifier le paramètre.
controlled_by_this_extension"Cette extensions a déjà modifié le paramètre.
+
+
+
+
+
+
+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.types.BrowserSetting.onChange")}}

+ +

Exemples

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.types.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 0ff0d05fbc..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/set/index.html +++ /dev/null @@ -1,126 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Utilisez BrowserSetting.set() pour modifier le paramètre du navigateur vers une nouvelle valeur.

- -

Certaines règles peuvent être restreintes lorsque les extensions sont capables de modifier les paramètres :

- - - -

Cela signifie que si l'extension X essaie de modifier un paramètre :

- -
    -
  1. 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.
  2. -
  3. 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.
  4. -
  5. 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.
  6. -
  7. 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.
  8. -
- -

Une extension peut déterminer lequel de ces scénarios s'applique en examinant la propriété "levelOfControl" renvoyée d'un appel à BrowserSetting.get().

- -

la méthode BrowserSetting.set() 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  true: sinon il est false.

- -

Syntaxe

- -
var setting = setting.set(
-  details     // object
-)
-
- -

Paramètres

- -
-
details
-

Un objet qui doit contenir la propriété suivante :

-
-
value
-
any. La valeur à laquelle vous souhaitez modifier le paramètre. Son type dépend du réglage particulier.
-
-
-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un booléen: true si le paramètre a été modifié, false sinon (par exemple, parce que l'extension n'a pas contrôlé le paramètre).

- -

Compatibilité du navigateur

- -

Voir {{WebExtAPIRef("types.BrowserSetting")}}.

- -

Exemple

- -

Modifiez le paramètre hyperlinkAuditingEnabled (ceci nécessite la permission "privacy") :

- -
function onSet(result) {
-  if (result) {
-    console.log("Value was updated");
-  } else {
-    console.log("Value was not updated");
-  }
-}
-
-browser.browserAction.onClicked.addListener(() => {
-
-    var setting = browser.privacy.websites.hyperlinkAuditingEnabled.set({
-      value: false
-    });
-    setting.then(onSet);
-
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.types.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/set/index.md b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/set/index.md new file mode 100644 index 0000000000..0ff0d05fbc --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/types/browsersetting/set/index.md @@ -0,0 +1,126 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Utilisez BrowserSetting.set() pour modifier le paramètre du navigateur vers une nouvelle valeur.

+ +

Certaines règles peuvent être restreintes lorsque les extensions sont capables de modifier les paramètres :

+ + + +

Cela signifie que si l'extension X essaie de modifier un paramètre :

+ +
    +
  1. 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.
  2. +
  3. 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.
  4. +
  5. 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.
  6. +
  7. 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.
  8. +
+ +

Une extension peut déterminer lequel de ces scénarios s'applique en examinant la propriété "levelOfControl" renvoyée d'un appel à BrowserSetting.get().

+ +

la méthode BrowserSetting.set() 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  true: sinon il est false.

+ +

Syntaxe

+ +
var setting = setting.set(
+  details     // object
+)
+
+ +

Paramètres

+ +
+
details
+

Un objet qui doit contenir la propriété suivante :

+
+
value
+
any. La valeur à laquelle vous souhaitez modifier le paramètre. Son type dépend du réglage particulier.
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un booléen: true si le paramètre a été modifié, false sinon (par exemple, parce que l'extension n'a pas contrôlé le paramètre).

+ +

Compatibilité du navigateur

+ +

Voir {{WebExtAPIRef("types.BrowserSetting")}}.

+ +

Exemple

+ +

Modifiez le paramètre hyperlinkAuditingEnabled (ceci nécessite la permission "privacy") :

+ +
function onSet(result) {
+  if (result) {
+    console.log("Value was updated");
+  } else {
+    console.log("Value was not updated");
+  }
+}
+
+browser.browserAction.onClicked.addListener(() => {
+
+    var setting = browser.privacy.websites.hyperlinkAuditingEnabled.set({
+      value: false
+    });
+    setting.then(onSet);
+
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.types.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/index.html b/files/fr/mozilla/add-ons/webextensions/api/types/index.html deleted file mode 100644 index 2952e0121d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/types/index.html +++ /dev/null @@ -1,64 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

Définit le type BrowserSetting , qui est utilisé pour représenter un paramètre de navigateur.

- -

Types

- -
-
{{WebExtAPIRef("types.BrowserSetting")}}
-
Représente un paramètre de navigateur.
-
- -

Compatibilité du navigateur

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.types.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/types/index.md b/files/fr/mozilla/add-ons/webextensions/api/types/index.md new file mode 100644 index 0000000000..2952e0121d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/types/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

Définit le type BrowserSetting , qui est utilisé pour représenter un paramètre de navigateur.

+ +

Types

+ +
+
{{WebExtAPIRef("types.BrowserSetting")}}
+
Représente un paramètre de navigateur.
+
+ +

Compatibilité du navigateur

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.types.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/index.html b/files/fr/mozilla/add-ons/webextensions/api/userscripts/index.html deleted file mode 100644 index df5b5f08d0..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/userscripts/index.html +++ /dev/null @@ -1,68 +0,0 @@ ---- -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 ---- -

{{AddonSidebar}}

- -

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.

- -

Cette API offre des capacités similaires à {{WebExtAPIRef("contentScripts")}} mais avec des fonctionnalités adaptées à la gestion de scripts tiers :

- - - -
-

Attention : Cette API requiert la présence de la clé user_scripts dans le manifest.json, même si aucun script API n'est spécifié. Par exemple, user_scripts: {}.

-
- -

Pour utiliser l'API, appelez {{WebExtAPIRef("userScripts.register","register()")}} en passant un objet définissant les scripts à enregistrer. La méthode renvoie une promesse qui est résolue par un objet  {{WebExtAPIRef("userScripts.RegisteredUserScript","RegisteredUserScript")}}.

- -
-

Note : 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

-
- - -

Types

- -
-
{{WebExtAPIRef("userScripts.RegisteredUserScript")}}
-
L'object 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.
-
- -

Méthodes

- -
-
{{WebExtAPIRef("userScripts.register()")}}
-
Enregistre les scripts utilisateur donnés.
-
- -

Evénements

- -
-
{{WebExtAPIRef("userScripts.onBeforeScript")}}
-
Un événement disponible pour le script API, enregistré dans "user_scripts", 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.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.userScripts", 10, 1)}}

- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/index.md b/files/fr/mozilla/add-ons/webextensions/api/userscripts/index.md new file mode 100644 index 0000000000..df5b5f08d0 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/index.md @@ -0,0 +1,68 @@ +--- +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 +--- +

{{AddonSidebar}}

+ +

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.

+ +

Cette API offre des capacités similaires à {{WebExtAPIRef("contentScripts")}} mais avec des fonctionnalités adaptées à la gestion de scripts tiers :

+ + + +
+

Attention : Cette API requiert la présence de la clé user_scripts dans le manifest.json, même si aucun script API n'est spécifié. Par exemple, user_scripts: {}.

+
+ +

Pour utiliser l'API, appelez {{WebExtAPIRef("userScripts.register","register()")}} en passant un objet définissant les scripts à enregistrer. La méthode renvoie une promesse qui est résolue par un objet  {{WebExtAPIRef("userScripts.RegisteredUserScript","RegisteredUserScript")}}.

+ +
+

Note : 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

+
+ + +

Types

+ +
+
{{WebExtAPIRef("userScripts.RegisteredUserScript")}}
+
L'object 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.
+
+ +

Méthodes

+ +
+
{{WebExtAPIRef("userScripts.register()")}}
+
Enregistre les scripts utilisateur donnés.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("userScripts.onBeforeScript")}}
+
Un événement disponible pour le script API, enregistré dans "user_scripts", 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.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.userScripts", 10, 1)}}

+ +

Voir aussi

+ + 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 deleted file mode 100644 index 2b5db17c64..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/userscripts/onbeforescript/index.html +++ /dev/null @@ -1,51 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -
La propriété onBeforeScript de l'événement {{WebExtAPIRef("userScripts","browser.userScripts")}} est un {{event("Event_handlers", "event handler")}} qui traite {{event("beforeScript")}}.
- -

L'événement beforeScript 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.

- -

Syntaxe

- -
browser.userScripts.onBeforeScript = functionRef
-browser.userScripts.onBeforeScript.addListener(functionRef)
-browser.userScripts.onBeforeScript.removeListener(functionRef)
-browser.userScripts.onBeforeScript.hasListener(functionRef)
-
- -

Value

- -

functionRef est la function de gestionnaire à appeler lorsque l'événement beforeScript  du script utilisateur se déclenche.

- -

Exemples

- -

Voir ce billet de blog pour des exemples détaillés

- -

Compatibilité du navigateur

- -
- - -

{{Compat("webextensions.api.userScripts.onBeforeScript")}}

-
- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/onbeforescript/index.md b/files/fr/mozilla/add-ons/webextensions/api/userscripts/onbeforescript/index.md new file mode 100644 index 0000000000..2b5db17c64 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/onbeforescript/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +
La propriété onBeforeScript de l'événement {{WebExtAPIRef("userScripts","browser.userScripts")}} est un {{event("Event_handlers", "event handler")}} qui traite {{event("beforeScript")}}.
+ +

L'événement beforeScript 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.

+ +

Syntaxe

+ +
browser.userScripts.onBeforeScript = functionRef
+browser.userScripts.onBeforeScript.addListener(functionRef)
+browser.userScripts.onBeforeScript.removeListener(functionRef)
+browser.userScripts.onBeforeScript.hasListener(functionRef)
+
+ +

Value

+ +

functionRef est la function de gestionnaire à appeler lorsque l'événement beforeScript  du script utilisateur se déclenche.

+ +

Exemples

+ +

Voir ce billet de blog pour des exemples détaillés

+ +

Compatibilité du navigateur

+ +
+ + +

{{Compat("webextensions.api.userScripts.onBeforeScript")}}

+
+ +

Voir aussi

+ + 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 deleted file mode 100644 index 6de0d24988..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/userscripts/register/index.html +++ /dev/null @@ -1,76 +0,0 @@ ---- -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 ---- -

{{AddonSidebar}}

- -

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.

- -

C'est une méthode asynchrone qui retourne un {{JSxRef("Promise")}}.

- -

Syntaxe

- -
const registeredUserScript = await browser.userScripts.register(
-  userScriptOptions       // object
-);
-….
-await registeredUserScript.unregister();
- -

Paramètres

- -
-
userScriptOptions
-

object. Un objet UserScriptOptions représentant les scripts de contenu à enregistrer. Il a une syntaxe similaire aux options supportées par {{WebExtAPIRef("contentScripts.register","contentScripts.register()")}}.

-

L'objet UserScriptOptions possède les propriétés suivantes :

-
-
scriptMetadata {{Optional_Inline}}
-
Un objet JSON qui contient certaines propriétés de métadonnées associées aux userScripts enregistrés
-
allFrames {{Optional_Inline}}
-
Identiques à all_frames dans la clé user_scripts.
-
excludeGlobs {{Optional_Inline}}
-
Identique à exclude_globs dans la clé user_scripts.
-
excludeMatches {{Optional_Inline}}
-
Identique à exclude_matches dans la clé user_scripts.
-
includeGlobs {{Optional_Inline}}
-
Identique à include_globs dans la clé user_scripts.
-
js {{Optional_Inline}}
-
Un tableau d'objets. Chaque objet a soit une propriété nommée file, 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, qui est un code JavaScript à enregistrer.
-
matchAboutBlank {{Optional_Inline}}
-
Identique à match_about_blank dans la clé user_scripts.
-
matches
-
Identique à matches dans la clé user_scripts.
-
runAt {{Optional_Inline}}
-
Identique àrun_at dans la clé user_scripts.
-
-
-
- -

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).

- -

Valeur retournée

- -

Une {{JSxRef("Promise")}} qui sera rempli avec un objet  {{WebExtAPIRef("userScripts.RegisteredUserScript","RegisteredUserScript")}} que vous pouvez utiliser pour désinscrire ce script utilisateur particulier.

- -
-

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.

-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.userScripts.register", 10)}}

- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/register/index.md b/files/fr/mozilla/add-ons/webextensions/api/userscripts/register/index.md new file mode 100644 index 0000000000..6de0d24988 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/register/index.md @@ -0,0 +1,76 @@ +--- +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 +--- +

{{AddonSidebar}}

+ +

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.

+ +

C'est une méthode asynchrone qui retourne un {{JSxRef("Promise")}}.

+ +

Syntaxe

+ +
const registeredUserScript = await browser.userScripts.register(
+  userScriptOptions       // object
+);
+….
+await registeredUserScript.unregister();
+ +

Paramètres

+ +
+
userScriptOptions
+

object. Un objet UserScriptOptions représentant les scripts de contenu à enregistrer. Il a une syntaxe similaire aux options supportées par {{WebExtAPIRef("contentScripts.register","contentScripts.register()")}}.

+

L'objet UserScriptOptions possède les propriétés suivantes :

+
+
scriptMetadata {{Optional_Inline}}
+
Un objet JSON qui contient certaines propriétés de métadonnées associées aux userScripts enregistrés
+
allFrames {{Optional_Inline}}
+
Identiques à all_frames dans la clé user_scripts.
+
excludeGlobs {{Optional_Inline}}
+
Identique à exclude_globs dans la clé user_scripts.
+
excludeMatches {{Optional_Inline}}
+
Identique à exclude_matches dans la clé user_scripts.
+
includeGlobs {{Optional_Inline}}
+
Identique à include_globs dans la clé user_scripts.
+
js {{Optional_Inline}}
+
Un tableau d'objets. Chaque objet a soit une propriété nommée file, 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, qui est un code JavaScript à enregistrer.
+
matchAboutBlank {{Optional_Inline}}
+
Identique à match_about_blank dans la clé user_scripts.
+
matches
+
Identique à matches dans la clé user_scripts.
+
runAt {{Optional_Inline}}
+
Identique àrun_at dans la clé user_scripts.
+
+
+
+ +

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).

+ +

Valeur retournée

+ +

Une {{JSxRef("Promise")}} qui sera rempli avec un objet  {{WebExtAPIRef("userScripts.RegisteredUserScript","RegisteredUserScript")}} que vous pouvez utiliser pour désinscrire ce script utilisateur particulier.

+ +
+

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.

+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.userScripts.register", 10)}}

+ +

Voir aussi

+ + 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 deleted file mode 100644 index 1499868cbc..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/index.html +++ /dev/null @@ -1,32 +0,0 @@ ---- -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 ---- -

{{AddonSidebar()}}

- -

Un RegisteredUserScript est retourné par un appel à {{WebExtAPIRef("userScripts.register","userScripts.register()")}} et représente les scripts utilisateur enregistrés dans cet appel.

- -

L'objet définit une méthode unique, {{WebExtAPIRef("userScripts.RegisteredUserScript.unregister","unregister()")}}, qui peut être utilisée pour désinscrire les scripts utilisateur.

- -
-

Note: 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.

-
- -

Méthodes

- -
-
{{WebExtAPIRef("userScripts.RegisteredUserScript.unregister","unregister()")}}
-
Désenregistre les scripts utilisateurs représentés par cet objet.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.userScripts.RegisteredUserScript", 10)}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/index.md b/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/index.md new file mode 100644 index 0000000000..1499868cbc --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/index.md @@ -0,0 +1,32 @@ +--- +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 +--- +

{{AddonSidebar()}}

+ +

Un RegisteredUserScript est retourné par un appel à {{WebExtAPIRef("userScripts.register","userScripts.register()")}} et représente les scripts utilisateur enregistrés dans cet appel.

+ +

L'objet définit une méthode unique, {{WebExtAPIRef("userScripts.RegisteredUserScript.unregister","unregister()")}}, qui peut être utilisée pour désinscrire les scripts utilisateur.

+ +
+

Note: 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.

+
+ +

Méthodes

+ +
+
{{WebExtAPIRef("userScripts.RegisteredUserScript.unregister","unregister()")}}
+
Désenregistre les scripts utilisateurs représentés par cet objet.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.userScripts.RegisteredUserScript", 10)}}

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 deleted file mode 100644 index fb1508e240..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/unregister/index.html +++ /dev/null @@ -1,47 +0,0 @@ ---- -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 ---- -

{{AddonSidebar}}

- -

La méthode unregister() 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()")}}.

- -
-

Note: 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..

-
- -

Syntaxe

- -
const registeredUserScript = await browser.userScripts.register(
-  userScriptOptions       // object
-);
-…
-await registeredUserScript.unregister()
- -

Paramètres

- -

Aucun

- -

Valeur retournée

- -

Une {{JSxRef("Promise")}} qui sera résolu une fois le script utilisateur désenregistré. La promesse ne rapporte rien.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.userScripts.RegisteredUserScript.unregister")}}

- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/unregister/index.md b/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/unregister/index.md new file mode 100644 index 0000000000..fb1508e240 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/registereduserscript/unregister/index.md @@ -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 +--- +

{{AddonSidebar}}

+ +

La méthode unregister() 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()")}}.

+ +
+

Note: 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..

+
+ +

Syntaxe

+ +
const registeredUserScript = await browser.userScripts.register(
+  userScriptOptions       // object
+);
+…
+await registeredUserScript.unregister()
+ +

Paramètres

+ +

Aucun

+ +

Valeur retournée

+ +

Une {{JSxRef("Promise")}} qui sera résolu une fois le script utilisateur désenregistré. La promesse ne rapporte rien.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.userScripts.RegisteredUserScript.unregister")}}

+ +

Voir aussi

+ + 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 deleted file mode 100644 index 2df59cf18b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/userscripts/userscriptoptions/index.html +++ /dev/null @@ -1,48 +0,0 @@ ---- -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 ---- -

{{AddonSidebar}}

- -

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 :

- - - -

L'objet UserScriptOptions a les propriétés suivantes :

- -
-
allFrames{{optional_inline}}
-
Même chose que all_frames dans la clé content_scripts.
-
excludeGlobs{{optional_inline}}
-
Même chose que exclude_globs dans la clé content_scripts.
-
excludeMatches{{optional_inline}}
-
Même chose que exclude_matches dans la clé content_scripts.
-
includeGlobs{{optional_inline}}
-
Même chose que include_globs dans la clé content_scripts.
-
js{{optional_inline}}
-
Un ensemble d'objets. Chaque objet a soit une propriété nommée file, qui est une URL commençant à l'extension manifest.json et pointant vers un fichier JavaScript à enregistrer, soit une propriété nommée code, qui est un code JavaScript à enregistrer.
-
matchAboutBlank{{optional_inline}}
-
Même chose que match_about_blank dans la clé content_scripts.
-
matches
-
Même chose que matches dans la clé content_scripts.
-
runAt{{optional_inline}}
-
Même chose que run_at dans la clé content_scripts.
-
scriptMetadata {{optional_inline}}
-
Une valeur de métadonnées de script utilisateur
-
- -

Sa syntaxe est similaire à celle des options contentScript prises en charge par browser.contentScripts.register.

diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/userscriptoptions/index.md b/files/fr/mozilla/add-ons/webextensions/api/userscripts/userscriptoptions/index.md new file mode 100644 index 0000000000..2df59cf18b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/userscriptoptions/index.md @@ -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 +--- +

{{AddonSidebar}}

+ +

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 :

+ + + +

L'objet UserScriptOptions a les propriétés suivantes :

+ +
+
allFrames{{optional_inline}}
+
Même chose que all_frames dans la clé content_scripts.
+
excludeGlobs{{optional_inline}}
+
Même chose que exclude_globs dans la clé content_scripts.
+
excludeMatches{{optional_inline}}
+
Même chose que exclude_matches dans la clé content_scripts.
+
includeGlobs{{optional_inline}}
+
Même chose que include_globs dans la clé content_scripts.
+
js{{optional_inline}}
+
Un ensemble d'objets. Chaque objet a soit une propriété nommée file, qui est une URL commençant à l'extension manifest.json et pointant vers un fichier JavaScript à enregistrer, soit une propriété nommée code, qui est un code JavaScript à enregistrer.
+
matchAboutBlank{{optional_inline}}
+
Même chose que match_about_blank dans la clé content_scripts.
+
matches
+
Même chose que matches dans la clé content_scripts.
+
runAt{{optional_inline}}
+
Même chose que run_at dans la clé content_scripts.
+
scriptMetadata {{optional_inline}}
+
Une valeur de métadonnées de script utilisateur
+
+ +

Sa syntaxe est similaire à celle des options contentScript prises en charge par browser.contentScripts.register.

diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/working_with_userscripts/index.html b/files/fr/mozilla/add-ons/webextensions/api/userscripts/working_with_userscripts/index.html deleted file mode 100644 index 4e6c4824a3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/userscripts/working_with_userscripts/index.html +++ /dev/null @@ -1,116 +0,0 @@ ---- -title: Travailler avec userScripts -slug: Mozilla/Add-ons/WebExtensions/API/userScripts/Working_with_userScripts -tags: - - API - - Extensions - - How-to - - Tutorial - - userScripts -translation_of: Mozilla/Add-ons/WebExtensions/API/userScripts/Working_with_userScripts -original_slug: Mozilla/Add-ons/WebExtensions/API/userScripts/travailler_avec_userScripts ---- -

{{draft}}

- -

{{AddonSidebar}}

- -

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.

- -

Implémentez userScripts dans votre extension en suivant les étapes suivantes :

- -
    -
  1. Définissez le script dans le manifeste de l'extension à l'aide de la clé "user_scripts".
  2. -
  3. Enregistrer le userScript
  4. -
  5. Implémenter les fonctions userScript
  6. -
- -

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 webextensions-examples sur GitHub.

- -

Manifest userScripts

- -

Un script utilisateur est identifié par le contenu de la clé user_scripts du manifeste des extensions. L'information minimale pour la clé user_scripts serait :

- -
  "user_scripts": {
-    "api_script": "customUserScriptAPIs.js"
-  }
- -

La propriété "api_script" indique le chemin d'accès au fichier JavaScript qui contient le code du userScript.

- -

Charge l'extension d'exemple

- -

Une fois que vous avez téléchargé l'exemple  :

- -

Naviguez jusqu'à about:debugging, cliquez sur Charger temporairement une extension... et double-cliquez sur le manifest des extensions.

- -

/Le code par défaut inclus dans l'exemple vous permet de charger un userScript 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 Enregistrer le script au bas du panneau.

- -

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.

- -

- -

Rien ne se passera tant que vous n'aurez pas cliqué sur le bouton Enregistrer le script. 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.

- -

Register the userScript

- -

Avant qu'un userScript puisse être exécuté, il doit être enregistré en utilisant la méthode  userScripts.register(). Voici le code pour enregistrer l'extension d'exemple :

- -
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});
-  }
-}
- -

Ce code initialise d'abord l'objet params pour passer les valeurs à la méthode  userScripts.register.

- -

Implementer les fonctions userScript

- -

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 :

- -

- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/userscripts/working_with_userscripts/index.md b/files/fr/mozilla/add-ons/webextensions/api/userscripts/working_with_userscripts/index.md new file mode 100644 index 0000000000..4e6c4824a3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/userscripts/working_with_userscripts/index.md @@ -0,0 +1,116 @@ +--- +title: Travailler avec userScripts +slug: Mozilla/Add-ons/WebExtensions/API/userScripts/Working_with_userScripts +tags: + - API + - Extensions + - How-to + - Tutorial + - userScripts +translation_of: Mozilla/Add-ons/WebExtensions/API/userScripts/Working_with_userScripts +original_slug: Mozilla/Add-ons/WebExtensions/API/userScripts/travailler_avec_userScripts +--- +

{{draft}}

+ +

{{AddonSidebar}}

+ +

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.

+ +

Implémentez userScripts dans votre extension en suivant les étapes suivantes :

+ +
    +
  1. Définissez le script dans le manifeste de l'extension à l'aide de la clé "user_scripts".
  2. +
  3. Enregistrer le userScript
  4. +
  5. Implémenter les fonctions userScript
  6. +
+ +

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 webextensions-examples sur GitHub.

+ +

Manifest userScripts

+ +

Un script utilisateur est identifié par le contenu de la clé user_scripts du manifeste des extensions. L'information minimale pour la clé user_scripts serait :

+ +
  "user_scripts": {
+    "api_script": "customUserScriptAPIs.js"
+  }
+ +

La propriété "api_script" indique le chemin d'accès au fichier JavaScript qui contient le code du userScript.

+ +

Charge l'extension d'exemple

+ +

Une fois que vous avez téléchargé l'exemple  :

+ +

Naviguez jusqu'à about:debugging, cliquez sur Charger temporairement une extension... et double-cliquez sur le manifest des extensions.

+ +

/Le code par défaut inclus dans l'exemple vous permet de charger un userScript 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 Enregistrer le script au bas du panneau.

+ +

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.

+ +

+ +

Rien ne se passera tant que vous n'aurez pas cliqué sur le bouton Enregistrer le script. 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.

+ +

Register the userScript

+ +

Avant qu'un userScript puisse être exécuté, il doit être enregistré en utilisant la méthode  userScripts.register(). Voici le code pour enregistrer l'extension d'exemple :

+ +
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});
+  }
+}
+ +

Ce code initialise d'abord l'objet params pour passer les valeurs à la méthode  userScripts.register.

+ +

Implementer les fonctions userScript

+ +

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 :

+ +

+ +

Voir aussi

+ + 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 deleted file mode 100644 index c29b1fbdac..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getallframes/index.html +++ /dev/null @@ -1,132 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Étant donné un ID d'onglet, récupère des informations sur toutes les images qu'il contient.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingFrames = browser.webNavigation.getAllFrames(
-  details                // object
-)
-
- -

Paramètres

- -
-
details
-

object. Informations sur l'onglet pour récupérer toutes les images.

-
-
tabId
-
integer. L'identifiant de l'onglet
-
-
-
- -

Valeur retournée

- -

Une Promise sera accompli avec un tableau d'objets, dont chacun a les propriétés suivantes :

- -
-
errorOccurred
-
boolean. 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é.
-
processId
-
integer. L'ID du processus exécutant le moteur de rendu pour cet onglet.
-
frameId
-
integer. L'identifiant de l'image Si c'est l'image principale, alors frameId est nul.
-
parentFrameId
-
integer. 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.
-
url
-
string. L'URL actuellement associée à ce cadre.
-
- -

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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webNavigation.getAllFrames")}}

- -

Exemples

- -

Ce code enregistre les URL de toutes les images dans l'onglet actif, lorsque l'utilisateur clique sur une action du navigateur :

- -
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);
-
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getallframes/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getallframes/index.md new file mode 100644 index 0000000000..c29b1fbdac --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getallframes/index.md @@ -0,0 +1,132 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Étant donné un ID d'onglet, récupère des informations sur toutes les images qu'il contient.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingFrames = browser.webNavigation.getAllFrames(
+  details                // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Informations sur l'onglet pour récupérer toutes les images.

+
+
tabId
+
integer. L'identifiant de l'onglet
+
+
+
+ +

Valeur retournée

+ +

Une Promise sera accompli avec un tableau d'objets, dont chacun a les propriétés suivantes :

+ +
+
errorOccurred
+
boolean. 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é.
+
processId
+
integer. L'ID du processus exécutant le moteur de rendu pour cet onglet.
+
frameId
+
integer. L'identifiant de l'image Si c'est l'image principale, alors frameId est nul.
+
parentFrameId
+
integer. 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.
+
url
+
string. L'URL actuellement associée à ce cadre.
+
+ +

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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webNavigation.getAllFrames")}}

+ +

Exemples

+ +

Ce code enregistre les URL de toutes les images dans l'onglet actif, lorsque l'utilisateur clique sur une action du navigateur :

+ +
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);
+
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 01224eafff..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getframe/index.html +++ /dev/null @@ -1,123 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Récupère des informations sur un cadre particulier. Un cadre peut être l'image de niveau supérieur dans un onglet ou un iframe imbriqué, et est identifié de manière unique par un ID de tabulation et un ID de cadre.

- -

C'est une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingFrame = browser.webNavigation.getFrame(
-  details                // object
-)
-
- -

Paramètres

- -
-
details
-

object. Informations sur le cadre pour récupérer des informations sur :

-
-
tabId
-
integer. L'ID de l'onglet dans lequel se trouve le cadre.
-
processId {{optional_inline}}
-
integer. L'ID du processus exécutant le moteur de rendu pour cet onglet.
-
frameId
-
integer. L'ID du cadre dans l'onglet donné.
-
-
-
- -

Valeur retournée

- -

Une Promise qui sera rempli avec un objet contenant les propriétés suivantes :

- -
-
errorOccurred
-
boolean. 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é.
-
url
-
string. L'URL actuellement associée à cette trame, si la trame identifiée par  frameId existait à un point de l'onglet identifié par tabId. Le fait qu'une URL soit associée à un frameId donné n'implique pas que la trame correspondante existe toujours.
-
parentFrameId
-
integer. 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.
-
- -

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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webNavigation.getFrame")}}

- -

Exemples

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getframe/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getframe/index.md new file mode 100644 index 0000000000..01224eafff --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/getframe/index.md @@ -0,0 +1,123 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Récupère des informations sur un cadre particulier. Un cadre peut être l'image de niveau supérieur dans un onglet ou un iframe imbriqué, et est identifié de manière unique par un ID de tabulation et un ID de cadre.

+ +

C'est une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingFrame = browser.webNavigation.getFrame(
+  details                // object
+)
+
+ +

Paramètres

+ +
+
details
+

object. Informations sur le cadre pour récupérer des informations sur :

+
+
tabId
+
integer. L'ID de l'onglet dans lequel se trouve le cadre.
+
processId {{optional_inline}}
+
integer. L'ID du processus exécutant le moteur de rendu pour cet onglet.
+
frameId
+
integer. L'ID du cadre dans l'onglet donné.
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui sera rempli avec un objet contenant les propriétés suivantes :

+ +
+
errorOccurred
+
boolean. 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é.
+
url
+
string. L'URL actuellement associée à cette trame, si la trame identifiée par  frameId existait à un point de l'onglet identifié par tabId. Le fait qu'une URL soit associée à un frameId donné n'implique pas que la trame correspondante existe toujours.
+
parentFrameId
+
integer. 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.
+
+ +

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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webNavigation.getFrame")}}

+ +

Exemples

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/index.html b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/index.html deleted file mode 100644 index d1cb34e07f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/index.html +++ /dev/null @@ -1,143 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

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.

- -

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.

- -

Chaque evenement correspond directement à un état précis dans la navigation. La séquence des évenements est comme suit:

- -

- - - -

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'iframe.

- -

L'appel addListener() 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.

- -

L'écouteur d'événement onCommittedreç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.

- -

Pour utiliser cette API, vous devez avoir la permission "webNavigation".

- -

Types

- -
-
{{WebExtAPIRef("webNavigation.TransitionType")}}
-
Cause de la navigation: par exemple, l'utilisateur a cliqué sur un lien, ou a tapé une adresse, ou a cliqué sur un signet.
-
{{WebExtAPIRef("webNavigation.TransitionQualifier")}}
-
-
Informations supplémentaires sur une transition.
-
-
- -

Functions

- -
-
{{WebExtAPIRef("webNavigation.getFrame()")}}
-
Récupère des informations sur un cadre particulier. Ce cadre peut être le cadre de niveau supérieur dans un onglet ou un iframe imbriqué, et est identifié de manière unique par un ID d'onglet et un ID de frame.
-
{{WebExtAPIRef("webNavigation.getAllFrames()")}}
-
-

Étant donné un ID d'onglet, récupère des informations sur tous les cadres qu'il contient.

-
-
- -

Events

- -
-
{{WebExtAPIRef("webNavigation.onBeforeNavigate")}}
-
-

Lancé lorsque le navigateur est sur le point de démarrer un événement de navigation.

-
-
{{WebExtAPIRef("webNavigation.onCommitted")}}
-
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.
-
{{WebExtAPIRef("webNavigation.onDOMContentLoaded")}}
-
Lancé lorsque l'événement DOMContentLoaded est déclenché dans la page.
-
{{WebExtAPIRef("webNavigation.onCompleted")}}
-
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 chargement du DOM.
-
{{WebExtAPIRef("webNavigation.onErrorOccurred")}}
-
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.
-
{{WebExtAPIRef("webNavigation.onCreatedNavigationTarget")}}
-
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.
-
{{WebExtAPIRef("webNavigation.onReferenceFragmentUpdated")}}
-
Lancé si l' identificateur de fragment d'une page a été modifié.
-
{{WebExtAPIRef("webNavigation.onTabReplaced")}}
-
-

Lancé lorsque le contenu de l'onglet est remplacé par un onglet différent (généralement précédemment pré-rendu).

-
-
{{WebExtAPIRef("webNavigation.onHistoryStateUpdated")}}
-
Lancé lorsque la page a utilisé l' API d'histoirique pour mettre à jour l'URL affichée dans la barre d'adresse du navigateur.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webNavigation")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/index.md new file mode 100644 index 0000000000..d1cb34e07f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

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.

+ +

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.

+ +

Chaque evenement correspond directement à un état précis dans la navigation. La séquence des évenements est comme suit:

+ +

+ + + +

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'iframe.

+ +

L'appel addListener() 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.

+ +

L'écouteur d'événement onCommittedreç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.

+ +

Pour utiliser cette API, vous devez avoir la permission "webNavigation".

+ +

Types

+ +
+
{{WebExtAPIRef("webNavigation.TransitionType")}}
+
Cause de la navigation: par exemple, l'utilisateur a cliqué sur un lien, ou a tapé une adresse, ou a cliqué sur un signet.
+
{{WebExtAPIRef("webNavigation.TransitionQualifier")}}
+
+
Informations supplémentaires sur une transition.
+
+
+ +

Functions

+ +
+
{{WebExtAPIRef("webNavigation.getFrame()")}}
+
Récupère des informations sur un cadre particulier. Ce cadre peut être le cadre de niveau supérieur dans un onglet ou un iframe imbriqué, et est identifié de manière unique par un ID d'onglet et un ID de frame.
+
{{WebExtAPIRef("webNavigation.getAllFrames()")}}
+
+

Étant donné un ID d'onglet, récupère des informations sur tous les cadres qu'il contient.

+
+
+ +

Events

+ +
+
{{WebExtAPIRef("webNavigation.onBeforeNavigate")}}
+
+

Lancé lorsque le navigateur est sur le point de démarrer un événement de navigation.

+
+
{{WebExtAPIRef("webNavigation.onCommitted")}}
+
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.
+
{{WebExtAPIRef("webNavigation.onDOMContentLoaded")}}
+
Lancé lorsque l'événement DOMContentLoaded est déclenché dans la page.
+
{{WebExtAPIRef("webNavigation.onCompleted")}}
+
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 chargement du DOM.
+
{{WebExtAPIRef("webNavigation.onErrorOccurred")}}
+
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.
+
{{WebExtAPIRef("webNavigation.onCreatedNavigationTarget")}}
+
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.
+
{{WebExtAPIRef("webNavigation.onReferenceFragmentUpdated")}}
+
Lancé si l' identificateur de fragment d'une page a été modifié.
+
{{WebExtAPIRef("webNavigation.onTabReplaced")}}
+
+

Lancé lorsque le contenu de l'onglet est remplacé par un onglet différent (généralement précédemment pré-rendu).

+
+
{{WebExtAPIRef("webNavigation.onHistoryStateUpdated")}}
+
Lancé lorsque la page a utilisé l' API d'histoirique pour mettre à jour l'URL affichée dans la barre d'adresse du navigateur.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webNavigation")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2f335ff61c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onbeforenavigate/index.html +++ /dev/null @@ -1,140 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsque le navigateur est sur le point de démarrer un événement de navigation.

- -

Syntaxe

- -
browser.webNavigation.onBeforeNavigate.addListener(
-  listener,                   // function
-  filter                      // optional object
-)
-browser.webNavigation.onBeforeNavigate.removeListener(listener)
-browser.webNavigation.onBeforeNavigate.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
-
- -

syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
details
-
object. Détails sur l'événement de navigation.
-
-
-
filter{{optional_inline}}
-
-

object. Un objet contenant une seule propriété url, qui est un tableau  d'objets {{WebExtAPIRef("events.UrlFilter")}} objects.Un objet contenant une seule propriété  qui correspondent à au moins un UrlFilter dans le tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

-
-
- -

Objets supplémentaires

- -

détails

- -
-
tabId
-
integer. L'ID de l'onglet dans lequel la navigation est sur le point de se produire.
-
url
-
string. L'URL à laquelle le cadre donné va naviguer.
-
processId
-
integer. L'ID du processus dans lequel cet onglet est rendu (Cette propriété n'est pas pris en charge sur Firefox et c'est déprécié sur Chrome).
-
frameId
-
integer. 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 iframe 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.
-
parentFrameId
-
integer. ID du parent de cette image. Défini à -1 s'il s'agit d'un cadre de niveau supérieur.
-
timeStamp
-
number. L'heure à laquelle le navigateur est sur le point de démarrer la navigation, en millisecondes depuis l'époque.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webNavigation.onBeforeNavigate")}}

- -

Exemples

- -

Logs les URL cibles de onBeforeNavigate, si le nom d'hôte de la cible contient "example.com" ou commence avec "developer".

- -
var filter = {
-  url:
-  [
-    {hostContains: "example.com"},
-    {hostPrefix: "developer"}
-  ]
-}
-
-function logOnBefore(details) {
-  console.log("onBeforeNavigate to: " + details.url);
-}
-
-browser.webNavigation.onBeforeNavigate.addListener(logOnBefore, filter);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onbeforenavigate/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onbeforenavigate/index.md new file mode 100644 index 0000000000..2f335ff61c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onbeforenavigate/index.md @@ -0,0 +1,140 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque le navigateur est sur le point de démarrer un événement de navigation.

+ +

Syntaxe

+ +
browser.webNavigation.onBeforeNavigate.addListener(
+  listener,                   // function
+  filter                      // optional object
+)
+browser.webNavigation.onBeforeNavigate.removeListener(listener)
+browser.webNavigation.onBeforeNavigate.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
+
+ +

syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
details
+
object. Détails sur l'événement de navigation.
+
+
+
filter{{optional_inline}}
+
+

object. Un objet contenant une seule propriété url, qui est un tableau  d'objets {{WebExtAPIRef("events.UrlFilter")}} objects.Un objet contenant une seule propriété  qui correspondent à au moins un UrlFilter dans le tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
tabId
+
integer. L'ID de l'onglet dans lequel la navigation est sur le point de se produire.
+
url
+
string. L'URL à laquelle le cadre donné va naviguer.
+
processId
+
integer. L'ID du processus dans lequel cet onglet est rendu (Cette propriété n'est pas pris en charge sur Firefox et c'est déprécié sur Chrome).
+
frameId
+
integer. 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 iframe 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.
+
parentFrameId
+
integer. ID du parent de cette image. Défini à -1 s'il s'agit d'un cadre de niveau supérieur.
+
timeStamp
+
number. L'heure à laquelle le navigateur est sur le point de démarrer la navigation, en millisecondes depuis l'époque.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webNavigation.onBeforeNavigate")}}

+ +

Exemples

+ +

Logs les URL cibles de onBeforeNavigate, si le nom d'hôte de la cible contient "example.com" ou commence avec "developer".

+ +
var filter = {
+  url:
+  [
+    {hostContains: "example.com"},
+    {hostPrefix: "developer"}
+  ]
+}
+
+function logOnBefore(details) {
+  console.log("onBeforeNavigate to: " + details.url);
+}
+
+browser.webNavigation.onBeforeNavigate.addListener(logOnBefore, filter);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index f45939e36e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncommitted/index.html +++ /dev/null @@ -1,146 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.webNavigation.onCommitted.addListener(
-  listener,                 // function
-  filter                    // optional object
-)
-browser.webNavigation.onCommitted.removeListener(listener)
-browser.webNavigation.onCommitted.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
details
-
object. Détails sur l'événement de navigation.
-
-
-
filter{{optional_inline}}
-
-

object. Un objet contenant une seule propriété url, qui est un tableau 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 UrlFilter dans le tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

-
-
- -

Objets supplémentaires

- -

détails

- -
-
tabId
-
integer. L'ID de l'onglet dans lequel la navigation est sur le point de se produire.
-
url
-
string. L'URL à laquelle le cadre donné va naviguer.
-
processId
-
integer. L'ID du processus dans lequel cet onglet est rendu.
-
frameId
-
integer. 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 iframe 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.
-
parentFrameId
-
integer. ID du parent de cette image. Réglez à -1 s'il s'agit d'un cadre de niveau supérieur.
-
timeStamp
-
number. L'heure à laquelle la navigation a été validée, en millisecondes depuis l'époque.
-
transitionType
-
{{WebExtAPIRef("webNavigation.transitionType", "transitionType")}}. La raison de la navigation : par exemple, "link" si l'utilisateur a cliqué sur un lien, ou "reload" si l'utilisateur a rechargé la page.
-
transitionQualifiers
-
Array de {{WebExtAPIRef("webNavigation.transitionQualifier", "transitionQualifier")}}. Informations supplémentaires sur la navigation : par exemple, s'il existait une redirection de serveur ou de client.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webNavigation.onCommitted")}}

- -

Exemples

- -

Logs les URL cibles et les informations de transition supplémentaires pour onCommitted, si le nom d'hôte de l'URL cible contient "example.com" ou commence avec "developer".

- -
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);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncommitted/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncommitted/index.md new file mode 100644 index 0000000000..f45939e36e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncommitted/index.md @@ -0,0 +1,146 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.webNavigation.onCommitted.addListener(
+  listener,                 // function
+  filter                    // optional object
+)
+browser.webNavigation.onCommitted.removeListener(listener)
+browser.webNavigation.onCommitted.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
details
+
object. Détails sur l'événement de navigation.
+
+
+
filter{{optional_inline}}
+
+

object. Un objet contenant une seule propriété url, qui est un tableau 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 UrlFilter dans le tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
tabId
+
integer. L'ID de l'onglet dans lequel la navigation est sur le point de se produire.
+
url
+
string. L'URL à laquelle le cadre donné va naviguer.
+
processId
+
integer. L'ID du processus dans lequel cet onglet est rendu.
+
frameId
+
integer. 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 iframe 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.
+
parentFrameId
+
integer. ID du parent de cette image. Réglez à -1 s'il s'agit d'un cadre de niveau supérieur.
+
timeStamp
+
number. L'heure à laquelle la navigation a été validée, en millisecondes depuis l'époque.
+
transitionType
+
{{WebExtAPIRef("webNavigation.transitionType", "transitionType")}}. La raison de la navigation : par exemple, "link" si l'utilisateur a cliqué sur un lien, ou "reload" si l'utilisateur a rechargé la page.
+
transitionQualifiers
+
Array de {{WebExtAPIRef("webNavigation.transitionQualifier", "transitionQualifier")}}. Informations supplémentaires sur la navigation : par exemple, s'il existait une redirection de serveur ou de client.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webNavigation.onCommitted")}}

+ +

Exemples

+ +

Logs les URL cibles et les informations de transition supplémentaires pour onCommitted, si le nom d'hôte de l'URL cible contient "example.com" ou commence avec "developer".

+ +
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);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index dbe90ddd25..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncompleted/index.html +++ /dev/null @@ -1,139 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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 chargement du DOM.

- -

Syntaxe

- -
browser.webNavigation.onCompleted.addListener(
-  listener,                   // function
-  filter                      // optional object
-)
-browser.webNavigation.onCompleted.removeListener(listener)
-browser.webNavigation.onCompleted.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants:

- -
-
details
-
object. Détails sur l'événement de navigation.
-
-
-
filter{{optional_inline}}
-
-

object. Un objet contenant une seule propriété url, qui est un  Array 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 UrlFilter dans le tableau.Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

-
-
- -

Objets supplémentaires

- -

détails

- -
-
tabId
-
integer. L'ID de l'onglet dans lequel la navigation s'est produite.
-
url
-
string. L'URL à laquelle le cadre donné a navigué.
-
processId
-
integer. L'ID du processus dans lequel cet onglet est rendu.
-
frameId
-
integer.  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 iframe 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.
-
timeStamp
-
number. L'heure à laquelle la page a terminé le chargement, en millisecondes depuis l'époque.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webNavigation.onCompleted")}}

- -

Exemples

- -

Consigne les URL cibles de onCompleted, si le nom d'hôte de l'URL cible contient "example.com" ou commence avec "developer".

- -
var filter = {
-  url:
-  [
-    {hostContains: "example.com"},
-    {hostPrefix: "developer"}
-  ]
-}
-
-function logOnCompleted(details) {
-  console.log("onCompleted: " + details.url);
-}
-
-browser.webNavigation.onCompleted.addListener(logOnCompleted, filter);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncompleted/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncompleted/index.md new file mode 100644 index 0000000000..dbe90ddd25 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncompleted/index.md @@ -0,0 +1,139 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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 chargement du DOM.

+ +

Syntaxe

+ +
browser.webNavigation.onCompleted.addListener(
+  listener,                   // function
+  filter                      // optional object
+)
+browser.webNavigation.onCompleted.removeListener(listener)
+browser.webNavigation.onCompleted.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants:

+ +
+
details
+
object. Détails sur l'événement de navigation.
+
+
+
filter{{optional_inline}}
+
+

object. Un objet contenant une seule propriété url, qui est un  Array 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 UrlFilter dans le tableau.Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
tabId
+
integer. L'ID de l'onglet dans lequel la navigation s'est produite.
+
url
+
string. L'URL à laquelle le cadre donné a navigué.
+
processId
+
integer. L'ID du processus dans lequel cet onglet est rendu.
+
frameId
+
integer.  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 iframe 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.
+
timeStamp
+
number. L'heure à laquelle la page a terminé le chargement, en millisecondes depuis l'époque.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webNavigation.onCompleted")}}

+ +

Exemples

+ +

Consigne les URL cibles de onCompleted, si le nom d'hôte de l'URL cible contient "example.com" ou commence avec "developer".

+ +
var filter = {
+  url:
+  [
+    {hostContains: "example.com"},
+    {hostPrefix: "developer"}
+  ]
+}
+
+function logOnCompleted(details) {
+  console.log("onCompleted: " + details.url);
+}
+
+browser.webNavigation.onCompleted.addListener(logOnCompleted, filter);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 8047b759c7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncreatednavigationtarget/index.html +++ /dev/null @@ -1,154 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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 :

- - - -

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).

- -

Si cet événement est déclenché, il sera déclenché avant  {{WebExtAPIRef("webNavigation.onBeforeNavigate")}}.

- -

Syntaxe

- -
browser.webNavigation.onCreatedNavigationTarget.addListener(
-  listener,                   // function
-  filter                      // optional object
-)
-browser.webNavigation.onCreatedNavigationTarget.removeListener(listener)
-browser.webNavigation.onCreatedNavigationTarget.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
-
- -

addListener syntax

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
details
-
object. Détails sur l'événement de navigation Voir les détails ci-dessous.
-
-
-
filter{{optional_inline}}
-
-

object. Un objet contenant une seule propriété url, qui est un Array 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 UrlFilter dans le tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions. Notez que le filtren'est pas supporté dans Firefox.

-
-
- -

Objets supplémentaires

- -

détails

- -
-
sourceFrameId
-
integer. 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 iframe 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.
-
sourceProcessId
-
integer. L'ID du processus à partir duquel la navigation est initiée.
-
sourceTabId
-
integer. 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.
-
tabId
-
integer: L'ID de l'onglet nouvellement créé.
-
timeStamp
-
number. L'heure à laquelle le navigateur a créé la cible de navigation, en millisecondes depuis l'époque.
-
url
-
string. L'URL qui sera chargée dans le nouvel onglet.
-
windowId
-
number. L'ID de la fenêtre dans laquelle le nouvel onglet est créé.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webNavigation.onCreatedNavigationTarget")}}

- -

Exemples

- -

Logs l'URL cible, l'ID de la table source et l'ID de la trame source pour onCreatedNavigationTarget, si le nom d'hôte de la cible contient "example.com" ou commence par "developer".

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncreatednavigationtarget/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncreatednavigationtarget/index.md new file mode 100644 index 0000000000..8047b759c7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/oncreatednavigationtarget/index.md @@ -0,0 +1,154 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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 :

+ + + +

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).

+ +

Si cet événement est déclenché, il sera déclenché avant  {{WebExtAPIRef("webNavigation.onBeforeNavigate")}}.

+ +

Syntaxe

+ +
browser.webNavigation.onCreatedNavigationTarget.addListener(
+  listener,                   // function
+  filter                      // optional object
+)
+browser.webNavigation.onCreatedNavigationTarget.removeListener(listener)
+browser.webNavigation.onCreatedNavigationTarget.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
+
+ +

addListener syntax

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
details
+
object. Détails sur l'événement de navigation Voir les détails ci-dessous.
+
+
+
filter{{optional_inline}}
+
+

object. Un objet contenant une seule propriété url, qui est un Array 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 UrlFilter dans le tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions. Notez que le filtren'est pas supporté dans Firefox.

+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
sourceFrameId
+
integer. 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 iframe 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.
+
sourceProcessId
+
integer. L'ID du processus à partir duquel la navigation est initiée.
+
sourceTabId
+
integer. 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.
+
tabId
+
integer: L'ID de l'onglet nouvellement créé.
+
timeStamp
+
number. L'heure à laquelle le navigateur a créé la cible de navigation, en millisecondes depuis l'époque.
+
url
+
string. L'URL qui sera chargée dans le nouvel onglet.
+
windowId
+
number. L'ID de la fenêtre dans laquelle le nouvel onglet est créé.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webNavigation.onCreatedNavigationTarget")}}

+ +

Exemples

+ +

Logs l'URL cible, l'ID de la table source et l'ID de la trame source pour onCreatedNavigationTarget, si le nom d'hôte de la cible contient "example.com" ou commence par "developer".

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index cb28eb158c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ondomcontentloaded/index.html +++ /dev/null @@ -1,140 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsque l'événement DOMContentLoaded 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.

- -

Syntaxe

- -
browser.webNavigation.onDOMContentLoaded.addListener(
-  listener,                   // function
-  filter                      // optional object
-)
-browser.webNavigation.onDOMContentLoaded.removeListener(listener)
-browser.webNavigation.onDOMContentLoaded.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
details
-
object. Détails sur l'événement de navigation
-
-
-
filter{{optional_inline}}
-
-

object. Un objet contenant une seule propriété url, qui est un tableau 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 UrlFilter dans un tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

-
-
- -

Objets supplémentaires

- -

détails

- -
-
tabId
-
integer. L'ID de l'onglet dans lequel la navigation s'est produite.
-
url
-
string. L'URL à laquelle le cadre donné a navigué.
-
processId
-
integer.  L'ID du processus dans lequel cet onglet est rendu.
-
frameId
-
integer. 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 iframe imbriqué. Une valeur positive indique que la navigation se déroule dans un iframe imbriqué. Les ID frames sont uniques pour un onglet et un processus donnés.
-
timeStamp
-
number. L'heure à laquelle DOMContentLoaded a été déclenchée, en millisecondes depuis l'époque.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webNavigation.onDOMContentLoaded")}}

- -

Exemples

- -

Logs les URL cibles pour onDOMContentLoaded,si le nom d'hôte de l'URL cible contient "example.com" ou commence par "developer".

- -
var filter = {
-  url:
-  [
-    {hostContains: "example.com"},
-    {hostPrefix: "developer"}
-  ]
-}
-
-function logOnDOMContentLoaded(details) {
-  console.log("onDOMContentLoaded: " + details.url);
-}
-
-browser.webNavigation.onDOMContentLoaded.addListener(logOnDOMContentLoaded, filter);
-
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ondomcontentloaded/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ondomcontentloaded/index.md new file mode 100644 index 0000000000..cb28eb158c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ondomcontentloaded/index.md @@ -0,0 +1,140 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque l'événement DOMContentLoaded 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.

+ +

Syntaxe

+ +
browser.webNavigation.onDOMContentLoaded.addListener(
+  listener,                   // function
+  filter                      // optional object
+)
+browser.webNavigation.onDOMContentLoaded.removeListener(listener)
+browser.webNavigation.onDOMContentLoaded.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
details
+
object. Détails sur l'événement de navigation
+
+
+
filter{{optional_inline}}
+
+

object. Un objet contenant une seule propriété url, qui est un tableau 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 UrlFilter dans un tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
tabId
+
integer. L'ID de l'onglet dans lequel la navigation s'est produite.
+
url
+
string. L'URL à laquelle le cadre donné a navigué.
+
processId
+
integer.  L'ID du processus dans lequel cet onglet est rendu.
+
frameId
+
integer. 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 iframe imbriqué. Une valeur positive indique que la navigation se déroule dans un iframe imbriqué. Les ID frames sont uniques pour un onglet et un processus donnés.
+
timeStamp
+
number. L'heure à laquelle DOMContentLoaded a été déclenchée, en millisecondes depuis l'époque.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webNavigation.onDOMContentLoaded")}}

+ +

Exemples

+ +

Logs les URL cibles pour onDOMContentLoaded,si le nom d'hôte de l'URL cible contient "example.com" ou commence par "developer".

+ +
var filter = {
+  url:
+  [
+    {hostContains: "example.com"},
+    {hostPrefix: "developer"}
+  ]
+}
+
+function logOnDOMContentLoaded(details) {
+  console.log("onDOMContentLoaded: " + details.url);
+}
+
+browser.webNavigation.onDOMContentLoaded.addListener(logOnDOMContentLoaded, filter);
+
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2fde94a888..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onerroroccurred/index.html +++ /dev/null @@ -1,142 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Syntaxe

- -
browser.webNavigation.onErrorOccurred.addListener(
-  listener,                   // function
-  filter                      // optional object
-)
-browser.webNavigation.onErrorOccurred.removeListener(listener)
-browser.webNavigation.onErrorOccurred.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants:

- -
-
details
-
object. Détails sur l'événement de navigation.
-
-
-
filter{{optional_inline}}
-
-

object. Un objet contenant une seule propriété url, qui est un tableau 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 UrlFilter dans un tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

-
-
- -

Objets supplémentaires

- -

details

- -
-
tabId
-
integer. L'ID de l'onglet dans lequel la navigation se passait.
-
url
-
string. L'URL à laquelle le cadre donné naviguait.
-
processId
-
integer. L'ID du processus dans lequel cet onglet est rendu.
-
frameId
-
integer. 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 iframe 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.
-
timeStamp
-
number. L'heure à laquelle l'erreur s'est produite, en milliseconde depuis l'époque.
-
error
-
string. 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.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webNavigation.onErrorOccurred")}}

- -

Exemples

- -

Logs les URL cibles de onErrorOccurred, si le nom d'hôte de l'URL cible contient  "example.com" ou commence par "developer".

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onerroroccurred/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onerroroccurred/index.md new file mode 100644 index 0000000000..2fde94a888 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onerroroccurred/index.md @@ -0,0 +1,142 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Syntaxe

+ +
browser.webNavigation.onErrorOccurred.addListener(
+  listener,                   // function
+  filter                      // optional object
+)
+browser.webNavigation.onErrorOccurred.removeListener(listener)
+browser.webNavigation.onErrorOccurred.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants:

+ +
+
details
+
object. Détails sur l'événement de navigation.
+
+
+
filter{{optional_inline}}
+
+

object. Un objet contenant une seule propriété url, qui est un tableau 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 UrlFilter dans un tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

+
+
+ +

Objets supplémentaires

+ +

details

+ +
+
tabId
+
integer. L'ID de l'onglet dans lequel la navigation se passait.
+
url
+
string. L'URL à laquelle le cadre donné naviguait.
+
processId
+
integer. L'ID du processus dans lequel cet onglet est rendu.
+
frameId
+
integer. 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 iframe 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.
+
timeStamp
+
number. L'heure à laquelle l'erreur s'est produite, en milliseconde depuis l'époque.
+
error
+
string. 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.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webNavigation.onErrorOccurred")}}

+ +

Exemples

+ +

Logs les URL cibles de onErrorOccurred, si le nom d'hôte de l'URL cible contient  "example.com" ou commence par "developer".

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index ee2c8062e7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onhistorystateupdated/index.html +++ /dev/null @@ -1,147 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsque la page a utilisé l'API history 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.

- -

Syntaxe

- -
browser.webNavigation.onHistoryStateUpdated.addListener(
-  listener,                   // function
-  filter                      // optional object
-)
-browser.webNavigation.onHistoryStateUpdated.removeListener(listener)
-browser.webNavigation.onHistoryStateUpdated.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
-
- -

syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
details
-
object. Détails sur l'événement de navigation.
-
-
-
filter{{optional_inline}}
-
-

object. Un objet contenant une seule propriété url, qui est un tableau 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 UrlFilter dans un tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

-
-
- -

Objets supplémentaires

- -

détails

- -
-
tabId
-
integer. L'ID de l'onglet dans lequel la navigation est sur le point de se produire.
-
url
-
string. L'URL à laquelle le cadre donné va naviguer.
-
processId
-
integer. L'ID du processus dans lequel cet onglet est rendu.
-
frameId
-
integer. 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 iframe imbriqué. Une valeur positive indique que la navigation se déroule dans un  iframe imbriqué. Les ID de frames sont uniques pour un onglet et un processus donnés.
-
timeStamp
-
number. L'heure à laquelle la navigation a été validée, en millisecondes depuis l'origine.
-
transitionType
-
{{WebExtAPIRef("webNavigation.transitionType", "transitionType")}}.La raison de la navigation: par exemple, "link" si l'utilisateur a cliqué sur un lien.
-
transitionQualifiers
-
Array de {{WebExtAPIRef("webNavigation.transitionQualifier", "transitionQualifier")}}. Informations supplémentaires sur la navigation : par exemple, s'il existait une redirection de serveur ou de client.
-
- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.webNavigation.onHistoryStateUpdated")}}

- -

Examples

- -

Logs les URL cibles et les informations de transition supplémentaires pour  onHistoryStateUpdated, si le nom d'hôte de l'URL cible contient "example.com" ou commence par "developer".

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onhistorystateupdated/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onhistorystateupdated/index.md new file mode 100644 index 0000000000..ee2c8062e7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onhistorystateupdated/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque la page a utilisé l'API history 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.

+ +

Syntaxe

+ +
browser.webNavigation.onHistoryStateUpdated.addListener(
+  listener,                   // function
+  filter                      // optional object
+)
+browser.webNavigation.onHistoryStateUpdated.removeListener(listener)
+browser.webNavigation.onHistoryStateUpdated.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
+
+ +

syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
details
+
object. Détails sur l'événement de navigation.
+
+
+
filter{{optional_inline}}
+
+

object. Un objet contenant une seule propriété url, qui est un tableau 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 UrlFilter dans un tableau. Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
tabId
+
integer. L'ID de l'onglet dans lequel la navigation est sur le point de se produire.
+
url
+
string. L'URL à laquelle le cadre donné va naviguer.
+
processId
+
integer. L'ID du processus dans lequel cet onglet est rendu.
+
frameId
+
integer. 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 iframe imbriqué. Une valeur positive indique que la navigation se déroule dans un  iframe imbriqué. Les ID de frames sont uniques pour un onglet et un processus donnés.
+
timeStamp
+
number. L'heure à laquelle la navigation a été validée, en millisecondes depuis l'origine.
+
transitionType
+
{{WebExtAPIRef("webNavigation.transitionType", "transitionType")}}.La raison de la navigation: par exemple, "link" si l'utilisateur a cliqué sur un lien.
+
transitionQualifiers
+
Array de {{WebExtAPIRef("webNavigation.transitionQualifier", "transitionQualifier")}}. Informations supplémentaires sur la navigation : par exemple, s'il existait une redirection de serveur ou de client.
+
+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.webNavigation.onHistoryStateUpdated")}}

+ +

Examples

+ +

Logs les URL cibles et les informations de transition supplémentaires pour  onHistoryStateUpdated, si le nom d'hôte de l'URL cible contient "example.com" ou commence par "developer".

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index d483ee6a67..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onreferencefragmentupdated/index.html +++ /dev/null @@ -1,149 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Lancé si identificateur dee fragment 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.
- -
- -

Syntaxe

- -
browser.webNavigation.onReferenceFragmentUpdated.addListener(
-  listener,                   // function
-  filter                      // optional object
-)
-browser.webNavigation.onReferenceFragmentUpdated.removeListener(listener)
-browser.webNavigation.onReferenceFragmentUpdated.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants:

- -
-
details
-
object. Détails sur l'événement de navigation.
-
-
-
filter{{optional_inline}}
-
-

object. Un objet contenant une seule propriété url, qui est un Array 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 UrlFilter dans le tableau.Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

-
-
- -

Objets supplémentaires

- -

détails

- -
-
tabId
-
integer. L'ID de l'onglet dans lequel la navigation est sur le point de se produire.
-
url
-
string. L'URL à laquelle le cadre donné va naviguer.
-
processId
-
integer. L'ID du processus dans lequel cet onglet est rendu.
-
frameId
-
integer.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 iframe 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.
-
timeStamp
-
number. L'heure à laquelle la navigation a été validée, en milliseconde depuis l'époque.
-
transitionType
-
{{WebExtAPIRef("webNavigation.transitionType", "transitionType")}}. La raison de la navigation: par exemple, "link" si l'utilisateur a cliqué sur un lien.
-
transitionQualifiers
-
Array de {{WebExtAPIRef("webNavigation.transitionQualifier", "transitionQualifier")}}. Informations supplémentaires sur la navigation : par exemple, s'il existait une redirection de serveur ou de client.
-
- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.webNavigation.onReferenceFragmentUpdated")}}

- -

Exemples

- -

Consigne les URL cibles et les informations de transition supplémentaires pour  onReferenceFragmentUpdated, si le nom d'hôte de l'URL cible contient "example.com" ou commence par "developer".

- -
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);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onreferencefragmentupdated/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onreferencefragmentupdated/index.md new file mode 100644 index 0000000000..d483ee6a67 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/onreferencefragmentupdated/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +
Lancé si identificateur dee fragment 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.
+ +
+ +

Syntaxe

+ +
browser.webNavigation.onReferenceFragmentUpdated.addListener(
+  listener,                   // function
+  filter                      // optional object
+)
+browser.webNavigation.onReferenceFragmentUpdated.removeListener(listener)
+browser.webNavigation.onReferenceFragmentUpdated.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants:

+ +
+
details
+
object. Détails sur l'événement de navigation.
+
+
+
filter{{optional_inline}}
+
+

object. Un objet contenant une seule propriété url, qui est un Array 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 UrlFilter dans le tableau.Si vous omettez ce paramètre, l'événement se déclenchera pour toutes les transitions.

+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
tabId
+
integer. L'ID de l'onglet dans lequel la navigation est sur le point de se produire.
+
url
+
string. L'URL à laquelle le cadre donné va naviguer.
+
processId
+
integer. L'ID du processus dans lequel cet onglet est rendu.
+
frameId
+
integer.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 iframe 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.
+
timeStamp
+
number. L'heure à laquelle la navigation a été validée, en milliseconde depuis l'époque.
+
transitionType
+
{{WebExtAPIRef("webNavigation.transitionType", "transitionType")}}. La raison de la navigation: par exemple, "link" si l'utilisateur a cliqué sur un lien.
+
transitionQualifiers
+
Array de {{WebExtAPIRef("webNavigation.transitionQualifier", "transitionQualifier")}}. Informations supplémentaires sur la navigation : par exemple, s'il existait une redirection de serveur ou de client.
+
+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.webNavigation.onReferenceFragmentUpdated")}}

+ +

Exemples

+ +

Consigne les URL cibles et les informations de transition supplémentaires pour  onReferenceFragmentUpdated, si le nom d'hôte de l'URL cible contient "example.com" ou commence par "developer".

+ +
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);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 8f6e159331..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ontabreplaced/index.html +++ /dev/null @@ -1,126 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsque le contenu de l'onglet est remplacé par un onglet différent (généralement précédemment pré-rendu).

- -

Syntaxe

- -
browser.webNavigation.onTabReplaced.addListener(
-  listener,                   // function
-  filter                      // optional object
-);
-browser.webNavigation.onTabReplaced.removeListener(listener)
-browser.webNavigation.onTabReplaced.hasListener(listener)
-
- - - -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
-
- - - -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

- -
-
details
-
object.
-
-
-
- -

Objets supplémentaires

- -

détails

- -
-
replacedTabId
-
integer. L'ID de l'onglet qui a été remplacé.
-
tabId
-
integer. L'ID de l'onglet qui a remplacé l'ancien onglet.
-
timeStamp
-
number. Le moment où le remplacement s'est produit, en millisecondes depuis l'époque.
-
- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.api.webNavigation.onTabReplaced")}}

- -

Exemples

- -
function logOnTabReplaced(details) {
-  console.log("onTabReplaced: " + details);
-}
-
-browser.webNavigation.onTabReplaced.addListener(logOnTabReplaced);
- -

{{WebExtExamples}}

- -

Note :

- -

This API is based on Chromium's chrome.webNavigation API. This documentation is derived from web_navigation.json in the Chromium code.

- -

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ontabreplaced/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ontabreplaced/index.md new file mode 100644 index 0000000000..8f6e159331 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/ontabreplaced/index.md @@ -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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque le contenu de l'onglet est remplacé par un onglet différent (généralement précédemment pré-rendu).

+ +

Syntaxe

+ +
browser.webNavigation.onTabReplaced.addListener(
+  listener,                   // function
+  filter                      // optional object
+);
+browser.webNavigation.onTabReplaced.removeListener(listener)
+browser.webNavigation.onTabReplaced.hasListener(listener)
+
+ + + +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré pour cet événement. Renvoie true s'il est écouté, sinon false.
+
+ + + +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produit. La fonction recevra les arguments suivants :

+ +
+
details
+
object.
+
+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
replacedTabId
+
integer. L'ID de l'onglet qui a été remplacé.
+
tabId
+
integer. L'ID de l'onglet qui a remplacé l'ancien onglet.
+
timeStamp
+
number. Le moment où le remplacement s'est produit, en millisecondes depuis l'époque.
+
+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.api.webNavigation.onTabReplaced")}}

+ +

Exemples

+ +
function logOnTabReplaced(details) {
+  console.log("onTabReplaced: " + details);
+}
+
+browser.webNavigation.onTabReplaced.addListener(logOnTabReplaced);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

This API is based on Chromium's chrome.webNavigation API. This documentation is derived from web_navigation.json in the Chromium code.

+ +

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.

+
+ + 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 deleted file mode 100644 index c977cb27a3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitionqualifier/index.html +++ /dev/null @@ -1,83 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Informations supplémentaires sur une transition.
- -
- -
Notez que beaucoup de valeurs ne sont actuellement pas supportées dans Firefox : voir la table de compatibilité pour plus de détails.
- -
- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- -
-
"client_redirect"
-
Redirection(s) provoquée par le JavaScript en cours d'exécution dans la page ou un pragma "actualiser" dans la balise meta de la page.
-
"server_redirect"
-
Redirection(s) provoquée par un code status HTTP 3XX envoyé par le serveur.
-
"forward_back"
-
L'utilisateur a utilisé le bouton avant ou arrière pour déclencher la navigation..
-
"from_address_bar"
-
L'utilisateur a déclenché la navigation depuis la barre d'adresse.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webNavigation.TransitionQualifier")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitionqualifier/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitionqualifier/index.md new file mode 100644 index 0000000000..c977cb27a3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitionqualifier/index.md @@ -0,0 +1,83 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Informations supplémentaires sur une transition.
+ +
+ +
Notez que beaucoup de valeurs ne sont actuellement pas supportées dans Firefox : voir la table de compatibilité pour plus de détails.
+ +
+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ +
+
"client_redirect"
+
Redirection(s) provoquée par le JavaScript en cours d'exécution dans la page ou un pragma "actualiser" dans la balise meta de la page.
+
"server_redirect"
+
Redirection(s) provoquée par un code status HTTP 3XX envoyé par le serveur.
+
"forward_back"
+
L'utilisateur a utilisé le bouton avant ou arrière pour déclencher la navigation..
+
"from_address_bar"
+
L'utilisateur a déclenché la navigation depuis la barre d'adresse.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webNavigation.TransitionQualifier")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e0ae49815a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitiontype/index.html +++ /dev/null @@ -1,93 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Cause de la navigation: par exemple, l'utilisateur a cliqué sur un lien, ou a tapé une adresse, ou a cliqué sur un signet.

- -

Notez que beaucoup de valeurs ne sont actuellement pas supportées dans Firefox : voir la table de compatibilité du navigateur pour plus de détails.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- -
-
"link"
-
L'utilisateur a cliqué sur un lien dans une autre page.
-
"typed"
-
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".
-
"auto_bookmark"
-
L'utilisateur a cliqué sur un signet ou un élément dans l'historique du navigateur.
-
"auto_subframe"
-
Les iframes imbriqués qui sont automatiquement chargés par leur parent.
-
"manual_subframe"
-
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.
-
"generated"
-
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.
-
"start_page"
-
La page a été passée à la ligne de commande ou est la page de démarrage.
-
"form_submit"
-
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.
-
"reload"
-
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.
-
"keyword"
-
L'URL a été générée à l'aide d'une rechercher par mot configurée par l'utilisateur.
-
"keyword_generated"
-
Correspond à une visite générée pour un mot clé.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webNavigation.TransitionType")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitiontype/index.md b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitiontype/index.md new file mode 100644 index 0000000000..e0ae49815a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webnavigation/transitiontype/index.md @@ -0,0 +1,93 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Cause de la navigation: par exemple, l'utilisateur a cliqué sur un lien, ou a tapé une adresse, ou a cliqué sur un signet.

+ +

Notez que beaucoup de valeurs ne sont actuellement pas supportées dans Firefox : voir la table de compatibilité du navigateur pour plus de détails.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ +
+
"link"
+
L'utilisateur a cliqué sur un lien dans une autre page.
+
"typed"
+
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".
+
"auto_bookmark"
+
L'utilisateur a cliqué sur un signet ou un élément dans l'historique du navigateur.
+
"auto_subframe"
+
Les iframes imbriqués qui sont automatiquement chargés par leur parent.
+
"manual_subframe"
+
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.
+
"generated"
+
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.
+
"start_page"
+
La page a été passée à la ligne de commande ou est la page de démarrage.
+
"form_submit"
+
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.
+
"reload"
+
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.
+
"keyword"
+
L'URL a été générée à l'aide d'une rechercher par mot configurée par l'utilisateur.
+
"keyword_generated"
+
Correspond à une visite générée pour un mot clé.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webNavigation.TransitionType")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webNavigation. Cette documentation est dérivée de web_navigation.json dans le code de Chromium code.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 3308f35fc6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/blockingresponse/index.html +++ /dev/null @@ -1,94 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet de ce type est renvoyé par les auditeurs d'événements qui ont défini le "blocking" dans leur argument extraInfoSpec.

- -

En définissant des propriétés particulières dans BlockingResponse, l'auditeur peut modifier les requêtes réseau.

- -

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.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
authCredentials{{optional_inline}}
-

object. 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é authCredentials est un objet avec les propriétés suivantes :

-
-
username
-
string. Nom d'utilisateur à fournir.
-
password
-
string. Mot de passe à fournir.
-
-
-
cancel{{optional_inline}}
-
boolean. Si true, 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")}}.
-
redirectUrl{{optional_inline}}
-

string. 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")}}.

-

Les redirections vers des schémas non-HTTP tels que data : sont autorisées, mais elles ne sont pas prises en charge actuellement ({{bug("707624")}}). 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 onHeadersReceived, auquel cas la redirection utilise la méthode GET.

-

Si une extension veut rediriger une URL publique (par exemple HTTPS) vers une page d'extension, le fichier manifest.json de l'extension doit contenir une clé web_accessible_resources qui liste l'URL de la page d'extension.

-
requestHeaders{{optional_inline}}
-
-

{{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")}} .

-
-
responseHeaders{{optional_inline}}
-
{{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, Content-Security-Policy), une seule des modifications sera réussie.
-
upgradeToSecure{{optional_inline}}
-
boolean. Si la valeur true 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 redirectUrl dans onBeforeRequest, alors upgradeToSecure sera ignoré pour cette requête. Vous ne pouvez définir cette propriété que dans {{WebExtAPIRef("webRequest.onBeforeRequest", "onBeforeRequest")}}.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.BlockingResponse")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/blockingresponse/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/blockingresponse/index.md new file mode 100644 index 0000000000..3308f35fc6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/blockingresponse/index.md @@ -0,0 +1,94 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet de ce type est renvoyé par les auditeurs d'événements qui ont défini le "blocking" dans leur argument extraInfoSpec.

+ +

En définissant des propriétés particulières dans BlockingResponse, l'auditeur peut modifier les requêtes réseau.

+ +

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.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
authCredentials{{optional_inline}}
+

object. 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é authCredentials est un objet avec les propriétés suivantes :

+
+
username
+
string. Nom d'utilisateur à fournir.
+
password
+
string. Mot de passe à fournir.
+
+
+
cancel{{optional_inline}}
+
boolean. Si true, 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")}}.
+
redirectUrl{{optional_inline}}
+

string. 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")}}.

+

Les redirections vers des schémas non-HTTP tels que data : sont autorisées, mais elles ne sont pas prises en charge actuellement ({{bug("707624")}}). 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 onHeadersReceived, auquel cas la redirection utilise la méthode GET.

+

Si une extension veut rediriger une URL publique (par exemple HTTPS) vers une page d'extension, le fichier manifest.json de l'extension doit contenir une clé web_accessible_resources qui liste l'URL de la page d'extension.

+
requestHeaders{{optional_inline}}
+
+

{{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")}} .

+
+
responseHeaders{{optional_inline}}
+
{{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, Content-Security-Policy), une seule des modifications sera réussie.
+
upgradeToSecure{{optional_inline}}
+
boolean. Si la valeur true 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 redirectUrl dans onBeforeRequest, alors upgradeToSecure sera ignoré pour cette requête. Vous ne pouvez définir cette propriété que dans {{WebExtAPIRef("webRequest.onBeforeRequest", "onBeforeRequest")}}.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.BlockingResponse")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+
+ + 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 deleted file mode 100644 index dd93db7d77..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/certificateinfo/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet décrivant un seul certificat X.509.

- -

L'objet {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo")}} retourné par l'objet {{WebExtAPIRef("webRequest.getSecurityInfo()")}} API inclut une propriété de  certificats qui est un tableau de ces objets.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
fingerprint
-

Object. Un objet avec les propriétés suivantes :

-
-
sha1
-
String. SHA-1 hash de l'encodage DER du certificat.
-
sha256
-
String. SHA-256 hash de l'encodage DER du certificat.
-
-
-
isBuiltInRoot
-
-

Boolean. true si le certificat est l'une des racines de confiance installées dans le navigateur, sinon false.

-
-
issuer
-

String. 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".

-

Par exemple: "CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=US".

-
rawDER
-
Array de Number. Si webRequest.getSecurityInfo() a été appelé avec l'option rawDER présent et mis à true, ceci contiendra l'encodage DER du certificat.
-
serialNumber
-
String. Le numéro de série du certificat.
-
subject
-

String. 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".

-

Par exemple: "CN=*.cdn.mozilla.net,O=Mozilla Corporation,L=Mountain View,ST=California,C=US".

-
subjectPublicKeyInfoDigest
-
-

Object. Un objet contenant les propriétés suivantes :

- -
-
sha256
-
String. Base64 encodé SHA-256 hash de l'information de clé publique codée DER.
-
-
-
validity
-
-

Object. Période de validité du certificat. Un objet contenant les propriétés suivantes :

- -
-
start
-
Number. Le début de la période de validité du certificat, en millisecondes depuis l'époque.
-
end
-
Number. La fin de la période de validité du certificat, en millisecondes depuis l'époque.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.CertificateInfo", 10)}}

- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/certificateinfo/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/certificateinfo/index.md new file mode 100644 index 0000000000..dd93db7d77 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/certificateinfo/index.md @@ -0,0 +1,75 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet décrivant un seul certificat X.509.

+ +

L'objet {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo")}} retourné par l'objet {{WebExtAPIRef("webRequest.getSecurityInfo()")}} API inclut une propriété de  certificats qui est un tableau de ces objets.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
fingerprint
+

Object. Un objet avec les propriétés suivantes :

+
+
sha1
+
String. SHA-1 hash de l'encodage DER du certificat.
+
sha256
+
String. SHA-256 hash de l'encodage DER du certificat.
+
+
+
isBuiltInRoot
+
+

Boolean. true si le certificat est l'une des racines de confiance installées dans le navigateur, sinon false.

+
+
issuer
+

String. 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".

+

Par exemple: "CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=US".

+
rawDER
+
Array de Number. Si webRequest.getSecurityInfo() a été appelé avec l'option rawDER présent et mis à true, ceci contiendra l'encodage DER du certificat.
+
serialNumber
+
String. Le numéro de série du certificat.
+
subject
+

String. 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".

+

Par exemple: "CN=*.cdn.mozilla.net,O=Mozilla Corporation,L=Mountain View,ST=California,C=US".

+
subjectPublicKeyInfoDigest
+
+

Object. Un objet contenant les propriétés suivantes :

+ +
+
sha256
+
String. Base64 encodé SHA-256 hash de l'information de clé publique codée DER.
+
+
+
validity
+
+

Object. Période de validité du certificat. Un objet contenant les propriétés suivantes :

+ +
+
start
+
Number. Le début de la période de validité du certificat, en millisecondes depuis l'époque.
+
end
+
Number. La fin de la période de validité du certificat, en millisecondes depuis l'époque.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.CertificateInfo", 10)}}

+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 07ded4756a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/filterresponsedata/index.html +++ /dev/null @@ -1,72 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Utilisez cette fonction pour créer un objet {{WebExtAPIRef("webRequest.StreamFilter")}} pour une requête particulière.
- 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 webRequest.

- -

Pour utiliser cette API, vous devez avoir la permission de l'API "webRequestBlocking", ainsi que les permissions normales nécessaires à l'auditeur de l'événement (la permission "webRequest" et la permission hôte pour l'hôte).

- -

Syntaxe

- -
var filter = browser.webRequest.filterResponseData(
-  requestId       // string
-)
-
- -

Paramètres

- -
-
requestId
-
string. ID de la requête à filtrer. Vous pouvez l'obtenir à partir de l'objet de details qui est passé dans n'importe quel écouteur d'événement webRequest.
-
- -

Valeur retournée

- -

Un objet {{WebExtAPIRef("webRequest.StreamFilter")}} que vous pouvez utiliser pour surveiller et modifier la réponse.

- -

Exemples

- -

Cet exemple, tiré de l'extension http-response, crée un filtre dans  {{WebExtAPIRef("webRequest.onBeforeRequest")}} et l'utilise pour modifier la réponse :

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData(details.requestId);
-  let decoder = new TextDecoder("utf-8");
-  let encoder = new TextEncoder();
-
-  filter.ondata = event => {
-    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"]
-);
-
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.filterResponseData", 10)}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/filterresponsedata/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/filterresponsedata/index.md new file mode 100644 index 0000000000..07ded4756a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/filterresponsedata/index.md @@ -0,0 +1,72 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Utilisez cette fonction pour créer un objet {{WebExtAPIRef("webRequest.StreamFilter")}} pour une requête particulière.
+ 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 webRequest.

+ +

Pour utiliser cette API, vous devez avoir la permission de l'API "webRequestBlocking", ainsi que les permissions normales nécessaires à l'auditeur de l'événement (la permission "webRequest" et la permission hôte pour l'hôte).

+ +

Syntaxe

+ +
var filter = browser.webRequest.filterResponseData(
+  requestId       // string
+)
+
+ +

Paramètres

+ +
+
requestId
+
string. ID de la requête à filtrer. Vous pouvez l'obtenir à partir de l'objet de details qui est passé dans n'importe quel écouteur d'événement webRequest.
+
+ +

Valeur retournée

+ +

Un objet {{WebExtAPIRef("webRequest.StreamFilter")}} que vous pouvez utiliser pour surveiller et modifier la réponse.

+ +

Exemples

+ +

Cet exemple, tiré de l'extension http-response, crée un filtre dans  {{WebExtAPIRef("webRequest.onBeforeRequest")}} et l'utilise pour modifier la réponse :

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData(details.requestId);
+  let decoder = new TextDecoder("utf-8");
+  let encoder = new TextEncoder();
+
+  filter.ondata = event => {
+    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"]
+);
+
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.filterResponseData", 10)}}

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 deleted file mode 100644 index 5ab5f213f6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/getsecurityinfo/index.html +++ /dev/null @@ -1,103 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Utilisez cette fonction pour obtenir des informations détaillées sur la connexion TLS associée à une demande particulière..

- -

Vous passez à cette fonction la requestId pour la requête en question, et quelques paramètres supplémentaires optionnels. Il retourne une Promise qui sera résolue à un objet {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo")}}.

- -

Vous ne pouvez appeler cette fonction qu'à partir de l'écouteur  {{WebExtAPIRef("webRequest.onHeadersReceived")}}. La requestId peut être trouvée dans l'objet details object qui est passé dans l'écouteur.

- -

Vous devez également passer l'option "blocking" à  webRequest.onHeadersReceived.addListener(). Ainsi, pour utiliser cette API, vous devez avoir la permission de l'API "webRequestBlocking", ainsi que les permissions normales nécessaires pour utiliser les écouteurs webRequest  (la permission "webRequest" et la permission hôte pour le hôte).

- -

Syntaxe

- -
var gettingInfo = browser.webRequest.getSecurityInfo(
-  requestId,       // string
-  options          // object
-)
-
- -

Paramètres

- -
-
requestId
-
string. ID de la requête pour laquelle vous souhaitez obtenir des informations de sécurité. Vous pouvez l'obtenir à partir de l'objet de details qui est passé dans n'importe quel écouteur d'événement webRequest.
-
options
-

object. Un objet qui peut contenir l'une des propriétés suivantes, toutes facultatives :

-
-
certificateChain {{optional_inline}}
-
boolean. Si true, l'objet {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo")}} retourné inclura toute la chaîne de certificats jusqu'à et y compris la racine de confiance. Si false
- il n'inclura que le certificat du serveur. La valeur par défaut est false.
-
rawDER {{optional_inline}}
-
boolean. Si true, chaque propriété {{WebExtAPIRef("webRequest.CertificateInfo", "CertificateInfo")}} dans le {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo.certificates")}} contiendra une propriété rawDER. Il contient le DER-encoded ASN.1 qui comprend les données du certificat.
-
-
-
- -

Valeur retournée

- -

Une Promise qui se résout en un objet {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo")}}.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.getSecurityInfo", 10)}}

- -

Exemples

- -

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 :

- -
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"]
-);
- -

Cet exemple écoute toutes les requêtes HTTPS à "mozilla.org" ou ses sous-domaines, et enregistre le nom dans le certificat racine de confiance :

- -
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"]
-);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/getsecurityinfo/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/getsecurityinfo/index.md new file mode 100644 index 0000000000..5ab5f213f6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/getsecurityinfo/index.md @@ -0,0 +1,103 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Utilisez cette fonction pour obtenir des informations détaillées sur la connexion TLS associée à une demande particulière..

+ +

Vous passez à cette fonction la requestId pour la requête en question, et quelques paramètres supplémentaires optionnels. Il retourne une Promise qui sera résolue à un objet {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo")}}.

+ +

Vous ne pouvez appeler cette fonction qu'à partir de l'écouteur  {{WebExtAPIRef("webRequest.onHeadersReceived")}}. La requestId peut être trouvée dans l'objet details object qui est passé dans l'écouteur.

+ +

Vous devez également passer l'option "blocking" à  webRequest.onHeadersReceived.addListener(). Ainsi, pour utiliser cette API, vous devez avoir la permission de l'API "webRequestBlocking", ainsi que les permissions normales nécessaires pour utiliser les écouteurs webRequest  (la permission "webRequest" et la permission hôte pour le hôte).

+ +

Syntaxe

+ +
var gettingInfo = browser.webRequest.getSecurityInfo(
+  requestId,       // string
+  options          // object
+)
+
+ +

Paramètres

+ +
+
requestId
+
string. ID de la requête pour laquelle vous souhaitez obtenir des informations de sécurité. Vous pouvez l'obtenir à partir de l'objet de details qui est passé dans n'importe quel écouteur d'événement webRequest.
+
options
+

object. Un objet qui peut contenir l'une des propriétés suivantes, toutes facultatives :

+
+
certificateChain {{optional_inline}}
+
boolean. Si true, l'objet {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo")}} retourné inclura toute la chaîne de certificats jusqu'à et y compris la racine de confiance. Si false
+ il n'inclura que le certificat du serveur. La valeur par défaut est false.
+
rawDER {{optional_inline}}
+
boolean. Si true, chaque propriété {{WebExtAPIRef("webRequest.CertificateInfo", "CertificateInfo")}} dans le {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo.certificates")}} contiendra une propriété rawDER. Il contient le DER-encoded ASN.1 qui comprend les données du certificat.
+
+
+
+ +

Valeur retournée

+ +

Une Promise qui se résout en un objet {{WebExtAPIRef("webRequest.SecurityInfo", "SecurityInfo")}}.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.getSecurityInfo", 10)}}

+ +

Exemples

+ +

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 :

+ +
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"]
+);
+ +

Cet exemple écoute toutes les requêtes HTTPS à "mozilla.org" ou ses sous-domaines, et enregistre le nom dans le certificat racine de confiance :

+ +
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"]
+);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index c1848d3c92..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/handlerbehaviorchanged/index.html +++ /dev/null @@ -1,113 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
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.
- -
- -
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.
- -

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 :

- - - -

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.

- -

La fonction handlerBehaviorChanged() 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.

- -

Parce que handlerBehaviorChanged() 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.

- -

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.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var flushingCache = browser.webRequest.handlerBehaviorChanged()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

Une Promise qui sera remplie sans arguments, lorsque l'opération sera terminée.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.handlerBehaviorChanged")}}

- -

Exemples

- -

Dans le snippet suivant, nous vidons le cache en mémoire via un appel à handlerBehaviorChanged(),  et signalons cette action en enregistrant un message approprié à la console.

- -
function onFlushed() {
-  console.log(`In-memory cache flushed`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-var flushingCache = browser.webRequest.handlerBehaviorChanged();
-flushingCache.then(onFlushed, onError);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/handlerbehaviorchanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/handlerbehaviorchanged/index.md new file mode 100644 index 0000000000..c1848d3c92 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/handlerbehaviorchanged/index.md @@ -0,0 +1,113 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
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.
+ +
+ +
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.
+ +

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 :

+ + + +

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.

+ +

La fonction handlerBehaviorChanged() 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.

+ +

Parce que handlerBehaviorChanged() 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.

+ +

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.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var flushingCache = browser.webRequest.handlerBehaviorChanged()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

Une Promise qui sera remplie sans arguments, lorsque l'opération sera terminée.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.handlerBehaviorChanged")}}

+ +

Exemples

+ +

Dans le snippet suivant, nous vidons le cache en mémoire via un appel à handlerBehaviorChanged(),  et signalons cette action en enregistrant un message approprié à la console.

+ +
function onFlushed() {
+  console.log(`In-memory cache flushed`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+var flushingCache = browser.webRequest.handlerBehaviorChanged();
+flushingCache.then(onFlushed, onError);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 675f9ce1cb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/httpheaders/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un tableau d'en-tetes HTTP. Chaque en-tête est représenté comme un objet avec deux propriétés : name et valeur ou binaryValue.

- -

Type

- -

Un tableau d'objets. Chaque objet a les propriétés suivantes :

- -
-
name
-
string. Nom de l'en-tête HTTP.
-
value{{optional_inline}}
-
string. 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.
-
binaryValue{{optional_inline}}
-
array d'integer. 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 valeur doit être présente.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.HttpHeaders")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/httpheaders/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/httpheaders/index.md new file mode 100644 index 0000000000..675f9ce1cb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/httpheaders/index.md @@ -0,0 +1,75 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un tableau d'en-tetes HTTP. Chaque en-tête est représenté comme un objet avec deux propriétés : name et valeur ou binaryValue.

+ +

Type

+ +

Un tableau d'objets. Chaque objet a les propriétés suivantes :

+ +
+
name
+
string. Nom de l'en-tête HTTP.
+
value{{optional_inline}}
+
string. 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.
+
binaryValue{{optional_inline}}
+
array d'integer. 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 valeur doit être présente.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.HttpHeaders")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/index.html b/files/fr/mozilla/add-ons/webextensions/api/webrequest/index.html deleted file mode 100644 index f5c4b587ca..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/index.html +++ /dev/null @@ -1,200 +0,0 @@ ---- -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 ---- -

{{AddonSidebar}}

- -

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.

- -

Chaque événement est déclenché à un stade particulier de la demande. La séquence typique des événements est la suivante :

- -

- -

{{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 HSTS, l'événement onBeforeRedirect sera déclenché immédiatement après onBeforeRequest.

- -

Tous les évènements (excepté onErrorOccurred) peuvent prendre trois arguments pour addListener():

- - - -

Une fonction d'écoute reçoit un objet details 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.

- -

Pour utiliser l'API webRequest pour un hôte donné, une extension doit avoir la permission API  "webRequest" et la permission hôte pour cet hôte. Pour utiliser la fonction "blocking", l'extension doit également avoir la permission API "webRequestBlocking".

- -

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.

- -

Modifier une requête

- -

Sur certains de ces événements, vous pouvez modifier la demande. Plus précisément, vous pouvez  :

- - - -

Pour ce faire, vous devez transmettre une option avec la valeur "blocking" dans l'argument extraInfoSpec à la fonction addListener() 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.

- -
-

Attention : Les protocoles non-HTTP(S) ne supportent pas actuellement la fonctionnalité de "blockage", donc la modification de ces requêtes n'est pas disponible pour le moment. Voir {{bug(1475832)}} pour plus de détails.

-
- -

Accéder aux informations de sécurité

- -

Dans l'écouteur {{WebExtAPIRef("webRequest.onHeadersReceived", "onHeadersReceived")}} vous pouvez accéder aux propriétés TLS d'une requête en appelant {{WebExtAPIRef("webRequest.getSecurityInfo()", "getSecurityInfo()")}}. Pour ce faire, vous devez également transmettre le "blockage" dans l'argument extraInfoSpec à la fonction addListener() de l'évènement.

- -

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.

- -

Modifier les réponses

- -

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.

- -

Pour ce faire, vous devez disposer de la permission de l'API "webRequestBlocking" ainsi que la permission de l'API "webRequest" et la permission de l'hôte pour l'hôte concerné.

- -

Types

- -
-
{{WebExtAPIRef("webRequest.BlockingResponse")}}
-
-

Un objet de ce type est renvoyé par les auditeurs d'événements qui ont défini le "blockage" dans leur argument extraInfoSpec. En définissant des propriétés particulières dans BlockingResponse, the listener can modify network requests.

-
-
{{WebExtAPIRef("webRequest.CertificateInfo")}}
-
Un objet décrivant un seul certificat X.509.
-
{{WebExtAPIRef("webRequest.HttpHeaders")}}
-
Un tableau d'en-têtes HTTP. Chaque en-tête est représenté comme un objet avec deux propriétés : name et valeur ou binaryValue.
-
{{WebExtAPIRef("webRequest.RequestFilter")}}
-
Un objet décrivant les filtres à appliquer aux événements webRequest.
-
{{WebExtAPIRef("webRequest.ResourceType")}}
-
Représente un type particulier de ressources récupérées dans une requête Web.
-
{{WebExtAPIRef("webRequest.SecurityInfo")}}
-
Un objet décrivant les propriétés de sécurité d'une requête Web particulière.
-
{{WebExtAPIRef("webRequest.StreamFilter")}}
-
Un objet qui peut être utilisé pour surveiller et modifier les réponses HTTP pendant leur réception.
-
{{WebExtAPIRef("webRequest.UploadData")}}
-
Contient des données téléchargées dans une requête URL.
-
- -

Propriétés

- -
-
{{WebExtAPIRef("webRequest.MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES", "webRequest.MAX_​HANDLER_​BEHAVIOR_​CHANGED_​CALLS_​PER_​10_​MINUTES")}}
-
Le nombre de fois que handlerBehaviorChanged() peut être appelé dans une période de 10 minutes.
-
- -

Méthodes

- -
-
{{WebExtAPIRef("webRequest.handlerBehaviorChanged()")}}
-
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.
-
{{WebExtAPIRef("webRequest.filterResponseData()")}}
-
Retourne un objet {{WebExtAPIRef("webRequest.StreamFilter")}} pour une requête donnée.
-
{{WebExtAPIRef("webRequest.getSecurityInfo()")}}
-
Obtient des informations détaillées sur la connexion TLS associée à une requête donnée.
-
- -

Evénements

- -
-
{{WebExtAPIRef("webRequest.onBeforeRequest")}}
-
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.
-
{{WebExtAPIRef("webRequest.onBeforeSendHeaders")}}
-
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.
-
{{WebExtAPIRef("webRequest.onSendHeaders")}}
-
Lancé juste avant l'envoi des en-têtes. Si votre add-on ou d'autres en-têtes modifiés dans {{WebExtAPIRef("webRequest.onBeforeSendHeaders", "onBeforeSendHeaders")}}, vous verrez la version modifiée ici.
-
{{WebExtAPIRef("webRequest.onHeadersReceived")}}
-
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.
-
{{WebExtAPIRef("webRequest.onAuthRequired")}}
-
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.
-
{{WebExtAPIRef("webRequest.onResponseStarted")}}
-
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.
-
{{WebExtAPIRef("webRequest.onBeforeRedirect")}}
-
Déclenché lorsqu'une redirection initiée par le serveur est sur le point de se produirer.
-
{{WebExtAPIRef("webRequest.onCompleted")}}
-
C'est déclenché lorsqu'une demande est complétée.
-
{{WebExtAPIRef("webRequest.onErrorOccurred")}}
-
Déclenché lorsqu'une erreur se produit.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest")}}

- -

Extra notes on Chrome incompatibilities.

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/index.md new file mode 100644 index 0000000000..f5c4b587ca --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/index.md @@ -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 +--- +

{{AddonSidebar}}

+ +

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.

+ +

Chaque événement est déclenché à un stade particulier de la demande. La séquence typique des événements est la suivante :

+ +

+ +

{{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 HSTS, l'événement onBeforeRedirect sera déclenché immédiatement après onBeforeRequest.

+ +

Tous les évènements (excepté onErrorOccurred) peuvent prendre trois arguments pour addListener():

+ + + +

Une fonction d'écoute reçoit un objet details 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.

+ +

Pour utiliser l'API webRequest pour un hôte donné, une extension doit avoir la permission API  "webRequest" et la permission hôte pour cet hôte. Pour utiliser la fonction "blocking", l'extension doit également avoir la permission API "webRequestBlocking".

+ +

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.

+ +

Modifier une requête

+ +

Sur certains de ces événements, vous pouvez modifier la demande. Plus précisément, vous pouvez  :

+ + + +

Pour ce faire, vous devez transmettre une option avec la valeur "blocking" dans l'argument extraInfoSpec à la fonction addListener() 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.

+ +
+

Attention : Les protocoles non-HTTP(S) ne supportent pas actuellement la fonctionnalité de "blockage", donc la modification de ces requêtes n'est pas disponible pour le moment. Voir {{bug(1475832)}} pour plus de détails.

+
+ +

Accéder aux informations de sécurité

+ +

Dans l'écouteur {{WebExtAPIRef("webRequest.onHeadersReceived", "onHeadersReceived")}} vous pouvez accéder aux propriétés TLS d'une requête en appelant {{WebExtAPIRef("webRequest.getSecurityInfo()", "getSecurityInfo()")}}. Pour ce faire, vous devez également transmettre le "blockage" dans l'argument extraInfoSpec à la fonction addListener() de l'évènement.

+ +

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.

+ +

Modifier les réponses

+ +

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.

+ +

Pour ce faire, vous devez disposer de la permission de l'API "webRequestBlocking" ainsi que la permission de l'API "webRequest" et la permission de l'hôte pour l'hôte concerné.

+ +

Types

+ +
+
{{WebExtAPIRef("webRequest.BlockingResponse")}}
+
+

Un objet de ce type est renvoyé par les auditeurs d'événements qui ont défini le "blockage" dans leur argument extraInfoSpec. En définissant des propriétés particulières dans BlockingResponse, the listener can modify network requests.

+
+
{{WebExtAPIRef("webRequest.CertificateInfo")}}
+
Un objet décrivant un seul certificat X.509.
+
{{WebExtAPIRef("webRequest.HttpHeaders")}}
+
Un tableau d'en-têtes HTTP. Chaque en-tête est représenté comme un objet avec deux propriétés : name et valeur ou binaryValue.
+
{{WebExtAPIRef("webRequest.RequestFilter")}}
+
Un objet décrivant les filtres à appliquer aux événements webRequest.
+
{{WebExtAPIRef("webRequest.ResourceType")}}
+
Représente un type particulier de ressources récupérées dans une requête Web.
+
{{WebExtAPIRef("webRequest.SecurityInfo")}}
+
Un objet décrivant les propriétés de sécurité d'une requête Web particulière.
+
{{WebExtAPIRef("webRequest.StreamFilter")}}
+
Un objet qui peut être utilisé pour surveiller et modifier les réponses HTTP pendant leur réception.
+
{{WebExtAPIRef("webRequest.UploadData")}}
+
Contient des données téléchargées dans une requête URL.
+
+ +

Propriétés

+ +
+
{{WebExtAPIRef("webRequest.MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES", "webRequest.MAX_​HANDLER_​BEHAVIOR_​CHANGED_​CALLS_​PER_​10_​MINUTES")}}
+
Le nombre de fois que handlerBehaviorChanged() peut être appelé dans une période de 10 minutes.
+
+ +

Méthodes

+ +
+
{{WebExtAPIRef("webRequest.handlerBehaviorChanged()")}}
+
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.
+
{{WebExtAPIRef("webRequest.filterResponseData()")}}
+
Retourne un objet {{WebExtAPIRef("webRequest.StreamFilter")}} pour une requête donnée.
+
{{WebExtAPIRef("webRequest.getSecurityInfo()")}}
+
Obtient des informations détaillées sur la connexion TLS associée à une requête donnée.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("webRequest.onBeforeRequest")}}
+
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.
+
{{WebExtAPIRef("webRequest.onBeforeSendHeaders")}}
+
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.
+
{{WebExtAPIRef("webRequest.onSendHeaders")}}
+
Lancé juste avant l'envoi des en-têtes. Si votre add-on ou d'autres en-têtes modifiés dans {{WebExtAPIRef("webRequest.onBeforeSendHeaders", "onBeforeSendHeaders")}}, vous verrez la version modifiée ici.
+
{{WebExtAPIRef("webRequest.onHeadersReceived")}}
+
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.
+
{{WebExtAPIRef("webRequest.onAuthRequired")}}
+
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.
+
{{WebExtAPIRef("webRequest.onResponseStarted")}}
+
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.
+
{{WebExtAPIRef("webRequest.onBeforeRedirect")}}
+
Déclenché lorsqu'une redirection initiée par le serveur est sur le point de se produirer.
+
{{WebExtAPIRef("webRequest.onCompleted")}}
+
C'est déclenché lorsqu'une demande est complétée.
+
{{WebExtAPIRef("webRequest.onErrorOccurred")}}
+
Déclenché lorsqu'une erreur se produit.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest")}}

+ +

Extra notes on Chrome incompatibilities.

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 97022ec8f4..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/max_handler_behavior_changed_calls_per_10_minutes/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -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 ---- -

{{AddonSidebar}}

- -

Le nombre maximum de fois que {{WebExtAPIRef("webRequest.handlerBehaviorChanged", "handlerBehaviorChanged()")}} peut être appelé dans une période de 10 minutes.

- -

Cette propriété est en lecture seule.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/max_handler_behavior_changed_calls_per_10_minutes/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/max_handler_behavior_changed_calls_per_10_minutes/index.md new file mode 100644 index 0000000000..97022ec8f4 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/max_handler_behavior_changed_calls_per_10_minutes/index.md @@ -0,0 +1,66 @@ +--- +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 +--- +

{{AddonSidebar}}

+ +

Le nombre maximum de fois que {{WebExtAPIRef("webRequest.handlerBehaviorChanged", "handlerBehaviorChanged()")}} peut être appelé dans une période de 10 minutes.

+ +

Cette propriété est en lecture seule.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.MAX_HANDLER_BEHAVIOR_CHANGED_CALLS_PER_10_MINUTES")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 28ed6d02c6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.html +++ /dev/null @@ -1,357 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

L'auditeur peut répondre de l'une des quatre façons suivantes :

- -

Ne rien faire : 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.

- -

Annuler la demande : 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 :

- - - -

Fournir des informations d'identification de manière synchrone : 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.
- L'auditeur peut fournir des informations d'identification de manière synchrone comme suit :

- - - -

Fournir les informations d'identification de manière asynchrone : 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 :

- - - -

Voir Exemples.

- -

Si vous utilisez le "blockage" vous devez avoir la permission de l'API "webRequestBlocking" dans votre manifest.json.

- -

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.

- -

Autorisation de proxy

- -

En général, Firefox ne déclenche pas d'événements webRequest 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.

- -

Si une extension a les permissions "webRequest", "webRequestBlocking", "proxy", et "<all_urls>", alors elle pourra utiliser onAuthRequired 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.

- -

Syntaxe

- -
browser.webRequest.onAuthRequired.addListener(
-  listener,                    // function
-  filter,                      //  object
-  extraInfoSpec                //  optional array of strings
-)
-browser.webRequest.onAuthRequired.removeListener(listener)
-browser.webRequest.onAuthRequired.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback, filter, extraInfoSpec)
-
Ajoute un écouteur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si écouteur est enregistré à cet événement. Retourne true s'il est à l'écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-

Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

-
-
details
-
object. Détails sur la demande. Voir les détails ci-dessous.
-
- -

Retourne : {{WebExtAPIRef('webRequest.BlockingResponse')}} ou une Promise.

- -
    -
  • Pour traiter la requête de manière synchrone, inclure"blocking" dans le paramètre extraInfoSpec et retourner un objet BlockingResponse, avec son cancel ou ses propriétés authCredentials.
  • -
  • Pour traiter la requête de manière asynchrone, inclure "blocking" dans le paramètre extraInfoSpec et retourner une Promise qui est résolue avec un objet  BlockingResponse, avec son cancel ou ses propriétés authCredentials.
  • -
-
-
filter
-
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
-
extraInfoSpec{{optional_inline}}
-

array de string. Options supplémentaires pour l'événement. Vous pouvez passer n'importe laquelle des valeurs suivantes :

-
    -
  • "blocking": faire le blocage de la demande, afin que vous puissiez annuler la demande ou fournir des informations d'authentification.
  • -
  • "responseHeaders": inclure responseHeaders dans l'objet details transmis à l'auditeur
  • -
-
-
- -

Objets supplémentaires

- -

détails

- -
-
challenger
-

object. Le serveur demandant l'authentification. C'est un objet avec les propriétés suivantes :

-
-
host
-
string. Le nom d'hôte du serveur.
- Warning: Contrairement à chrome, Firefox retournera l'hôte demandé au lieu du proxy demandant l'authentification, même si isProxy est true.
-
port
-
integer. Le numéro de port du serveur.
-
-
-
frameId
-
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
-
isProxy
-
boolean. true pour Proxy-Authenticate, false pour WWW-Authenticate. Note: webRequest.onAuthRequired 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.
-
method
-
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
-
parentFrameId
-
integer. 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.
-
proxyInfo
-
-

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

- -
-
host
-
string. Le nom d'hôte du serveur proxy.
-
port
-
integer. Le numéro de port du serveur proxy.
-
type
-
-

string. Le type de serveur proxy. L'un des :

- -
    -
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • -
  • "https": proxy HTTP sur connexion TLS vers proxy
  • -
  • "socks": SOCKS v5 proxy
  • -
  • "socks4": SOCKS v4 proxy
  • -
  • "direct": pas de proxy
  • -
  • "unknown": proxy inconnu
  • -
-
-
username
-
string. Nom d'utilisateur pour le service proxy.
-
proxyDNS
-
boolean. 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.
-
failoverTimeout
-
integer. 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 FindProxyForURL() sera utilisé.
-
-
-
realm{{optional_inline}}
-
string. La zone d'authentification realm fournie par le serveur, s'il y en a un.
-
requestId
-
string. 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.
-
responseHeaders{{optional_inline}}
-
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
-
scheme
-
string. Le schéma d'authentification : "basic" ou "digest".
-
statusCode
-
integer. Code d'état HTTP standard renvoyé par le serveur.
-
statusLine
-
string. 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
-
tabId
-
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
-
timeStamp
-
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
-
type
-
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
-
url
-
string. Cible de la demande.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.onAuthRequired", 10)}}

- -

Exemples

- -

Ce code n'observe que les demandes d'authentification pour l'URL cible :

- -
var target = "https://intranet.company.com/";
-
-function observe(requestDetails) {
-  console.log("observing: " + requestDetails.requestId);
-}
-
-browser.webRequest.onAuthRequired.addListener(
-  observe,
-  {urls: [target]}
-);
- -

Ce code annule les demandes d'authentification pour l'URL cible :

- -
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"]
-);
- -

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 :

- -
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 > -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]}
-);
- -

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 :

- -
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 > -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]}
-);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.md new file mode 100644 index 0000000000..28ed6d02c6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.md @@ -0,0 +1,357 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

L'auditeur peut répondre de l'une des quatre façons suivantes :

+ +

Ne rien faire : 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.

+ +

Annuler la demande : 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 :

+ + + +

Fournir des informations d'identification de manière synchrone : 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.
+ L'auditeur peut fournir des informations d'identification de manière synchrone comme suit :

+ + + +

Fournir les informations d'identification de manière asynchrone : 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 :

+ + + +

Voir Exemples.

+ +

Si vous utilisez le "blockage" vous devez avoir la permission de l'API "webRequestBlocking" dans votre manifest.json.

+ +

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.

+ +

Autorisation de proxy

+ +

En général, Firefox ne déclenche pas d'événements webRequest 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.

+ +

Si une extension a les permissions "webRequest", "webRequestBlocking", "proxy", et "<all_urls>", alors elle pourra utiliser onAuthRequired 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.

+ +

Syntaxe

+ +
browser.webRequest.onAuthRequired.addListener(
+  listener,                    // function
+  filter,                      //  object
+  extraInfoSpec                //  optional array of strings
+)
+browser.webRequest.onAuthRequired.removeListener(listener)
+browser.webRequest.onAuthRequired.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback, filter, extraInfoSpec)
+
Ajoute un écouteur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si écouteur est enregistré à cet événement. Retourne true s'il est à l'écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+

Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

+
+
details
+
object. Détails sur la demande. Voir les détails ci-dessous.
+
+ +

Retourne : {{WebExtAPIRef('webRequest.BlockingResponse')}} ou une Promise.

+ +
    +
  • Pour traiter la requête de manière synchrone, inclure"blocking" dans le paramètre extraInfoSpec et retourner un objet BlockingResponse, avec son cancel ou ses propriétés authCredentials.
  • +
  • Pour traiter la requête de manière asynchrone, inclure "blocking" dans le paramètre extraInfoSpec et retourner une Promise qui est résolue avec un objet  BlockingResponse, avec son cancel ou ses propriétés authCredentials.
  • +
+
+
filter
+
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
+
extraInfoSpec{{optional_inline}}
+

array de string. Options supplémentaires pour l'événement. Vous pouvez passer n'importe laquelle des valeurs suivantes :

+
    +
  • "blocking": faire le blocage de la demande, afin que vous puissiez annuler la demande ou fournir des informations d'authentification.
  • +
  • "responseHeaders": inclure responseHeaders dans l'objet details transmis à l'auditeur
  • +
+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
challenger
+

object. Le serveur demandant l'authentification. C'est un objet avec les propriétés suivantes :

+
+
host
+
string. Le nom d'hôte du serveur.
+ Warning: Contrairement à chrome, Firefox retournera l'hôte demandé au lieu du proxy demandant l'authentification, même si isProxy est true.
+
port
+
integer. Le numéro de port du serveur.
+
+
+
frameId
+
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
+
isProxy
+
boolean. true pour Proxy-Authenticate, false pour WWW-Authenticate. Note: webRequest.onAuthRequired 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.
+
method
+
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
+
parentFrameId
+
integer. 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.
+
proxyInfo
+
+

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

+ +
+
host
+
string. Le nom d'hôte du serveur proxy.
+
port
+
integer. Le numéro de port du serveur proxy.
+
type
+
+

string. Le type de serveur proxy. L'un des :

+ +
    +
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • +
  • "https": proxy HTTP sur connexion TLS vers proxy
  • +
  • "socks": SOCKS v5 proxy
  • +
  • "socks4": SOCKS v4 proxy
  • +
  • "direct": pas de proxy
  • +
  • "unknown": proxy inconnu
  • +
+
+
username
+
string. Nom d'utilisateur pour le service proxy.
+
proxyDNS
+
boolean. 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.
+
failoverTimeout
+
integer. 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 FindProxyForURL() sera utilisé.
+
+
+
realm{{optional_inline}}
+
string. La zone d'authentification realm fournie par le serveur, s'il y en a un.
+
requestId
+
string. 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.
+
responseHeaders{{optional_inline}}
+
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
+
scheme
+
string. Le schéma d'authentification : "basic" ou "digest".
+
statusCode
+
integer. Code d'état HTTP standard renvoyé par le serveur.
+
statusLine
+
string. 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
+
tabId
+
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
+
timeStamp
+
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
+
type
+
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
+
url
+
string. Cible de la demande.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.onAuthRequired", 10)}}

+ +

Exemples

+ +

Ce code n'observe que les demandes d'authentification pour l'URL cible :

+ +
var target = "https://intranet.company.com/";
+
+function observe(requestDetails) {
+  console.log("observing: " + requestDetails.requestId);
+}
+
+browser.webRequest.onAuthRequired.addListener(
+  observe,
+  {urls: [target]}
+);
+ +

Ce code annule les demandes d'authentification pour l'URL cible :

+ +
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"]
+);
+ +

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 :

+ +
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 > -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]}
+);
+ +

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 :

+ +
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 > -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]}
+);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index db3c1dc5f7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.html +++ /dev/null @@ -1,205 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Déclenché lorsqu'une redirection initiée par le serveur est sur le point de se produire.

- -

Notez que vous ne pouvez pas passer le "blockage" pour cet événement, donc vous ne pouvez pas modifier ou annuler la demande de cet événement : c'est uniquement à titre d'information.

- -

Syntaxe

- -
browser.webRequest.onBeforeRedirect.addListener(
-  listener,             // function
-  filter,               //  object
-  extraInfoSpec         //  optional array of strings
-)
-browser.webRequest.onBeforeRedirect.removeListener(listener)
-browser.webRequest.onBeforeRedirect.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback, filter, extraInfoSpec)
-
Ajouter un auditeur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

- -
-
details
-
object. Détails sur la demande. Voir les détails ci-dessous.
-
-
-
filter
-
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
-
extraInfoSpec{{optional_inline}}
-

array de string. Options supplémentaires pour l'événement. Vous ne pouvez passer qu'une seule valeur :

-
    -
  • "responseHeaders": inclure responseHeaders dans l'objet détails transmis à l'auditeur.
  • -
-
-
- -

Objets supplémentaires

- -

détails

- -
-
documentUrl
-
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
-
frameId
-
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
-
fromCache
-
boolean. Indique si cette réponse a été récupérée dans le cache du disque.
-
ip{{optional_inline}}
-
string. 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.
-
method
-
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
-
originUrl
-
-

string. 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 originUrl de la requête résultante est "https://example.com".

- -

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

- - -
-
parentFrameId
-
integer. 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.
-
proxyInfo
-
-

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

- -
-
host
-
string. Le nom d'hôte du serveur proxy.
-
port
-
integer. Le numéro de port du serveur proxy.
-
type
-
-

string. Le type de serveur proxy. L'un des :

- -
    -
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • -
  • "https": proxy HTTP sur connexion TLS vers proxy
  • -
  • "socks": SOCKS v5 proxy
  • -
  • "socks4": SOCKS v4 proxy
  • -
  • "direct": pas de proxy
  • -
  • "unknown": proxy inconnu
  • -
-
-
username
-
string. Nom d'utilisateur pour le service proxy.
-
proxyDNS
-
boolean. 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.
-
failoverTimeout
-
integer. 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.
-
-
-
redirectUrl
-
string. La nouvelle URL.
-
requestId
-
string. 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.
-
responseHeaders{{optional_inline}}
-
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
-
statusCode
-
integer. Code d'état HTTP standard renvoyé par le serveur.
-
statusLine
-
string. 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
-
tabId
-
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
-
timeStamp
-
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
-
type
-
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
-
url
-
string. Cible de la demande.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.onBeforeRedirect", 10)}}

- -

Exemples

- -
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]}
-);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.md new file mode 100644 index 0000000000..db3c1dc5f7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.md @@ -0,0 +1,205 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Déclenché lorsqu'une redirection initiée par le serveur est sur le point de se produire.

+ +

Notez que vous ne pouvez pas passer le "blockage" pour cet événement, donc vous ne pouvez pas modifier ou annuler la demande de cet événement : c'est uniquement à titre d'information.

+ +

Syntaxe

+ +
browser.webRequest.onBeforeRedirect.addListener(
+  listener,             // function
+  filter,               //  object
+  extraInfoSpec         //  optional array of strings
+)
+browser.webRequest.onBeforeRedirect.removeListener(listener)
+browser.webRequest.onBeforeRedirect.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback, filter, extraInfoSpec)
+
Ajouter un auditeur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

+ +
+
details
+
object. Détails sur la demande. Voir les détails ci-dessous.
+
+
+
filter
+
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
+
extraInfoSpec{{optional_inline}}
+

array de string. Options supplémentaires pour l'événement. Vous ne pouvez passer qu'une seule valeur :

+
    +
  • "responseHeaders": inclure responseHeaders dans l'objet détails transmis à l'auditeur.
  • +
+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
documentUrl
+
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
+
frameId
+
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
+
fromCache
+
boolean. Indique si cette réponse a été récupérée dans le cache du disque.
+
ip{{optional_inline}}
+
string. 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.
+
method
+
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
+
originUrl
+
+

string. 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 originUrl de la requête résultante est "https://example.com".

+ +

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

+ + +
+
parentFrameId
+
integer. 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.
+
proxyInfo
+
+

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

+ +
+
host
+
string. Le nom d'hôte du serveur proxy.
+
port
+
integer. Le numéro de port du serveur proxy.
+
type
+
+

string. Le type de serveur proxy. L'un des :

+ +
    +
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • +
  • "https": proxy HTTP sur connexion TLS vers proxy
  • +
  • "socks": SOCKS v5 proxy
  • +
  • "socks4": SOCKS v4 proxy
  • +
  • "direct": pas de proxy
  • +
  • "unknown": proxy inconnu
  • +
+
+
username
+
string. Nom d'utilisateur pour le service proxy.
+
proxyDNS
+
boolean. 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.
+
failoverTimeout
+
integer. 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.
+
+
+
redirectUrl
+
string. La nouvelle URL.
+
requestId
+
string. 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.
+
responseHeaders{{optional_inline}}
+
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
+
statusCode
+
integer. Code d'état HTTP standard renvoyé par le serveur.
+
statusLine
+
string. 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
+
tabId
+
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
+
timeStamp
+
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
+
type
+
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
+
url
+
string. Cible de la demande.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.onBeforeRedirect", 10)}}

+ +

Exemples

+ +
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]}
+);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 199b8d49d0..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.html +++ /dev/null @@ -1,293 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Pour annuler ou rediriger la requête, incluez d'abord "blocking" dans l'argument tableau extraInfoSpec pour addListener(). Ensuite, dans la fonction Listener, retournez un objet {{WebExtAPIRef("webRequest.BlockingResponse", "BlockingResponse")}}, en définissant la propriété appropriée :

- - - -

Si une extension veut rediriger une URL publique (par exemple HTTPS) ver une page d'extension, de l'extension doit contenir une clé web_accessible_resources qui liste l'URL de la page d'extension.

- -

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  requestId à nouveau si un autre gestionnaire de blocage a redirigé la requête.

- -

A partir de Firefox 52, au lieu de renvoyer BlockingResponse, l'auditeur peut renvoyer une  Promise qui est résolue avec un BlockingResponse. Ceci permet à l'auditeur de traiter la demande de manière asynchrone.

- -

Si vous utilisez le "blocking", vous devez avoir la permission de l'API "webRequestBlocking" dans votre manifest.json.

- -

Syntaxe

- -
browser.webRequest.onBeforeRequest.addListener(
-  listener,             // function
-  filter,               //  object
-  extraInfoSpec         //  optional array of strings
-)
-browser.webRequest.onBeforeRequest.removeListener(listener)
-browser.webRequest.onBeforeRequest.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback, filter, extraInfoSpec)
-
Ajoute un auditeur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument de l'écouteur est l'écouteur à supprimer.
-
hasListener(listener)
-
Vérifiez si l'écouteur est inscrit à cet événement. Renvoie true s'il est à l'écoute, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-

Fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

-
-
details
-
object. Détails sur la demande. Voir les details ci-dessous.
-
-

Les retours : {{WebExtAPIRef('webRequest.BlockingResponse')}}. Si "blocking"est spécifié dans le paramètre extraInfoSpec, l'auditeur d'événement doit retourner un objet BlockingResponse, et peut définir soit son annulation, soit ses propriétés  redirectUrl. A partir de Firefox 52, au lieu de renvoyer BlockingResponse,l'auditeur peut renvoyer une Promise qui est résolue avec un BlockingResponse. Ceci permet à l'auditeur de traiter la demande de manière asynchrone.

-
-
filter
-
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
-
extraInfoSpec{{optional_inline}}
-

array de string. Options supplémentaires pour l'événement. Vous pouvez passer n'importe laquelle des valeurs suivantes :

-
    -
  • "blocking": rendre la requête synchrone, de sorte que vous pouvez annuler ou rediriger la requête
  • -
  • "requestBody": include requestBody dans l'objet details transmis à l'auditeur
  • -
-
-
- -

Objets supplémentaires

- -

détails

- -
-
documentUrl
-
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
-
frameAncestors
-

array. 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.

-
-
url
-
string. URL à partir de laquelle le document a été chargé.
-
frameId
-
integer. Le frameId du document. details.frameAncestors[0].frameId est le même que details.parentFrameId.
-
-
-
frameId
-
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
-
method
-
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
-
originUrl
-
-

string. 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 originUrl de la requête résultante est "https://example.com".

- -

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

-
-
parentFrameId
-
integer. 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.
-
proxyInfo
-
-

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

- -
-
host
-
string. Le nom d'hôte du serveur proxy.
-
port
-
integer. Le numéro de port du serveur proxy.
-
type
-
-

string. Le type de serveur proxy. L'un des :

- -
    -
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • -
  • "https": proxy HTTP sur connexion TLS vers proxy
  • -
  • "socks": SOCKS v5 proxy
  • -
  • "socks4": SOCKS v4 proxy
  • -
  • "direct": pas de proxy
  • -
  • "unknown": proxy inconnu
  • -
-
-
username
-
string. Nom d'utilisateur pour le service proxy.
-
proxyDNS
-
boolean. 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.
-
failoverTimeout
-
integer. 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.
-
-
-
requestBody{{optional_inline}}
-

object. Contient les données du corps de la requête HTTP. Seulement si extraInfoSpec contient "requestBody".

-
-
error{{optional_inline}}
-
string. 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.
-
formData{{optional_inline}}
-

object. 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".

-

Il s'agit d'un dictionnaire dans lequel chaque clé contient la liste de toutes les valeurs de cette clé. Par exemple: {'key': ['value1', 'value2']}. Si les données sont d'un autre type de support, ou si elles sont malformées, l'objet n'est pas présent.

-
raw{{optional_inline}}
-
array of {{WebExtAPIRef('webRequest.UploadData')}}. Si la méthode de requête est PUT ou POST, et que le corps n'est pas déjà analysé dans formData, alors ce tableau contient les éléments de corps de requête non analysés.
-
-
-
requestId
-
string. 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.
-
tabId
-
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
-
timeStamp
-
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
-
type
-
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
-
url
-
string. Cible de la demande.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.onBeforeRequest", 10)}}

- -

Ordre de résolution DNS lorsque BlockingResponse est utilisé

- -

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 à la clarification du problème de BugZilla fournie par les développeurs Mozilla sur la commande de la résolution DNS

- -

Exemples

- -

Ce code enregistre l'URL de chaque ressource demandée qui correspond au modèle  <all_urls> :

- -
function logURL(requestDetails) {
-  console.log("Loading: " + requestDetails.url);
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  logURL,
-  {urls: ["<all_urls>"]}
-);
- -

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 Firefox Developer Edition):

- -
// 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"]
-);
-
- -

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 Firefox Developer Edition) :

- -
// 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"]
-);
- -

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 Promise qui définit une minuterie et se résout avec l'URL de redirection lorsque la minuterie expire :

- -
// 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) => {
-    window.setTimeout(() => {
-      resolve({redirectUrl});
-    }, 2000);
-  });
-}
-
-// add the listener,
-// passing the filter argument and "blocking"
-browser.webRequest.onBeforeRequest.addListener(
-  redirectAsync,
-  {urls: [pattern], types: ["image"]},
-  ["blocking"]
-);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.md new file mode 100644 index 0000000000..199b8d49d0 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.md @@ -0,0 +1,293 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Pour annuler ou rediriger la requête, incluez d'abord "blocking" dans l'argument tableau extraInfoSpec pour addListener(). Ensuite, dans la fonction Listener, retournez un objet {{WebExtAPIRef("webRequest.BlockingResponse", "BlockingResponse")}}, en définissant la propriété appropriée :

+ + + +

Si une extension veut rediriger une URL publique (par exemple HTTPS) ver une page d'extension, de l'extension doit contenir une clé web_accessible_resources qui liste l'URL de la page d'extension.

+ +

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  requestId à nouveau si un autre gestionnaire de blocage a redirigé la requête.

+ +

A partir de Firefox 52, au lieu de renvoyer BlockingResponse, l'auditeur peut renvoyer une  Promise qui est résolue avec un BlockingResponse. Ceci permet à l'auditeur de traiter la demande de manière asynchrone.

+ +

Si vous utilisez le "blocking", vous devez avoir la permission de l'API "webRequestBlocking" dans votre manifest.json.

+ +

Syntaxe

+ +
browser.webRequest.onBeforeRequest.addListener(
+  listener,             // function
+  filter,               //  object
+  extraInfoSpec         //  optional array of strings
+)
+browser.webRequest.onBeforeRequest.removeListener(listener)
+browser.webRequest.onBeforeRequest.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback, filter, extraInfoSpec)
+
Ajoute un auditeur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument de l'écouteur est l'écouteur à supprimer.
+
hasListener(listener)
+
Vérifiez si l'écouteur est inscrit à cet événement. Renvoie true s'il est à l'écoute, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+

Fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

+
+
details
+
object. Détails sur la demande. Voir les details ci-dessous.
+
+

Les retours : {{WebExtAPIRef('webRequest.BlockingResponse')}}. Si "blocking"est spécifié dans le paramètre extraInfoSpec, l'auditeur d'événement doit retourner un objet BlockingResponse, et peut définir soit son annulation, soit ses propriétés  redirectUrl. A partir de Firefox 52, au lieu de renvoyer BlockingResponse,l'auditeur peut renvoyer une Promise qui est résolue avec un BlockingResponse. Ceci permet à l'auditeur de traiter la demande de manière asynchrone.

+
+
filter
+
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
+
extraInfoSpec{{optional_inline}}
+

array de string. Options supplémentaires pour l'événement. Vous pouvez passer n'importe laquelle des valeurs suivantes :

+
    +
  • "blocking": rendre la requête synchrone, de sorte que vous pouvez annuler ou rediriger la requête
  • +
  • "requestBody": include requestBody dans l'objet details transmis à l'auditeur
  • +
+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
documentUrl
+
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
+
frameAncestors
+

array. 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.

+
+
url
+
string. URL à partir de laquelle le document a été chargé.
+
frameId
+
integer. Le frameId du document. details.frameAncestors[0].frameId est le même que details.parentFrameId.
+
+
+
frameId
+
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
+
method
+
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
+
originUrl
+
+

string. 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 originUrl de la requête résultante est "https://example.com".

+ +

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

+
+
parentFrameId
+
integer. 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.
+
proxyInfo
+
+

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

+ +
+
host
+
string. Le nom d'hôte du serveur proxy.
+
port
+
integer. Le numéro de port du serveur proxy.
+
type
+
+

string. Le type de serveur proxy. L'un des :

+ +
    +
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • +
  • "https": proxy HTTP sur connexion TLS vers proxy
  • +
  • "socks": SOCKS v5 proxy
  • +
  • "socks4": SOCKS v4 proxy
  • +
  • "direct": pas de proxy
  • +
  • "unknown": proxy inconnu
  • +
+
+
username
+
string. Nom d'utilisateur pour le service proxy.
+
proxyDNS
+
boolean. 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.
+
failoverTimeout
+
integer. 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.
+
+
+
requestBody{{optional_inline}}
+

object. Contient les données du corps de la requête HTTP. Seulement si extraInfoSpec contient "requestBody".

+
+
error{{optional_inline}}
+
string. 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.
+
formData{{optional_inline}}
+

object. 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".

+

Il s'agit d'un dictionnaire dans lequel chaque clé contient la liste de toutes les valeurs de cette clé. Par exemple: {'key': ['value1', 'value2']}. Si les données sont d'un autre type de support, ou si elles sont malformées, l'objet n'est pas présent.

+
raw{{optional_inline}}
+
array of {{WebExtAPIRef('webRequest.UploadData')}}. Si la méthode de requête est PUT ou POST, et que le corps n'est pas déjà analysé dans formData, alors ce tableau contient les éléments de corps de requête non analysés.
+
+
+
requestId
+
string. 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.
+
tabId
+
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
+
timeStamp
+
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
+
type
+
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
+
url
+
string. Cible de la demande.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.onBeforeRequest", 10)}}

+ +

Ordre de résolution DNS lorsque BlockingResponse est utilisé

+ +

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 à la clarification du problème de BugZilla fournie par les développeurs Mozilla sur la commande de la résolution DNS

+ +

Exemples

+ +

Ce code enregistre l'URL de chaque ressource demandée qui correspond au modèle  <all_urls> :

+ +
function logURL(requestDetails) {
+  console.log("Loading: " + requestDetails.url);
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  logURL,
+  {urls: ["<all_urls>"]}
+);
+ +

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 Firefox Developer Edition):

+ +
// 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"]
+);
+
+ +

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 Firefox Developer Edition) :

+ +
// 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"]
+);
+ +

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 Promise qui définit une minuterie et se résout avec l'URL de redirection lorsque la minuterie expire :

+ +
// 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) => {
+    window.setTimeout(() => {
+      resolve({redirectUrl});
+    }, 2000);
+  });
+}
+
+// add the listener,
+// passing the filter argument and "blocking"
+browser.webRequest.onBeforeRequest.addListener(
+  redirectAsync,
+  {urls: [pattern], types: ["image"]},
+  ["blocking"]
+);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e5c2fc28b5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.html +++ /dev/null @@ -1,283 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

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 "requestHeaders" dans un tableau extraInfoSpec.

- -

Pour modifier les en-têtes de façon synchrone : passez "blocking" dans extraInfoSpec, puis dans votre événement écouté, retournez un BlockingResponse avec une propriété nommée requestHeaders, dont la valeur est l'ensemble des en-têtes de requête à envoyer.

- -

Pour modifier les en-têtes de façon asynchrone : passez "blocking" dans extraInfoSpec, puis dans votre event listener, retournez une Promise qui est résolue avec une BlockingResponse.

- -

Si vous utilisez le "blocking", vous devez avoir la "permission de l'API "webRequestBlocking" dans votre manifest.json.

- -

Il est possible d'étendre le conflit ici. Si deux extensions écoutent onBeforeSendHeaders 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 Cookie, et que le deuxième auditeur supprime tous les en-têtes Cookie, 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.

- -

Tous les en-têtes réellement envoyés ne sont pas toujours inclus dans requestHeaders. En particulier, les en-têtes liés à la mise en cache (par exemple, Cache-Control, If-Modified-Since, If-None-Match) ne sont jamais envoyés. De plus, le comportement peut différer d'un navigateur à l'autre.

- -

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 :

- -
for (let header of e.requestHeaders) {
-  if (header.name.toLowerCase() === desiredHeader) {
-    // process header
-  }
-}
- -

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é.

- -

Syntaxe

- -
browser.webRequest.onBeforeSendHeaders.addListener(
-  listener,             //  function
-  filter,               //  object
-  extraInfoSpec         //  optional array of strings
-)
-browser.webRequest.onBeforeSendHeaders.removeListener(listener)
-browser.webRequest.onBeforeSendHeaders.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback, filter, extraInfoSpec)
-
Ajouter un auditeur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

- -
-
details
-
object. Détails de la demande. Ceci inclura les en-têtes de demande si vous avez inclus "requestHeaders" dans extraInfoSpec.
-
- -

Retourne : {{WebExtAPIRef('webRequest.BlockingResponse')}}. si "blocking" est spécifié dans le paramètre extraInfoSpec, l'auditeur d'événement doit retourner un objet BlockingResponse, et peut définir sa propriété requestHeaders.

-
-
filter
-
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un ensemble de filtres qui restreint les événements qui seront envoyés à cet auditeur.
-
extraInfoSpec{{optional_inline}}
-

array de string. Options supplémentaires pour l'événement. Vous pouvez passer n'importe laquelle des valeurs suivantes :

-
    -
  • "blocking": rendre la requête synchrone, ce qui vous permet de modifier les en-têtes de requête
  • -
  • "requestHeaders": inclure les en-têtes de requête dans l'objet details  transmis à l'auditeur
  • -
-
-
- -

Objets supplémentaires

- -

détails

- -
-
documentUrl
-
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
-
frameId
-
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
-
method
-
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
-
originUrl
-
-

string. 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 originUrl de la requête résultante est "https://example.com".

- -

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

-
-
parentFrameId
-
integer. 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.
-
proxyInfo
-
-

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

- -
-
host
-
string. Le nom d'hôte du serveur proxy.
-
port
-
integer. Le numéro de port du serveur proxy.
-
type
-
-

string. Le type de serveur proxy. L'un des :

- -
    -
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • -
  • "https": proxy HTTP sur connexion TLS vers proxy
  • -
  • "socks": SOCKS v5 proxy
  • -
  • "socks4": SOCKS v4 proxy
  • -
  • "direct": pas de proxy
  • -
  • "unknown": proxy inconnu
  • -
-
-
username
-
string. Nom d'utilisateur pour le service proxy.
-
proxyDNS
-
boolean. 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.
-
failoverTimeout
-
integer. 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.
-
-
-
requestHeaders{{optional_inline}}
-
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
-
requestId
-
string. 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.
-
tabId
-
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
-
timeStamp
-
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
-
type
-
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
-
url
-
string. Cible de la demande.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.onBeforeSendHeaders", 10)}}

- -

Exemples

- -

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/".

- -
"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"]
-);
-
- -

Ce code est exactement comme l'exemple précédent, sauf que l'auditeur est asynchrone, retournant une Promise qui est résolue avec les nouveaux en-têtes :

- -
"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) => {
-    window.setTimeout(() => {
-      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"]
-);
-
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.md new file mode 100644 index 0000000000..e5c2fc28b5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.md @@ -0,0 +1,283 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

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 "requestHeaders" dans un tableau extraInfoSpec.

+ +

Pour modifier les en-têtes de façon synchrone : passez "blocking" dans extraInfoSpec, puis dans votre événement écouté, retournez un BlockingResponse avec une propriété nommée requestHeaders, dont la valeur est l'ensemble des en-têtes de requête à envoyer.

+ +

Pour modifier les en-têtes de façon asynchrone : passez "blocking" dans extraInfoSpec, puis dans votre event listener, retournez une Promise qui est résolue avec une BlockingResponse.

+ +

Si vous utilisez le "blocking", vous devez avoir la "permission de l'API "webRequestBlocking" dans votre manifest.json.

+ +

Il est possible d'étendre le conflit ici. Si deux extensions écoutent onBeforeSendHeaders 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 Cookie, et que le deuxième auditeur supprime tous les en-têtes Cookie, 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.

+ +

Tous les en-têtes réellement envoyés ne sont pas toujours inclus dans requestHeaders. En particulier, les en-têtes liés à la mise en cache (par exemple, Cache-Control, If-Modified-Since, If-None-Match) ne sont jamais envoyés. De plus, le comportement peut différer d'un navigateur à l'autre.

+ +

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 :

+ +
for (let header of e.requestHeaders) {
+  if (header.name.toLowerCase() === desiredHeader) {
+    // process header
+  }
+}
+ +

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é.

+ +

Syntaxe

+ +
browser.webRequest.onBeforeSendHeaders.addListener(
+  listener,             //  function
+  filter,               //  object
+  extraInfoSpec         //  optional array of strings
+)
+browser.webRequest.onBeforeSendHeaders.removeListener(listener)
+browser.webRequest.onBeforeSendHeaders.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback, filter, extraInfoSpec)
+
Ajouter un auditeur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

+ +
+
details
+
object. Détails de la demande. Ceci inclura les en-têtes de demande si vous avez inclus "requestHeaders" dans extraInfoSpec.
+
+ +

Retourne : {{WebExtAPIRef('webRequest.BlockingResponse')}}. si "blocking" est spécifié dans le paramètre extraInfoSpec, l'auditeur d'événement doit retourner un objet BlockingResponse, et peut définir sa propriété requestHeaders.

+
+
filter
+
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un ensemble de filtres qui restreint les événements qui seront envoyés à cet auditeur.
+
extraInfoSpec{{optional_inline}}
+

array de string. Options supplémentaires pour l'événement. Vous pouvez passer n'importe laquelle des valeurs suivantes :

+
    +
  • "blocking": rendre la requête synchrone, ce qui vous permet de modifier les en-têtes de requête
  • +
  • "requestHeaders": inclure les en-têtes de requête dans l'objet details  transmis à l'auditeur
  • +
+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
documentUrl
+
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
+
frameId
+
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
+
method
+
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
+
originUrl
+
+

string. 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 originUrl de la requête résultante est "https://example.com".

+ +

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

+
+
parentFrameId
+
integer. 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.
+
proxyInfo
+
+

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

+ +
+
host
+
string. Le nom d'hôte du serveur proxy.
+
port
+
integer. Le numéro de port du serveur proxy.
+
type
+
+

string. Le type de serveur proxy. L'un des :

+ +
    +
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • +
  • "https": proxy HTTP sur connexion TLS vers proxy
  • +
  • "socks": SOCKS v5 proxy
  • +
  • "socks4": SOCKS v4 proxy
  • +
  • "direct": pas de proxy
  • +
  • "unknown": proxy inconnu
  • +
+
+
username
+
string. Nom d'utilisateur pour le service proxy.
+
proxyDNS
+
boolean. 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.
+
failoverTimeout
+
integer. 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.
+
+
+
requestHeaders{{optional_inline}}
+
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
+
requestId
+
string. 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.
+
tabId
+
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
+
timeStamp
+
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
+
type
+
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
+
url
+
string. Cible de la demande.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.onBeforeSendHeaders", 10)}}

+ +

Exemples

+ +

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/".

+ +
"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"]
+);
+
+ +

Ce code est exactement comme l'exemple précédent, sauf que l'auditeur est asynchrone, retournant une Promise qui est résolue avec les nouveaux en-têtes :

+ +
"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) => {
+    window.setTimeout(() => {
+      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"]
+);
+
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index e83f60fed7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.html +++ /dev/null @@ -1,206 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Utilisé lorsqu'une demande est complétée.

- -

Cet événement est à titre d'information seulement.

- -

Syntaxe

- -
browser.webRequest.onCompleted.addListener(
-  listener,             // function
-  filter,               //  object
-  extraInfoSpec         //  optional array of strings
-)
-browser.webRequest.onCompleted.removeListener(listener)
-browser.webRequest.onCompleted.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback, filter, extraInfoSpec)
-
Ajouter un auditeur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

- -
-
details
-
object. Details sur la demande. voir les détails ci-dessous.
-
-
-
filter
-
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
-
extraInfoSpec{{optional_inline}}
-

array of string. Options supplémentaires pour l'événement. Vous ne pouvez passer qu'une seule valeur :

-
    -
  • "responseHeaders": inclure responseHeaders dans l'objet details transmis à l'auditeur
  • -
-
-
- -

objets supplémentaires

- -

détails

- -
-
documentUrl
-
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
-
frameId
-
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
-
fromCache
-
boolean. Indique si cette réponse a été récupérée dans le cache du disque.
-
ip{{optional_inline}}
-
string. 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.
-
method
-
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
-
originUrl
-
-

string. 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 originUrl de la requête résultante est "https://example.com".

- -

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

-
-
parentFrameId
-
integer. 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.
-
proxyInfo
-
-

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

- -
-
host
-
string. Le nom d'hôte du serveur proxy.
-
port
-
integer. Le numéro de port du serveur proxy.
-
type
-
-

string. Le type de serveur proxy. L'un des :

- -
    -
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • -
  • "https": proxy HTTP sur connexion TLS vers proxy
  • -
  • "socks": SOCKS v5 proxy
  • -
  • "socks4": SOCKS v4 proxy
  • -
  • "direct": pas de proxy
  • -
  • "unknown": proxy inconnu
  • -
-
-
username
-
string. Nom d'utilisateur pour le service proxy.
-
proxyDNS
-
boolean. 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.
-
failoverTimeout
-
integer. 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.
-
-
-
requestId
-
string. 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.
-
responseHeaders{{optional_inline}}
-
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
-
statusCode
-
integer. Code d'état HTTP standard renvoyé par le serveur.
-
statusLine
-
string. 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
-
tabId
-
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
-
timeStamp
-
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
-
type
-
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
-
url
-
string. Cible de la demande.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.onCompleted", 10)}}

- -

Exemples

- -
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]}
-);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.md new file mode 100644 index 0000000000..e83f60fed7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.md @@ -0,0 +1,206 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Utilisé lorsqu'une demande est complétée.

+ +

Cet événement est à titre d'information seulement.

+ +

Syntaxe

+ +
browser.webRequest.onCompleted.addListener(
+  listener,             // function
+  filter,               //  object
+  extraInfoSpec         //  optional array of strings
+)
+browser.webRequest.onCompleted.removeListener(listener)
+browser.webRequest.onCompleted.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback, filter, extraInfoSpec)
+
Ajouter un auditeur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

+ +
+
details
+
object. Details sur la demande. voir les détails ci-dessous.
+
+
+
filter
+
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
+
extraInfoSpec{{optional_inline}}
+

array of string. Options supplémentaires pour l'événement. Vous ne pouvez passer qu'une seule valeur :

+
    +
  • "responseHeaders": inclure responseHeaders dans l'objet details transmis à l'auditeur
  • +
+
+
+ +

objets supplémentaires

+ +

détails

+ +
+
documentUrl
+
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
+
frameId
+
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
+
fromCache
+
boolean. Indique si cette réponse a été récupérée dans le cache du disque.
+
ip{{optional_inline}}
+
string. 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.
+
method
+
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
+
originUrl
+
+

string. 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 originUrl de la requête résultante est "https://example.com".

+ +

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

+
+
parentFrameId
+
integer. 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.
+
proxyInfo
+
+

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

+ +
+
host
+
string. Le nom d'hôte du serveur proxy.
+
port
+
integer. Le numéro de port du serveur proxy.
+
type
+
+

string. Le type de serveur proxy. L'un des :

+ +
    +
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • +
  • "https": proxy HTTP sur connexion TLS vers proxy
  • +
  • "socks": SOCKS v5 proxy
  • +
  • "socks4": SOCKS v4 proxy
  • +
  • "direct": pas de proxy
  • +
  • "unknown": proxy inconnu
  • +
+
+
username
+
string. Nom d'utilisateur pour le service proxy.
+
proxyDNS
+
boolean. 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.
+
failoverTimeout
+
integer. 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.
+
+
+
requestId
+
string. 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.
+
responseHeaders{{optional_inline}}
+
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
+
statusCode
+
integer. Code d'état HTTP standard renvoyé par le serveur.
+
statusLine
+
string. 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
+
tabId
+
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
+
timeStamp
+
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
+
type
+
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
+
url
+
string. Cible de la demande.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.onCompleted", 10)}}

+ +

Exemples

+ +
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]}
+);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 07a82c4a5e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.html +++ /dev/null @@ -1,194 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Utilisé lorsqu'une demande n'a pas pu être traitée en raison d'une erreur : par exemple, un manque de connectivité Internet.

- -

L'erreur est transmise à l'auditeur en tant que propriété d'erreur de l'objet details.

- -

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 details.statusCode pour signaler l'erreur.

- -

Cet événement est à titre d'information seulement.

- -

Syntaxe

- -
browser.webRequest.onErrorOccurred.addListener(
-  listener,             // function
-  filter                //  object
-)
-browser.webRequest.onErrorOccurred.removeListener(listener)
-browser.webRequest.onErrorOccurred.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback, filter, extraInfoSpec)
-
Ajouter un auditeur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

- -
-
details
-
object. Détails sur la demande. Voir les details ci-dessous.
-
-
-
filter
-
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
-
- -

objets supplémentaires

- -

détails

- -
-
documentUrl
-
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
-
error
-
string. 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.
-
frameId
-
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
-
fromCache
-
boolean. Indique si cette réponse a été récupérée dans le cache du disque.
-
ip{{optional_inline}}
-
string. 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.
-
method
-
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
-
originUrl
-
-

string. 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 originUrl de la requête résultante est "https://example.com".

- -

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

-
-
parentFrameId
-
integer. 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.
-
proxyInfo
-
-

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

- -
-
host
-
string. Le nom d'hôte du serveur proxy.
-
port
-
integer. Le numéro de port du serveur proxy.
-
type
-
-

string. Le type de serveur proxy. L'un des :

- -
    -
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • -
  • "https": proxy HTTP sur connexion TLS vers proxy
  • -
  • "socks": SOCKS v5 proxy
  • -
  • "socks4": SOCKS v4 proxy
  • -
  • "direct": pas de proxy
  • -
  • "unknown": proxy inconnu
  • -
-
-
username
-
string. Nom d'utilisateur pour le service proxy.
-
proxyDNS
-
boolean. 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.
-
failoverTimeout
-
integer. 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.
-
-
-
requestId
-
string. 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.
-
tabId
-
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
-
timeStamp
-
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
-
type
-
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
-
url
-
string. Cible de la demande.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.onErrorOccurred", 10)}}

- -

Exemples

- -
var target = "<all_urls>";
-
-/*
-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]}
-);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.md new file mode 100644 index 0000000000..07a82c4a5e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.md @@ -0,0 +1,194 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Utilisé lorsqu'une demande n'a pas pu être traitée en raison d'une erreur : par exemple, un manque de connectivité Internet.

+ +

L'erreur est transmise à l'auditeur en tant que propriété d'erreur de l'objet details.

+ +

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 details.statusCode pour signaler l'erreur.

+ +

Cet événement est à titre d'information seulement.

+ +

Syntaxe

+ +
browser.webRequest.onErrorOccurred.addListener(
+  listener,             // function
+  filter                //  object
+)
+browser.webRequest.onErrorOccurred.removeListener(listener)
+browser.webRequest.onErrorOccurred.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback, filter, extraInfoSpec)
+
Ajouter un auditeur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

+ +
+
details
+
object. Détails sur la demande. Voir les details ci-dessous.
+
+
+
filter
+
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
+
+ +

objets supplémentaires

+ +

détails

+ +
+
documentUrl
+
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
+
error
+
string. 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.
+
frameId
+
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
+
fromCache
+
boolean. Indique si cette réponse a été récupérée dans le cache du disque.
+
ip{{optional_inline}}
+
string. 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.
+
method
+
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
+
originUrl
+
+

string. 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 originUrl de la requête résultante est "https://example.com".

+ +

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

+
+
parentFrameId
+
integer. 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.
+
proxyInfo
+
+

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

+ +
+
host
+
string. Le nom d'hôte du serveur proxy.
+
port
+
integer. Le numéro de port du serveur proxy.
+
type
+
+

string. Le type de serveur proxy. L'un des :

+ +
    +
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • +
  • "https": proxy HTTP sur connexion TLS vers proxy
  • +
  • "socks": SOCKS v5 proxy
  • +
  • "socks4": SOCKS v4 proxy
  • +
  • "direct": pas de proxy
  • +
  • "unknown": proxy inconnu
  • +
+
+
username
+
string. Nom d'utilisateur pour le service proxy.
+
proxyDNS
+
boolean. 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.
+
failoverTimeout
+
integer. 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.
+
+
+
requestId
+
string. 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.
+
tabId
+
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
+
timeStamp
+
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
+
type
+
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
+
url
+
string. Cible de la demande.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.onErrorOccurred", 10)}}

+ +

Exemples

+ +
var target = "<all_urls>";
+
+/*
+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]}
+);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 9a67cebc8f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.html +++ /dev/null @@ -1,245 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

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 "responseHeaders" dans le tableau extraInfoSpec.

- -

Pour modifier les en-têtes, passez "blocking" dans extraInfoSpec. Ensuite, dans votre écouteur d'événements, retournez un objet avec une propriété nommée responseHeaders, 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.

- -

A partir de Firefox 52, au lieu de renvoyer BlockingResponse, l'auditeur peut renvoyer une Promesse qui est résolue avec un BlockingResponse. Ceci permet à l'auditeur de traiter la demande de manière asynchrone.

- -

Si vous utilisez le "blocking", vous devez avoir la permission de l'API "webRequestBlocking" dans votre manifest.json.

- -

Notez qu'il est possible que des extensions entrent en conflit ici. Si deux extensions écoutent onHeadersReceived pour la même requête et retournent responseHeaders essayant de définir le même en-tête (par exemple, Content-Security-Policy), 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
-  

- -

Syntaxe

- -
browser.webRequest.onHeadersReceived.addListener(
-  listener,             // function
-  filter,               //  object
-  extraInfoSpec         //  optional array of strings
-)
-browser.webRequest.onHeadersReceived.removeListener(listener)
-browser.webRequest.onHeadersReceived.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback, filter, extraInfoSpec)
-
Ajouter un auditeur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

- -
-
details
-
object. Détails de la demande. Ceci inclura les en-têtes de réponse si vous avez inclus "responseHeaders" dans extraInfoSpec.
-
- -

Retourne : {{WebExtAPIRef('webRequest.BlockingResponse')}}. Si "blocking" est spécifié dans le paramètre extraInfoSpec, l'auditeur d'événement doit retourner un objet BlockingResponse, et peut définir sa propriété responseHeaders.

-
-
filter
-
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un ensemble de filtres qui restreint les événements qui seront envoyés à cet auditeur.
-
extraInfoSpec{{optional_inline}}
-

array de string. Options supplémentaires pour l'événement. Vous pouvez passer n'importe laquelle des valeurs suivantes :

-
    -
  • "blocking" pour rendre la requête synchrone, de sorte que vous pouvez modifier les en-têtes de requête et réponse.
  • -
  • "responseHeaders" pour inclure les en-têtes de réponse dans l'objet  détails transmis à l'auditeur
  • -
-
-
- -

objets supplémentaires

- -

détails

- -
-
documentUrl
-
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
-
frameId
-
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
-
method
-
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
-
originUrl
-
-

string. 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 originUrl de la requête résultante est "https://example.com".

- -

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

-
-
parentFrameId
-
integer. 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.
-
proxyInfo
-
-

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

- -
-
host
-
string. Le nom d'hôte du serveur proxy.
-
port
-
integer. Le numéro de port du serveur proxy.
-
type
-
-

string. Le type de serveur proxy. L'un des :

- -
    -
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • -
  • "https": proxy HTTP sur connexion TLS vers proxy
  • -
  • "socks": SOCKS v5 proxy
  • -
  • "socks4": SOCKS v4 proxy
  • -
  • "direct": pas de proxy
  • -
  • "unknown": proxy inconnu
  • -
-
-
username
-
string. Nom d'utilisateur pour le service proxy.
-
proxyDNS
-
boolean. 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.
-
failoverTimeout
-
integer. 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.
-
-
-
requestId
-
string. 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.
-
responseHeaders{{optional_inline}}
-
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
-
statusCode
-
integer. Code d'état HTTP standard renvoyé par le serveur.
-
statusLine
-
string. 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
-
tabId
-
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
-
timeStamp
-
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
-
type
-
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
-
url
-
string. Cible de la demande.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.onHeadersReceived", 10)}}

- -

Exemples

- -

Ce code définit un cookie supplémentaire lors de la demande d'une ressource à partir de l'URL cible :

- -
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"]
-);
- -

Ce code fait la même chose que l'exemple précédent, sauf que l'auditeur est asynchrone, retournant une Promise qui est résolue avec les nouveaux en-têtes :

- -
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) => {
-    window.setTimeout(() => {
-      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"]
-);
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.md new file mode 100644 index 0000000000..9a67cebc8f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.md @@ -0,0 +1,245 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

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 "responseHeaders" dans le tableau extraInfoSpec.

+ +

Pour modifier les en-têtes, passez "blocking" dans extraInfoSpec. Ensuite, dans votre écouteur d'événements, retournez un objet avec une propriété nommée responseHeaders, 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.

+ +

A partir de Firefox 52, au lieu de renvoyer BlockingResponse, l'auditeur peut renvoyer une Promesse qui est résolue avec un BlockingResponse. Ceci permet à l'auditeur de traiter la demande de manière asynchrone.

+ +

Si vous utilisez le "blocking", vous devez avoir la permission de l'API "webRequestBlocking" dans votre manifest.json.

+ +

Notez qu'il est possible que des extensions entrent en conflit ici. Si deux extensions écoutent onHeadersReceived pour la même requête et retournent responseHeaders essayant de définir le même en-tête (par exemple, Content-Security-Policy), 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
+  

+ +

Syntaxe

+ +
browser.webRequest.onHeadersReceived.addListener(
+  listener,             // function
+  filter,               //  object
+  extraInfoSpec         //  optional array of strings
+)
+browser.webRequest.onHeadersReceived.removeListener(listener)
+browser.webRequest.onHeadersReceived.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback, filter, extraInfoSpec)
+
Ajouter un auditeur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

+ +
+
details
+
object. Détails de la demande. Ceci inclura les en-têtes de réponse si vous avez inclus "responseHeaders" dans extraInfoSpec.
+
+ +

Retourne : {{WebExtAPIRef('webRequest.BlockingResponse')}}. Si "blocking" est spécifié dans le paramètre extraInfoSpec, l'auditeur d'événement doit retourner un objet BlockingResponse, et peut définir sa propriété responseHeaders.

+
+
filter
+
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un ensemble de filtres qui restreint les événements qui seront envoyés à cet auditeur.
+
extraInfoSpec{{optional_inline}}
+

array de string. Options supplémentaires pour l'événement. Vous pouvez passer n'importe laquelle des valeurs suivantes :

+
    +
  • "blocking" pour rendre la requête synchrone, de sorte que vous pouvez modifier les en-têtes de requête et réponse.
  • +
  • "responseHeaders" pour inclure les en-têtes de réponse dans l'objet  détails transmis à l'auditeur
  • +
+
+
+ +

objets supplémentaires

+ +

détails

+ +
+
documentUrl
+
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
+
frameId
+
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
+
method
+
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
+
originUrl
+
+

string. 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 originUrl de la requête résultante est "https://example.com".

+ +

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

+
+
parentFrameId
+
integer. 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.
+
proxyInfo
+
+

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

+ +
+
host
+
string. Le nom d'hôte du serveur proxy.
+
port
+
integer. Le numéro de port du serveur proxy.
+
type
+
+

string. Le type de serveur proxy. L'un des :

+ +
    +
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • +
  • "https": proxy HTTP sur connexion TLS vers proxy
  • +
  • "socks": SOCKS v5 proxy
  • +
  • "socks4": SOCKS v4 proxy
  • +
  • "direct": pas de proxy
  • +
  • "unknown": proxy inconnu
  • +
+
+
username
+
string. Nom d'utilisateur pour le service proxy.
+
proxyDNS
+
boolean. 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.
+
failoverTimeout
+
integer. 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.
+
+
+
requestId
+
string. 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.
+
responseHeaders{{optional_inline}}
+
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
+
statusCode
+
integer. Code d'état HTTP standard renvoyé par le serveur.
+
statusLine
+
string. 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
+
tabId
+
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
+
timeStamp
+
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
+
type
+
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
+
url
+
string. Cible de la demande.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.onHeadersReceived", 10)}}

+ +

Exemples

+ +

Ce code définit un cookie supplémentaire lors de la demande d'une ressource à partir de l'URL cible :

+ +
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"]
+);
+ +

Ce code fait la même chose que l'exemple précédent, sauf que l'auditeur est asynchrone, retournant une Promise qui est résolue avec les nouveaux en-têtes :

+ +
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) => {
+    window.setTimeout(() => {
+      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"]
+);
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 60f8f4a5b2..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.html +++ /dev/null @@ -1,200 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancé lorsque le premier octet du corps de réponse est reçu.

- -

Cet événement est à titre d'information seulement.

- -

Syntaxe

- -
browser.webRequest.onResponseStarted.addListener(
-  listener,             // function
-  filter,               //  object
-  extraInfoSpec         //  optional array of strings
-)
-browser.webRequest.onResponseStarted.removeListener(listener)
-browser.webRequest.onResponseStarted.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback, filter, extraInfoSpec)
-
Ajouter un auditeur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-

Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

-
-
details
-
object. Détails sur la demande. Voir les details ci-dessous.
-
-
-
filter
-
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
-
extraInfoSpec{{optional_inline}}
-

array de string. Options supplémentaires pour l'événement. Vous ne pouvez passer qu'une seule valeur :

-
    -
  • "responseHeaders": inclure responseHeaders dans l'objet détails transmis à l'auditeur
  • -
-
-
- -

Objets supplémentaires

- -

détails

- -
-
documentUrl
-
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
-
frameId
-
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
-
fromCache
-
boolean. Indique si cette réponse a été récupérée dans le cache du disque.
-
ip{{optional_inline}}
-
string. 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.
-
method
-
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
-
originUrl
-
-

string. 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 originUrl de la requête résultante est "https://example.com".

- -

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

-
-
parentFrameId
-
integer. 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.
-
proxyInfo
-
-

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

- -
-
host
-
string. Le nom d'hôte du serveur proxy.
-
port
-
integer. Le numéro de port du serveur proxy.
-
type
-
-

string. Le type de serveur proxy. L'un des :

- -
    -
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • -
  • "https": proxy HTTP sur connexion TLS vers proxy
  • -
  • "socks": SOCKS v5 proxy
  • -
  • "socks4": SOCKS v4 proxy
  • -
  • "direct": pas de proxy
  • -
  • "unknown": proxy inconnu
  • -
-
-
username
-
string. Nom d'utilisateur pour le service proxy.
-
proxyDNS
-
boolean. 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.
-
failoverTimeout
-
integer. 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.
-
-
-
requestId
-
string. 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.
-
responseHeaders{{optional_inline}}
-
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
-
statusCode
-
integer. Code d'état HTTP standard renvoyé par le serveur.
-
statusLine
-
string. 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
-
tabId
-
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
-
timeStamp
-
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
-
type
-
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
-
url
-
string. Cible de la demande.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.onResponseStarted", 10)}}

- -

Exemples

- -
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]}
-);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.md new file mode 100644 index 0000000000..60f8f4a5b2 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.md @@ -0,0 +1,200 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancé lorsque le premier octet du corps de réponse est reçu.

+ +

Cet événement est à titre d'information seulement.

+ +

Syntaxe

+ +
browser.webRequest.onResponseStarted.addListener(
+  listener,             // function
+  filter,               //  object
+  extraInfoSpec         //  optional array of strings
+)
+browser.webRequest.onResponseStarted.removeListener(listener)
+browser.webRequest.onResponseStarted.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback, filter, extraInfoSpec)
+
Ajouter un auditeur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+

Une fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

+
+
details
+
object. Détails sur la demande. Voir les details ci-dessous.
+
+
+
filter
+
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
+
extraInfoSpec{{optional_inline}}
+

array de string. Options supplémentaires pour l'événement. Vous ne pouvez passer qu'une seule valeur :

+
    +
  • "responseHeaders": inclure responseHeaders dans l'objet détails transmis à l'auditeur
  • +
+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
documentUrl
+
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
+
frameId
+
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
+
fromCache
+
boolean. Indique si cette réponse a été récupérée dans le cache du disque.
+
ip{{optional_inline}}
+
string. 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.
+
method
+
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
+
originUrl
+
+

string. 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 originUrl de la requête résultante est "https://example.com".

+ +

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

+
+
parentFrameId
+
integer. 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.
+
proxyInfo
+
+

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

+ +
+
host
+
string. Le nom d'hôte du serveur proxy.
+
port
+
integer. Le numéro de port du serveur proxy.
+
type
+
+

string. Le type de serveur proxy. L'un des :

+ +
    +
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • +
  • "https": proxy HTTP sur connexion TLS vers proxy
  • +
  • "socks": SOCKS v5 proxy
  • +
  • "socks4": SOCKS v4 proxy
  • +
  • "direct": pas de proxy
  • +
  • "unknown": proxy inconnu
  • +
+
+
username
+
string. Nom d'utilisateur pour le service proxy.
+
proxyDNS
+
boolean. 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.
+
failoverTimeout
+
integer. 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.
+
+
+
requestId
+
string. 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.
+
responseHeaders{{optional_inline}}
+
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
+
statusCode
+
integer. Code d'état HTTP standard renvoyé par le serveur.
+
statusLine
+
string. 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
+
tabId
+
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
+
timeStamp
+
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
+
type
+
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
+
url
+
string. Cible de la demande.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.onResponseStarted", 10)}}

+ +

Exemples

+ +
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]}
+);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index c091296420..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.html +++ /dev/null @@ -1,197 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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  {{WebExtAPIRef("webRequest.onBeforeSendHeaders", "onBeforeSendHeaders")}}, vous verrez la version modifiée ici.

- -

Cet événement est à titre d'information seulement.

- -

Syntaxe

- -
browser.webRequest.onSendHeaders.addListener(
-  listener,             // function
-  filter,               //  object
-  extraInfoSpec         //  optional array of strings
-)
-browser.webRequest.onSendHeaders.removeListener(listener)
-browser.webRequest.onSendHeaders.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback, filter, extraInfoSpec)
-
Ajouter un auditeur à cet événement.
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

- -
-
details
-
object. Détails sur la demande. Voir les details ci-dessous.
-
-
-
filter
-
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
-
extraInfoSpec{{optional_inline}}
-

array de string. Options supplémentaires pour l'événement. Vous ne pouvez passer qu'une seule valeur ici :

-
    -
  • "requestHeaders": inclure les en-têtes de requête dans l'objet détails transmis à l'auditeur
  • -
-
-
- -

Objets supplémentaires

- -

détails

- -
-
documentUrl
-
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
-
frameId
-
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
-
method
-
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
-
originUrl
-
-

string. 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 originUrl de la requête résultante est "https://example.com".

- -

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

-
-
parentFrameId
-
integer. 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.
-
proxyInfo
-
-

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

- -
-
host
-
string. Le nom d'hôte du serveur proxy.
-
port
-
integer. Le numéro de port du serveur proxy.
-
type
-
-

string. Le type de serveur proxy. L'un des :

- -
    -
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • -
  • "https": proxy HTTP sur connexion TLS vers proxy
  • -
  • "socks": SOCKS v5 proxy
  • -
  • "socks4": SOCKS v4 proxy
  • -
  • "direct": pas de proxy
  • -
  • "unknown": proxy inconnu
  • -
-
-
username
-
string. Nom d'utilisateur pour le service proxy.
-
proxyDNS
-
boolean. 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.
-
failoverTimeout
-
integer. 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.
-
-
-
requestId
-
string. 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.
-
requestHeaders{{optional_inline}}
-
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
-
tabId
-
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
-
timeStamp
-
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
-
type
-
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
-
url
-
string. Cible de la demande.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.onSendHeaders", 10)}}

- -

Exemples

- -

Ce code enregistre tous les cookies qui seront envoyés en faisant des demandes au modèle de match cible :

- -
// 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"]
-);
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.md new file mode 100644 index 0000000000..c091296420 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.md @@ -0,0 +1,197 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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  {{WebExtAPIRef("webRequest.onBeforeSendHeaders", "onBeforeSendHeaders")}}, vous verrez la version modifiée ici.

+ +

Cet événement est à titre d'information seulement.

+ +

Syntaxe

+ +
browser.webRequest.onSendHeaders.addListener(
+  listener,             // function
+  filter,               //  object
+  extraInfoSpec         //  optional array of strings
+)
+browser.webRequest.onSendHeaders.removeListener(listener)
+browser.webRequest.onSendHeaders.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback, filter, extraInfoSpec)
+
Ajouter un auditeur à cet événement.
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument listener est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifiez si listener est enregistré à cet événement. Retourne true s'il est écouté, sinon false.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lorsque cet événement se produira. La fonction sera passée les arguments suivants :

+ +
+
details
+
object. Détails sur la demande. Voir les details ci-dessous.
+
+
+
filter
+
{{WebExtAPIRef('webRequest.RequestFilter')}}. Un filtre qui restreint les événements qui seront envoyés à cet auditeur.
+
extraInfoSpec{{optional_inline}}
+

array de string. Options supplémentaires pour l'événement. Vous ne pouvez passer qu'une seule valeur ici :

+
    +
  • "requestHeaders": inclure les en-têtes de requête dans l'objet détails transmis à l'auditeur
  • +
+
+
+ +

Objets supplémentaires

+ +

détails

+ +
+
documentUrl
+
string. 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 documentUrl pour l'image ou l'iframe sera "https://example.com". Pour un document de niveau supérieur, documentUrl n'est pas défini.
+
frameId
+
integer. 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é (type is main_frame or sub_frame), frameId indique l'ID de ce cadre et non l'ID du cadre extérieur. Les ID de trame sont uniques dans un onglet.
+
method
+
string. Méthode HTTP standard : par exemple, "GET" ou "POST".
+
originUrl
+
+

string. 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 originUrl de la requête résultante est "https://example.com".

+ +

L'originUrl est souvent mais pas toujours la même chose que documentUrl.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 documentUrl pour la requête résultante sera le document parent de l'iframe, mais l'originUrl sera l'URL du document dans l'iframe qui contenait le lien.

+
+
parentFrameId
+
integer. 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.
+
proxyInfo
+
+

object. Cette propriété n'est présente que si la demande est proxied. Il contient les propriétés suivantes :

+ +
+
host
+
string. Le nom d'hôte du serveur proxy.
+
port
+
integer. Le numéro de port du serveur proxy.
+
type
+
+

string. Le type de serveur proxy. L'un des :

+ +
    +
  • "http": proxy HTTP (ou SSL CONNECT pour HTTPS)
  • +
  • "https": proxy HTTP sur connexion TLS vers proxy
  • +
  • "socks": SOCKS v5 proxy
  • +
  • "socks4": SOCKS v4 proxy
  • +
  • "direct": pas de proxy
  • +
  • "unknown": proxy inconnu
  • +
+
+
username
+
string. Nom d'utilisateur pour le service proxy.
+
proxyDNS
+
boolean. 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.
+
failoverTimeout
+
integer. 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.
+
+
+
requestId
+
string. 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.
+
requestHeaders{{optional_inline}}
+
{{WebExtAPIRef('webRequest.HttpHeaders')}}. Les en-têtes de réponse HTTP qui ont été reçus avec cette réponse.
+
tabId
+
integer. ID de l'onglet dans lequel la demande a lieu. Définir à -1 si la requête n'est pas liée à un onglet.
+
timeStamp
+
number. L'heure à laquelle cet événement s'est déclenché, en millisecondes depuis l'époque.
+
type
+
{{WebExtAPIRef('webRequest.ResourceType')}}. Le type de ressource demandée : par exemple, "image", "script", "stylesheet".
+
url
+
string. Cible de la demande.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.onSendHeaders", 10)}}

+ +

Exemples

+ +

Ce code enregistre tous les cookies qui seront envoyés en faisant des demandes au modèle de match cible :

+ +
// 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"]
+);
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 5136764a13..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/requestfilter/index.html +++ /dev/null @@ -1,79 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un objet décrivant les filtres à appliquer aux événements webRequest.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
urls
-
array de string. Un tableau de motifs (Match patterns). 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.
-
types{{optional_inline}}
-
array de {{WebExtAPIRef('webRequest.ResourceType')}}. 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.
-
tabId{{optional_inline}}
-
integer. L'auditeur ne sera appelé que pour les requêtes provenant du {{WebExtAPIRef("tabs.Tab", "tab")}} identifié par cet ID.
-
windowId{{optional_inline}}
-
integer. L'auditeur ne sera appelé que pour les requêtes provenant du  {{WebExtAPIRef("windows.Window", "window")}} identifié par cet ID.
-
incognito {{optional_inline}}
-
boolean. Si elles sont fournies, les demandes qui ne correspondent pas à l'état incognito (true ou false) seront filtrées.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.RequestFilter")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/requestfilter/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/requestfilter/index.md new file mode 100644 index 0000000000..5136764a13 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/requestfilter/index.md @@ -0,0 +1,79 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un objet décrivant les filtres à appliquer aux événements webRequest.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
urls
+
array de string. Un tableau de motifs (Match patterns). 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.
+
types{{optional_inline}}
+
array de {{WebExtAPIRef('webRequest.ResourceType')}}. 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.
+
tabId{{optional_inline}}
+
integer. L'auditeur ne sera appelé que pour les requêtes provenant du {{WebExtAPIRef("tabs.Tab", "tab")}} identifié par cet ID.
+
windowId{{optional_inline}}
+
integer. L'auditeur ne sera appelé que pour les requêtes provenant du  {{WebExtAPIRef("windows.Window", "window")}} identifié par cet ID.
+
incognito {{optional_inline}}
+
boolean. Si elles sont fournies, les demandes qui ne correspondent pas à l'état incognito (true ou false) seront filtrées.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.RequestFilter")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index f3d0726ba2..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/resourcetype/index.html +++ /dev/null @@ -1,118 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Il est utilisé pour filtrer 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.

- -

Type

- -

Les valeurs de ce type sont des chaînes de caractères. Les valeurs possibles sont :

- -
-
beacon
-
Demandes envoyées par le biais de l'API Beacon.
-
csp_report
-
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.
-
font
-
Polices Web chargées pour un {{cssxref("@font-face")}} règle CSS.
-
image
-
Les ressources chargées pour être rendues sous forme d'image, à l'exception de  imageset sur les navigateurs qui prennent en charge ce type (voir la compatibilité des navigateurs ci-dessous).
-
imageset
-
Images chargées par un élément {{HTMLElement("picture")}} ou données dans un attribut {{htmlattrxref("srcset", "img")}} d'un élement <img>.
-
- -
-
main_frame
-
Documents de niveau chargés dans un objet.
-
media
-
Ressources chargées par un élément  {{HTMLElement("video")}} ou  {{HTMLElement("audio")}}.
-
object
-

Ressources chargées par un élément {{HTMLElement("object")}} ou {{HTMLElement("embed")}}.

-

Les navigateurs qui n'ont pas de type object_subrequest dédié (voir compatibilité des navigateurs ci-dessous), étiquettent également les requêtes ultérieures envoyées par le plugin en tant object.

-
object_subrequest
-
Requêtes envoyées par plugins.
-
ping
-

Demandes envoyées à l'URL donnée dans l'attribut {{htmlattrxref("ping", "a")}} d'un hyperlien, lorsque l'hyperlien est suivi.

-

Les navigateurs qui n'ont pas de type de balise dédié (voir la compatibilité des navigateurs ci-dessous), étiquettent également les requêtes envoyées par l'API Beacon en tant que ping.

-
script
-
Code chargé pour être exécuté par un élément {{HTMLElement("script")}} ou exécuté dans un Worker.
-
speculative
-
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.
-
stylesheet
-
Feuilles de style CSS chargées pour décrire la représentation d'un document.
-
sub_frame
-
Documents chargés dans un élément {{HTMLElement("iframe")}} ou {{HTMLElement("frame")}}.
-
web_manifest
-
Manifests Web App chargés pour les sites Web qui peuvent être installés sur l'écran d'accueil.
-
websocket
-
Requêtes initiant une connexion à un serveur via l'API WebSocket.
-
xbl
-
XBL bindings chargés pour étendre le comportement des éléments d'un document.
-
xml_dtd
-
DTDs chargées pour un document XML.
-
xmlhttprequest
-
Requêtes envoyées par un objet {{domxref("XMLHttpRequest")}} ou par l'API Fetch.
-
xslt
-
Feuilles de style XSLT chargées pour transformer un document XML
-
other
-
Ressources qui ne sont couvertes par aucun autre type disponible.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.ResourceType")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/resourcetype/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/resourcetype/index.md new file mode 100644 index 0000000000..f3d0726ba2 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/resourcetype/index.md @@ -0,0 +1,118 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Il est utilisé pour filtrer 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.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes de caractères. Les valeurs possibles sont :

+ +
+
beacon
+
Demandes envoyées par le biais de l'API Beacon.
+
csp_report
+
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.
+
font
+
Polices Web chargées pour un {{cssxref("@font-face")}} règle CSS.
+
image
+
Les ressources chargées pour être rendues sous forme d'image, à l'exception de  imageset sur les navigateurs qui prennent en charge ce type (voir la compatibilité des navigateurs ci-dessous).
+
imageset
+
Images chargées par un élément {{HTMLElement("picture")}} ou données dans un attribut {{htmlattrxref("srcset", "img")}} d'un élement <img>.
+
+ +
+
main_frame
+
Documents de niveau chargés dans un objet.
+
media
+
Ressources chargées par un élément  {{HTMLElement("video")}} ou  {{HTMLElement("audio")}}.
+
object
+

Ressources chargées par un élément {{HTMLElement("object")}} ou {{HTMLElement("embed")}}.

+

Les navigateurs qui n'ont pas de type object_subrequest dédié (voir compatibilité des navigateurs ci-dessous), étiquettent également les requêtes ultérieures envoyées par le plugin en tant object.

+
object_subrequest
+
Requêtes envoyées par plugins.
+
ping
+

Demandes envoyées à l'URL donnée dans l'attribut {{htmlattrxref("ping", "a")}} d'un hyperlien, lorsque l'hyperlien est suivi.

+

Les navigateurs qui n'ont pas de type de balise dédié (voir la compatibilité des navigateurs ci-dessous), étiquettent également les requêtes envoyées par l'API Beacon en tant que ping.

+
script
+
Code chargé pour être exécuté par un élément {{HTMLElement("script")}} ou exécuté dans un Worker.
+
speculative
+
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.
+
stylesheet
+
Feuilles de style CSS chargées pour décrire la représentation d'un document.
+
sub_frame
+
Documents chargés dans un élément {{HTMLElement("iframe")}} ou {{HTMLElement("frame")}}.
+
web_manifest
+
Manifests Web App chargés pour les sites Web qui peuvent être installés sur l'écran d'accueil.
+
websocket
+
Requêtes initiant une connexion à un serveur via l'API WebSocket.
+
xbl
+
XBL bindings chargés pour étendre le comportement des éléments d'un document.
+
xml_dtd
+
DTDs chargées pour un document XML.
+
xmlhttprequest
+
Requêtes envoyées par un objet {{domxref("XMLHttpRequest")}} ou par l'API Fetch.
+
xslt
+
Feuilles de style XSLT chargées pour transformer un document XML
+
other
+
Ressources qui ne sont couvertes par aucun autre type disponible.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.ResourceType")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 2c6ae1321c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/securityinfo/index.html +++ /dev/null @@ -1,96 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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()")}}.

- -

Si la requête n'est pas sécurisée par TLS, alors cet objet ne contiendra que l'état de la propriété state, dont la valeur sera "insecure".

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
certificates
-

Array de {{WebExtAPIRef("webRequest.CertificateInfo", "CertificateInfo")}}. Si {{WebExtAPIRef("webRequest.getSecurityInfo()")}} a été appelé avec l'option certificateChain présente et définie sur true, cela contiendra un objet CertificateInfo pour chaque certificat de la chaîne, depuis le certificat du serveur jusqu'à et y compris la racine de confiance.

-

Sinon, il contiendra un seul objet CertificateInfo, pour le certificat du serveur.

-
certificateTransparencyStatus {{optional_inline}}
-
-

String. Indique l'état de la transparence des certificats pour la connexion. Ceci peut prendre l'une des valeurs suivantes :

- -
    -
  • "not_applicable"
  • -
  • "policy_compliant"
  • -
  • "policy_not_enough_scts"
  • -
  • "policy_not_diverse_scts"
  • -
-
-
cipherSuite {{optional_inline}}
-
String. Suite de chiffrement utilisée pour la connexion, formatée selon la specification TLS : par exemple, "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256".
-
errorMessage {{optional_inline}}
-
-

String. 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 status will be "broken" and the errorMessage property will contain a string describing the error, taken from Firefox's internal list of error codes.

- -

Note though that at present you can only call getSecurityInfo() in the onHeaderReceived listener, and the onHeaderReceived event is not fired when the handshake fails. So in practice this will never be set. 

-
-
hpkp {{optional_inline}}
-
Boolean. true si l'hôte utilise Public Key Pinning, sinon false.
-
hsts {{optional_inline}}
-
Boolean. true si l'hôte utilise Strict Transport Security, sinon false.
-
isDomainMismatch {{optional_inline}}
-
Boolean. true si le nom de domaine du serveur ne correspond pas au nom de domaine dans son certificat, sinon false.
-
isExtendedValidation {{optional_inline}}
-
Boolean. true si le serveur possède un Extended Validation Certificate, sinon false.
-
isNotValidAtThisTime {{optional_inline}}
-
Boolean. true 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 false.
-
isUntrusted {{optional_inline}}
-
Boolean. true si une chaîne de retour à un certificat racine de confiance n'a pas pu être construite, sinon false.
-
keaGroupName {{optional_inline}}
-
String. Si state est "sécurisé" cela décrit l'algorithme d'échange de clé utilisé dans cette requête.
-
protocolVersion {{optional_inline}}
-
-

String. Version du protocole TLS utilisé. L'un des :

- -
    -
  • "TLSv1"
  • -
  • "TLSv1.1"
  • -
  • "TLSv1.2"
  • -
  • "TLSv1.3"
  • -
  • "inconnu" (si la version n'est pas valide)
  • -
-
-
signatureSchemeName {{optional_inline}}
-
String. Si state est "sécurisé", cela décrit le schéma de signature utilisé dans cette requête.t.
-
state
-
-

String. État de la connexion. L'un des :

- -
    -
  • "broken": la poignée de main TLS a échoué (par exemple, le certificat a expiré)
  • -
  • "insecure": la connexion n'est pas une connexion TLS
  • -
  • "secure": la connexion est une connexion TLS sécurisée
  • -
  • "weak": la connexion est une connexion TLS mais est considérée comme faible. Vous pouvez examiner les weaknessReasons pour découvrir le problème.
  • -
- -

Notez cependant qu'actuellement, vous ne pouvez appele getSecurityInfo() que dans l'écouteur onHeaderReceived, et l'événement onHeaderReceived n'est pas déclenché lorsque la poignée de main échoue. Ainsi, dans la pratique, il ne sera jamais réglé sur "cassé".

-
-
weaknessReasons {{optional_inline}}
-
String. Si l'état 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.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.SecurityInfo", 10)}}

- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/securityinfo/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/securityinfo/index.md new file mode 100644 index 0000000000..2c6ae1321c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/securityinfo/index.md @@ -0,0 +1,96 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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()")}}.

+ +

Si la requête n'est pas sécurisée par TLS, alors cet objet ne contiendra que l'état de la propriété state, dont la valeur sera "insecure".

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
certificates
+

Array de {{WebExtAPIRef("webRequest.CertificateInfo", "CertificateInfo")}}. Si {{WebExtAPIRef("webRequest.getSecurityInfo()")}} a été appelé avec l'option certificateChain présente et définie sur true, cela contiendra un objet CertificateInfo pour chaque certificat de la chaîne, depuis le certificat du serveur jusqu'à et y compris la racine de confiance.

+

Sinon, il contiendra un seul objet CertificateInfo, pour le certificat du serveur.

+
certificateTransparencyStatus {{optional_inline}}
+
+

String. Indique l'état de la transparence des certificats pour la connexion. Ceci peut prendre l'une des valeurs suivantes :

+ +
    +
  • "not_applicable"
  • +
  • "policy_compliant"
  • +
  • "policy_not_enough_scts"
  • +
  • "policy_not_diverse_scts"
  • +
+
+
cipherSuite {{optional_inline}}
+
String. Suite de chiffrement utilisée pour la connexion, formatée selon la specification TLS : par exemple, "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256".
+
errorMessage {{optional_inline}}
+
+

String. 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 status will be "broken" and the errorMessage property will contain a string describing the error, taken from Firefox's internal list of error codes.

+ +

Note though that at present you can only call getSecurityInfo() in the onHeaderReceived listener, and the onHeaderReceived event is not fired when the handshake fails. So in practice this will never be set. 

+
+
hpkp {{optional_inline}}
+
Boolean. true si l'hôte utilise Public Key Pinning, sinon false.
+
hsts {{optional_inline}}
+
Boolean. true si l'hôte utilise Strict Transport Security, sinon false.
+
isDomainMismatch {{optional_inline}}
+
Boolean. true si le nom de domaine du serveur ne correspond pas au nom de domaine dans son certificat, sinon false.
+
isExtendedValidation {{optional_inline}}
+
Boolean. true si le serveur possède un Extended Validation Certificate, sinon false.
+
isNotValidAtThisTime {{optional_inline}}
+
Boolean. true 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 false.
+
isUntrusted {{optional_inline}}
+
Boolean. true si une chaîne de retour à un certificat racine de confiance n'a pas pu être construite, sinon false.
+
keaGroupName {{optional_inline}}
+
String. Si state est "sécurisé" cela décrit l'algorithme d'échange de clé utilisé dans cette requête.
+
protocolVersion {{optional_inline}}
+
+

String. Version du protocole TLS utilisé. L'un des :

+ +
    +
  • "TLSv1"
  • +
  • "TLSv1.1"
  • +
  • "TLSv1.2"
  • +
  • "TLSv1.3"
  • +
  • "inconnu" (si la version n'est pas valide)
  • +
+
+
signatureSchemeName {{optional_inline}}
+
String. Si state est "sécurisé", cela décrit le schéma de signature utilisé dans cette requête.t.
+
state
+
+

String. État de la connexion. L'un des :

+ +
    +
  • "broken": la poignée de main TLS a échoué (par exemple, le certificat a expiré)
  • +
  • "insecure": la connexion n'est pas une connexion TLS
  • +
  • "secure": la connexion est une connexion TLS sécurisée
  • +
  • "weak": la connexion est une connexion TLS mais est considérée comme faible. Vous pouvez examiner les weaknessReasons pour découvrir le problème.
  • +
+ +

Notez cependant qu'actuellement, vous ne pouvez appele getSecurityInfo() que dans l'écouteur onHeaderReceived, et l'événement onHeaderReceived n'est pas déclenché lorsque la poignée de main échoue. Ainsi, dans la pratique, il ne sera jamais réglé sur "cassé".

+
+
weaknessReasons {{optional_inline}}
+
String. Si l'état 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.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.SecurityInfo", 10)}}

+ +

{{WebExtExamples}}

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 deleted file mode 100644 index a96fd5ef96..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/close/index.html +++ /dev/null @@ -1,61 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Notez la différence entre cette fonction et  {{WebExtAPIRef("webRequest.StreamFilter.disconnect()", "disconnect()")}}. Avec  disconnect(), le navigateur continuera à traiter d'autres données de réponse, mais il ne sera pas accessible par le filtre. Avec close(), le navigateur ignorera toutes les données de réponse qui n'ont pas déjà été transmises au moteur de rendu.

- -

Vous devriez toujours appeler close() ou disconnect() une fois que vous n'avez plus besoin d'interagir avec la réponse.

- -

Vous ne pouvez pas appeler cette fonction avant que l'événement  {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}} ne soit déclenché.

- -

Syntaxe

- -
filter.close()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

None.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.StreamFilter.close", 10)}}

- -

Exemples

- -

Cet exemple remplacera le contenu de la page par "texte de remplacement"  :

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData(details.requestId);
-
-  filter.onstart = event => {
-    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"]
-);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/close/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/close/index.md new file mode 100644 index 0000000000..a96fd5ef96 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/close/index.md @@ -0,0 +1,61 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Notez la différence entre cette fonction et  {{WebExtAPIRef("webRequest.StreamFilter.disconnect()", "disconnect()")}}. Avec  disconnect(), le navigateur continuera à traiter d'autres données de réponse, mais il ne sera pas accessible par le filtre. Avec close(), le navigateur ignorera toutes les données de réponse qui n'ont pas déjà été transmises au moteur de rendu.

+ +

Vous devriez toujours appeler close() ou disconnect() une fois que vous n'avez plus besoin d'interagir avec la réponse.

+ +

Vous ne pouvez pas appeler cette fonction avant que l'événement  {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}} ne soit déclenché.

+ +

Syntaxe

+ +
filter.close()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

None.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.StreamFilter.close", 10)}}

+ +

Exemples

+ +

Cet exemple remplacera le contenu de la page par "texte de remplacement"  :

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData(details.requestId);
+
+  filter.onstart = event => {
+    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"]
+);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index e2547a136d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/disconnect/index.html +++ /dev/null @@ -1,65 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
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.
- -
- -
Notez la différence entre cette fonction et {{WebExtAPIRef("webRequest.StreamFilter.close()", "close()")}}. Avec  disconnect(), le navigateur continuera à traiter d'autres données de réponse, mais il ne sera pas accessible par le filtre. Avec close(), le navigateur ignorera toutes les données de réponse qui n'ont pas déjà été transmises au moteur de rendu.
- -
- -

Vous devriez toujours appeler disconnect() ou close() une fois que vous n'avez plus besoin d'interagir avec la réponse.

- -

Vous ne pouvez pas appeler cette fonction avant que l'événement {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}} ne soit déclenché.

- -

Syntaxe

- -
filter.disconnect()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

None.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.StreamFilter.disconnect", 10)}}

- -

Exemples

- -

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 :

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData(details.requestId);
-
-  filter.onstart = event => {
-    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"]
-);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/disconnect/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/disconnect/index.md new file mode 100644 index 0000000000..e2547a136d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/disconnect/index.md @@ -0,0 +1,65 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
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.
+ +
+ +
Notez la différence entre cette fonction et {{WebExtAPIRef("webRequest.StreamFilter.close()", "close()")}}. Avec  disconnect(), le navigateur continuera à traiter d'autres données de réponse, mais il ne sera pas accessible par le filtre. Avec close(), le navigateur ignorera toutes les données de réponse qui n'ont pas déjà été transmises au moteur de rendu.
+ +
+ +

Vous devriez toujours appeler disconnect() ou close() une fois que vous n'avez plus besoin d'interagir avec la réponse.

+ +

Vous ne pouvez pas appeler cette fonction avant que l'événement {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}} ne soit déclenché.

+ +

Syntaxe

+ +
filter.disconnect()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

None.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.StreamFilter.disconnect", 10)}}

+ +

Exemples

+ +

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 :

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData(details.requestId);
+
+  filter.onstart = event => {
+    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"]
+);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 231af486e9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/error/index.html +++ /dev/null @@ -1,44 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

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")}}.

-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.StreamFilter.error", 10)}}

- -

Exemples

- -

Cet exemple ajoute un écouteur {{WebExtAPIRef("webRequest.StreamFilter.onerror", "onerror")}} qui enregistre la valeur de error.

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData("12345");
-
-  filter.onerror = event => {
-    console.log(`Error: ${filter.error}`);
-  }
-
-  //return {}; // not needed
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  listener,
-  {urls: ["<all_urls>"], types: ["main_frame"]},
-  ["blocking"]
-);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/error/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/error/index.md new file mode 100644 index 0000000000..231af486e9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/error/index.md @@ -0,0 +1,44 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

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")}}.

+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.StreamFilter.error", 10)}}

+ +

Exemples

+ +

Cet exemple ajoute un écouteur {{WebExtAPIRef("webRequest.StreamFilter.onerror", "onerror")}} qui enregistre la valeur de error.

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData("12345");
+
+  filter.onerror = event => {
+    console.log(`Error: ${filter.error}`);
+  }
+
+  //return {}; // not needed
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  listener,
+  {urls: ["<all_urls>"], types: ["main_frame"]},
+  ["blocking"]
+);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 5e80064be0..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/index.html +++ /dev/null @@ -1,124 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Un StreamFilter est un objet que vous pouvez utiliser pour surveiller et modifier les réponses HTTP.

- -

Pour créer un StreamFilter, appelez {{WebExtAPIRef("webRequest.filterResponseData()")}}, en lui passant l'ID de la requête web que vous voulez filtrer.

- -

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.

- -

Le filtre génère quatre événements différents :

- - - -

Vous pouvez écouter chaque événement en assignant une fonction d'écoute à son attribut :

- -
filter.onstart = event => {
-  console.log("started");
-}
- -

Notez que la demande est bloquée pendant l'exécution de n'importe quel auditeur d'événement.

- -

Le filtre fournit une fonction {{WebExtAPIRef("webRequest.StreamFilter.write()", "write()")}}. A tout moment à partir de l'événement onstart, vous pouvez utiliser cette fonction pour écrire des données dans le flux de sortie.

- -

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 write(): donc si vous ajoutez un auditeur mais n'appelez pas write(), alors la page rendue sera vide.

- -

Une fois que vous avez terminé d'interagir avec la réponse, vous appelez l'un ou l'autre des éléments suivants :

- - - -

Le filtre fournit également des fonctions à {{WebEXTAPIRef("webRequest.StreamFilter.suspend()", "suspend()")}} et {{WebEXTAPIRef("webRequest.StreamFilter.resume()", "resume()")}} la requête.

- -

Méthodes

- -
-
{{WebExtAPIRef("webRequest.StreamFilter.close()")}}
-
Ferme la demande.
-
{{WebExtAPIRef("webRequest.StreamFilter.disconnect()")}}
-
Déconnecte le filtre de la requête.
-
{{WebExtAPIRef("webRequest.StreamFilter.resume()")}}
-
Reprend le traitement de la demande.
-
- -
-
{{WebExtAPIRef("webRequest.StreamFilter.suspend()")}}
-
Suspend le traitement de la demande.
-
{{WebExtAPIRef("webRequest.StreamFilter.write()")}}
-
Écrit quelques données dans le flux de sortie.
-
- -

Propriétés

- -
-
{{WebExtAPIRef("webRequest.StreamFilter.ondata")}}
-
Gestionnaire d'événements qui est appelé lorsque les données entrantes sont disponibles.
-
{{WebExtAPIRef("webRequest.StreamFilter.onerror")}}
-
Gestionnaire d'événements qui est appelé lorsqu'une erreur s'est produite.
-
{{WebExtAPIRef("webRequest.StreamFilter.onstart")}}
-
Gestionnaire d'événements qui est appelé lorsque le flux est sur le point de commencer à recevoir des données.
-
{{WebExtAPIRef("webRequest.StreamFilter.onstop")}}
-
Gestionnaire d'événements qui est appelé lorsque le flux n'a plus de données à livrer et qu'il s'est fermé.
-
{{WebExtAPIRef("webRequest.StreamFilter.error")}}
-
Quand {{WebExtAPIRef("webRequest.StreamFilter.onerror")}} est appelé, cela décrira l'erreur.
-
{{WebExtAPIRef("webRequest.StreamFilter.status")}}
-
Décrit l'état actuel du flux.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.StreamFilter", 10)}}

- -

Exemples

- -

Ce code écoute pour onstart, ondata et onstop. Il enregistre simplement ces événements et les données de réponse elles-mêmes :

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData(details.requestId);
-
-  filter.onstart = event => {
-    console.log("started");
-  }
-
-  filter.ondata = event => {
-    console.log(event.data);
-    filter.write(event.data);
-  }
-
-  filter.onstop = event => {
-    console.log("finished");
-    filter.disconnect();
-  }
-
-  //return {}; // not needed
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  listener,
-  {urls: ["https://example.org/"], types: ["main_frame"]},
-  ["blocking"]
-);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/index.md new file mode 100644 index 0000000000..5e80064be0 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/index.md @@ -0,0 +1,124 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Un StreamFilter est un objet que vous pouvez utiliser pour surveiller et modifier les réponses HTTP.

+ +

Pour créer un StreamFilter, appelez {{WebExtAPIRef("webRequest.filterResponseData()")}}, en lui passant l'ID de la requête web que vous voulez filtrer.

+ +

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.

+ +

Le filtre génère quatre événements différents :

+ + + +

Vous pouvez écouter chaque événement en assignant une fonction d'écoute à son attribut :

+ +
filter.onstart = event => {
+  console.log("started");
+}
+ +

Notez que la demande est bloquée pendant l'exécution de n'importe quel auditeur d'événement.

+ +

Le filtre fournit une fonction {{WebExtAPIRef("webRequest.StreamFilter.write()", "write()")}}. A tout moment à partir de l'événement onstart, vous pouvez utiliser cette fonction pour écrire des données dans le flux de sortie.

+ +

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 write(): donc si vous ajoutez un auditeur mais n'appelez pas write(), alors la page rendue sera vide.

+ +

Une fois que vous avez terminé d'interagir avec la réponse, vous appelez l'un ou l'autre des éléments suivants :

+ + + +

Le filtre fournit également des fonctions à {{WebEXTAPIRef("webRequest.StreamFilter.suspend()", "suspend()")}} et {{WebEXTAPIRef("webRequest.StreamFilter.resume()", "resume()")}} la requête.

+ +

Méthodes

+ +
+
{{WebExtAPIRef("webRequest.StreamFilter.close()")}}
+
Ferme la demande.
+
{{WebExtAPIRef("webRequest.StreamFilter.disconnect()")}}
+
Déconnecte le filtre de la requête.
+
{{WebExtAPIRef("webRequest.StreamFilter.resume()")}}
+
Reprend le traitement de la demande.
+
+ +
+
{{WebExtAPIRef("webRequest.StreamFilter.suspend()")}}
+
Suspend le traitement de la demande.
+
{{WebExtAPIRef("webRequest.StreamFilter.write()")}}
+
Écrit quelques données dans le flux de sortie.
+
+ +

Propriétés

+ +
+
{{WebExtAPIRef("webRequest.StreamFilter.ondata")}}
+
Gestionnaire d'événements qui est appelé lorsque les données entrantes sont disponibles.
+
{{WebExtAPIRef("webRequest.StreamFilter.onerror")}}
+
Gestionnaire d'événements qui est appelé lorsqu'une erreur s'est produite.
+
{{WebExtAPIRef("webRequest.StreamFilter.onstart")}}
+
Gestionnaire d'événements qui est appelé lorsque le flux est sur le point de commencer à recevoir des données.
+
{{WebExtAPIRef("webRequest.StreamFilter.onstop")}}
+
Gestionnaire d'événements qui est appelé lorsque le flux n'a plus de données à livrer et qu'il s'est fermé.
+
{{WebExtAPIRef("webRequest.StreamFilter.error")}}
+
Quand {{WebExtAPIRef("webRequest.StreamFilter.onerror")}} est appelé, cela décrira l'erreur.
+
{{WebExtAPIRef("webRequest.StreamFilter.status")}}
+
Décrit l'état actuel du flux.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.StreamFilter", 10)}}

+ +

Exemples

+ +

Ce code écoute pour onstart, ondata et onstop. Il enregistre simplement ces événements et les données de réponse elles-mêmes :

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData(details.requestId);
+
+  filter.onstart = event => {
+    console.log("started");
+  }
+
+  filter.ondata = event => {
+    console.log(event.data);
+    filter.write(event.data);
+  }
+
+  filter.onstop = event => {
+    console.log("finished");
+    filter.disconnect();
+  }
+
+  //return {}; // not needed
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  listener,
+  {urls: ["https://example.org/"], types: ["main_frame"]},
+  ["blocking"]
+);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 46483be6e3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/ondata/index.html +++ /dev/null @@ -1,195 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}} -

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 event qui contient une propriété de data, qui contient un morceau des données de réponse sous la forme d'un {{domxref("ArrayBuffer")}}.

-
- -

Exemples

- -

Cet exemple ajoute un écouteur ondata qui remplace "Example" dans la réponse par  "WebExtension Example".

- -

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.

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData(details.requestId);
-  let decoder = new TextDecoder("utf-8");
-  let encoder = new TextEncoder();
-
-  filter.ondata = event => {
-    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 => {
-    filter.close();
-  }
-
-  //return {}; // not needed
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  listener,
-  {urls: ["https://example.com/*"], types: ["main_frame"]},
-  ["blocking"]
-);
- -

Un autre exemple pour le traitement de documents volumineux :

- -
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 => {
-    data.push(event.data);
-  };
-
-  filter.onstop = event => {
-    let str = "";
-    if (data.length == 1) {
-      str = decoder.decode(data[0]);
-    }
-    else {
-      for (let i = 0; i < 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 $&');
-    filter.write(encoder.encode(str));
-    filter.close();
-  };
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  listener,
-  {urls: ["https://example.com/"], types: ["main_frame"]},
-  ["blocking"]
-);
- -

L'exemple ci-dessus peut aussi s'écrire ainsi :

- -
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 => {
-    data.push(decoder.decode(event.data, {stream: true}));
-  };
-
-  filter.onstop = event => {
-    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 $&');
-    filter.write(encoder.encode(str));
-    filter.close();
-  };
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  listener,
-  {urls: ["https://example.com/"], types: ["main_frame"]},
-  ["blocking"]
-);
- -

Cet exemple utilise un {{domxref("Blob")}}:

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData(details.requestId);
-  let encoder = new TextEncoder();
-
-  let data = [];
-  filter.ondata = event => {
-    data.push(event.data);
-  };
-
-  filter.onstop = async event => {
-    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 $&');
-    filter.write(encoder.encode(str));
-    filter.close();
-  };
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  listener,
-  {urls: ["https://example.com/"], types: ["main_frame"]},
-  ["blocking"]
-);
- -

Cet exemple combine tous les tampons en un simple tampon :

- -
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 => {
-    data.push(new Uint8Array(event.data));
-  };
-
-  filter.onstop = event => {
-    let combinedLength = 0;
-    for (let buffer of data) {
-      combinedLength += buffer.length;
-    }
-    let combinedArray = new Uint8Array(combinedLength);
-    let writeOffset = 0;
-    while (writeOffset < 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 $&');
-    filter.write(encoder.encode(str));
-    filter.close();
-  };
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  listener,
-  {urls: ["https://example.com/"], types: ["main_frame"]},
-  ["blocking"]
-);
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.StreamFilter.ondata", 10)}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/ondata/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/ondata/index.md new file mode 100644 index 0000000000..46483be6e3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/ondata/index.md @@ -0,0 +1,195 @@ +--- +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 +--- +
{{AddonSidebar()}} +

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 event qui contient une propriété de data, qui contient un morceau des données de réponse sous la forme d'un {{domxref("ArrayBuffer")}}.

+
+ +

Exemples

+ +

Cet exemple ajoute un écouteur ondata qui remplace "Example" dans la réponse par  "WebExtension Example".

+ +

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.

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData(details.requestId);
+  let decoder = new TextDecoder("utf-8");
+  let encoder = new TextEncoder();
+
+  filter.ondata = event => {
+    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 => {
+    filter.close();
+  }
+
+  //return {}; // not needed
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  listener,
+  {urls: ["https://example.com/*"], types: ["main_frame"]},
+  ["blocking"]
+);
+ +

Un autre exemple pour le traitement de documents volumineux :

+ +
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 => {
+    data.push(event.data);
+  };
+
+  filter.onstop = event => {
+    let str = "";
+    if (data.length == 1) {
+      str = decoder.decode(data[0]);
+    }
+    else {
+      for (let i = 0; i < 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 $&');
+    filter.write(encoder.encode(str));
+    filter.close();
+  };
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  listener,
+  {urls: ["https://example.com/"], types: ["main_frame"]},
+  ["blocking"]
+);
+ +

L'exemple ci-dessus peut aussi s'écrire ainsi :

+ +
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 => {
+    data.push(decoder.decode(event.data, {stream: true}));
+  };
+
+  filter.onstop = event => {
+    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 $&');
+    filter.write(encoder.encode(str));
+    filter.close();
+  };
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  listener,
+  {urls: ["https://example.com/"], types: ["main_frame"]},
+  ["blocking"]
+);
+ +

Cet exemple utilise un {{domxref("Blob")}}:

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData(details.requestId);
+  let encoder = new TextEncoder();
+
+  let data = [];
+  filter.ondata = event => {
+    data.push(event.data);
+  };
+
+  filter.onstop = async event => {
+    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 $&');
+    filter.write(encoder.encode(str));
+    filter.close();
+  };
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  listener,
+  {urls: ["https://example.com/"], types: ["main_frame"]},
+  ["blocking"]
+);
+ +

Cet exemple combine tous les tampons en un simple tampon :

+ +
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 => {
+    data.push(new Uint8Array(event.data));
+  };
+
+  filter.onstop = event => {
+    let combinedLength = 0;
+    for (let buffer of data) {
+      combinedLength += buffer.length;
+    }
+    let combinedArray = new Uint8Array(combinedLength);
+    let writeOffset = 0;
+    while (writeOffset < 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 $&');
+    filter.write(encoder.encode(str));
+    filter.close();
+  };
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  listener,
+  {urls: ["https://example.com/"], types: ["main_frame"]},
+  ["blocking"]
+);
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.StreamFilter.ondata", 10)}}

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 deleted file mode 100644 index d8f398ffa9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onerror/index.html +++ /dev/null @@ -1,49 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

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()")}}.

- -

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.

- -

Notez que cet événement n'est pas déclenché pour les erreurs réseau.

-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.StreamFilter.onerror", 10)}}

- -

Exemples

- -

Cet exemple ajoute un écouteur onerror qui enregistre la valeur de  {{WebExtAPIRef("webRequest.StreamFilter.error")}}.

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData("12345");
-
-  filter.onerror = event => {
-    console.log(`Error: ${filter.error}`);
-  }
-
-  //return {}; // not needed
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  listener,
-  {urls: ["<all_urls>"], types: ["main_frame"]},
-  ["blocking"]
-);
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onerror/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onerror/index.md new file mode 100644 index 0000000000..d8f398ffa9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onerror/index.md @@ -0,0 +1,49 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

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()")}}.

+ +

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.

+ +

Notez que cet événement n'est pas déclenché pour les erreurs réseau.

+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.StreamFilter.onerror", 10)}}

+ +

Exemples

+ +

Cet exemple ajoute un écouteur onerror qui enregistre la valeur de  {{WebExtAPIRef("webRequest.StreamFilter.error")}}.

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData("12345");
+
+  filter.onerror = event => {
+    console.log(`Error: ${filter.error}`);
+  }
+
+  //return {}; // not needed
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  listener,
+  {urls: ["<all_urls>"], types: ["main_frame"]},
+  ["blocking"]
+);
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 8d698238f0..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstart/index.html +++ /dev/null @@ -1,45 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

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()")}}.

-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.StreamFilter.onstart", 10)}}

- -

Exemples

- -

Cet exemple remplacera le contenu de la page par "texte de remplacement" :

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData(details.requestId);
-
-  filter.onstart = event => {
-    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"]
-);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstart/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstart/index.md new file mode 100644 index 0000000000..8d698238f0 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstart/index.md @@ -0,0 +1,45 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

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()")}}.

+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.StreamFilter.onstart", 10)}}

+ +

Exemples

+ +

Cet exemple remplacera le contenu de la page par "texte de remplacement" :

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData(details.requestId);
+
+  filter.onstart = event => {
+    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"]
+);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 1ae77d7ce5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstop/index.html +++ /dev/null @@ -1,49 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

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()")}}.

-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.StreamFilter.onstop", 10)}}

- -

Exemples

- -

Cet exemple ajoutera des "extra stuff" à la réponse  :

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData(details.requestId);
-  let encoder = new TextEncoder();
-
-  filter.ondata = event => {
-    // pass through all the response data
-    filter.write(event.data);
-  }
-
-  filter.onstop = event => {
-    filter.write(encoder.encode("extra stuff"));
-    filter.disconnect();
-  }
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  listener,
-  {urls: ["https://example.com/*"], types: ["main_frame"]},
-  ["blocking"]
-);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstop/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstop/index.md new file mode 100644 index 0000000000..1ae77d7ce5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/onstop/index.md @@ -0,0 +1,49 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

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()")}}.

+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.StreamFilter.onstop", 10)}}

+ +

Exemples

+ +

Cet exemple ajoutera des "extra stuff" à la réponse  :

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData(details.requestId);
+  let encoder = new TextEncoder();
+
+  filter.ondata = event => {
+    // pass through all the response data
+    filter.write(event.data);
+  }
+
+  filter.onstop = event => {
+    filter.write(encoder.encode("extra stuff"));
+    filter.disconnect();
+  }
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  listener,
+  {urls: ["https://example.com/*"], types: ["main_frame"]},
+  ["blocking"]
+);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 53fbef7737..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/resume/index.html +++ /dev/null @@ -1,61 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Reprend une requête qui a été précédemment suspendue par un appel à {{WebExtAPIRef("webRequest.StreamFilter.suspend()", "suspend()")}}.

- -

Vous ne pouvez pas appeler cette fonction avant que l'événement  {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}} ne soit déclenché.

- -

Syntaxe

- -
filter.suspend()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

None.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.StreamFilter.suspend", 10)}}

- -

Exemples

- -

Cet exemple utilise la suspend/resume pour retarder une requête web

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData(details.requestId);
-
-  filter.onstart = event => {
-    filter.suspend();
-
-    setTimeout(() => {
-      filter.resume();
-      filter.disconnect();
-    }, 1000);
-
-  }
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  listener,
-  {urls: ["https://example.org/"], types: ["main_frame"]},
-  ["blocking"]
-);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/resume/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/resume/index.md new file mode 100644 index 0000000000..53fbef7737 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/resume/index.md @@ -0,0 +1,61 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Reprend une requête qui a été précédemment suspendue par un appel à {{WebExtAPIRef("webRequest.StreamFilter.suspend()", "suspend()")}}.

+ +

Vous ne pouvez pas appeler cette fonction avant que l'événement  {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}} ne soit déclenché.

+ +

Syntaxe

+ +
filter.suspend()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

None.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.StreamFilter.suspend", 10)}}

+ +

Exemples

+ +

Cet exemple utilise la suspend/resume pour retarder une requête web

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData(details.requestId);
+
+  filter.onstart = event => {
+    filter.suspend();
+
+    setTimeout(() => {
+      filter.resume();
+      filter.disconnect();
+    }, 1000);
+
+  }
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  listener,
+  {urls: ["https://example.org/"], types: ["main_frame"]},
+  ["blocking"]
+);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index a235d323c2..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/status/index.html +++ /dev/null @@ -1,70 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
-

Une chaîne de caractères qui décrit l'état actuel de la demande. Ce sera l'une des valeurs suivantes :

- -
-
"uninitialized"
-
Le filtre n'est pas entièrement initialisé. Aucune fonction de filtrage ne peut être appelée.
-
"transferringdata"
-
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()")}}.
-
"finishedtransferringdata"
-
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.
-
"suspended"
-
 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.
-
"closed"
-
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.
-
"disconnected"
-
 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.
-
"failed"
-
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.
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.StreamFilter.status", 10)}}

- -

Exemples

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData(details.requestId);
-  console.log(filter.status);          // uninitialized
-
-  filter.onstart = event => {
-    console.log(filter.status);        // transferringdata
-  }
-
-  filter.ondata = event => {
-    console.log(filter.status);        // transferringdata
-    // pass through the response data
-    filter.write(event.data);
-  }
-
-  filter.onstop = event => {
-    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"]
-);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/status/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/status/index.md new file mode 100644 index 0000000000..a235d323c2 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/status/index.md @@ -0,0 +1,70 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
+

Une chaîne de caractères qui décrit l'état actuel de la demande. Ce sera l'une des valeurs suivantes :

+ +
+
"uninitialized"
+
Le filtre n'est pas entièrement initialisé. Aucune fonction de filtrage ne peut être appelée.
+
"transferringdata"
+
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()")}}.
+
"finishedtransferringdata"
+
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.
+
"suspended"
+
 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.
+
"closed"
+
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.
+
"disconnected"
+
 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.
+
"failed"
+
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.
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.StreamFilter.status", 10)}}

+ +

Exemples

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData(details.requestId);
+  console.log(filter.status);          // uninitialized
+
+  filter.onstart = event => {
+    console.log(filter.status);        // transferringdata
+  }
+
+  filter.ondata = event => {
+    console.log(filter.status);        // transferringdata
+    // pass through the response data
+    filter.write(event.data);
+  }
+
+  filter.onstop = event => {
+    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"]
+);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 3ea6f9e509..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/suspend/index.html +++ /dev/null @@ -1,61 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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()")}}.

- -

Vous ne pouvez pas appeler cette fonction avant que l'événement {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}} ne soit déclenché.

- -

Syntaxe

- -
filter.suspend()
-
- -

Paramètres

- -

None.

- -

Valeur retournée

- -

None.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.StreamFilter.suspend", 10)}}

- -

Exemples

- -

Cet exemple utilise la suspend/resume pour retarder une requête web.

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData(details.requestId);
-
-  filter.onstart = event => {
-    filter.suspend();
-
-    setTimeout(() => {
-      filter.resume();
-      filter.disconnect();
-    }, 1000);
-
-  }
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  listener,
-  {urls: ["https://example.org/"], types: ["main_frame"]},
-  ["blocking"]
-);
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/suspend/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/suspend/index.md new file mode 100644 index 0000000000..3ea6f9e509 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/suspend/index.md @@ -0,0 +1,61 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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()")}}.

+ +

Vous ne pouvez pas appeler cette fonction avant que l'événement {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}} ne soit déclenché.

+ +

Syntaxe

+ +
filter.suspend()
+
+ +

Paramètres

+ +

None.

+ +

Valeur retournée

+ +

None.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.StreamFilter.suspend", 10)}}

+ +

Exemples

+ +

Cet exemple utilise la suspend/resume pour retarder une requête web.

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData(details.requestId);
+
+  filter.onstart = event => {
+    filter.suspend();
+
+    setTimeout(() => {
+      filter.resume();
+      filter.disconnect();
+    }, 1000);
+
+  }
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  listener,
+  {urls: ["https://example.org/"], types: ["main_frame"]},
+  ["blocking"]
+);
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index 92146d4f82..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/write/index.html +++ /dev/null @@ -1,74 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -
Écrit quelques données de réponse dans le flux de sortie..
- -
- -
Vous ne pouvez appeler cette fonction qu'après le déclenchement de l'événement {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}}.
- -
- -

Syntaxe

- -
filter.write(
-  data    // ArrayBuffer or Uint8Array
-)
-
- -

Paramètres

- -
-
data
-
Uint8Array ou ArrayBuffer: tableau d'octets contenant les données à transmettre au moteur de rendu du navigateur.
-
- -

Valeur retournée

- -

None.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.StreamFilter.write", 10)}}

- -

Exemples

- -

Cet exemple utilise write() pour remplacer "Example" dans la réponse par  "WebExtension Example".

- -
function listener(details) {
-  let filter = browser.webRequest.filterResponseData(details.requestId);
-  let decoder = new TextDecoder("utf-8");
-  let encoder = new TextEncoder();
-
-  filter.ondata = event => {
-    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"]
-);
-
- -

{{WebExtExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/write/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/write/index.md new file mode 100644 index 0000000000..92146d4f82 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/streamfilter/write/index.md @@ -0,0 +1,74 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +
Écrit quelques données de réponse dans le flux de sortie..
+ +
+ +
Vous ne pouvez appeler cette fonction qu'après le déclenchement de l'événement {{WebExtAPIRef("webRequest.StreamFilter.onstart", "onstart")}}.
+ +
+ +

Syntaxe

+ +
filter.write(
+  data    // ArrayBuffer or Uint8Array
+)
+
+ +

Paramètres

+ +
+
data
+
Uint8Array ou ArrayBuffer: tableau d'octets contenant les données à transmettre au moteur de rendu du navigateur.
+
+ +

Valeur retournée

+ +

None.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.StreamFilter.write", 10)}}

+ +

Exemples

+ +

Cet exemple utilise write() pour remplacer "Example" dans la réponse par  "WebExtension Example".

+ +
function listener(details) {
+  let filter = browser.webRequest.filterResponseData(details.requestId);
+  let decoder = new TextDecoder("utf-8");
+  let encoder = new TextEncoder();
+
+  filter.ondata = event => {
+    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"]
+);
+
+ +

{{WebExtExamples}}

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 deleted file mode 100644 index eee74f7c58..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/webrequest/uploaddata/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Contient les données téléchargées dans une requête URL..

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
bytes{{optional_inline}}
-
any. Un ArrayBuffer avec une copie des données.
-
file{{optional_inline}}
-
string. Une chaîne de caractères avec le chemin et le nom du fichier.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.webRequest.UploadData")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/webrequest/uploaddata/index.md b/files/fr/mozilla/add-ons/webextensions/api/webrequest/uploaddata/index.md new file mode 100644 index 0000000000..eee74f7c58 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/webrequest/uploaddata/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Contient les données téléchargées dans une requête URL..

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
bytes{{optional_inline}}
+
any. Un ArrayBuffer avec une copie des données.
+
file{{optional_inline}}
+
string. Une chaîne de caractères avec le chemin et le nom du fichier.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.webRequest.UploadData")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API Chromium chrome.webRequest. Cette documentation est dérivée de web_request.json dans le code Chromium.

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ + 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 deleted file mode 100644 index 5d2719df58..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/create/index.html +++ /dev/null @@ -1,189 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Crée une nouvelle fenêtre.

- -

Lorsque vous créez la fenêtre, vous pouvez :

- - - -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var creating = browser.windows.create(
-  createData            // optional object
-)
-
- -

Paramètres

- -
-
createData{{optional_inline}}
-

object.

-
-
allowScriptsToClose {{optional_inline}}
-
-

boolean. Lorsque la fenêtre est ouverte, elle contiendra un seul onglet, ou plus d'un onglet si url 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 window.close(). Si vous incluez allowScriptsToClose et le mettez à true ,  alors ce comportement par défaut est modifié, de sorte que les scripts peuvent fermer leurs onglets. Notez cela :

- -
    -
  • 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.
  • -
  • Si la ou les url(s) donnée(s) dans url pointent vers les pages d'extension (c'est-à-dire qu'il s'agit de pages incluses avec cette extension et chargées avec le protocole "moz-extension:") alors les scripts sont par défaut autorisés à fermer ces onglets.
  • -
-
-
cookieStoreId {{optional_inline}}
-
integer. S'il est présent, spécifie le CookieStoreId pour tous les onglets qui seront créés lorsque la fenêtre sera ouverte.
-
focused {{optional_inline}}
-
boolean. Si c'est vrai, la nouvelle fenêtre sera concentrée. Si c'est false, 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 true.
-
height {{optional_inline}}
-
integer. 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.
-
incognito {{optional_inline}}
-
boolean. Que la nouvelle fenêtre soit une fenêtre privée. Notez que si vous spécifiez incognito et tabId, c'est-à-dire, vous ne pouvez pas déplacer un onglet privé dans une fenêtre privée.
-
left {{optional_inline}}
-
integer. 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().)
-
state {{optional_inline}}
-
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.
-
tabId {{optional_inline}}
-
integer. Si inclus, déplace un onglet de l'ID spécifié d'une fenêtre existante dans la nouvelle fenêtre.
-
titlePreface {{optional_inline}}
-
string. 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).
-
top {{optional_inline}}
-
integer. 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().)
-
type {{optional_inline}}
-
Une valeur {{WebExtAPIRef('windows.CreateType')}} spécifie le type de fenêtre du navigateur à créer. Spécifié le panneau ou la fenêtre contextuelle ici pour ouvrir une fenêtre sans l'interface utilisateur (barre d'adresse, barre d'outils, etc).
-
url {{optional_inline}}
-
string ou array of strings. 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 http://www.google.com, et non www.google.com). Les URL relatives seront relatives à la page actuelle dans l'extension. Par défaut, la nouvelle page d'onglet.
-
width {{optional_inline}}
-
integer. 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.
-
-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Exemples

- -

Ouvrir une fenêtre contenant deux onglets :

- -
function onCreated(windowInfo) {
-  console.log(`Created window: ${windowInfo.id}`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-browser.browserAction.onClicked.addListener((tab) => {
-  var creating = browser.windows.create({
-    url: ["https://developer.mozilla.org",
-          "https://addons.mozilla.org"]
-  });
-  creating.then(onCreated, onError);
-});
- -

Ouvrez une fenêtre lorsque l'utilisateur clique sur une action du navigateur et déplacez l'onglet actif actuellement :

- -
function onCreated(windowInfo) {
-  console.log(`Created window: ${windowInfo.id}`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-browser.browserAction.onClicked.addListener((tab) => {
-  var creating = browser.windows.create({
-    tabId: tab.id
-  });
-  creating.then(onCreated, onError);
-});
- -

Ouvrez une petite fenêtre de style panneau et chargez-en un fichier local:

- -
function onCreated(windowInfo) {
-  console.log(`Created window: ${windowInfo.id}`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-browser.browserAction.onClicked.addListener((tab) => {
-
-  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);
-
-});
- -

{{WebExtExamples}}

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.create", 10)}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/create/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/create/index.md new file mode 100644 index 0000000000..5d2719df58 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/create/index.md @@ -0,0 +1,189 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Crée une nouvelle fenêtre.

+ +

Lorsque vous créez la fenêtre, vous pouvez :

+ + + +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var creating = browser.windows.create(
+  createData            // optional object
+)
+
+ +

Paramètres

+ +
+
createData{{optional_inline}}
+

object.

+
+
allowScriptsToClose {{optional_inline}}
+
+

boolean. Lorsque la fenêtre est ouverte, elle contiendra un seul onglet, ou plus d'un onglet si url 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 window.close(). Si vous incluez allowScriptsToClose et le mettez à true ,  alors ce comportement par défaut est modifié, de sorte que les scripts peuvent fermer leurs onglets. Notez cela :

+ +
    +
  • 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.
  • +
  • Si la ou les url(s) donnée(s) dans url pointent vers les pages d'extension (c'est-à-dire qu'il s'agit de pages incluses avec cette extension et chargées avec le protocole "moz-extension:") alors les scripts sont par défaut autorisés à fermer ces onglets.
  • +
+
+
cookieStoreId {{optional_inline}}
+
integer. S'il est présent, spécifie le CookieStoreId pour tous les onglets qui seront créés lorsque la fenêtre sera ouverte.
+
focused {{optional_inline}}
+
boolean. Si c'est vrai, la nouvelle fenêtre sera concentrée. Si c'est false, 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 true.
+
height {{optional_inline}}
+
integer. 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.
+
incognito {{optional_inline}}
+
boolean. Que la nouvelle fenêtre soit une fenêtre privée. Notez que si vous spécifiez incognito et tabId, c'est-à-dire, vous ne pouvez pas déplacer un onglet privé dans une fenêtre privée.
+
left {{optional_inline}}
+
integer. 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().)
+
state {{optional_inline}}
+
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.
+
tabId {{optional_inline}}
+
integer. Si inclus, déplace un onglet de l'ID spécifié d'une fenêtre existante dans la nouvelle fenêtre.
+
titlePreface {{optional_inline}}
+
string. 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).
+
top {{optional_inline}}
+
integer. 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().)
+
type {{optional_inline}}
+
Une valeur {{WebExtAPIRef('windows.CreateType')}} spécifie le type de fenêtre du navigateur à créer. Spécifié le panneau ou la fenêtre contextuelle ici pour ouvrir une fenêtre sans l'interface utilisateur (barre d'adresse, barre d'outils, etc).
+
url {{optional_inline}}
+
string ou array of strings. 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 http://www.google.com, et non www.google.com). Les URL relatives seront relatives à la page actuelle dans l'extension. Par défaut, la nouvelle page d'onglet.
+
width {{optional_inline}}
+
integer. 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.
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Exemples

+ +

Ouvrir une fenêtre contenant deux onglets :

+ +
function onCreated(windowInfo) {
+  console.log(`Created window: ${windowInfo.id}`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) => {
+  var creating = browser.windows.create({
+    url: ["https://developer.mozilla.org",
+          "https://addons.mozilla.org"]
+  });
+  creating.then(onCreated, onError);
+});
+ +

Ouvrez une fenêtre lorsque l'utilisateur clique sur une action du navigateur et déplacez l'onglet actif actuellement :

+ +
function onCreated(windowInfo) {
+  console.log(`Created window: ${windowInfo.id}`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) => {
+  var creating = browser.windows.create({
+    tabId: tab.id
+  });
+  creating.then(onCreated, onError);
+});
+ +

Ouvrez une petite fenêtre de style panneau et chargez-en un fichier local:

+ +
function onCreated(windowInfo) {
+  console.log(`Created window: ${windowInfo.id}`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) => {
+
+  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);
+
+});
+ +

{{WebExtExamples}}

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.create", 10)}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 30f4261aed..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/createtype/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Spécifie le type de fenêtre du navigateur à créer.

- -

Type

- -

Les valeurs de ce type sont des objets strings. Les valeurs possibles sont :

- - - -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.CreateType")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/createtype/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/createtype/index.md new file mode 100644 index 0000000000..30f4261aed --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/createtype/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Spécifie le type de fenêtre du navigateur à créer.

+ +

Type

+ +

Les valeurs de ce type sont des objets strings. Les valeurs possibles sont :

+ + + +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.CreateType")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 6c81c0fd06..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/get/index.html +++ /dev/null @@ -1,121 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient les détails sur une fenêtre, compte tenu de son identifiant. Les détails sont transmis à un rappel.

- -

Il s'agit d'une fonction asynchrone qui renvoit une Promise.

- -

Syntaxe

- -
var getting = browser.windows.get(
-  windowId,              // integer
-  getInfo                // optional object
-)
-
- -

Paramètres

- -
-
windowId
-
integer. L'ID de l'objet de fenêtre souhaité est retourné.
-
getInfo{{optional_inline}}
-

object. Contient des options pour filtrer le type de fenêtre.

-
-
populate{{optional_inline}}
-
boolean. 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 url, title et favIconUrl  i le fichier manifeste de l'extension comprend la permission "tabs".
-
windowTypes{{optional_inline}}
-
Ensemble d'objets {{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 ['normal', 'panel', 'popup'], avec des types de fenêtres 'panel' qui sont limités aux propres fenêtres de l'extension.
-
-
-
- -

Note :

- -

Si fourni, le composant windowTypes de getInfo est ignoré. L'utilisation de  windowTypes a été dépréciée à partir de Firefox 62.

-
- -

Valeur de retour

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.get",2)}}

- -

Exemples

- -

Cet exemple obtient la fenêtre actuelle et enregistre les URL des onglets qu'il contient. Notez que vous aurez besoin des permission "onglets" pour accéder aux URL des onglets.

- -
-

Note : Cet exemple est un peu irréaliste: dans cette situation, vous utiliserez probablement  {{WebExtAPIRef("windows.getCurrent()")}}.

-
- -
function logTabs(windowInfo) {
-  for (tabInfo of windowInfo.tabs) {
-    console.log(tabInfo.url);
-  }
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-browser.browserAction.onClicked.addListener((tab) => {
-  var getting = browser.windows.get(tab.windowId, {populate: true});
-  getting.then(logTabs, onError);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/get/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/get/index.md new file mode 100644 index 0000000000..6c81c0fd06 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/get/index.md @@ -0,0 +1,121 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient les détails sur une fenêtre, compte tenu de son identifiant. Les détails sont transmis à un rappel.

+ +

Il s'agit d'une fonction asynchrone qui renvoit une Promise.

+ +

Syntaxe

+ +
var getting = browser.windows.get(
+  windowId,              // integer
+  getInfo                // optional object
+)
+
+ +

Paramètres

+ +
+
windowId
+
integer. L'ID de l'objet de fenêtre souhaité est retourné.
+
getInfo{{optional_inline}}
+

object. Contient des options pour filtrer le type de fenêtre.

+
+
populate{{optional_inline}}
+
boolean. 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 url, title et favIconUrl  i le fichier manifeste de l'extension comprend la permission "tabs".
+
windowTypes{{optional_inline}}
+
Ensemble d'objets {{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 ['normal', 'panel', 'popup'], avec des types de fenêtres 'panel' qui sont limités aux propres fenêtres de l'extension.
+
+
+
+ +

Note :

+ +

Si fourni, le composant windowTypes de getInfo est ignoré. L'utilisation de  windowTypes a été dépréciée à partir de Firefox 62.

+
+ +

Valeur de retour

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.get",2)}}

+ +

Exemples

+ +

Cet exemple obtient la fenêtre actuelle et enregistre les URL des onglets qu'il contient. Notez que vous aurez besoin des permission "onglets" pour accéder aux URL des onglets.

+ +
+

Note : Cet exemple est un peu irréaliste: dans cette situation, vous utiliserez probablement  {{WebExtAPIRef("windows.getCurrent()")}}.

+
+ +
function logTabs(windowInfo) {
+  for (tabInfo of windowInfo.tabs) {
+    console.log(tabInfo.url);
+  }
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) => {
+  var getting = browser.windows.get(tab.windowId, {populate: true});
+  getting.then(logTabs, onError);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index c5499749c5..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/getall/index.html +++ /dev/null @@ -1,113 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient des informations sur toutes les fenêtres ouvertes, en les passant dans un rappel.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingAll = browser.windows.getAll(
-  getInfo                // optional object
-)
-
- -

Paramètres

- -
-
getInfo{{optional_inline}}
-

object. Cela contrôle ce que les objets {{WebExtAPIRef('windows.Window')}} sont récupérés.

-
-
populate{{optional_inline}}
-
boolean Par défaut à false.  S'il est défini sur true, chaque objet {{WebExtAPIRef('windows.Window')}} aura une propriété tabs qui contient une liste d'objets {{WebExtAPIRef('tabs.Tab')}} représentant les tabs de cette fenêtre. Les objets Tab contiendront les propriétés url, title et favIconUrl uniquement si le fichier manifest de l'extension contient les permissions "tabs".
-
windowTypes{{optional_inline}}
-
Un ensemble d'objets {{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 ['normal', 'panel', 'popup'], avec des types de fenêtres 'panel' qui sont limités aux propres fenêtres de l'extension.
-
-
-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.getAll")}}

- -

Exemples

- -

Enregistrez les URL pour les onglets sur toutes les fenêtres de navigateur "normales". Notez que vous aurez besoin de permission "onglets" pour accéder aux URLs des onglets.

- -
function logTabsForWindows(windowInfoArray) {
-  for (windowInfo of windowInfoArray) {
-    console.log(`Window: ${windowInfo.id}`);
-    console.log(windowInfo.tabs.map((tab) => {return tab.url}));
-  }
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-browser.browserAction.onClicked.addListener((tab) => {
-  var getting = browser.windows.getAll({
-    populate: true,
-    windowTypes: ["normal"]
-  });
-  getting.then(logTabsForWindows, onError);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/getall/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/getall/index.md new file mode 100644 index 0000000000..c5499749c5 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/getall/index.md @@ -0,0 +1,113 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient des informations sur toutes les fenêtres ouvertes, en les passant dans un rappel.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingAll = browser.windows.getAll(
+  getInfo                // optional object
+)
+
+ +

Paramètres

+ +
+
getInfo{{optional_inline}}
+

object. Cela contrôle ce que les objets {{WebExtAPIRef('windows.Window')}} sont récupérés.

+
+
populate{{optional_inline}}
+
boolean Par défaut à false.  S'il est défini sur true, chaque objet {{WebExtAPIRef('windows.Window')}} aura une propriété tabs qui contient une liste d'objets {{WebExtAPIRef('tabs.Tab')}} représentant les tabs de cette fenêtre. Les objets Tab contiendront les propriétés url, title et favIconUrl uniquement si le fichier manifest de l'extension contient les permissions "tabs".
+
windowTypes{{optional_inline}}
+
Un ensemble d'objets {{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 ['normal', 'panel', 'popup'], avec des types de fenêtres 'panel' qui sont limités aux propres fenêtres de l'extension.
+
+
+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.getAll")}}

+ +

Exemples

+ +

Enregistrez les URL pour les onglets sur toutes les fenêtres de navigateur "normales". Notez que vous aurez besoin de permission "onglets" pour accéder aux URLs des onglets.

+ +
function logTabsForWindows(windowInfoArray) {
+  for (windowInfo of windowInfoArray) {
+    console.log(`Window: ${windowInfo.id}`);
+    console.log(windowInfo.tabs.map((tab) => {return tab.url}));
+  }
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) => {
+  var getting = browser.windows.getAll({
+    populate: true,
+    windowTypes: ["normal"]
+  });
+  getting.then(logTabsForWindows, onError);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 79c8928f0c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/getcurrent/index.html +++ /dev/null @@ -1,116 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient la fenêtre actuelle du navigateur, en passant ses détails dans un rappel.

- -

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 getCurrent(), il renverra la fenêtre de ce document de la barre latérale.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingCurrent = browser.windows.getCurrent(
-  getInfo               // optional object
-)
-
- -

Paramètres

- -
-
getInfo{{optional_inline}}
-

object.

-
-
populate{{optional_inline}}
-
boolean. 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 url, title et favIconUrl si le fichier manifest de l'extension comprend la permission "tabs".
-
windowTypes{{optional_inline}}
-
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 ['normal', 'panel', 'popup'], avec des types de fenêtres 'panneau' qui sont limités aux propres fenêtres de l'extension.
-
-
-
- -

Note :

- -

Si fourni, le composant windowTypes de getInfo est ignoré. L'utilisation de  windowTypes a été dépréciée à partir de Firefox 62.

-
- -

Valeur retournée

- -

Une Promise qui sera remplie avec un objet windows.Window object contenant les détails de la fenêtre. Si une erreur survient, la promesse sera rejetée avec un message d'erreur.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.getCurrent",2)}}

- -

Exemples

- -

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 permission "tabs" pour accéder aux URL des onglets.

- -
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) => {
-  var getting = browser.windows.getCurrent({populate: true});
-  getting.then(logTabs, onError);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/getcurrent/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/getcurrent/index.md new file mode 100644 index 0000000000..79c8928f0c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/getcurrent/index.md @@ -0,0 +1,116 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient la fenêtre actuelle du navigateur, en passant ses détails dans un rappel.

+ +

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 getCurrent(), il renverra la fenêtre de ce document de la barre latérale.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingCurrent = browser.windows.getCurrent(
+  getInfo               // optional object
+)
+
+ +

Paramètres

+ +
+
getInfo{{optional_inline}}
+

object.

+
+
populate{{optional_inline}}
+
boolean. 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 url, title et favIconUrl si le fichier manifest de l'extension comprend la permission "tabs".
+
windowTypes{{optional_inline}}
+
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 ['normal', 'panel', 'popup'], avec des types de fenêtres 'panneau' qui sont limités aux propres fenêtres de l'extension.
+
+
+
+ +

Note :

+ +

Si fourni, le composant windowTypes de getInfo est ignoré. L'utilisation de  windowTypes a été dépréciée à partir de Firefox 62.

+
+ +

Valeur retournée

+ +

Une Promise qui sera remplie avec un objet windows.Window object contenant les détails de la fenêtre. Si une erreur survient, la promesse sera rejetée avec un message d'erreur.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.getCurrent",2)}}

+ +

Exemples

+ +

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 permission "tabs" pour accéder aux URL des onglets.

+ +
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) => {
+  var getting = browser.windows.getCurrent({populate: true});
+  getting.then(logTabs, onError);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index bfc7c81366..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/getlastfocused/index.html +++ /dev/null @@ -1,115 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Obtient la fenêtre qui a été recentrée récemment — généralement la fenêtre 'en haut'.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var gettingWindow = browser.windows.getLastFocused(
-  getInfo               // optional object
-)
-
- -

Paramètres

- -
-
getInfo{{optional_inline}}
-

object.

-
-
populate{{optional_inline}}
-
boolean. 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 url, title et favIconUrl si le fichier manifest de l'extension comprend la permission "tabs".
-
windowTypes{{optional_inline}}
-
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 ['normal', 'panel', 'popup'], avec le type de fenêtre 'panel' qui sont limités aux propres fenêtres de l'extension.
-
-
-
- -
-

Note :

- -

Si fourni, le composant windowTypes de getInfo est ignoré. L'utilisation de windowTypes a été dépréciée à partir de Firefox 62.

-
- -

Valeur retournée

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.getLastFocused",2)}}

- -

Exemples

- -

Obtenez la dernière fenêtre ciblée et enregistrez les onglets qu'elle contient. Notez que vous aurez besoin de la permission "tabs" pour accéder aux URL des onglets.

- -
function logTabs(windowInfo) {
-  for (tabInfo of windowInfo.tabs) {
-    console.log(tabInfo.url);
-  }
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-browser.browserAction.onClicked.addListener((tab) => {
-  var getting = browser.windows.getLastFocused({populate: true});
-  getting.then(logTabs, onError);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/getlastfocused/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/getlastfocused/index.md new file mode 100644 index 0000000000..bfc7c81366 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/getlastfocused/index.md @@ -0,0 +1,115 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Obtient la fenêtre qui a été recentrée récemment — généralement la fenêtre 'en haut'.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var gettingWindow = browser.windows.getLastFocused(
+  getInfo               // optional object
+)
+
+ +

Paramètres

+ +
+
getInfo{{optional_inline}}
+

object.

+
+
populate{{optional_inline}}
+
boolean. 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 url, title et favIconUrl si le fichier manifest de l'extension comprend la permission "tabs".
+
windowTypes{{optional_inline}}
+
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 ['normal', 'panel', 'popup'], avec le type de fenêtre 'panel' qui sont limités aux propres fenêtres de l'extension.
+
+
+
+ +
+

Note :

+ +

Si fourni, le composant windowTypes de getInfo est ignoré. L'utilisation de windowTypes a été dépréciée à partir de Firefox 62.

+
+ +

Valeur retournée

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.getLastFocused",2)}}

+ +

Exemples

+ +

Obtenez la dernière fenêtre ciblée et enregistrez les onglets qu'elle contient. Notez que vous aurez besoin de la permission "tabs" pour accéder aux URL des onglets.

+ +
function logTabs(windowInfo) {
+  for (tabInfo of windowInfo.tabs) {
+    console.log(tabInfo.url);
+  }
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) => {
+  var getting = browser.windows.getLastFocused({populate: true});
+  getting.then(logTabs, onError);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/index.html b/files/fr/mozilla/add-ons/webextensions/api/windows/index.html deleted file mode 100644 index 63f560cfcf..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/index.html +++ /dev/null @@ -1,115 +0,0 @@ ---- -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 ---- -
{{AddonSidebar}}
- -

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.

- -

Types

- -
-
{{WebExtAPIRef("windows.WindowType")}}
-
Le type de fenêtre du navigateur ici.
-
{{WebExtAPIRef("windows.WindowState")}}
-
L'état de cette fenêtre du navigateur.
-
{{WebExtAPIRef("windows.Window")}}
-
Contient des informations sur une fenêtre de navigateur.
-
{{WebExtAPIRef("windows.CreateType")}}
-
Spécifie le type de fenêtre du navigateur à créer.
-
- -

Constantes

- -
-
{{WebExtAPIRef("windows.WINDOW_ID_NONE")}}
-
La valeur windowId qui représente l'absence d'une fenêtre de navigateur.
-
{{WebExtAPIRef("windows.WINDOW_ID_CURRENT")}}
-
Une valeur qui peut être utilisée à la place d'un windowId dans certaines APIs pour représenter la fenêtre courante.
-
- -

Méthodes

- -
-
{{WebExtAPIRef("windows.get()")}}
-
Obtient les détails sur une fenêtre, compte tenu de son identifiant.
-
{{WebExtAPIRef("windows.getCurrent()")}}
-
Obtient les informations de la fenêtre courante.
-
{{WebExtAPIRef("windows.getLastFocused()")}}
-
Obtient la fenêtre qui a été recentrée plus récemment — généralement la fenêtre « en haut ».
-
{{WebExtAPIRef("windows.getAll()")}}
-
Obtient les informations de toutes les fenêtres
-
{{WebExtAPIRef("windows.create()")}}
-
-

Crée une nouvelle fenêtre.

-
-
{{WebExtAPIRef("windows.update()")}}
-
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.
-
{{WebExtAPIRef("windows.remove()")}}
-
Ferme une fenêtre et tous ses onglets.
-
- -

Evénements

- -
-
{{WebExtAPIRef("windows.onCreated")}}
-
Lancé quand une fenêtre est créée.
-
{{WebExtAPIRef("windows.onRemoved")}}
-
Lancé quand une fenêtre est fermée.
-
{{WebExtAPIRef("windows.onFocusChanged")}}
-
Lancé quand la fenêtre courante change.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows")}}

- -

{{WebExtExamples("h2")}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/index.md new file mode 100644 index 0000000000..63f560cfcf --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/index.md @@ -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 +--- +
{{AddonSidebar}}
+ +

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.

+ +

Types

+ +
+
{{WebExtAPIRef("windows.WindowType")}}
+
Le type de fenêtre du navigateur ici.
+
{{WebExtAPIRef("windows.WindowState")}}
+
L'état de cette fenêtre du navigateur.
+
{{WebExtAPIRef("windows.Window")}}
+
Contient des informations sur une fenêtre de navigateur.
+
{{WebExtAPIRef("windows.CreateType")}}
+
Spécifie le type de fenêtre du navigateur à créer.
+
+ +

Constantes

+ +
+
{{WebExtAPIRef("windows.WINDOW_ID_NONE")}}
+
La valeur windowId qui représente l'absence d'une fenêtre de navigateur.
+
{{WebExtAPIRef("windows.WINDOW_ID_CURRENT")}}
+
Une valeur qui peut être utilisée à la place d'un windowId dans certaines APIs pour représenter la fenêtre courante.
+
+ +

Méthodes

+ +
+
{{WebExtAPIRef("windows.get()")}}
+
Obtient les détails sur une fenêtre, compte tenu de son identifiant.
+
{{WebExtAPIRef("windows.getCurrent()")}}
+
Obtient les informations de la fenêtre courante.
+
{{WebExtAPIRef("windows.getLastFocused()")}}
+
Obtient la fenêtre qui a été recentrée plus récemment — généralement la fenêtre « en haut ».
+
{{WebExtAPIRef("windows.getAll()")}}
+
Obtient les informations de toutes les fenêtres
+
{{WebExtAPIRef("windows.create()")}}
+
+

Crée une nouvelle fenêtre.

+
+
{{WebExtAPIRef("windows.update()")}}
+
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.
+
{{WebExtAPIRef("windows.remove()")}}
+
Ferme une fenêtre et tous ses onglets.
+
+ +

Evénements

+ +
+
{{WebExtAPIRef("windows.onCreated")}}
+
Lancé quand une fenêtre est créée.
+
{{WebExtAPIRef("windows.onRemoved")}}
+
Lancé quand une fenêtre est fermée.
+
{{WebExtAPIRef("windows.onFocusChanged")}}
+
Lancé quand la fenêtre courante change.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows")}}

+ +

{{WebExtExamples("h2")}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 8d73d4227c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/oncreated/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancer quand la fenêtre est créée

- -

Syntaxe

- -
browser.windows.onCreated.addListener(listener)
-browser.windows.onCreated.removeListener(listener)
-browser.windows.onCreated.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un auditeur à cet événement.
-
removeListener(listener)
-
Arrêter d'écouter cet événement. L'argument de l'auditeur est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifiez si un auditeur est enregistré pour cet événement. Renvoie vrai si elle répond, Faux sinon.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lors de l'événement. La fonction passera les arguments suivants :

- -
-
window
-
Un objet {{WebExtAPIRef('windows.Window')}} contenant les détails de la fenêtre qui a été créée.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.onCreated")}}

- -

Exemples

- -

Enregistrez les ID des nouvelles fenêtres lorsqu'elles sont créées

- -
browser.windows.onCreated.addListener((window) => {
-  console.log("New window: " + window.id);
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/oncreated/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/oncreated/index.md new file mode 100644 index 0000000000..8d73d4227c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/oncreated/index.md @@ -0,0 +1,104 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancer quand la fenêtre est créée

+ +

Syntaxe

+ +
browser.windows.onCreated.addListener(listener)
+browser.windows.onCreated.removeListener(listener)
+browser.windows.onCreated.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un auditeur à cet événement.
+
removeListener(listener)
+
Arrêter d'écouter cet événement. L'argument de l'auditeur est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifiez si un auditeur est enregistré pour cet événement. Renvoie vrai si elle répond, Faux sinon.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lors de l'événement. La fonction passera les arguments suivants :

+ +
+
window
+
Un objet {{WebExtAPIRef('windows.Window')}} contenant les détails de la fenêtre qui a été créée.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.onCreated")}}

+ +

Exemples

+ +

Enregistrez les ID des nouvelles fenêtres lorsqu'elles sont créées

+ +
browser.windows.onCreated.addListener((window) => {
+  console.log("New window: " + window.id);
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 8ffbdf54a1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/onfocuschanged/index.html +++ /dev/null @@ -1,108 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Attiré lorsque la fenêtre actuellement change. Sera {{WebExtAPIRef('windows.WINDOW_ID_NONE')}} si toutes les fenêtres du navigateur ont perdu le focus.

- -
-

Note : 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.

-
- -

Syntaxe

- -
browser.windows.onFocusChanged.addListener(listener)
-browser.windows.onFocusChanged.removeListener(listener)
-browser.windows.onFocusChanged.hasListener(listener)
-
- -

Les événements ont trois événements :

- -
-
addListener(callback)
-
Ajoute un auditeur à cet événement
-
removeListener(listener)
-
Arrêtez d'écouter cet événement. L'argument de l'auditeur est l'auditeur à supprimer.
-
hasListener(listener)
-
Vérifiez si un auditeur est enregistré pour cet événement. Renvoie vrai si elle écoute, faux sinon..
-
- -

syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lors de l'événement. La fonction passera les arguments suivants :

- -
-
windowId
-
integer. ID de la fenêtre nouvellement localisée.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.onFocusChanged")}}

- -

Exemples

- -

Changements de mise au point du journal :

- -
browser.windows.onFocusChanged.addListener((windowId) => {
-  console.log("Newly focused window: " + windowId);
-});
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/onfocuschanged/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/onfocuschanged/index.md new file mode 100644 index 0000000000..8ffbdf54a1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/onfocuschanged/index.md @@ -0,0 +1,108 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Attiré lorsque la fenêtre actuellement change. Sera {{WebExtAPIRef('windows.WINDOW_ID_NONE')}} si toutes les fenêtres du navigateur ont perdu le focus.

+ +
+

Note : 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.

+
+ +

Syntaxe

+ +
browser.windows.onFocusChanged.addListener(listener)
+browser.windows.onFocusChanged.removeListener(listener)
+browser.windows.onFocusChanged.hasListener(listener)
+
+ +

Les événements ont trois événements :

+ +
+
addListener(callback)
+
Ajoute un auditeur à cet événement
+
removeListener(listener)
+
Arrêtez d'écouter cet événement. L'argument de l'auditeur est l'auditeur à supprimer.
+
hasListener(listener)
+
Vérifiez si un auditeur est enregistré pour cet événement. Renvoie vrai si elle écoute, faux sinon..
+
+ +

syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lors de l'événement. La fonction passera les arguments suivants :

+ +
+
windowId
+
integer. ID de la fenêtre nouvellement localisée.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.onFocusChanged")}}

+ +

Exemples

+ +

Changements de mise au point du journal :

+ +
browser.windows.onFocusChanged.addListener((windowId) => {
+  console.log("Newly focused window: " + windowId);
+});
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index bf38ec83b0..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/onremoved/index.html +++ /dev/null @@ -1,105 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Lancer quand une fenêtre est fermée.

- -

Syntax

- -
browser.windows.onRemoved.addListener(listener)
-browser.windows.onRemoved.removeListener(listener)
-browser.windows.onRemoved.hasListener(listener)
-
- -

Les événements ont trois fonctions :

- -
-
addListener(callback)
-
Ajoute un auditeur à cet événement.
-
removeListener(listener)
-
Arrêter d'écouter cet événement. L'argument de l'auditeur est l'auditeur supprimer.
-
hasListener(listener)
-
Vérifie si un auditeur est enregistré pour cet événement. Renvoie vrai si elle écoute, faux sinon.
-
- -

Syntaxe addListener

- -

Paramètres

- -
-
callback
-
-

Fonction qui sera appelée lors de l'événement. La fonction passera les arguments suivants :

- -
-
windowId
-
integer. ID de la fenêtre fermée.
-
-
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.onRemoved")}}

- -

Exemples

- -

Enregistrer les identifiants de la fenêtre lorsqu'ils sont supprimés

- -
browser.windows.onRemoved.addListener((windowId) => {
-  console.log("Closed window: " + windowId);
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/onremoved/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/onremoved/index.md new file mode 100644 index 0000000000..bf38ec83b0 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/onremoved/index.md @@ -0,0 +1,105 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Lancer quand une fenêtre est fermée.

+ +

Syntax

+ +
browser.windows.onRemoved.addListener(listener)
+browser.windows.onRemoved.removeListener(listener)
+browser.windows.onRemoved.hasListener(listener)
+
+ +

Les événements ont trois fonctions :

+ +
+
addListener(callback)
+
Ajoute un auditeur à cet événement.
+
removeListener(listener)
+
Arrêter d'écouter cet événement. L'argument de l'auditeur est l'auditeur supprimer.
+
hasListener(listener)
+
Vérifie si un auditeur est enregistré pour cet événement. Renvoie vrai si elle écoute, faux sinon.
+
+ +

Syntaxe addListener

+ +

Paramètres

+ +
+
callback
+
+

Fonction qui sera appelée lors de l'événement. La fonction passera les arguments suivants :

+ +
+
windowId
+
integer. ID de la fenêtre fermée.
+
+
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.onRemoved")}}

+ +

Exemples

+ +

Enregistrer les identifiants de la fenêtre lorsqu'ils sont supprimés

+ +
browser.windows.onRemoved.addListener((windowId) => {
+  console.log("Closed window: " + windowId);
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 29c0525f03..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/remove/index.html +++ /dev/null @@ -1,114 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Ferme une fenêtre et tous les onglets à l'intérieur, compte tenu de l'ID de la fenêtre.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var removing = browser.windows.remove(
-  windowId        // integer
-)
-
- -

Paramètres

- -
-
windowId
-
integer. ID of the window to close.
-
- -

Valeur retournée

- -

Une Promesse 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.remove")}}

- -

Exemples

- -

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:

- -
function onRemoved() {
-  console.log(`Removed window`);
-}
-
-function onError(error) {
-  console.error(`Error:`, error);
-}
-
-browser.browserAction.onClicked.addListener((tab) => {
-
-  var removing = browser.windows.remove(tab.windowId);
-  removing.then(onRemoved, onError);
-
-});
- -


- Fermez la fenêtre en cours, par exemple une fenêtre contextuelle, lorsque l'utilisateur clique sur un bouton de la page :

- -
// in a script loaded by the page in the window
-document.querySelector('#close').addEventListener(async ({ button, }) => { 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); } });
- -

Dans Firefox, la même chose pourrait être réalisée avec la propriété de création de fenêtre  .allowScriptsToClose et window.close().

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/remove/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/remove/index.md new file mode 100644 index 0000000000..29c0525f03 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/remove/index.md @@ -0,0 +1,114 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Ferme une fenêtre et tous les onglets à l'intérieur, compte tenu de l'ID de la fenêtre.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var removing = browser.windows.remove(
+  windowId        // integer
+)
+
+ +

Paramètres

+ +
+
windowId
+
integer. ID of the window to close.
+
+ +

Valeur retournée

+ +

Une Promesse 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.remove")}}

+ +

Exemples

+ +

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:

+ +
function onRemoved() {
+  console.log(`Removed window`);
+}
+
+function onError(error) {
+  console.error(`Error:`, error);
+}
+
+browser.browserAction.onClicked.addListener((tab) => {
+
+  var removing = browser.windows.remove(tab.windowId);
+  removing.then(onRemoved, onError);
+
+});
+ +


+ Fermez la fenêtre en cours, par exemple une fenêtre contextuelle, lorsque l'utilisateur clique sur un bouton de la page :

+ +
// in a script loaded by the page in the window
+document.querySelector('#close').addEventListener(async ({ button, }) => { 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); } });
+ +

Dans Firefox, la même chose pourrait être réalisée avec la propriété de création de fenêtre  .allowScriptsToClose et window.close().

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index f702c18b9a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/update/index.html +++ /dev/null @@ -1,127 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

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.

- -

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

- -

Syntaxe

- -
var updating = browser.windows.update(
-  windowId,              // integer
-  updateInfo             // object
-)
-
- -

Paramètres

- -
-
windowId
-
integer. ID de la fenêtre à mettre à jour.
-
updateInfo
-

object. Objet contenant les propriétés de mise à jour.

-
-
drawAttention {{optional_inline}}
-
boolean. 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 drawAttention.
-
focused {{optional_inline}}
-
boolean. 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.
-
height {{optional_inline}}
-
integer. Hauteur pour redimensionner la fenêtre en pixels. Cette valeur est ignorée pour les panneaux.
-
left {{optional_inline}}
-
integer. 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.
-
state{{optional_inline}}
-
{{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.
-
titlePreface {{optional_inline}}
-
string. 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).
-
top {{optional_inline}}
-
integer. 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.
-
width {{optional_inline}}
-
integer. La largeur pour redimensionner la fenêtre en pixels. Cette valeur est ignorée pour les panneaux.
-
-
-
- -

Valeur de retour

- -

Une Promise 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.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.update")}}

- -

Exemples

- -

Lorsque l'utilisateur clique sur l'icône d'une action du navigateur, déplacez la fenêtre vers le coin supérieur gauche:

- -
function onUpdated(windowInfo) {
-  console.log(`Updated window: ${windowInfo.id}`);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-browser.browserAction.onClicked.addListener((tab) => {
-
-  var updating = browser.windows.update(tab.windowId, {
-    left: 0,
-    top: 0
-  });
-  updating.then(onUpdated, onError);
-
-});
-
- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/update/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/update/index.md new file mode 100644 index 0000000000..f702c18b9a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/update/index.md @@ -0,0 +1,127 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

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.

+ +

Il s'agit d'une fonction asynchrone qui renvoie une Promise.

+ +

Syntaxe

+ +
var updating = browser.windows.update(
+  windowId,              // integer
+  updateInfo             // object
+)
+
+ +

Paramètres

+ +
+
windowId
+
integer. ID de la fenêtre à mettre à jour.
+
updateInfo
+

object. Objet contenant les propriétés de mise à jour.

+
+
drawAttention {{optional_inline}}
+
boolean. 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 drawAttention.
+
focused {{optional_inline}}
+
boolean. 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.
+
height {{optional_inline}}
+
integer. Hauteur pour redimensionner la fenêtre en pixels. Cette valeur est ignorée pour les panneaux.
+
left {{optional_inline}}
+
integer. 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.
+
state{{optional_inline}}
+
{{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.
+
titlePreface {{optional_inline}}
+
string. 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).
+
top {{optional_inline}}
+
integer. 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.
+
width {{optional_inline}}
+
integer. La largeur pour redimensionner la fenêtre en pixels. Cette valeur est ignorée pour les panneaux.
+
+
+
+ +

Valeur de retour

+ +

Une Promise 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.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.update")}}

+ +

Exemples

+ +

Lorsque l'utilisateur clique sur l'icône d'une action du navigateur, déplacez la fenêtre vers le coin supérieur gauche:

+ +
function onUpdated(windowInfo) {
+  console.log(`Updated window: ${windowInfo.id}`);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+browser.browserAction.onClicked.addListener((tab) => {
+
+  var updating = browser.windows.update(tab.windowId, {
+    left: 0,
+    top: 0
+  });
+  updating.then(onUpdated, onError);
+
+});
+
+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 1bed33bf28..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/window/index.html +++ /dev/null @@ -1,90 +0,0 @@ ---- -title: windows.Window -slug: Mozilla/Add-ons/WebExtensions/API/windows/Window -tags: - - Fenêtre -translation_of: Mozilla/Add-ons/WebExtensions/API/windows/Window ---- -
{{AddonSidebar()}}
- -

Informations sur une fenêtre du navigateur.

- -

Type

- -

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

- -
-
alwaysOnTop
-
boolean. Que la fenêtre soit configurée pour toujours être sur le dessus.
-
focused
-
boolean.  Que la fenêtre soit actuellement la fenêtre ciblée.
-
height{{optional_inline}}
-
integer. La hauteur de la fenêtre, y compris le cadre, en pixels.
-
- -
-
id{{optional_inline}}
-
integer. L'ID de la fenêtre. Les identifiants de fenêtre sont uniques dans une session de navigateur.
-
incognito
-
boolean. Que la fenêtre soit incognito (privé).
-
left{{optional_inline}}
-
integer. Le décalage de la fenêtre du bord gauche de l'écran en pixels.
-
sessionId{{optional_inline}}
-
string. L'ID de session utilisé pour identifier de manière unique une fenêtre obtenue à partir de l'API {{WebExtAPIRef ('sessions')}}.
-
state{{optional_inline}}
-
Une valeur {{WebExtAPIRef('windows.WindowState')}} représentant l'état de cette fenêtre du navigateur - maximisé, minimisé, etc.
-
tabs{{optional_inline}}
-
Tableau d'objets {{WebExtAPIRef('tabs.Tab')}} représentant les onglets courants dans la fenêtre.
-
title {{optional_inline}}
-
Le titre de la fenêtre du navigateur. Nécessite la permission "tabs". Lecture seulement.
-
top{{optional_inline}}
-
integer. Le décalage de la fenêtre du bord supérieur de l'écran en pixels.
-
type{{optional_inline}}
-
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.
-
width{{optional_inline}}
-
integer. La largeur de la fenêtre, y compris le cadre, en pixels.
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.Window")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/window/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/window/index.md new file mode 100644 index 0000000000..1bed33bf28 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/window/index.md @@ -0,0 +1,90 @@ +--- +title: windows.Window +slug: Mozilla/Add-ons/WebExtensions/API/windows/Window +tags: + - Fenêtre +translation_of: Mozilla/Add-ons/WebExtensions/API/windows/Window +--- +
{{AddonSidebar()}}
+ +

Informations sur une fenêtre du navigateur.

+ +

Type

+ +

Les valeurs de ce type sont des objets. Ils contiennent les propriétés suivantes :

+ +
+
alwaysOnTop
+
boolean. Que la fenêtre soit configurée pour toujours être sur le dessus.
+
focused
+
boolean.  Que la fenêtre soit actuellement la fenêtre ciblée.
+
height{{optional_inline}}
+
integer. La hauteur de la fenêtre, y compris le cadre, en pixels.
+
+ +
+
id{{optional_inline}}
+
integer. L'ID de la fenêtre. Les identifiants de fenêtre sont uniques dans une session de navigateur.
+
incognito
+
boolean. Que la fenêtre soit incognito (privé).
+
left{{optional_inline}}
+
integer. Le décalage de la fenêtre du bord gauche de l'écran en pixels.
+
sessionId{{optional_inline}}
+
string. L'ID de session utilisé pour identifier de manière unique une fenêtre obtenue à partir de l'API {{WebExtAPIRef ('sessions')}}.
+
state{{optional_inline}}
+
Une valeur {{WebExtAPIRef('windows.WindowState')}} représentant l'état de cette fenêtre du navigateur - maximisé, minimisé, etc.
+
tabs{{optional_inline}}
+
Tableau d'objets {{WebExtAPIRef('tabs.Tab')}} représentant les onglets courants dans la fenêtre.
+
title {{optional_inline}}
+
Le titre de la fenêtre du navigateur. Nécessite la permission "tabs". Lecture seulement.
+
top{{optional_inline}}
+
integer. Le décalage de la fenêtre du bord supérieur de l'écran en pixels.
+
type{{optional_inline}}
+
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.
+
width{{optional_inline}}
+
integer. La largeur de la fenêtre, y compris le cadre, en pixels.
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.Window")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 831dcf35ee..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_current/index.html +++ /dev/null @@ -1,61 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

browser.windows.WINDOW_ID_CURRENT est une valeur qui peut être utilisée comme paramètre windowId dans certaines APIs pour représenter la fenêtre courante.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.WINDOW_ID_CURRENT")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_current/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_current/index.md new file mode 100644 index 0000000000..831dcf35ee --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_current/index.md @@ -0,0 +1,61 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

browser.windows.WINDOW_ID_CURRENT est une valeur qui peut être utilisée comme paramètre windowId dans certaines APIs pour représenter la fenêtre courante.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.WINDOW_ID_CURRENT")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 6938bdf934..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_none/index.html +++ /dev/null @@ -1,62 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

La valeur windowId que représente l'absence d'une fenêtre du navigateur.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.WINDOW_ID_NONE")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_none/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_none/index.md new file mode 100644 index 0000000000..6938bdf934 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/window_id_none/index.md @@ -0,0 +1,62 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

La valeur windowId que représente l'absence d'une fenêtre du navigateur.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.WINDOW_ID_NONE")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index ab630300db..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/windowstate/index.html +++ /dev/null @@ -1,81 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

L'état de cette fenêtre du navigateur.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont:

- -
-
"normal"
-
La fenêtre est à la taille par défaut ou à la taille sélectionnée par l'utilisateur.
-
"minimized"
-
La fenêtre n'est visible que sous la forme d'une icône dans la barre des tâches ou .
-
"maximized"
-
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.
-
"fullscreen"
-
La fenêtre s'exécute en plein écran ou le contenu d'un onglet utilise l'API Fullscreen
-
"docked"
-
Une fenêtre ancrée occupe une position fixe par rapport aux autres fenêtres appartenant à la même application.
-
- -

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". fullscreen fait référence à la fois au navigateur fonctionnant en plein écran et lorsque le contenu dans un onglet utilise l'API Fullscreen.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.api.windows.WindowState")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/windowstate/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/windowstate/index.md new file mode 100644 index 0000000000..ab630300db --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/windowstate/index.md @@ -0,0 +1,81 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

L'état de cette fenêtre du navigateur.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont:

+ +
+
"normal"
+
La fenêtre est à la taille par défaut ou à la taille sélectionnée par l'utilisateur.
+
"minimized"
+
La fenêtre n'est visible que sous la forme d'une icône dans la barre des tâches ou .
+
"maximized"
+
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.
+
"fullscreen"
+
La fenêtre s'exécute en plein écran ou le contenu d'un onglet utilise l'API Fullscreen
+
"docked"
+
Une fenêtre ancrée occupe une position fixe par rapport aux autres fenêtres appartenant à la même application.
+
+ +

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". fullscreen fait référence à la fois au navigateur fonctionnant en plein écran et lorsque le contenu dans un onglet utilise l'API Fullscreen.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.api.windows.WindowState")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + 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 deleted file mode 100644 index 51c5c72e59..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/api/windows/windowtype/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -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 ---- -
{{AddonSidebar()}}
- -

Le type de la fenêtre du navigateur est comme çà.

- -

Type

- -

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

- - - -

Browser compatibility

- -

{{Compat("webextensions.api.windows.WindowType")}}

- -

{{WebExtExamples}}

- -

Note :

- -

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

- -

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.

-
- - diff --git a/files/fr/mozilla/add-ons/webextensions/api/windows/windowtype/index.md b/files/fr/mozilla/add-ons/webextensions/api/windows/windowtype/index.md new file mode 100644 index 0000000000..51c5c72e59 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/api/windows/windowtype/index.md @@ -0,0 +1,73 @@ +--- +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 +--- +
{{AddonSidebar()}}
+ +

Le type de la fenêtre du navigateur est comme çà.

+ +

Type

+ +

Les valeurs de ce type sont des chaînes. Les valeurs possibles sont :

+ + + +

Browser compatibility

+ +

{{Compat("webextensions.api.windows.WindowType")}}

+ +

{{WebExtExamples}}

+ +

Note :

+ +

Cette API est basée sur l'API de Chromnium chrome.windows. Cette documentation provient de windows.json dans le code de Chromium.

+ +

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.

+
+ + diff --git a/files/fr/mozilla/add-ons/webextensions/browser_actions/index.html b/files/fr/mozilla/add-ons/webextensions/browser_actions/index.html deleted file mode 100644 index ccba3bf78d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/browser_actions/index.html +++ /dev/null @@ -1,46 +0,0 @@ ---- -title: Actions du navigateur -slug: Mozilla/Add-ons/WebExtensions/Browser_actions -tags: - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Browser_actions ---- -
{{AddonSidebar}}
- -

Une action du navigateur est un bouton que vous pouvez ajouter à la barre d'outils du navigateur. Les utilisateurs peuvent cliquer sur le bouton pour interagir avec votre extension.

- -

- -

Il existe deux façons de spécifier une action du navigateur : avec une fenêtre contextuelle, ou sans fenêtre contextuelle.

- -

Si vous ne spécifiez pas de popup, alors lorsque l'utilisateur clique sur le bouton, un événement est envoyé à l'extension, que vous pouvez écouter à l'aide de browserAction.onClicked:

- -
browser.browserAction.onClicked.addListener(handleClick);
- -

Si vous spécifiez un popup, l'événement click n'est pas distribué : au lieu de cela, le popup sera affiché lorsque l'utilisateur clique sur le bouton. L'utilisateur pourra interagir avec le popup et il se fermera automatiquement lorsque l'utilisateur clique à l'extérieur.

- -

Notez que votre extension ne peut avoir qu'une seule action du navigateur.

- -

Specification de l'action de navigateur

- -

Vous définissez les propriétés de l'action du navigateur - icône, titre, popup - en utilisant la clé browser_action dans manifest.json:

- -
"browser_action": {
-  "default_icon": {
-    "19": "button/geo-19.png",
-    "38": "button/geo-38.png"
-  },
-  "default_title": "Whereami?",
-  "default_popup": "popup/geo.html"
-}
- -

La seule clé obligatoire est default_icon. Vous pouvez changer n'importe laquelle de ces propriétés par programme à l'aide de l'API browserAction .

- -

Exemples

- -

Le repo webextensions-examples sur GitHub contient plusieurs exemples d'extensions qui utilisent les actions du navigateur :

- - diff --git a/files/fr/mozilla/add-ons/webextensions/browser_actions/index.md b/files/fr/mozilla/add-ons/webextensions/browser_actions/index.md new file mode 100644 index 0000000000..ccba3bf78d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/browser_actions/index.md @@ -0,0 +1,46 @@ +--- +title: Actions du navigateur +slug: Mozilla/Add-ons/WebExtensions/Browser_actions +tags: + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Browser_actions +--- +
{{AddonSidebar}}
+ +

Une action du navigateur est un bouton que vous pouvez ajouter à la barre d'outils du navigateur. Les utilisateurs peuvent cliquer sur le bouton pour interagir avec votre extension.

+ +

+ +

Il existe deux façons de spécifier une action du navigateur : avec une fenêtre contextuelle, ou sans fenêtre contextuelle.

+ +

Si vous ne spécifiez pas de popup, alors lorsque l'utilisateur clique sur le bouton, un événement est envoyé à l'extension, que vous pouvez écouter à l'aide de browserAction.onClicked:

+ +
browser.browserAction.onClicked.addListener(handleClick);
+ +

Si vous spécifiez un popup, l'événement click n'est pas distribué : au lieu de cela, le popup sera affiché lorsque l'utilisateur clique sur le bouton. L'utilisateur pourra interagir avec le popup et il se fermera automatiquement lorsque l'utilisateur clique à l'extérieur.

+ +

Notez que votre extension ne peut avoir qu'une seule action du navigateur.

+ +

Specification de l'action de navigateur

+ +

Vous définissez les propriétés de l'action du navigateur - icône, titre, popup - en utilisant la clé browser_action dans manifest.json:

+ +
"browser_action": {
+  "default_icon": {
+    "19": "button/geo-19.png",
+    "38": "button/geo-38.png"
+  },
+  "default_title": "Whereami?",
+  "default_popup": "popup/geo.html"
+}
+ +

La seule clé obligatoire est default_icon. Vous pouvez changer n'importe laquelle de ces propriétés par programme à l'aide de l'API browserAction .

+ +

Exemples

+ +

Le repo webextensions-examples sur GitHub contient plusieurs exemples d'extensions qui utilisent les actions du navigateur :

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/browser_compatibility_for_manifest.json/index.html b/files/fr/mozilla/add-ons/webextensions/browser_compatibility_for_manifest.json/index.html deleted file mode 100644 index 99baf1e872..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/browser_compatibility_for_manifest.json/index.html +++ /dev/null @@ -1,25 +0,0 @@ ---- -title: Browser compatibility for manifest.json -slug: Mozilla/Add-ons/WebExtensions/Browser_compatibility_for_manifest.json -tags: - - Add-ons - - WebExtensions - - manifest.json -translation_of: Mozilla/Add-ons/WebExtensions/Browser_compatibility_for_manifest.json ---- -
{{AddonSidebar}}
- - - -

{{Compat("webextensions.manifest",2)}}

- -

Note :

- -

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

-
- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/browser_compatibility_for_manifest.json/index.md b/files/fr/mozilla/add-ons/webextensions/browser_compatibility_for_manifest.json/index.md new file mode 100644 index 0000000000..99baf1e872 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/browser_compatibility_for_manifest.json/index.md @@ -0,0 +1,25 @@ +--- +title: Browser compatibility for manifest.json +slug: Mozilla/Add-ons/WebExtensions/Browser_compatibility_for_manifest.json +tags: + - Add-ons + - WebExtensions + - manifest.json +translation_of: Mozilla/Add-ons/WebExtensions/Browser_compatibility_for_manifest.json +--- +
{{AddonSidebar}}
+ + + +

{{Compat("webextensions.manifest",2)}}

+ +

Note :

+ +

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.

+
+ +

Voir aussi

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/browser_support_for_javascript_apis/index.html b/files/fr/mozilla/add-ons/webextensions/browser_support_for_javascript_apis/index.html deleted file mode 100644 index ed6567a588..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/browser_support_for_javascript_apis/index.html +++ /dev/null @@ -1,25 +0,0 @@ ---- -title: Compatibilité des navigateurs avec les API JavaScript WebExtensions -slug: Mozilla/Add-ons/WebExtensions/Browser_support_for_JavaScript_APIs -tags: - - Reference - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Browser_support_for_JavaScript_APIs -original_slug: Mozilla/Add-ons/WebExtensions/Compatibilité_navigateurs_API_JavaScript ---- -
{{AddonSidebar}}
- - - -

{{WebExtAllCompatTables}}

- -

Note :

- -

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.

-
- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/browser_support_for_javascript_apis/index.md b/files/fr/mozilla/add-ons/webextensions/browser_support_for_javascript_apis/index.md new file mode 100644 index 0000000000..ed6567a588 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/browser_support_for_javascript_apis/index.md @@ -0,0 +1,25 @@ +--- +title: Compatibilité des navigateurs avec les API JavaScript WebExtensions +slug: Mozilla/Add-ons/WebExtensions/Browser_support_for_JavaScript_APIs +tags: + - Reference + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Browser_support_for_JavaScript_APIs +original_slug: Mozilla/Add-ons/WebExtensions/Compatibilité_navigateurs_API_JavaScript +--- +
{{AddonSidebar}}
+ + + +

{{WebExtAllCompatTables}}

+ +

Note :

+ +

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.

+
+ +

Voir aussi

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/build_a_cross_browser_extension/index.html b/files/fr/mozilla/add-ons/webextensions/build_a_cross_browser_extension/index.html deleted file mode 100644 index 2045455ac1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/build_a_cross_browser_extension/index.html +++ /dev/null @@ -1,232 +0,0 @@ ---- -title: Construction d'une extension multi-navigateur -slug: Mozilla/Add-ons/WebExtensions/Build_a_cross_browser_extension -tags: - - Add-ons - - Extensions - - Guide - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Build_a_cross_browser_extension -original_slug: Mozilla/Add-ons/WebExtensions/construction_extension_cross_browser ---- -

{{AddonSidebar()}}

- -

L'introduction de l'API WebExtension a créé un paysage plus homogène pour le développement des extensions des navigateurs. Cependant, parmi les navigateurs qui utilisent les API d'extensions (les principaux étant Chrome, Firefox, Opera et Edge), il existe des différences à la fois dans l'implémentation de l'API et dans la couverture des différentes fonctionnalités. Par ailleurs, Safari utilise ses propres extensions Safari Extensions JS.

- -

Maximiser la portée de votre extension de navigateur signifie la développer pour au moins deux navigateurs différents, voire plus. Cet article examine six des principaux défis rencontrés lors de la création d'une extension multi-navigateur, et dans chaque cas, suggère comment relever ce défi.

- -

Cet article ne traite pas de la création d'extensions de navigateur pour Safari. Il est possible de partager certaines ressources avec une extension Safari, comme des images et du contenu HTML. Cependant, le développement JavaScript doit être entrepris comme un projet de développement séparé, à moins que vous ne souhaitiez créer votre propre prothèse (polyfill).

- -

Obstacles pour les extensions multi-navigateur

- -

Il existe six domaines que vous devez aborder lorsque vous souhaitez développer une extension multiplateforme :

- - - -

Les espaces de noms des API

- -

Deux espaces de noms (namespaces) sont utilisés pour les quatre principaux navigateurs :

- - - -

Firefox prend également en charge l'espace de noms chrome.* pour les API compatibles avec Chrome, principalement pour faciliter le portage. Cependant, il est préférable d'utiliser l'espace de nommage browser.*. En plus d'être la norme proposée, browser.* utilise des promesses — un mécanisme moderne et pratique pour gérer les événements asynchrones.

- -

Ce n'est que dans les extensions les plus triviales que l'espace de nom sera probablement le seul problème multiplateforme à résoudre. Il est donc rarement, voire jamais, utile d'essayer d'aborder cette seule question. La meilleure approche consiste à traiter ce problème avec une gestion asynchrone des événements.

- -

Gestion asynchrone des événements

- -

Il existe deux approches pour gérer les événements asynchrones utilisées par les quatre principaux navigateurs :

- - - -

Firefox prend également en charge les callbacks pour les API qui prennent en charge l'espace de noms chrome.*. Cependant, il est recommandé d'utiliser des promesses (et l'espace de noms browser.* du navigateur). Des promesses ont été adoptées dans le cadre de la norme proposée. Cette approche simplifie grandement la gestion asynchrone des événements, en particulier lorsque vous devez enchaîner des événements.

- -
-

Note : Si vous n'êtes pas familier avec les différences entre ces deux méthodes, jetez un coup d'oeil à Apprendre à connaître le JavaScript asynchrone : Rappels, promesses et synchronisation/attente ou la page sur l'utilisation des promesses de MDN.

-
- -

Polyfill pour l'API WebExtension du navigateur

- -

Alors, comment tirer profit des promesses facilement, alors que Firefox est le seul navigateur qui les supporte ? La solution est de coder pour Firefox en utilisant des promesses et d'utiliser le polyfill pour l'API WebExtension du navigateur.

- -

Pour utiliser le polyfill, installez-le dans votre environnement de développement à l'aide de npm ou téléchargez-le directement depuis les versions de GitHub

- -

Vous référencerez alors browser-polyfill.js dans :

- - - -

Ainsi, par exemple, ce code manifest.json rend le polyfill disponible pour vos scripts d'arrière-plan :

- -
{
- // ...
- "background": {
-   "scripts": [
-     "browser-polyfill.js",
-     "background.js"
-   ]
- }
-}
- -

Votre but est de vous assurer que le polyfill s'exécute dans votre extension avant tout autre script qui attend le browser.* API namespace s'exécute.

- -
-

Note : Pour plus de détails et d'informations sur l'utilisation du polyfill avec un module bundler, voir le readme du projet sur GitHub.

-
- -

Il existe d'autres options de polyfill mais, au moment où nous écrivons ces lignes, aucune ne fournit une couverture équivalente à ce polyfill pour l'API WebExtension du navigateur. Ainsi, lorsque vous n'avez pas choisi Firefox comme cible initiale de navigateur, vos options sont d'accepter les limitations des polyfills alternatifs, de porter sur Firefox et d'ajouter la prise en charge multi-navigateur, ou de développer votre propre polyfill.

- - - -

Couverture des différentes implémentations d'API

- -

Les différences de fonctionnalités offertes par les différents navigateurs peuvent se répartir en trois catégories :

- -
    -
  1. L'absence de prise en charge d'une fonctionnalité à part entière.
  2. -
  3. Les variations de prise en charge pour certains aspects d'une fonctionnalité. Au moment où nous écrivons ces lignes, Firefox ne prend pas en charge la méthode onButtonClicked mais est le seul navigateur qui prend en charge onShown.
  4. -
  5. Les fonctionnalités propriétaires spécifiques à chaque navigateur. Au moment où nous écrivons ces lignes, les conteneurs sont une fonctionnalité spécifique à Firefox qui est donc le seul à prendre en charge la fonction contextualIdentities.
  6. -
- -

Vous pouvez trouver plus de détails sur la prise en charge de l'API pour les différents navigateurs sur La prise en charge des API JavaScript WebExtension pour les différents navigateurs. Les informations de compatibilité sont également disponibles sur chaque page de la référence des API JavaScript WebExtension.

- -

Handling API differences

- -

Une approche simple pour gérer ces différences consiste à limiter les fonctionnalités utilisées par une extension afin que celle-ci puisse fonctionner sur différents navigateurs. Toutefois, en pratique, cette approche se révèlera souvent trop restrictive.

- -

À la place, on peut utiliser des implémentations alternatives ou des fonctionnalités de recours dans ces cas. Cela peut également s'avérer utile pour gérer les différences d'implémentation entre les différentes versions d'un même navigateur

- -

L'utilisation de vérifications à l'exécution quant à la disponibilité d'une fonctionnalité est une approche recommandée qui permet d'implémenter ou d'utiliser des alternatives à bon escient. L'avantage d'une vérification à l'exécution est que si la fonction devient disponible, il n'est pas nécessaire de mettre à jour ou de redistribuer l'extension à nouveau.

- -

Le fragment de code suivant vous permet de vérifier l'existance d'une fonction lors de l'exécution :

- -
if (typeof <function> === "function") {
-   // safe to use the function
-}
- -

Les clés de manifeste

- -

Les différences pour les clés du fichier manifest.json se répartissent en trois catégories :

- -
    -
  1. Les attributs d'information sur l'extension. Firefox et Opera incluent la clé developer pour fournir des détails quant à la développeuse ou au développeur de l'application et la clé author.
  2. -
  3. Les fonctionnalités rattachées à l'extension. Edge ne prenait pas en charge la clé commands qui permet de définir des raccourcis clavier pour une extension.
  4. -
  5. Le caractère optionnel d'une clé. Ainsi, la clé author était obligatoire dans Edge mais optionnelle pour les autres navigateurs.
  6. -
- -

Les informations quant à la compatibilité de chaque clé de manifeste sont incluses dans les pages de référence correspondantes.

- -

Le fichier manifest.json évolue peu entre les différentes versions (exception faite du numéro de version). Il est parfois judicieux d'avoir une version statique différente pour chaque navigateur.

- -

Empaquetage des extensions

- -

L'empaquetage d'une extension pour la distribuer via les plateformes des navigateurs est uniforme .

- - - -

Pour plus de détails sur les méthodes d'empaquetage, veuillez vous référer aux documentations de chaque portail de distribution.

- -

Publication des extensions

- -

Chaque navigateur majeur possède une plateforme de distribution d'extension. Chacun de ces magasins effectue une revue de l'extension pour vérifier la présence de vulnérabilités.

- -

Aussi, il faudra gérer l'inscription et la mise à jour d'une extension séparément pour chaque distributeur. Dans certains cas, il est possible d'uploader son extension avec un utilitaire.

- -

Le tableau qui suit récapitule les approches et fonctionnalités pour chaque plateforme de distribution :

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NavigateurFrais d'enregistrementUtilitaire pour l'uploadProcessus de revue avant la publicationAuthentification multi-facteur
FirefoxNonweb-extAutomatique, quelques secondes1Non
ChromeOuiOuiAutomatique, moins d'une heureOui
OperaNonNonManuel, aucun délai garantiNon
EdgeOuiNonManuel, jusqu'à 72 heures2Oui
- -

1 Une revue manuelle de l'extension a lieu après la publication et peut entraîner la suspension de l'extension dans l'attente des corrections nécessaires aux problèmes éventuellement trouvés.

- -

2 Au moment où nous écrivons ces lignes, Microsoft approuvait uniquement la publication d'extensions pré-approuvées.

- -

Autres considérations

- -

Nommage des extensions

- -

Microsoft requiert un nom unique pour chaque extension et permet de revendiquer un ou plusieurs noms pour une extension via Windows Dev Center. Aussi, il peut être prudent de réserver un nom pour votre extension dès à présent, même si vous ne prévoyez pas de prendre en charge Edge immédiatement.

- -

Aucune des autres plateformes n'impose de restrictions quant au nom de l'extension.

- -

Numérotation des versions

- -

Les plateformes de distribution pour Firefox et Chrome requièrent un numéro de version distinct et croissant pour chaque upload. Cela signifie qu'on ne peut pas revenir à un numéro de version antérieur s'il y a un problème sur une version.

- -

Partage des ressources

- -

Lorsque vous développez une extension pour Safari, vous pouvez réutiliser les éléments suivants entre vos différentes implémentations :

- - - -

Conclusion

- -

Lorsqu'on souhaite développer une extension pour les différents navigateurs, on pourra résoudre certaines des différences d'implémentation en visant initialement Firefox et en utilisant le polyfill pour les API WebExtension. Avec cette approche, on pourra bénéficier des fonctionnalités d'API proches du standard et exploiter les promesses pour la gestion asynchrone des évènements.

- -

La majeure partie du travail d'adaptation consistera à gérer les variations de fonctionnalités entre les différentes implémentations et les différences du fichier manifeste (manifest.json) ; ce dernier pouvant être créé manuellement. L'empaquetage et la distribution contiennent également quelques différences en fonction des plateformes.

- -

Vous pouvez utiliser browser-extension-template pour rapidement mettre en place un projet d'extension, l'empaqueter et la publier.

- -

Avec les informations de cet article, vous devriez être en mesure de créer une extension qui fonctionne correctement sur l'ensemble des principaux navigateurs, permettant ainsi au plus grand nombre d'utiliser votre extension.

diff --git a/files/fr/mozilla/add-ons/webextensions/build_a_cross_browser_extension/index.md b/files/fr/mozilla/add-ons/webextensions/build_a_cross_browser_extension/index.md new file mode 100644 index 0000000000..2045455ac1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/build_a_cross_browser_extension/index.md @@ -0,0 +1,232 @@ +--- +title: Construction d'une extension multi-navigateur +slug: Mozilla/Add-ons/WebExtensions/Build_a_cross_browser_extension +tags: + - Add-ons + - Extensions + - Guide + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Build_a_cross_browser_extension +original_slug: Mozilla/Add-ons/WebExtensions/construction_extension_cross_browser +--- +

{{AddonSidebar()}}

+ +

L'introduction de l'API WebExtension a créé un paysage plus homogène pour le développement des extensions des navigateurs. Cependant, parmi les navigateurs qui utilisent les API d'extensions (les principaux étant Chrome, Firefox, Opera et Edge), il existe des différences à la fois dans l'implémentation de l'API et dans la couverture des différentes fonctionnalités. Par ailleurs, Safari utilise ses propres extensions Safari Extensions JS.

+ +

Maximiser la portée de votre extension de navigateur signifie la développer pour au moins deux navigateurs différents, voire plus. Cet article examine six des principaux défis rencontrés lors de la création d'une extension multi-navigateur, et dans chaque cas, suggère comment relever ce défi.

+ +

Cet article ne traite pas de la création d'extensions de navigateur pour Safari. Il est possible de partager certaines ressources avec une extension Safari, comme des images et du contenu HTML. Cependant, le développement JavaScript doit être entrepris comme un projet de développement séparé, à moins que vous ne souhaitiez créer votre propre prothèse (polyfill).

+ +

Obstacles pour les extensions multi-navigateur

+ +

Il existe six domaines que vous devez aborder lorsque vous souhaitez développer une extension multiplateforme :

+ + + +

Les espaces de noms des API

+ +

Deux espaces de noms (namespaces) sont utilisés pour les quatre principaux navigateurs :

+ + + +

Firefox prend également en charge l'espace de noms chrome.* pour les API compatibles avec Chrome, principalement pour faciliter le portage. Cependant, il est préférable d'utiliser l'espace de nommage browser.*. En plus d'être la norme proposée, browser.* utilise des promesses — un mécanisme moderne et pratique pour gérer les événements asynchrones.

+ +

Ce n'est que dans les extensions les plus triviales que l'espace de nom sera probablement le seul problème multiplateforme à résoudre. Il est donc rarement, voire jamais, utile d'essayer d'aborder cette seule question. La meilleure approche consiste à traiter ce problème avec une gestion asynchrone des événements.

+ +

Gestion asynchrone des événements

+ +

Il existe deux approches pour gérer les événements asynchrones utilisées par les quatre principaux navigateurs :

+ + + +

Firefox prend également en charge les callbacks pour les API qui prennent en charge l'espace de noms chrome.*. Cependant, il est recommandé d'utiliser des promesses (et l'espace de noms browser.* du navigateur). Des promesses ont été adoptées dans le cadre de la norme proposée. Cette approche simplifie grandement la gestion asynchrone des événements, en particulier lorsque vous devez enchaîner des événements.

+ +
+

Note : Si vous n'êtes pas familier avec les différences entre ces deux méthodes, jetez un coup d'oeil à Apprendre à connaître le JavaScript asynchrone : Rappels, promesses et synchronisation/attente ou la page sur l'utilisation des promesses de MDN.

+
+ +

Polyfill pour l'API WebExtension du navigateur

+ +

Alors, comment tirer profit des promesses facilement, alors que Firefox est le seul navigateur qui les supporte ? La solution est de coder pour Firefox en utilisant des promesses et d'utiliser le polyfill pour l'API WebExtension du navigateur.

+ +

Pour utiliser le polyfill, installez-le dans votre environnement de développement à l'aide de npm ou téléchargez-le directement depuis les versions de GitHub

+ +

Vous référencerez alors browser-polyfill.js dans :

+ + + +

Ainsi, par exemple, ce code manifest.json rend le polyfill disponible pour vos scripts d'arrière-plan :

+ +
{
+ // ...
+ "background": {
+   "scripts": [
+     "browser-polyfill.js",
+     "background.js"
+   ]
+ }
+}
+ +

Votre but est de vous assurer que le polyfill s'exécute dans votre extension avant tout autre script qui attend le browser.* API namespace s'exécute.

+ +
+

Note : Pour plus de détails et d'informations sur l'utilisation du polyfill avec un module bundler, voir le readme du projet sur GitHub.

+
+ +

Il existe d'autres options de polyfill mais, au moment où nous écrivons ces lignes, aucune ne fournit une couverture équivalente à ce polyfill pour l'API WebExtension du navigateur. Ainsi, lorsque vous n'avez pas choisi Firefox comme cible initiale de navigateur, vos options sont d'accepter les limitations des polyfills alternatifs, de porter sur Firefox et d'ajouter la prise en charge multi-navigateur, ou de développer votre propre polyfill.

+ + + +

Couverture des différentes implémentations d'API

+ +

Les différences de fonctionnalités offertes par les différents navigateurs peuvent se répartir en trois catégories :

+ +
    +
  1. L'absence de prise en charge d'une fonctionnalité à part entière.
  2. +
  3. Les variations de prise en charge pour certains aspects d'une fonctionnalité. Au moment où nous écrivons ces lignes, Firefox ne prend pas en charge la méthode onButtonClicked mais est le seul navigateur qui prend en charge onShown.
  4. +
  5. Les fonctionnalités propriétaires spécifiques à chaque navigateur. Au moment où nous écrivons ces lignes, les conteneurs sont une fonctionnalité spécifique à Firefox qui est donc le seul à prendre en charge la fonction contextualIdentities.
  6. +
+ +

Vous pouvez trouver plus de détails sur la prise en charge de l'API pour les différents navigateurs sur La prise en charge des API JavaScript WebExtension pour les différents navigateurs. Les informations de compatibilité sont également disponibles sur chaque page de la référence des API JavaScript WebExtension.

+ +

Handling API differences

+ +

Une approche simple pour gérer ces différences consiste à limiter les fonctionnalités utilisées par une extension afin que celle-ci puisse fonctionner sur différents navigateurs. Toutefois, en pratique, cette approche se révèlera souvent trop restrictive.

+ +

À la place, on peut utiliser des implémentations alternatives ou des fonctionnalités de recours dans ces cas. Cela peut également s'avérer utile pour gérer les différences d'implémentation entre les différentes versions d'un même navigateur

+ +

L'utilisation de vérifications à l'exécution quant à la disponibilité d'une fonctionnalité est une approche recommandée qui permet d'implémenter ou d'utiliser des alternatives à bon escient. L'avantage d'une vérification à l'exécution est que si la fonction devient disponible, il n'est pas nécessaire de mettre à jour ou de redistribuer l'extension à nouveau.

+ +

Le fragment de code suivant vous permet de vérifier l'existance d'une fonction lors de l'exécution :

+ +
if (typeof <function> === "function") {
+   // safe to use the function
+}
+ +

Les clés de manifeste

+ +

Les différences pour les clés du fichier manifest.json se répartissent en trois catégories :

+ +
    +
  1. Les attributs d'information sur l'extension. Firefox et Opera incluent la clé developer pour fournir des détails quant à la développeuse ou au développeur de l'application et la clé author.
  2. +
  3. Les fonctionnalités rattachées à l'extension. Edge ne prenait pas en charge la clé commands qui permet de définir des raccourcis clavier pour une extension.
  4. +
  5. Le caractère optionnel d'une clé. Ainsi, la clé author était obligatoire dans Edge mais optionnelle pour les autres navigateurs.
  6. +
+ +

Les informations quant à la compatibilité de chaque clé de manifeste sont incluses dans les pages de référence correspondantes.

+ +

Le fichier manifest.json évolue peu entre les différentes versions (exception faite du numéro de version). Il est parfois judicieux d'avoir une version statique différente pour chaque navigateur.

+ +

Empaquetage des extensions

+ +

L'empaquetage d'une extension pour la distribuer via les plateformes des navigateurs est uniforme .

+ + + +

Pour plus de détails sur les méthodes d'empaquetage, veuillez vous référer aux documentations de chaque portail de distribution.

+ +

Publication des extensions

+ +

Chaque navigateur majeur possède une plateforme de distribution d'extension. Chacun de ces magasins effectue une revue de l'extension pour vérifier la présence de vulnérabilités.

+ +

Aussi, il faudra gérer l'inscription et la mise à jour d'une extension séparément pour chaque distributeur. Dans certains cas, il est possible d'uploader son extension avec un utilitaire.

+ +

Le tableau qui suit récapitule les approches et fonctionnalités pour chaque plateforme de distribution :

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NavigateurFrais d'enregistrementUtilitaire pour l'uploadProcessus de revue avant la publicationAuthentification multi-facteur
FirefoxNonweb-extAutomatique, quelques secondes1Non
ChromeOuiOuiAutomatique, moins d'une heureOui
OperaNonNonManuel, aucun délai garantiNon
EdgeOuiNonManuel, jusqu'à 72 heures2Oui
+ +

1 Une revue manuelle de l'extension a lieu après la publication et peut entraîner la suspension de l'extension dans l'attente des corrections nécessaires aux problèmes éventuellement trouvés.

+ +

2 Au moment où nous écrivons ces lignes, Microsoft approuvait uniquement la publication d'extensions pré-approuvées.

+ +

Autres considérations

+ +

Nommage des extensions

+ +

Microsoft requiert un nom unique pour chaque extension et permet de revendiquer un ou plusieurs noms pour une extension via Windows Dev Center. Aussi, il peut être prudent de réserver un nom pour votre extension dès à présent, même si vous ne prévoyez pas de prendre en charge Edge immédiatement.

+ +

Aucune des autres plateformes n'impose de restrictions quant au nom de l'extension.

+ +

Numérotation des versions

+ +

Les plateformes de distribution pour Firefox et Chrome requièrent un numéro de version distinct et croissant pour chaque upload. Cela signifie qu'on ne peut pas revenir à un numéro de version antérieur s'il y a un problème sur une version.

+ +

Partage des ressources

+ +

Lorsque vous développez une extension pour Safari, vous pouvez réutiliser les éléments suivants entre vos différentes implémentations :

+ + + +

Conclusion

+ +

Lorsqu'on souhaite développer une extension pour les différents navigateurs, on pourra résoudre certaines des différences d'implémentation en visant initialement Firefox et en utilisant le polyfill pour les API WebExtension. Avec cette approche, on pourra bénéficier des fonctionnalités d'API proches du standard et exploiter les promesses pour la gestion asynchrone des évènements.

+ +

La majeure partie du travail d'adaptation consistera à gérer les variations de fonctionnalités entre les différentes implémentations et les différences du fichier manifeste (manifest.json) ; ce dernier pouvant être créé manuellement. L'empaquetage et la distribution contiennent également quelques différences en fonction des plateformes.

+ +

Vous pouvez utiliser browser-extension-template pour rapidement mettre en place un projet d'extension, l'empaqueter et la publier.

+ +

Avec les informations de cet article, vous devriez être en mesure de créer une extension qui fonctionne correctement sur l'ensemble des principaux navigateurs, permettant ainsi au plus grand nombre d'utiliser votre extension.

diff --git a/files/fr/mozilla/add-ons/webextensions/chrome_incompatibilities/index.html b/files/fr/mozilla/add-ons/webextensions/chrome_incompatibilities/index.html deleted file mode 100644 index 1c6f653b4b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/chrome_incompatibilities/index.html +++ /dev/null @@ -1,180 +0,0 @@ ---- -title: Incompatibilités avec Chrome -slug: Mozilla/Add-ons/WebExtensions/Chrome_incompatibilities -tags: - - Guide - - WebExtensions - - google chrome -translation_of: Mozilla/Add-ons/WebExtensions/Chrome_incompatibilities -original_slug: Mozilla/Add-ons/WebExtensions/Incompatibilités_Chrome ---- -

{{AddonSidebar}}

- -

Les extensions construites à l'aide des API WebExtension sont conçues afin d'être compatibles avec les extensions Chrome et Opera. Les extensions écrites dans ces navigateurs devraient fonctionner, autant que possible, avec très peu de changement dans Firefox.

- -

Toutefois, il existe certaines différences significatives entre Chrome, Firefox et Edge et notamment :

- - - -

La suite de cette page détaille ces problèmes ainsi que d'autres points d'incompatibilité.

- -

Les API JavaScript

- -

Les callbacks et l'espace de noms chrome.*

- -

Dans Chrome, les extensions peuvent accéder aux API JavaScript privilégiées à l'aide de l'espace de noms chrome :

- -
chrome.browserAction.setIcon({path: "path/to/icon.png"});
- -

Les WebExtensions accèdent aux API équivalentes à l'aide de l'espace de noms browser :

- -
browser.browserAction.setIcon({path: "path/to/icon.png"});
-
- -

Beaucoup d'API sont asynchrones. Dans Chrome, les API asynchrones utilisent des fonctions de rappel (callback) pour renvoyer des valeurs et {{WebExtAPIRef("runtime.lastError")}} pour communiquer les erreurs :

- -
function logCookie(c) {
-  if (chrome.extension.lastError) {
-    console.error(chrome.extension.lastError);
-  } else {
-    console.log(c);
-  }
-}
-
-chrome.cookies.set(
-  {url: "https://developer.mozilla.org/"},
-  logCookie
-);
- -

Les API WebExtensions équivalentes utilisent plutôt les promesses :

- -
function logCookie(c) {
-  console.log(c);
-}
-
-function logError(e) {
-  console.error(e);
-}
-
-var setCookie = browser.cookies.set(
-  {url: "https://developer.mozilla.org/"}
-);
-setCookie.then(logCookie, logError);
-
- -

Firefox : les espaces de noms chrome et browser

- -

Afin d'aider au portage, l'implémentation de Firefox des WebExtensions prend en charge l'espace de noms chrome, l'utilisation des callbacks, l'espace de noms browser et l'utilisation des promesses. Cela signifie que de nombreuses extensions Chrome fonctionneront simplement dans Firefox sans aucune modification. Cependant, cela ne fait pas partie de la norme WebExtension et peut ne pas être pris en charge par l'ensemble des navigateurs compatibles.

- -

Si vous écrivez votre extension en utilisant browser et les promesses, l'équipe de Firefox a également développé une prothèse (polyfill) qui lui permettra de fonctionner sur Chrome : https://github.com/mozilla/webextension-polyfill.

- -

Les API partiellement prises en charge

- -

La page sur la compatibilité des navigateurs pour les API JavaScript WebExtension inclut l'ensemble des tableaux de compatibilité. Lorsqu'il existe des réserves autour du support d'un élément d'API donné, ceci est indiqué dans ces tableaux avec un astérisque "*". Ces réserves sont détaillées la page de documentation respective de l'API.

- -

Ces tableaux sont générés à partir des données de compatibilité stockées en tant que  fichiers JSON dans GitHub.

- -

Le reste de cette section décrit les problèmes de compatibilité qui ne sont pas encore pris en compte dans ces tableaux.

- -

notifications

- - - -

proxy

- - - -

tabs

- - - -

webRequest

- - - -

windows

- - - -

API non prises en charge

- -

declarativeContent

- -

l'API declarativeContent de Chrome n'a pas encore été implémentée in Firefox.

- -

Firefox ne supportera pas l'API declarativeContent.RequestContentScript, qui est rarement utilisée et n'est pas disponible dans les versions stables de Chrome.

- -

Incompatibilités diverses

- -

Gestion des URL dans CSS

- -

Firefox résout les URL dans les fichiers CSS injectés par rapport au fichier CSS lui-même, plutôt que dans la page dans laquelle il est injecté.

- -

Incompatibilités supplémentaires

- -

Firefox ne prend pas en charge alert(), confirm() ou prompt() à partir des pages d'arrière-plan.

- -

web_accessible_resources

- -

Dans Chrome, lorsqu'une ressource est répertoriée dans web_accessible_resources, elle est accessible via chrome-extension://<id-de-l-extension>/<chemin/vers/la/ressource>. L'identifiant de l'extension est fixé pour une extension donnée.

- -

Firefox l'implémente différemment en utilisant un UUID aléatoire qui change pour chaque instance de Firefox : moz-extension://<UUID-aleatoire>/<chemin/vers/la/ressource>. Cette façon aléatoire peut empêcher certaines choses, comme ajouter l'URL de votre extension spécifique à la politique CSP d'un autre domaine.

- -

La propriété key du manifeste

- -

Lorsque vous travaillez avec une extension décompressée, Chrome permet d'ajouter une propriété key au manifeste afin de fixer l'identifiant de l'extension sur différentes machines. Ceci s'avère notamment utile lorsqu'on travaille avec web_accessible_resources. Puisque Firefox utilise des UUID aléatoires pour les web_accessible_resources, cette propriété n'est pas prise en charge.

- -

Les requêtes sont relatives au contexte de l'extension et pas à celui du contenu de la page

- -

Dans Chrome, lorsque la requête est appelée (par exemple, en utilisant fetch()) pour une URL relative comme /api du script de contenu, elle sera envoyée à https://example.com/api. Dans Firefox, vous devez fournir des URL absolues.

- -

Les clés de manifest.json

- -

La page relative à manifest.json contient un tableau décrivant la compatibilité des navigateurs pour les différentes clés du fichier. Lorsqu'il y a des mises en garde concernant le support d'une clé donnée, ceci est indiqué dans le tableau avec un astérisque "*" et de plus amples informations sont fournies dans la page décrivant la clé.

- -

Ces tables sont générées à partir des données de compatibilité stockées en tant que fichiers JSON dans GitHub.

- -

Communication avec le système natif

- -

Arguments de messagerie basée sur la connexion

- -

Sur Linux et Mac, Chrome passe un argument sur l'application natif, qui est l'origine de l'extension qui l'a lancée, sous la forme : chrome-extension://[extensionID]. Cela permet à l'application d'identifier l'extension.

- -

Sur Windows, Chrome passe deux arguments: le premier est l'origine de l'extension, et le second est un handle de la fenêtre native de Chrome qui a démarré l'application.

- -

allowed_extensions

- -

Dans Chrome, la clé de manifeste allowed_extensions s'appelle allowed_origins.

- -

Emplacement du fichier de manifeste d'application

- -

Chrome s'attend à trouver le manifeste de l'application dans un autre endroit. Se référer à la documentation Chrome pour l'emplacement de l'hôte de messagerie natif.

diff --git a/files/fr/mozilla/add-ons/webextensions/chrome_incompatibilities/index.md b/files/fr/mozilla/add-ons/webextensions/chrome_incompatibilities/index.md new file mode 100644 index 0000000000..1c6f653b4b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/chrome_incompatibilities/index.md @@ -0,0 +1,180 @@ +--- +title: Incompatibilités avec Chrome +slug: Mozilla/Add-ons/WebExtensions/Chrome_incompatibilities +tags: + - Guide + - WebExtensions + - google chrome +translation_of: Mozilla/Add-ons/WebExtensions/Chrome_incompatibilities +original_slug: Mozilla/Add-ons/WebExtensions/Incompatibilités_Chrome +--- +

{{AddonSidebar}}

+ +

Les extensions construites à l'aide des API WebExtension sont conçues afin d'être compatibles avec les extensions Chrome et Opera. Les extensions écrites dans ces navigateurs devraient fonctionner, autant que possible, avec très peu de changement dans Firefox.

+ +

Toutefois, il existe certaines différences significatives entre Chrome, Firefox et Edge et notamment :

+ + + +

La suite de cette page détaille ces problèmes ainsi que d'autres points d'incompatibilité.

+ +

Les API JavaScript

+ +

Les callbacks et l'espace de noms chrome.*

+ +

Dans Chrome, les extensions peuvent accéder aux API JavaScript privilégiées à l'aide de l'espace de noms chrome :

+ +
chrome.browserAction.setIcon({path: "path/to/icon.png"});
+ +

Les WebExtensions accèdent aux API équivalentes à l'aide de l'espace de noms browser :

+ +
browser.browserAction.setIcon({path: "path/to/icon.png"});
+
+ +

Beaucoup d'API sont asynchrones. Dans Chrome, les API asynchrones utilisent des fonctions de rappel (callback) pour renvoyer des valeurs et {{WebExtAPIRef("runtime.lastError")}} pour communiquer les erreurs :

+ +
function logCookie(c) {
+  if (chrome.extension.lastError) {
+    console.error(chrome.extension.lastError);
+  } else {
+    console.log(c);
+  }
+}
+
+chrome.cookies.set(
+  {url: "https://developer.mozilla.org/"},
+  logCookie
+);
+ +

Les API WebExtensions équivalentes utilisent plutôt les promesses :

+ +
function logCookie(c) {
+  console.log(c);
+}
+
+function logError(e) {
+  console.error(e);
+}
+
+var setCookie = browser.cookies.set(
+  {url: "https://developer.mozilla.org/"}
+);
+setCookie.then(logCookie, logError);
+
+ +

Firefox : les espaces de noms chrome et browser

+ +

Afin d'aider au portage, l'implémentation de Firefox des WebExtensions prend en charge l'espace de noms chrome, l'utilisation des callbacks, l'espace de noms browser et l'utilisation des promesses. Cela signifie que de nombreuses extensions Chrome fonctionneront simplement dans Firefox sans aucune modification. Cependant, cela ne fait pas partie de la norme WebExtension et peut ne pas être pris en charge par l'ensemble des navigateurs compatibles.

+ +

Si vous écrivez votre extension en utilisant browser et les promesses, l'équipe de Firefox a également développé une prothèse (polyfill) qui lui permettra de fonctionner sur Chrome : https://github.com/mozilla/webextension-polyfill.

+ +

Les API partiellement prises en charge

+ +

La page sur la compatibilité des navigateurs pour les API JavaScript WebExtension inclut l'ensemble des tableaux de compatibilité. Lorsqu'il existe des réserves autour du support d'un élément d'API donné, ceci est indiqué dans ces tableaux avec un astérisque "*". Ces réserves sont détaillées la page de documentation respective de l'API.

+ +

Ces tableaux sont générés à partir des données de compatibilité stockées en tant que  fichiers JSON dans GitHub.

+ +

Le reste de cette section décrit les problèmes de compatibilité qui ne sont pas encore pris en compte dans ces tableaux.

+ +

notifications

+ + + +

proxy

+ + + +

tabs

+ + + +

webRequest

+ + + +

windows

+ + + +

API non prises en charge

+ +

declarativeContent

+ +

l'API declarativeContent de Chrome n'a pas encore été implémentée in Firefox.

+ +

Firefox ne supportera pas l'API declarativeContent.RequestContentScript, qui est rarement utilisée et n'est pas disponible dans les versions stables de Chrome.

+ +

Incompatibilités diverses

+ +

Gestion des URL dans CSS

+ +

Firefox résout les URL dans les fichiers CSS injectés par rapport au fichier CSS lui-même, plutôt que dans la page dans laquelle il est injecté.

+ +

Incompatibilités supplémentaires

+ +

Firefox ne prend pas en charge alert(), confirm() ou prompt() à partir des pages d'arrière-plan.

+ +

web_accessible_resources

+ +

Dans Chrome, lorsqu'une ressource est répertoriée dans web_accessible_resources, elle est accessible via chrome-extension://<id-de-l-extension>/<chemin/vers/la/ressource>. L'identifiant de l'extension est fixé pour une extension donnée.

+ +

Firefox l'implémente différemment en utilisant un UUID aléatoire qui change pour chaque instance de Firefox : moz-extension://<UUID-aleatoire>/<chemin/vers/la/ressource>. Cette façon aléatoire peut empêcher certaines choses, comme ajouter l'URL de votre extension spécifique à la politique CSP d'un autre domaine.

+ +

La propriété key du manifeste

+ +

Lorsque vous travaillez avec une extension décompressée, Chrome permet d'ajouter une propriété key au manifeste afin de fixer l'identifiant de l'extension sur différentes machines. Ceci s'avère notamment utile lorsqu'on travaille avec web_accessible_resources. Puisque Firefox utilise des UUID aléatoires pour les web_accessible_resources, cette propriété n'est pas prise en charge.

+ +

Les requêtes sont relatives au contexte de l'extension et pas à celui du contenu de la page

+ +

Dans Chrome, lorsque la requête est appelée (par exemple, en utilisant fetch()) pour une URL relative comme /api du script de contenu, elle sera envoyée à https://example.com/api. Dans Firefox, vous devez fournir des URL absolues.

+ +

Les clés de manifest.json

+ +

La page relative à manifest.json contient un tableau décrivant la compatibilité des navigateurs pour les différentes clés du fichier. Lorsqu'il y a des mises en garde concernant le support d'une clé donnée, ceci est indiqué dans le tableau avec un astérisque "*" et de plus amples informations sont fournies dans la page décrivant la clé.

+ +

Ces tables sont générées à partir des données de compatibilité stockées en tant que fichiers JSON dans GitHub.

+ +

Communication avec le système natif

+ +

Arguments de messagerie basée sur la connexion

+ +

Sur Linux et Mac, Chrome passe un argument sur l'application natif, qui est l'origine de l'extension qui l'a lancée, sous la forme : chrome-extension://[extensionID]. Cela permet à l'application d'identifier l'extension.

+ +

Sur Windows, Chrome passe deux arguments: le premier est l'origine de l'extension, et le second est un handle de la fenêtre native de Chrome qui a démarré l'application.

+ +

allowed_extensions

+ +

Dans Chrome, la clé de manifeste allowed_extensions s'appelle allowed_origins.

+ +

Emplacement du fichier de manifeste d'application

+ +

Chrome s'attend à trouver le manifeste de l'application dans un autre endroit. Se référer à la documentation Chrome pour l'emplacement de l'hôte de messagerie natif.

diff --git a/files/fr/mozilla/add-ons/webextensions/content_scripts/index.html b/files/fr/mozilla/add-ons/webextensions/content_scripts/index.html deleted file mode 100644 index f1e4544502..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/content_scripts/index.html +++ /dev/null @@ -1,474 +0,0 @@ ---- -title: Scripts de contenu -slug: Mozilla/Add-ons/WebExtensions/Content_scripts -tags: - - Add-ons - - JavaScript - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Content_scripts ---- -
{{AddonSidebar}}
- -

Un script de contenu (content script en anglais) est une partie de votre extension qui s’exécute dans le contexte d’une page web donnée (par opposition aux scripts d’arrière-plan qui font partie de l'extension, ou aux scripts qui font partie du site Web lui-même, tels que ceux chargés en utilisant l'élément {{HTMLElement("script")}}).

- -

Les scripts d'arrière-plan peuvent accéder à l'ensemble des API WebExtension mais ils ne peuvent pas accéder directement au contenu des pages web. Aussi, si votre extension doit manipuler le contenu des pages web, vous devrez utiliser les scripts de contenu.

- -

Tout comme les scripts habituellement chargés par les pages web classiques, les scripts de contenu peuvent lire et modifier le contenu de leurs pages en utilisant les API DOM standard.

- -

Les scripts de contenu ne peuvent accéder qu'à un sous-ensemble des API WebExtension, mais ils peuvent communiquer avec les scripts d'arrière-plan grâce à un système de messages et ainsi accéder indirectement aux API WebExtension.

- -
-

Note : que les scripts de contenu sont bloqués sur les domaines suivants :

- - - -

If you try to inject a content script into a page in these domains, it will fail and the page will log a CSP error.

- -

Because these restrictions include addons.mozilla.org, users may attempt to use your extension immediately after installation—only to find that it doesn't work! You may want to add an appropriate warning, or an onboarding page to move users away from addons.mozilla.org.

-
- -
-

Note : Les valeurs ajoutées à la portée globale d'un script de contenu avec var foo ou window.foo = "bar" peuvent disparaître à cause du bogue 1408996.

-
- -

Charger des scripts de contenu

- -

Il est possible de charger un script de contenu dans une page web de trois manières différentes :

- -
    -
  1. Lors de la phase d'installation, pour les pages qui correspondent à certains motifs d'URL : en utilisant la clé content_scripts dans le fichier manifest.json, vous pouvez demander au navigateur de charger un script de contenu chaque fois que le navigateur charge une page dont l'URL correspond à un motif donné.
  2. -
  3. Lors de l'exécution, pour les pages qui correspondent à certains motifs d'URL : en utilisant l'API {{WebExtAPIRef("contentScripts")}}, vous pouvez demander au navigateur de charger un script de contenu chaque fois que le navigateur charge une page dont l'URL correspond à un motif donné. Cette méthode est la version dynamique de la première méthode.
  4. -
  5. Lors de l'exécution, pour certains onglets spécifiques : en utilisant la méthode  tabs.executeScript(), vous pouvez charger un script de contenu dans un onglet spécifique quand vous le souhaitez (par exemple lorsqu'un utilisateur clique sur un bouton d'action du navigateur).
  6. -
- -

Il n'y a qu'une seule portée globale pour chaque frame et pour chaque extension. Cela signifie que les variables d'un script de contenu peuvent être accédées directement par un autre script de contenu, indépendamment de la manière dont le script de contenu a été chargé.

- -

À l'aide des méthodes (1) et (2), vous ne pouvez charger des scripts que dans des pages dont les URL peuvent être représentées par un motif de correspondance.

- -

En utilisant la méthode (3), vous pouvez également charger des scripts dans des pages packagées avec votre extension, mais vous ne pouvez pas charger des scripts dans des pages privilégiées du navigateur (comme about:debugging ou about:addons).

- -

Environnement des scripts de contenu

- -

Accès au DOM

- -

Les scripts de contenu peuvent accéder et modifier le DOM de la page à la manière des scripts classique. Ils peuvent également observer tout changement du DOM effectué par les scripts de la page.

- -

Cependant, les scripts de contenu reçoivent une « vue propre du DOM ». Cela signifie que :

- - - -

Dans Firefox, ce comportement s'appelle Vision Xray.

- -

Prenons par exemple la page web suivante :

- -
<!DOCTYPE html>
-<html>
-  <head>
-    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
-  </head>
-
-  <body>
-    <script src="page-scripts/page-script.js"></script>
-  </body>
-</html>
- -

Le script « page-script.js » est écrit ci-dessous :

- -
// page-script.js
-
-// ajouter un élément au DOM
-var p = document.createElement("p");
-p.textContent = "Ce paragraphe a été ajouté par un script de la page.";
-p.setAttribute("id", "page-script-para");
-document.body.appendChild(p);
-
-// définition d’une nouvelle propriété pour la fenêtre
-window.toto = "Cette variable globale a été ajoutée par un script de la page.";
-
-// redéfinition de la fonction intégrée window.confirm()
-window.confirm = function() {
-  alert("Ce script de page peut aussi redéfinir ’confirm’.");
-}
- -

Et maintenant une extension injecte ce script de contenu dans la page :

- -
// content-script.js
-
-// peut accéder au DOM et le modifier
-var pageScriptPara = document.getElementById("page-script-para");
-pageScriptPara.style.backgroundColor = "blue";
-
-// ne peut pas voir les propriétés ajoutées par un script de la page
-console.log(window.toto);  // non défini
-
-// voit la forme originale des propriétés redéfinies
-window.confirm("Êtes-vous sûr ?"); // appelle la méthode window.confirm() originale
- -

L'inverse est également vrai : les scripts de la page ne peuvent pas voir les propriétés JavaScript ajoutées par les scripts de contenu.

- -

Ceci signifie que le script de contenu peut compter sur un comportement prévisible des propriétés du DOM et n'a pas à se soucier d'un éventuel conflit entre les variables qu'il définit et celles des scripts de page.

- -

Une des conséquences pratiques de ce comportement est que les scripts de contenu n’ont accès à aucune des bibliothèques JavaScript chargées par la page. Par exemple, si la page inclut jQuery, le script de contenu ne pourra pas le voir.

- -

Si un script de contenu veut utiliser une bibliothèque JavaScript, alors la bibliothèque doit être injectée en tant que script de contenu aux côtés du script de contenu qui veut l’utiliser.

- -
"content_scripts": [
-  {
-    "matches": ["*://*.mozilla.org/*"],
-    "js": ["jquery.js", "content-script.js"]
-  }
-]
- -
-

Note: Firefox fournis certaines API qui permettent aux scripts de contenu d'accéder aux objets JavaScript créés par les scripts de page et d'exposer leurs propres objets JavaScript aux scripts de page.

- -

Voir Partage d'objets avec des scripts de page pour plus de détails.***

-
- -

Les API WebExtension accessibles

- -

En plus des API standard du DOM, les scripts de contenu peuvent utiliser les API WebExtension suivantes :

- -

Depuis l'API extension :

- - - -

Depuis l'API runtime :

- - - -

Depuis l'API i18n :

- - - -

A partir des menus:

- - - -

L'ensemble des propriétés et méthodes de l'API storage.

- -

XHR et Fetch

- -

Les scripts de contenu peuvent effectuer des requêtes en utilisant les API classiques  window.XMLHttpRequest et window.fetch().

- -

Les scripts de contenu obtiennent les mêmes privilèges interdomaines que le reste de l'extension : si l'extension a demandé un accès interdomaine pour un domaine à l'aide de la clé permissions dans le fichier manifest.json, ses scripts de contenu auront également accès à ce domaine.

- -

Ceci est accompli en exposant des instances XHR et fetch privilégiées dans le script de contenu. Cela a pour effet secondaire de ne pas définir les en-têtes Origin et Referer tels que la page elle-même l'aurait fait. Cela est souvent préférable afin d'éviter que la requête révèle la différence d'origine. À partir de Firefox 58, les extensions qui doivent exécuter des requêtes se comportant comme si elles étaient envoyées par le contenu lui-même peuvent utiliser content.XMLHttpRequest et content.fetch(). Pour les extensions visant une compatibilité entre les navigateurs, il est nécessaire de vérifier la présence de ces API avant de les utiliser.

- -

Communication avec les scripts d'arrière-plan

- -

Bien que les scripts de contenu ne puissent pas utiliser la totalité des API WebExtension, ils peuvent communiquer avec les scripts d'arrière-plan de l'extension via l'API de messagerie et ont donc indirectement accès aux mêmes API que ces derniers.

- -

Par défault, il existe deux moyens de communication entre les scripts d'arrière-plan et les scripts de contenu : vous pouvez envoyer des messages un par un, avec des réponses optionelles, ou vous pouvez établir une connexion continue entre les scripts, et utiliser cette connexion pour échanger des messages.

- -

Un message à la fois

- -

Pour envoyer un message à la fois, vous pouvez utiliser les API suivantes :

- - - - - - - - - - - - - - - - - - - - - -
Dans le script de contenuDans les scripts d'arrière-plan
Envoyer un messagebrowser.runtime.sendMessage()browser.tabs.sendMessage()
Recevoir un messagebrowser.runtime.onMessagebrowser.runtime.onMessage
- -

Par exemple, voici un script de contenu qui écoute les évènements de clic sur une page web. Si le clic était sur un lien, il envoie un message à la page d'arrière-plan avec l'URL cible :

- -
// content-script.js
-
-window.addEventListener("click", notifyExtension);
-
-function notifyExtension(e) {
-  if (e.target.tagName != "A") {
-    return;
-  }
-  browser.runtime.sendMessage({"url": e.target.href});
-}
- -

Le script d'arrière-plan écoute les messages et affiche une notification en utilisant l'API notification :

- -
// 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
-  });
-}
-
- -

Ce code d'exemple est légèrement dérivé de l'exemple notify-link-clicks-i18n sur GitHub.

- -

Les messages en flux continu

- -

L'envoi de messages distincts peut vite devenir lourd si de nombreux messages sont envoyés entre les scripts d'arrière plan et les scripts de contenu.

- -

L'une des alternatives possibles est d'établir une connexion longue durée entre les deux scripts et d'utiliser cette connexion afin d'échanger des messages.

- -

De chaque côté (contenu d'une part, arrière-plan d'autre part), les scripts possèdent un objet runtime.Port dont ils peuvent se servir pour échanger des messages.

- -

Pour créer la connexion :

- - - -

Une fois que chaque côté possède son propre port, ils peuvent échanger en utilisant runtime.Port.postMessage() pour envoyer des message et runtime.Port.onMessage pour en recevoir.

- -

Par exemple, dès le chargement, ce script de contenu :

- - - -
// content-script.js
-
-var myPort = browser.runtime.connect({name:"port-from-cs"});
-myPort.postMessage({greeting: "ici le script de contenu"});
-
-myPort.onMessage.addListener(function(m) {
-  console.log("Dans le script de contenu, réception d'un message du script d'arrière-plan");
-  console.log(m.greeting);
-});
-
-document.body.addEventListener("click", function() {
-  myPort.postMessage({greeting: "clic sur la page !"});
-});
- -

Le script d'arrière plan qui correspond ·

- - - -
// background-script.js
-
-var portFromCS;
-
-function connected(p) {
-  portFromCS = p;
-  portFromCS.postMessage({greeting: "salut, script de contenu !"});
-  portFromCS.onMessage.addListener(function(m) {
-    console.log("Dans le script d'arrière-plan, réception d'un message du script de contenu.")
-    console.log(m.greeting);
-  });
-}
-
-browser.runtime.onConnect.addListener(connected);
-
-browser.browserAction.onClicked.addListener(function() {
-  portFromCS.postMessage({greeting: "clic sur le bouton !"});
-});
-
- -

Scripts de contenu multiples

- -

Si plusieurs scripts de contenu communiquent en même temps, vous pouvez stocker chaque connexion dans un tableau.

- - - -
// 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 => {
-      p.postMessage({greeting: "clic sur le bouton !"})
-    })
-});
- - - -

Communiquer avec la page web

- -

Bien que les scripts de contenu ne puissent (par défaut) accéder aux objets créés par les scripts de page, ils peuvent cependant communiquer avec les scripts de page en utilisant les API window.postMessage et window.addEventListener du DOM.

- -

Par exemple :

- -
// page-script.js
-
-var messenger = document.getElementById("from-page-script");
-
-messenger.addEventListener("click", messageContentScript);
-
-function messageContentScript() {
-  window.postMessage({
-    direction: "from-page-script",
-    message: "Message de la page"
-  }, "*");
- -
// content-script.js
-
-window.addEventListener("message", function(event) {
-  if (event.source == window &&
-      event.data &&
-      event.data.direction == "from-page-script") {
-    alert("Le script de contenu a reçu ce message : \"" + event.data.message + "\"");
-  }
-});
- -

Pour un exemple complet et fonctionnel, visitez la page de démo sur Github et suivez les instructions.

- -
-

Attention : Notez que vous devez être très prudent lorsque vous interagissez avec du contenu Web non fiable de cette manière. Les extensions sont du code privilégié qui peut avoir de puissantes capacités et les pages Web hostiles peuvent facilement les amener à accéder à ces capacités.

- -

Pour donner un exemple trivial, supposons que le code du script de contenu qui reçoit le message ressemble à ceci :

- -
// content-script.js
-
-window.addEventListener("message", function(event) {
-  if (event.source == window &&
-      event.data.direction &&
-      event.data.direction == "from-page-script") {
-    eval(event.data.message);
-  }
-});
- -

Maintenant, le script de page peut exécuter n'importe quel code avec tous les privilèges du script de contenu.

-
- -

Utilisation de eval() dans les scripts de contenu

- -

Dans Chrome, {{jsxref("Objets_globaux/eval","eval()")}} exécute toujours le code dans le contexte du script de contenu et pas dans le contexte de la page.

- -

Dans Firefox :

- - - -

Par exemple, considérons un script de contenu comme ceci  :

- -
// content-script.js
-
-window.eval('window.x = 1;');
-eval('window.y = 2');
-
-console.log(`Dans le script de contenu, window.x: ${window.x}`);
-console.log(`Dans le script de contenu, window.y: ${window.y}`);
-
-window.postMessage({
-  message: "check"
-}, "*");
- -

Ce code crée simplement des variables x et y en utilisant window.eval() et eval() puis enregistre leurs valeurs et envoie un message à la page.

- -

À la réception du message, le script de page enregistre les mêmes variables :

- -
window.addEventListener("message", function(event) {
-  if (event.source === window && event.data && event.data.message === "check") {
-    console.log(`Dans le script de la page, window.x: ${window.x}`);
-    console.log(`Dans le script de la page, window.y: ${window.y}`);
-  }
-});
- -

Dans Chrome, cela produira le résultat suivant :

- -
Dans le script de contenu, window.x: 1
-Dans le script de contenu, window.y: 2
-Dans le script de la page, window.x: undefined
-Dans le script de la page, window.y: undefined
- -

Dans Firefox, on aura le résultat suivant :

- -
Dans le script de contenu, window.x: undefined
-Dans le script de contenu, window.y: 2
-Dans le script de la page, window.x: 1
-Dans le script de la page, window.y: undefined
- -

La même chose s'applique pour setTimeout(), setInterval(), et Function().

- -
-

Attention : Lorsque vous exécutez du code dans le contexte de la page, l'avertissement précédent reste nécessaire : l'environnement de la page est contrôlé par des pages web potentiellement malveillantes qui peuvent redéfinir les objets avec lesquels vous interagissez :

- -
// page.js redéfinit console.log
-
-var original = console.log;
-
-console.log = function() {
-  original(true);
-}
-
- -
// content-script.js appelle la version redéfinie
-
-window.eval('console.log(false)');
-
-
diff --git a/files/fr/mozilla/add-ons/webextensions/content_scripts/index.md b/files/fr/mozilla/add-ons/webextensions/content_scripts/index.md new file mode 100644 index 0000000000..f1e4544502 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/content_scripts/index.md @@ -0,0 +1,474 @@ +--- +title: Scripts de contenu +slug: Mozilla/Add-ons/WebExtensions/Content_scripts +tags: + - Add-ons + - JavaScript + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Content_scripts +--- +
{{AddonSidebar}}
+ +

Un script de contenu (content script en anglais) est une partie de votre extension qui s’exécute dans le contexte d’une page web donnée (par opposition aux scripts d’arrière-plan qui font partie de l'extension, ou aux scripts qui font partie du site Web lui-même, tels que ceux chargés en utilisant l'élément {{HTMLElement("script")}}).

+ +

Les scripts d'arrière-plan peuvent accéder à l'ensemble des API WebExtension mais ils ne peuvent pas accéder directement au contenu des pages web. Aussi, si votre extension doit manipuler le contenu des pages web, vous devrez utiliser les scripts de contenu.

+ +

Tout comme les scripts habituellement chargés par les pages web classiques, les scripts de contenu peuvent lire et modifier le contenu de leurs pages en utilisant les API DOM standard.

+ +

Les scripts de contenu ne peuvent accéder qu'à un sous-ensemble des API WebExtension, mais ils peuvent communiquer avec les scripts d'arrière-plan grâce à un système de messages et ainsi accéder indirectement aux API WebExtension.

+ +
+

Note : que les scripts de contenu sont bloqués sur les domaines suivants :

+ + + +

If you try to inject a content script into a page in these domains, it will fail and the page will log a CSP error.

+ +

Because these restrictions include addons.mozilla.org, users may attempt to use your extension immediately after installation—only to find that it doesn't work! You may want to add an appropriate warning, or an onboarding page to move users away from addons.mozilla.org.

+
+ +
+

Note : Les valeurs ajoutées à la portée globale d'un script de contenu avec var foo ou window.foo = "bar" peuvent disparaître à cause du bogue 1408996.

+
+ +

Charger des scripts de contenu

+ +

Il est possible de charger un script de contenu dans une page web de trois manières différentes :

+ +
    +
  1. Lors de la phase d'installation, pour les pages qui correspondent à certains motifs d'URL : en utilisant la clé content_scripts dans le fichier manifest.json, vous pouvez demander au navigateur de charger un script de contenu chaque fois que le navigateur charge une page dont l'URL correspond à un motif donné.
  2. +
  3. Lors de l'exécution, pour les pages qui correspondent à certains motifs d'URL : en utilisant l'API {{WebExtAPIRef("contentScripts")}}, vous pouvez demander au navigateur de charger un script de contenu chaque fois que le navigateur charge une page dont l'URL correspond à un motif donné. Cette méthode est la version dynamique de la première méthode.
  4. +
  5. Lors de l'exécution, pour certains onglets spécifiques : en utilisant la méthode  tabs.executeScript(), vous pouvez charger un script de contenu dans un onglet spécifique quand vous le souhaitez (par exemple lorsqu'un utilisateur clique sur un bouton d'action du navigateur).
  6. +
+ +

Il n'y a qu'une seule portée globale pour chaque frame et pour chaque extension. Cela signifie que les variables d'un script de contenu peuvent être accédées directement par un autre script de contenu, indépendamment de la manière dont le script de contenu a été chargé.

+ +

À l'aide des méthodes (1) et (2), vous ne pouvez charger des scripts que dans des pages dont les URL peuvent être représentées par un motif de correspondance.

+ +

En utilisant la méthode (3), vous pouvez également charger des scripts dans des pages packagées avec votre extension, mais vous ne pouvez pas charger des scripts dans des pages privilégiées du navigateur (comme about:debugging ou about:addons).

+ +

Environnement des scripts de contenu

+ +

Accès au DOM

+ +

Les scripts de contenu peuvent accéder et modifier le DOM de la page à la manière des scripts classique. Ils peuvent également observer tout changement du DOM effectué par les scripts de la page.

+ +

Cependant, les scripts de contenu reçoivent une « vue propre du DOM ». Cela signifie que :

+ + + +

Dans Firefox, ce comportement s'appelle Vision Xray.

+ +

Prenons par exemple la page web suivante :

+ +
<!DOCTYPE html>
+<html>
+  <head>
+    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
+  </head>
+
+  <body>
+    <script src="page-scripts/page-script.js"></script>
+  </body>
+</html>
+ +

Le script « page-script.js » est écrit ci-dessous :

+ +
// page-script.js
+
+// ajouter un élément au DOM
+var p = document.createElement("p");
+p.textContent = "Ce paragraphe a été ajouté par un script de la page.";
+p.setAttribute("id", "page-script-para");
+document.body.appendChild(p);
+
+// définition d’une nouvelle propriété pour la fenêtre
+window.toto = "Cette variable globale a été ajoutée par un script de la page.";
+
+// redéfinition de la fonction intégrée window.confirm()
+window.confirm = function() {
+  alert("Ce script de page peut aussi redéfinir ’confirm’.");
+}
+ +

Et maintenant une extension injecte ce script de contenu dans la page :

+ +
// content-script.js
+
+// peut accéder au DOM et le modifier
+var pageScriptPara = document.getElementById("page-script-para");
+pageScriptPara.style.backgroundColor = "blue";
+
+// ne peut pas voir les propriétés ajoutées par un script de la page
+console.log(window.toto);  // non défini
+
+// voit la forme originale des propriétés redéfinies
+window.confirm("Êtes-vous sûr ?"); // appelle la méthode window.confirm() originale
+ +

L'inverse est également vrai : les scripts de la page ne peuvent pas voir les propriétés JavaScript ajoutées par les scripts de contenu.

+ +

Ceci signifie que le script de contenu peut compter sur un comportement prévisible des propriétés du DOM et n'a pas à se soucier d'un éventuel conflit entre les variables qu'il définit et celles des scripts de page.

+ +

Une des conséquences pratiques de ce comportement est que les scripts de contenu n’ont accès à aucune des bibliothèques JavaScript chargées par la page. Par exemple, si la page inclut jQuery, le script de contenu ne pourra pas le voir.

+ +

Si un script de contenu veut utiliser une bibliothèque JavaScript, alors la bibliothèque doit être injectée en tant que script de contenu aux côtés du script de contenu qui veut l’utiliser.

+ +
"content_scripts": [
+  {
+    "matches": ["*://*.mozilla.org/*"],
+    "js": ["jquery.js", "content-script.js"]
+  }
+]
+ +
+

Note: Firefox fournis certaines API qui permettent aux scripts de contenu d'accéder aux objets JavaScript créés par les scripts de page et d'exposer leurs propres objets JavaScript aux scripts de page.

+ +

Voir Partage d'objets avec des scripts de page pour plus de détails.***

+
+ +

Les API WebExtension accessibles

+ +

En plus des API standard du DOM, les scripts de contenu peuvent utiliser les API WebExtension suivantes :

+ +

Depuis l'API extension :

+ + + +

Depuis l'API runtime :

+ + + +

Depuis l'API i18n :

+ + + +

A partir des menus:

+ + + +

L'ensemble des propriétés et méthodes de l'API storage.

+ +

XHR et Fetch

+ +

Les scripts de contenu peuvent effectuer des requêtes en utilisant les API classiques  window.XMLHttpRequest et window.fetch().

+ +

Les scripts de contenu obtiennent les mêmes privilèges interdomaines que le reste de l'extension : si l'extension a demandé un accès interdomaine pour un domaine à l'aide de la clé permissions dans le fichier manifest.json, ses scripts de contenu auront également accès à ce domaine.

+ +

Ceci est accompli en exposant des instances XHR et fetch privilégiées dans le script de contenu. Cela a pour effet secondaire de ne pas définir les en-têtes Origin et Referer tels que la page elle-même l'aurait fait. Cela est souvent préférable afin d'éviter que la requête révèle la différence d'origine. À partir de Firefox 58, les extensions qui doivent exécuter des requêtes se comportant comme si elles étaient envoyées par le contenu lui-même peuvent utiliser content.XMLHttpRequest et content.fetch(). Pour les extensions visant une compatibilité entre les navigateurs, il est nécessaire de vérifier la présence de ces API avant de les utiliser.

+ +

Communication avec les scripts d'arrière-plan

+ +

Bien que les scripts de contenu ne puissent pas utiliser la totalité des API WebExtension, ils peuvent communiquer avec les scripts d'arrière-plan de l'extension via l'API de messagerie et ont donc indirectement accès aux mêmes API que ces derniers.

+ +

Par défault, il existe deux moyens de communication entre les scripts d'arrière-plan et les scripts de contenu : vous pouvez envoyer des messages un par un, avec des réponses optionelles, ou vous pouvez établir une connexion continue entre les scripts, et utiliser cette connexion pour échanger des messages.

+ +

Un message à la fois

+ +

Pour envoyer un message à la fois, vous pouvez utiliser les API suivantes :

+ + + + + + + + + + + + + + + + + + + + + +
Dans le script de contenuDans les scripts d'arrière-plan
Envoyer un messagebrowser.runtime.sendMessage()browser.tabs.sendMessage()
Recevoir un messagebrowser.runtime.onMessagebrowser.runtime.onMessage
+ +

Par exemple, voici un script de contenu qui écoute les évènements de clic sur une page web. Si le clic était sur un lien, il envoie un message à la page d'arrière-plan avec l'URL cible :

+ +
// content-script.js
+
+window.addEventListener("click", notifyExtension);
+
+function notifyExtension(e) {
+  if (e.target.tagName != "A") {
+    return;
+  }
+  browser.runtime.sendMessage({"url": e.target.href});
+}
+ +

Le script d'arrière-plan écoute les messages et affiche une notification en utilisant l'API notification :

+ +
// 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
+  });
+}
+
+ +

Ce code d'exemple est légèrement dérivé de l'exemple notify-link-clicks-i18n sur GitHub.

+ +

Les messages en flux continu

+ +

L'envoi de messages distincts peut vite devenir lourd si de nombreux messages sont envoyés entre les scripts d'arrière plan et les scripts de contenu.

+ +

L'une des alternatives possibles est d'établir une connexion longue durée entre les deux scripts et d'utiliser cette connexion afin d'échanger des messages.

+ +

De chaque côté (contenu d'une part, arrière-plan d'autre part), les scripts possèdent un objet runtime.Port dont ils peuvent se servir pour échanger des messages.

+ +

Pour créer la connexion :

+ + + +

Une fois que chaque côté possède son propre port, ils peuvent échanger en utilisant runtime.Port.postMessage() pour envoyer des message et runtime.Port.onMessage pour en recevoir.

+ +

Par exemple, dès le chargement, ce script de contenu :

+ + + +
// content-script.js
+
+var myPort = browser.runtime.connect({name:"port-from-cs"});
+myPort.postMessage({greeting: "ici le script de contenu"});
+
+myPort.onMessage.addListener(function(m) {
+  console.log("Dans le script de contenu, réception d'un message du script d'arrière-plan");
+  console.log(m.greeting);
+});
+
+document.body.addEventListener("click", function() {
+  myPort.postMessage({greeting: "clic sur la page !"});
+});
+ +

Le script d'arrière plan qui correspond ·

+ + + +
// background-script.js
+
+var portFromCS;
+
+function connected(p) {
+  portFromCS = p;
+  portFromCS.postMessage({greeting: "salut, script de contenu !"});
+  portFromCS.onMessage.addListener(function(m) {
+    console.log("Dans le script d'arrière-plan, réception d'un message du script de contenu.")
+    console.log(m.greeting);
+  });
+}
+
+browser.runtime.onConnect.addListener(connected);
+
+browser.browserAction.onClicked.addListener(function() {
+  portFromCS.postMessage({greeting: "clic sur le bouton !"});
+});
+
+ +

Scripts de contenu multiples

+ +

Si plusieurs scripts de contenu communiquent en même temps, vous pouvez stocker chaque connexion dans un tableau.

+ + + +
// 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 => {
+      p.postMessage({greeting: "clic sur le bouton !"})
+    })
+});
+ + + +

Communiquer avec la page web

+ +

Bien que les scripts de contenu ne puissent (par défaut) accéder aux objets créés par les scripts de page, ils peuvent cependant communiquer avec les scripts de page en utilisant les API window.postMessage et window.addEventListener du DOM.

+ +

Par exemple :

+ +
// page-script.js
+
+var messenger = document.getElementById("from-page-script");
+
+messenger.addEventListener("click", messageContentScript);
+
+function messageContentScript() {
+  window.postMessage({
+    direction: "from-page-script",
+    message: "Message de la page"
+  }, "*");
+ +
// content-script.js
+
+window.addEventListener("message", function(event) {
+  if (event.source == window &&
+      event.data &&
+      event.data.direction == "from-page-script") {
+    alert("Le script de contenu a reçu ce message : \"" + event.data.message + "\"");
+  }
+});
+ +

Pour un exemple complet et fonctionnel, visitez la page de démo sur Github et suivez les instructions.

+ +
+

Attention : Notez que vous devez être très prudent lorsque vous interagissez avec du contenu Web non fiable de cette manière. Les extensions sont du code privilégié qui peut avoir de puissantes capacités et les pages Web hostiles peuvent facilement les amener à accéder à ces capacités.

+ +

Pour donner un exemple trivial, supposons que le code du script de contenu qui reçoit le message ressemble à ceci :

+ +
// content-script.js
+
+window.addEventListener("message", function(event) {
+  if (event.source == window &&
+      event.data.direction &&
+      event.data.direction == "from-page-script") {
+    eval(event.data.message);
+  }
+});
+ +

Maintenant, le script de page peut exécuter n'importe quel code avec tous les privilèges du script de contenu.

+
+ +

Utilisation de eval() dans les scripts de contenu

+ +

Dans Chrome, {{jsxref("Objets_globaux/eval","eval()")}} exécute toujours le code dans le contexte du script de contenu et pas dans le contexte de la page.

+ +

Dans Firefox :

+ + + +

Par exemple, considérons un script de contenu comme ceci  :

+ +
// content-script.js
+
+window.eval('window.x = 1;');
+eval('window.y = 2');
+
+console.log(`Dans le script de contenu, window.x: ${window.x}`);
+console.log(`Dans le script de contenu, window.y: ${window.y}`);
+
+window.postMessage({
+  message: "check"
+}, "*");
+ +

Ce code crée simplement des variables x et y en utilisant window.eval() et eval() puis enregistre leurs valeurs et envoie un message à la page.

+ +

À la réception du message, le script de page enregistre les mêmes variables :

+ +
window.addEventListener("message", function(event) {
+  if (event.source === window && event.data && event.data.message === "check") {
+    console.log(`Dans le script de la page, window.x: ${window.x}`);
+    console.log(`Dans le script de la page, window.y: ${window.y}`);
+  }
+});
+ +

Dans Chrome, cela produira le résultat suivant :

+ +
Dans le script de contenu, window.x: 1
+Dans le script de contenu, window.y: 2
+Dans le script de la page, window.x: undefined
+Dans le script de la page, window.y: undefined
+ +

Dans Firefox, on aura le résultat suivant :

+ +
Dans le script de contenu, window.x: undefined
+Dans le script de contenu, window.y: 2
+Dans le script de la page, window.x: 1
+Dans le script de la page, window.y: undefined
+ +

La même chose s'applique pour setTimeout(), setInterval(), et Function().

+ +
+

Attention : Lorsque vous exécutez du code dans le contexte de la page, l'avertissement précédent reste nécessaire : l'environnement de la page est contrôlé par des pages web potentiellement malveillantes qui peuvent redéfinir les objets avec lesquels vous interagissez :

+ +
// page.js redéfinit console.log
+
+var original = console.log;
+
+console.log = function() {
+  original(true);
+}
+
+ +
// content-script.js appelle la version redéfinie
+
+window.eval('console.log(false)');
+
+
diff --git a/files/fr/mozilla/add-ons/webextensions/content_security_policy/index.html b/files/fr/mozilla/add-ons/webextensions/content_security_policy/index.html deleted file mode 100644 index 570ce6a87e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/content_security_policy/index.html +++ /dev/null @@ -1,95 +0,0 @@ ---- -title: Content Security Policy -slug: Mozilla/Add-ons/WebExtensions/Content_Security_Policy -tags: - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Content_Security_Policy ---- -
{{AddonSidebar}}
- -

Les extensions développées avec les API WebExtension ont une politique de sécurité du contenu (CSP) qui leur est appliquée par défaut. Cela limite les sources à partir desquelles les extensions peuvent charger les ressources provenant d'élément {{HTMLElement("script")}} et {{HTMLElement("object")}} et interdit les pratiques potentiellement dangereuses comme l'utilisation de {{jsxref("Objets_globaux/eval","eval()")}}.

-

Cet article explique brièvement ce qu'est une CSP, quelle est la politique par défaut, ce que cela signifie pour une extension et comment une extension peut changer la CSP par défaut.

- -

La Politique de sécurité de contenu (ou Content Security Policy en anglais, abrégé en CSP) est un mécanisme permettant d'empêcher les sites Web d'exécuter involontairement du contenu malveillant. Un site web définit une CSP via un en-tête HTTP envoyé par le serveur. Le rôle de la CSP consiste principalement à indiquer les sources légitimes pour les différents types de contenu (tels que les scripts ou les plugins). Par exemple, un site web peut utiliser une CSP pour indiquer que le navigateur ne doit exécuter que du JavaScript provenant du site web lui-même et non d'autres sources. Une CSP peut également ordonner au navigateur d'interdire les pratiques potentiellement dangereuses telles que l'utilisation de {{jsxref("Objets_globaux/eval","eval()")}}.

- -

Comme les sites web, les extensions peuvent charger du contenu provenant de différentes sources. Ainsi, une popup sera définie comme un document HTML et pourra inclure du code JavaScript et CSS provenant de différentes sources, comme une page web normale :

- -
<!DOCTYPE html>
-
-<html>
-  <head>
-    <meta charset="utf-8">
-  </head>
-  <body>
-
-    <!--Du contenu HTML-->
-
-    <!--
-      On intègre ici un script provenant d'une source tierce
-      Voir aussi https://developer.mozilla.org/fr/docs/Web/Security/Subresource_Integrity.
-    -->
-    <script>
-      src="https://code.jquery.com/jquery-2.2.4.js"
-      integrity="sha256-iT6Q9iMJYuQiMWNd9lDyBUStIq/8PuOW33aOqmvFpqI="
-      crossorigin="anonymous">
-    </script>
-
-    <!-- On ajoute le script pour la pop-up-->
-    <script src="popup.js"></script>
-  </body>
-
-</html>
- -

À la différence d'un site web, les extensions accèdent à certains API privilégiées supplémentaires. Par conséquent, si elles sont compromises par du code malveillant, les risques sont plus grands. Pour cette raison :

- - - -

Politique de sécurité du contenu par défaut

- -

La politique de sécurité du contenu par défaut pour les extensions est la suivante :

- -
"script-src 'self'; object-src 'self';"
- -

Celle-ci sera appliquée à toute extension qui n'a pas explicitement défini sa propre politique via la clé content_security_policy du manifeste. Cela a les conséquences suivantes :

- - - -

Emplacement des ressources pour <script> et <objet>

- -

Avec la CSP par défaut, les éléments {{HTMLElement("script")}} et {{HTMLElement("object")}} peuvent uniquement charger des ressources qui sont locales à l'extension. Aussi, si on considère cette ligne dans un document HTML d'une extension :

- -
 <script src="https://code.jquery.com/jquery-2.2.4.js"></script>
- -

La ressource jQuery demandée ne sera pas récupérée et la récupération échouera silencieusement. Deux méthodes permettent de résoudre ce problème :

- - - -

eval() et autres équivalents

- -

Avec la CSP par défaut, il n'est pas possible d'évaluer les chaînes de caractères représentant du code JavaScript. Cela signifie que les formes suivantes ne sont pas autorisés :

- -
eval("console.log('un résultat');");
- -
window.setTimeout("alert('Coucou monde!');", 500);
- -
var f = new Function("console.log('toto');");
- -

JavaScript écrit dans le HTML (inline)

- -

Avec la CSP par défaut, le code JavaScript écrit au sein d'un document HTML n'est pas exécuté. Cela concerne le JavaScript écrit dans les balises <script> ainsi que les gestionnaires d'évènement intégrés dans les attributs. Autrement dit, les formes suivantes ne sont pas autorisées :

- -
<script>console.log("toto");</script>
- -
<div onclick="console.log('clic')">Cliquez sur ce texte !</div>
- -

Si votre document HTML utilise une forme comme <body onload="main()">, privilégiez plutôt l'ajout d'un gestionnaire d'évènement sur DOMContentLoaded ou load.

diff --git a/files/fr/mozilla/add-ons/webextensions/content_security_policy/index.md b/files/fr/mozilla/add-ons/webextensions/content_security_policy/index.md new file mode 100644 index 0000000000..570ce6a87e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/content_security_policy/index.md @@ -0,0 +1,95 @@ +--- +title: Content Security Policy +slug: Mozilla/Add-ons/WebExtensions/Content_Security_Policy +tags: + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Content_Security_Policy +--- +
{{AddonSidebar}}
+ +

Les extensions développées avec les API WebExtension ont une politique de sécurité du contenu (CSP) qui leur est appliquée par défaut. Cela limite les sources à partir desquelles les extensions peuvent charger les ressources provenant d'élément {{HTMLElement("script")}} et {{HTMLElement("object")}} et interdit les pratiques potentiellement dangereuses comme l'utilisation de {{jsxref("Objets_globaux/eval","eval()")}}.

+

Cet article explique brièvement ce qu'est une CSP, quelle est la politique par défaut, ce que cela signifie pour une extension et comment une extension peut changer la CSP par défaut.

+ +

La Politique de sécurité de contenu (ou Content Security Policy en anglais, abrégé en CSP) est un mécanisme permettant d'empêcher les sites Web d'exécuter involontairement du contenu malveillant. Un site web définit une CSP via un en-tête HTTP envoyé par le serveur. Le rôle de la CSP consiste principalement à indiquer les sources légitimes pour les différents types de contenu (tels que les scripts ou les plugins). Par exemple, un site web peut utiliser une CSP pour indiquer que le navigateur ne doit exécuter que du JavaScript provenant du site web lui-même et non d'autres sources. Une CSP peut également ordonner au navigateur d'interdire les pratiques potentiellement dangereuses telles que l'utilisation de {{jsxref("Objets_globaux/eval","eval()")}}.

+ +

Comme les sites web, les extensions peuvent charger du contenu provenant de différentes sources. Ainsi, une popup sera définie comme un document HTML et pourra inclure du code JavaScript et CSS provenant de différentes sources, comme une page web normale :

+ +
<!DOCTYPE html>
+
+<html>
+  <head>
+    <meta charset="utf-8">
+  </head>
+  <body>
+
+    <!--Du contenu HTML-->
+
+    <!--
+      On intègre ici un script provenant d'une source tierce
+      Voir aussi https://developer.mozilla.org/fr/docs/Web/Security/Subresource_Integrity.
+    -->
+    <script>
+      src="https://code.jquery.com/jquery-2.2.4.js"
+      integrity="sha256-iT6Q9iMJYuQiMWNd9lDyBUStIq/8PuOW33aOqmvFpqI="
+      crossorigin="anonymous">
+    </script>
+
+    <!-- On ajoute le script pour la pop-up-->
+    <script src="popup.js"></script>
+  </body>
+
+</html>
+ +

À la différence d'un site web, les extensions accèdent à certains API privilégiées supplémentaires. Par conséquent, si elles sont compromises par du code malveillant, les risques sont plus grands. Pour cette raison :

+ + + +

Politique de sécurité du contenu par défaut

+ +

La politique de sécurité du contenu par défaut pour les extensions est la suivante :

+ +
"script-src 'self'; object-src 'self';"
+ +

Celle-ci sera appliquée à toute extension qui n'a pas explicitement défini sa propre politique via la clé content_security_policy du manifeste. Cela a les conséquences suivantes :

+ + + +

Emplacement des ressources pour <script> et <objet>

+ +

Avec la CSP par défaut, les éléments {{HTMLElement("script")}} et {{HTMLElement("object")}} peuvent uniquement charger des ressources qui sont locales à l'extension. Aussi, si on considère cette ligne dans un document HTML d'une extension :

+ +
 <script src="https://code.jquery.com/jquery-2.2.4.js"></script>
+ +

La ressource jQuery demandée ne sera pas récupérée et la récupération échouera silencieusement. Deux méthodes permettent de résoudre ce problème :

+ + + +

eval() et autres équivalents

+ +

Avec la CSP par défaut, il n'est pas possible d'évaluer les chaînes de caractères représentant du code JavaScript. Cela signifie que les formes suivantes ne sont pas autorisés :

+ +
eval("console.log('un résultat');");
+ +
window.setTimeout("alert('Coucou monde!');", 500);
+ +
var f = new Function("console.log('toto');");
+ +

JavaScript écrit dans le HTML (inline)

+ +

Avec la CSP par défaut, le code JavaScript écrit au sein d'un document HTML n'est pas exécuté. Cela concerne le JavaScript écrit dans les balises <script> ainsi que les gestionnaires d'évènement intégrés dans les attributs. Autrement dit, les formes suivantes ne sont pas autorisées :

+ +
<script>console.log("toto");</script>
+ +
<div onclick="console.log('clic')">Cliquez sur ce texte !</div>
+ +

Si votre document HTML utilise une forme comme <body onload="main()">, privilégiez plutôt l'ajout d'un gestionnaire d'évènement sur DOMContentLoaded ou load.

diff --git a/files/fr/mozilla/add-ons/webextensions/debugging_(before_firefox_50)/index.html b/files/fr/mozilla/add-ons/webextensions/debugging_(before_firefox_50)/index.html deleted file mode 100644 index 95b775cbcb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/debugging_(before_firefox_50)/index.html +++ /dev/null @@ -1,235 +0,0 @@ ---- -title: Débogage (avant Firefox 50) -slug: Mozilla/Add-ons/WebExtensions/Debugging_(before_Firefox_50) -tags: - - Debugging - - Firefox - - Guide - - Mozilla - - Obsolete - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Debugging_(before_Firefox_50) -original_slug: Mozilla/Add-ons/WebExtensions/Debogage_(avant_Firefox_50) ---- -
{{AddonSidebar}}
- -
-

Note : Cet article explique comment vous pouvez déboguer des extensions à l'aide des API WebExtension sur des versions de Firefox antérieures à la version 50.

- -

Si vous utilisez Firefox 50 ou version ultérieure, consultez l'article principal sur les extensions de débogage.

-
- -

Cet article explique comment utiliser les outils de développement Firefox intégrés pour déboguer les extensions développées avec les API WebExtension. Si vous essayez de déboguer un module développé avec le Kit de développement logiciel complémentaire, consultez le guide du débogueur de module complémentaire.

- - - - - -

Pour montrer comment connecter les outils de débogage, nous utiliserons une simple extension d'exemple appelée "notify-link-clicks-i18n". Le code est dans dépôt d'exemples d'extensions sur GitHub.

- -

L'extension se compose de :

- - - -

Le script de contenu écoute les clics sur les liens dans la page : lorsqu'un clic sur un lien se produit, le script de contenu envoie un message au script d'arrière-plan contenant la référence du lien.

- -

Lorsque le script d'arrière-plan reçoit le message, il affiche une notification contenant la href.

- -

Voici "content-script.js":

- -
/*
-If the click was on a link, send a message to the background page.
-The message contains the link's URL.
-*/
-function notifyExtension(e) {
-  var target = e.target;
-  while ((target.tagName != "A" || !target.href) && target.parentNode) {
-    target = target.parentNode;
-  }
-  if (target.tagName != "A")
-    return;
-
-  console.log("content script sending message");
-  chrome.runtime.sendMessage({"url": target.href});
-}
-
-/*
-Add notifyExtension() as a listener to click events.
-*/
-window.addEventListener("click", notifyExtension);
-
- -

Voici "background-script.js":

- -
/*
-Log that we received the message.
-Then display a notification. The notification contains the URL,
-which we read from the message.
-*/
-function notify(message) {
-  console.log("background script received message");
-  var title = chrome.i18n.getMessage("notificationTitle");
-  var content = chrome.i18n.getMessage("notificationContent", message.url);
-  chrome.notifications.create({
-    "type": "basic",
-    "iconUrl": chrome.extension.getURL("icons/link-48.png"),
-    "title": title,
-    "message": content
-  });
-}
-
-/*
-Assign `notify()` as a listener to messages from the content script.
-*/
-chrome.runtime.onMessage.addListener(notify);
-
- -

Si vous voulez suivre, clonez le référentiel webextensions-examples, puis package et installez "notify-link-clicks-i18n".

- -

La boite à outils du navigateur

- -

Nous utiliserons la boîte à outils du navigateur pour déboguer l'extension.

- -

Conditions préalables

- -

Avant de pouvoir utiliser la boîte à outils du navigateur, vous devez être configuré.

- - - -

{{EmbedYouTube("LJAM2vXJ790")}}

- -

Ouverture de la boîte à outils du navigateur

- -

Ensuite, nous ouvrirons la boîte à outils du navigateur..

- - - -

La boîte à outils du navigateur s'ouvrira alors dans une nouvelle fenêtre. La fenêtre principale de Firefox passera au premier plan, vous devrez donc cliquer sur la boîte à outils du navigateur pour la ramener devant vous :

- -

{{EmbedYouTube("fZ492zAAy3o")}}

- -

Dans Firefox, une "Toolbox" est le nom d'une fenêtre séparée contenant un ensemble d'outils dans une interface à onglets, comme ceci :

- -

La boîte à outils ci-dessus contient cinq outils, que vous pouvez commuter entre les onglets en haut de la fenêtre : "Inspecteur", "Console", "Debugger", "Style Editor" et "Scratchpad". Nous n'utiliserons que deux de ces outils : "Console" et "Debugger".

- -

Affichage de la sortie du journal

- -

Nous pouvons utiliser la console pour voir la sortie des journaux : Cela inclus les messages de :

- - - -

Il inclut les messages de vos journaux de code à l'aide de l'API de console que les messages d'erreur enregistrés par le moteur JavaScript lors de l'exécution de votre code.

- -

Essayons avec l'exemple ci-dessus : sélectionnez l'onglet Console dans la boîte à outils du navigateur, ouvrez une page Web et cliquez sur un lien pour voir les messages enregistrés à partir du script de contenu et du script d'arrière-plan :

- -

{{EmbedYouTube("Qpx0n8gP3Qw")}}

- -

Un problème ici est que la console vous montre les messages de l'ensemble du navigateur, donc il peut y avoir beaucoup de bruit. Lisez  comment filtrer les messages de journal pour obtenir de l'aide à ce sujet.

- -

Débogage JavaScript

- -

Avec la Toolbox du navigateur, vous pouvez utiliser le débogueur JavaScript pour définir des points d'arrêt dans les scripts d'arrière-plan et les scripts s'exécutant dans le navigateur ou les fenêtres contextuelles d'action de page.

- -

Les scripts en arrière-plan sont toujours disponibles dans le débogueur si l'extension est installée et activée. Les scripts popup ne deviennent visibles que lorsque le popup est ouvert. Si vous avez besoin d'accéder aux scripts popup dès qu'ils se chargent, essayez d'ajouter un debogueur ; instruction au début du script.

- -

Pour utiliser le débogueur JavaScript, sélectionnez l'onglet Débogueur dans la boîte à outils du navigateur. Le travail suivant est donc de trouver le code de votre extension  : pour ce faire cliquez dans la boite de recherche et tapez le nom de la source.

- -

Une fois que vous avez trouvé votre source, vous pouvez définir des points d'arrêt, passer en revue le code et  faire tout ce que vous vous attendez à pouvoir faire dans un débogueur.

- -

{{EmbedYouTube("3edeJiG38ZA")}}

- -

Interpréteur en ligne de commande JavaScript

- -

La console comprend un interpréteur de ligne de commande que vous pouvez utiliser pour interroger et manipuler l'état d'un programme en cours d'exécution. Cette fonctionnalité est couramment utilisée lorsque la console est attachée à une page Web, mais elle est généralement difficile à utiliser avec la Toolbox du navigateur, parce que la portée de cette console est le navigateur entier plutôt que l'extension spécifique que vous essayez de déboguer.

- -

Cependant, il y a un truc qui peut vous aider : pendant que le débogueur soit mis en pause à un point d'arrêt, la portée de la Console est la portée au point du programme dans lequel le débogueur est mis en pause. Ainsi, si vous avez atteint un point d'arrêt dans le code de votre extension, vous pouvez interagir directement avec votre extension : vous pouvez appeler des fonctions d'extension, réassigner des valeurs de variables, etc.

- -

Cette fonction est particulièrement utile en combinaison avec une autre fonction : la console split. Cela vous permet de diviser la boîte à outils en deux : une moitié contient la console et l'autre moitié contient un outil différent (dans ce cas, le débogueur JavaScript) :

- -

{{EmbedYouTube("xprf58qOtLY")}}

- -

Débogage des scripts de contenus

- -

Une grande limitation de la Browser Toolbox est la suivante : si vous développez avec firefox multiprocessus, vous ne pouvez pas utiliser la Toolbox du navigateur pour attacher le débogueur JavaScript aux scripts de contenu.

- -

Dans Firefox multiprocessus, le navigateur est divisé en (au moins) deux processus : un pour exécuter l'interface utilisateur et le code système du navigateur, et un (ou plusieurs) processus de contenu, qui exécutent des scripts chargés à partir de pages Web. La ToolBox du navigateur s'attache au premier de ces processus : mais les scripts de contenu s'exécutent dans les processus de contenu, de sorte qu'ils n'apparaissent pas dans la liste des sources de la ToolBox du navigateur.

- -

Pour déboguer les scripts de contenu dans Firefox multiprocessus, vous devrez utiliser le contenu de la boite à outils du navigateur. Le contenu de la boite à outils du navigateur est tout comme la Toolbox de navigateur, sauf qu'elle attache les outils de développement au processus de contenu du navigateur, de sorte que les scripts de contenu sont visibles..

- -

Notez que les scripts de contenu n'apparaîtront pas dans la liste des sources jusqu'à ce qu'ils soient chargés. Si vous avez besoin d'y accéder dès qu'ils se chargent, essayez d'ajouter un debuggueur ; instruction au début de votre script.

- -
-

Note : vous n'avez besoin et ne pouvez accéder à la Browser Content Toolbox que si vous développez contre Firefox multiprocessus.

-
- -
-

Attention : L'activation du débogage des travailleurs dans les Options de la boîte à outils désactivera le débogage de la boîte à outils du contenu du navigateur, le Bug 1236892 devrait régler ce problème..

-
- -

{{EmbedYouTube("xAt3Q0PgJP4")}}

- -

Débogage des fenêtres contextuelles

- -

A partir de Firefox 47, vous pouvez utiliser la Browser Toolbox pour déboguer le contenu des popups. Il s'agit d'un processus en trois étapes :

- - - -

{{EmbedYouTube("EEU4NeAS1s4")}}

- -

Désactiver l'autohide

- -

Le problème avec les panneaux de débogage en général est qu'ils sont cachés lorsque vous cliquez en dehors d'eux. La première étape consiste donc à désactiver ce comportement. Dans la boîte à outils du navigateur, cliquez sur l'icône qui ressemble à quatre petits carrés :

- -

Maintenant, lorsque vous ouvrez un panneau dans Firefox, il restera ouvert jusqu'à ce que vous appuyiez sur Escape.

- -
-

Note : Que ce changement s'applique aux fenêtre contextuelles intégrés au navigateur, comme le menu Hamburger, ainsi qu'aux fenêtres contextuelles d'extension.

- -

Notez également que le changement est persistant, même si le navigateur redémarre. Nous travaillons à résoudre ce problème dans le bug 1251658, mais d'ici là, vous préférerez peut-être réactiver la fonction Autohide en cliquant à nouveau sur le bouton avant de fermer la boîte à outils du navigateur.

- -

En interne, ce bouton bascule juste la préférence  ui.popup.disable_autohide que vous pouvez basculer manuellement en utilisant using about:config.

-
- -

Ouvrir la fenêtre contextuelle

- -

Ensuite, ouvrez le popup. Vous pouvez ensuite revenir à la boîte à outils du navigateur, et le panneau restera ouvert.

- -

Sélectionner le cadre de la fenêtre popup

- -

Le popup est chargé dans son propre cadre. Ensuite, sélectionnez le document de votre popup à l'aide du bouton sélection de cadre boîte à outils du navigateur :Le document s'appellera quelque chose comme

- -
moz-extension://<some-uuid>/path/to/your-popup.html
- -

{{EmbedYouTube("/9jdHDCKIN-U")}}

- -

Maintenant, le champ d'application de la boîte à outils est le popup. Dans l'Inspecteur, vous pouvez examiner et modifier le HTML et le CSS du popup. Dans le Debugger, vous pouvez rechercher tous les scripts chargés dans le popup et définir des points d'arrêt.

- -

Qu'en est-il de l'Add-on Deboguer ?

- -

Le deboguer des modules complémentaires est destiné à être l'évanir du débogage des add-on dans Firefox.

- -

Son grand avantage par rapport à la Browser Toolbox est qu'il ne montre que les fichiers de votre extension, donc il est beaucoup plus facile de trouver votre code. Cependant, pour le moment, vous ne pouvez pas voir les messages de console de votre extension dans l'Add-on Debugger, donc la Browser Toolbox est plus fonctionnelle.

diff --git a/files/fr/mozilla/add-ons/webextensions/debugging_(before_firefox_50)/index.md b/files/fr/mozilla/add-ons/webextensions/debugging_(before_firefox_50)/index.md new file mode 100644 index 0000000000..95b775cbcb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/debugging_(before_firefox_50)/index.md @@ -0,0 +1,235 @@ +--- +title: Débogage (avant Firefox 50) +slug: Mozilla/Add-ons/WebExtensions/Debugging_(before_Firefox_50) +tags: + - Debugging + - Firefox + - Guide + - Mozilla + - Obsolete + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Debugging_(before_Firefox_50) +original_slug: Mozilla/Add-ons/WebExtensions/Debogage_(avant_Firefox_50) +--- +
{{AddonSidebar}}
+ +
+

Note : Cet article explique comment vous pouvez déboguer des extensions à l'aide des API WebExtension sur des versions de Firefox antérieures à la version 50.

+ +

Si vous utilisez Firefox 50 ou version ultérieure, consultez l'article principal sur les extensions de débogage.

+
+ +

Cet article explique comment utiliser les outils de développement Firefox intégrés pour déboguer les extensions développées avec les API WebExtension. Si vous essayez de déboguer un module développé avec le Kit de développement logiciel complémentaire, consultez le guide du débogueur de module complémentaire.

+ + + + + +

Pour montrer comment connecter les outils de débogage, nous utiliserons une simple extension d'exemple appelée "notify-link-clicks-i18n". Le code est dans dépôt d'exemples d'extensions sur GitHub.

+ +

L'extension se compose de :

+ + + +

Le script de contenu écoute les clics sur les liens dans la page : lorsqu'un clic sur un lien se produit, le script de contenu envoie un message au script d'arrière-plan contenant la référence du lien.

+ +

Lorsque le script d'arrière-plan reçoit le message, il affiche une notification contenant la href.

+ +

Voici "content-script.js":

+ +
/*
+If the click was on a link, send a message to the background page.
+The message contains the link's URL.
+*/
+function notifyExtension(e) {
+  var target = e.target;
+  while ((target.tagName != "A" || !target.href) && target.parentNode) {
+    target = target.parentNode;
+  }
+  if (target.tagName != "A")
+    return;
+
+  console.log("content script sending message");
+  chrome.runtime.sendMessage({"url": target.href});
+}
+
+/*
+Add notifyExtension() as a listener to click events.
+*/
+window.addEventListener("click", notifyExtension);
+
+ +

Voici "background-script.js":

+ +
/*
+Log that we received the message.
+Then display a notification. The notification contains the URL,
+which we read from the message.
+*/
+function notify(message) {
+  console.log("background script received message");
+  var title = chrome.i18n.getMessage("notificationTitle");
+  var content = chrome.i18n.getMessage("notificationContent", message.url);
+  chrome.notifications.create({
+    "type": "basic",
+    "iconUrl": chrome.extension.getURL("icons/link-48.png"),
+    "title": title,
+    "message": content
+  });
+}
+
+/*
+Assign `notify()` as a listener to messages from the content script.
+*/
+chrome.runtime.onMessage.addListener(notify);
+
+ +

Si vous voulez suivre, clonez le référentiel webextensions-examples, puis package et installez "notify-link-clicks-i18n".

+ +

La boite à outils du navigateur

+ +

Nous utiliserons la boîte à outils du navigateur pour déboguer l'extension.

+ +

Conditions préalables

+ +

Avant de pouvoir utiliser la boîte à outils du navigateur, vous devez être configuré.

+ + + +

{{EmbedYouTube("LJAM2vXJ790")}}

+ +

Ouverture de la boîte à outils du navigateur

+ +

Ensuite, nous ouvrirons la boîte à outils du navigateur..

+ + + +

La boîte à outils du navigateur s'ouvrira alors dans une nouvelle fenêtre. La fenêtre principale de Firefox passera au premier plan, vous devrez donc cliquer sur la boîte à outils du navigateur pour la ramener devant vous :

+ +

{{EmbedYouTube("fZ492zAAy3o")}}

+ +

Dans Firefox, une "Toolbox" est le nom d'une fenêtre séparée contenant un ensemble d'outils dans une interface à onglets, comme ceci :

+ +

La boîte à outils ci-dessus contient cinq outils, que vous pouvez commuter entre les onglets en haut de la fenêtre : "Inspecteur", "Console", "Debugger", "Style Editor" et "Scratchpad". Nous n'utiliserons que deux de ces outils : "Console" et "Debugger".

+ +

Affichage de la sortie du journal

+ +

Nous pouvons utiliser la console pour voir la sortie des journaux : Cela inclus les messages de :

+ + + +

Il inclut les messages de vos journaux de code à l'aide de l'API de console que les messages d'erreur enregistrés par le moteur JavaScript lors de l'exécution de votre code.

+ +

Essayons avec l'exemple ci-dessus : sélectionnez l'onglet Console dans la boîte à outils du navigateur, ouvrez une page Web et cliquez sur un lien pour voir les messages enregistrés à partir du script de contenu et du script d'arrière-plan :

+ +

{{EmbedYouTube("Qpx0n8gP3Qw")}}

+ +

Un problème ici est que la console vous montre les messages de l'ensemble du navigateur, donc il peut y avoir beaucoup de bruit. Lisez  comment filtrer les messages de journal pour obtenir de l'aide à ce sujet.

+ +

Débogage JavaScript

+ +

Avec la Toolbox du navigateur, vous pouvez utiliser le débogueur JavaScript pour définir des points d'arrêt dans les scripts d'arrière-plan et les scripts s'exécutant dans le navigateur ou les fenêtres contextuelles d'action de page.

+ +

Les scripts en arrière-plan sont toujours disponibles dans le débogueur si l'extension est installée et activée. Les scripts popup ne deviennent visibles que lorsque le popup est ouvert. Si vous avez besoin d'accéder aux scripts popup dès qu'ils se chargent, essayez d'ajouter un debogueur ; instruction au début du script.

+ +

Pour utiliser le débogueur JavaScript, sélectionnez l'onglet Débogueur dans la boîte à outils du navigateur. Le travail suivant est donc de trouver le code de votre extension  : pour ce faire cliquez dans la boite de recherche et tapez le nom de la source.

+ +

Une fois que vous avez trouvé votre source, vous pouvez définir des points d'arrêt, passer en revue le code et  faire tout ce que vous vous attendez à pouvoir faire dans un débogueur.

+ +

{{EmbedYouTube("3edeJiG38ZA")}}

+ +

Interpréteur en ligne de commande JavaScript

+ +

La console comprend un interpréteur de ligne de commande que vous pouvez utiliser pour interroger et manipuler l'état d'un programme en cours d'exécution. Cette fonctionnalité est couramment utilisée lorsque la console est attachée à une page Web, mais elle est généralement difficile à utiliser avec la Toolbox du navigateur, parce que la portée de cette console est le navigateur entier plutôt que l'extension spécifique que vous essayez de déboguer.

+ +

Cependant, il y a un truc qui peut vous aider : pendant que le débogueur soit mis en pause à un point d'arrêt, la portée de la Console est la portée au point du programme dans lequel le débogueur est mis en pause. Ainsi, si vous avez atteint un point d'arrêt dans le code de votre extension, vous pouvez interagir directement avec votre extension : vous pouvez appeler des fonctions d'extension, réassigner des valeurs de variables, etc.

+ +

Cette fonction est particulièrement utile en combinaison avec une autre fonction : la console split. Cela vous permet de diviser la boîte à outils en deux : une moitié contient la console et l'autre moitié contient un outil différent (dans ce cas, le débogueur JavaScript) :

+ +

{{EmbedYouTube("xprf58qOtLY")}}

+ +

Débogage des scripts de contenus

+ +

Une grande limitation de la Browser Toolbox est la suivante : si vous développez avec firefox multiprocessus, vous ne pouvez pas utiliser la Toolbox du navigateur pour attacher le débogueur JavaScript aux scripts de contenu.

+ +

Dans Firefox multiprocessus, le navigateur est divisé en (au moins) deux processus : un pour exécuter l'interface utilisateur et le code système du navigateur, et un (ou plusieurs) processus de contenu, qui exécutent des scripts chargés à partir de pages Web. La ToolBox du navigateur s'attache au premier de ces processus : mais les scripts de contenu s'exécutent dans les processus de contenu, de sorte qu'ils n'apparaissent pas dans la liste des sources de la ToolBox du navigateur.

+ +

Pour déboguer les scripts de contenu dans Firefox multiprocessus, vous devrez utiliser le contenu de la boite à outils du navigateur. Le contenu de la boite à outils du navigateur est tout comme la Toolbox de navigateur, sauf qu'elle attache les outils de développement au processus de contenu du navigateur, de sorte que les scripts de contenu sont visibles..

+ +

Notez que les scripts de contenu n'apparaîtront pas dans la liste des sources jusqu'à ce qu'ils soient chargés. Si vous avez besoin d'y accéder dès qu'ils se chargent, essayez d'ajouter un debuggueur ; instruction au début de votre script.

+ +
+

Note : vous n'avez besoin et ne pouvez accéder à la Browser Content Toolbox que si vous développez contre Firefox multiprocessus.

+
+ +
+

Attention : L'activation du débogage des travailleurs dans les Options de la boîte à outils désactivera le débogage de la boîte à outils du contenu du navigateur, le Bug 1236892 devrait régler ce problème..

+
+ +

{{EmbedYouTube("xAt3Q0PgJP4")}}

+ +

Débogage des fenêtres contextuelles

+ +

A partir de Firefox 47, vous pouvez utiliser la Browser Toolbox pour déboguer le contenu des popups. Il s'agit d'un processus en trois étapes :

+ + + +

{{EmbedYouTube("EEU4NeAS1s4")}}

+ +

Désactiver l'autohide

+ +

Le problème avec les panneaux de débogage en général est qu'ils sont cachés lorsque vous cliquez en dehors d'eux. La première étape consiste donc à désactiver ce comportement. Dans la boîte à outils du navigateur, cliquez sur l'icône qui ressemble à quatre petits carrés :

+ +

Maintenant, lorsque vous ouvrez un panneau dans Firefox, il restera ouvert jusqu'à ce que vous appuyiez sur Escape.

+ +
+

Note : Que ce changement s'applique aux fenêtre contextuelles intégrés au navigateur, comme le menu Hamburger, ainsi qu'aux fenêtres contextuelles d'extension.

+ +

Notez également que le changement est persistant, même si le navigateur redémarre. Nous travaillons à résoudre ce problème dans le bug 1251658, mais d'ici là, vous préférerez peut-être réactiver la fonction Autohide en cliquant à nouveau sur le bouton avant de fermer la boîte à outils du navigateur.

+ +

En interne, ce bouton bascule juste la préférence  ui.popup.disable_autohide que vous pouvez basculer manuellement en utilisant using about:config.

+
+ +

Ouvrir la fenêtre contextuelle

+ +

Ensuite, ouvrez le popup. Vous pouvez ensuite revenir à la boîte à outils du navigateur, et le panneau restera ouvert.

+ +

Sélectionner le cadre de la fenêtre popup

+ +

Le popup est chargé dans son propre cadre. Ensuite, sélectionnez le document de votre popup à l'aide du bouton sélection de cadre boîte à outils du navigateur :Le document s'appellera quelque chose comme

+ +
moz-extension://<some-uuid>/path/to/your-popup.html
+ +

{{EmbedYouTube("/9jdHDCKIN-U")}}

+ +

Maintenant, le champ d'application de la boîte à outils est le popup. Dans l'Inspecteur, vous pouvez examiner et modifier le HTML et le CSS du popup. Dans le Debugger, vous pouvez rechercher tous les scripts chargés dans le popup et définir des points d'arrêt.

+ +

Qu'en est-il de l'Add-on Deboguer ?

+ +

Le deboguer des modules complémentaires est destiné à être l'évanir du débogage des add-on dans Firefox.

+ +

Son grand avantage par rapport à la Browser Toolbox est qu'il ne montre que les fichiers de votre extension, donc il est beaucoup plus facile de trouver votre code. Cependant, pour le moment, vous ne pouvez pas voir les messages de console de votre extension dans l'Add-on Debugger, donc la Browser Toolbox est plus fonctionnelle.

diff --git a/files/fr/mozilla/add-ons/webextensions/developing_webextensions_for_thunderbird/index.html b/files/fr/mozilla/add-ons/webextensions/developing_webextensions_for_thunderbird/index.html deleted file mode 100644 index 37b31c9b1d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/developing_webextensions_for_thunderbird/index.html +++ /dev/null @@ -1,24 +0,0 @@ ---- -title: Développer des WebExtensions pour Thunderbird -slug: Mozilla/Add-ons/WebExtensions/Developing_WebExtensions_for_Thunderbird -translation_of: Mozilla/Add-ons/WebExtensions/Developing_WebExtensions_for_Thunderbird ---- -

{{AddonSidebar}}{{Draft}}

- -

Vous aborderez le codage d'une extension pour Thunderbird de la même manière que pour une extension Firefox ; en utilisant un éditeur de texte ou un outil de votre choix pour écrire le code.

- -

Différences des API

- -
-

Note : Voir la documentation de l'API WebExtension de ReadTheDocs pour Thunderbird.

-
- -

Étant tous deux basés sur Gecko, Thunderbird supporte plusieurs des APIs que Firefox supporte, avec quelques différences, voir la compatibilité du navigateur pour manifest.json et le support du navigateur pour les APIs JavaScript pour les détails.

- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/developing_webextensions_for_thunderbird/index.md b/files/fr/mozilla/add-ons/webextensions/developing_webextensions_for_thunderbird/index.md new file mode 100644 index 0000000000..37b31c9b1d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/developing_webextensions_for_thunderbird/index.md @@ -0,0 +1,24 @@ +--- +title: Développer des WebExtensions pour Thunderbird +slug: Mozilla/Add-ons/WebExtensions/Developing_WebExtensions_for_Thunderbird +translation_of: Mozilla/Add-ons/WebExtensions/Developing_WebExtensions_for_Thunderbird +--- +

{{AddonSidebar}}{{Draft}}

+ +

Vous aborderez le codage d'une extension pour Thunderbird de la même manière que pour une extension Firefox ; en utilisant un éditeur de texte ou un outil de votre choix pour écrire le code.

+ +

Différences des API

+ +
+

Note : Voir la documentation de l'API WebExtension de ReadTheDocs pour Thunderbird.

+
+ +

Étant tous deux basés sur Gecko, Thunderbird supporte plusieurs des APIs que Firefox supporte, avec quelques différences, voir la compatibilité du navigateur pour manifest.json et le support du navigateur pour les APIs JavaScript pour les détails.

+ +

Voir aussi

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/differences_between_api_implementations/index.html b/files/fr/mozilla/add-ons/webextensions/differences_between_api_implementations/index.html deleted file mode 100644 index 47fabe33f8..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/differences_between_api_implementations/index.html +++ /dev/null @@ -1,78 +0,0 @@ ---- -title: Différences entre les implémentations d'API -slug: Mozilla/Add-ons/WebExtensions/Differences_between_API_implementations -tags: - - Guide - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Differences_between_API_implementations -original_slug: Mozilla/Add-ons/WebExtensions/Differences_entre_les_implementations_api ---- -
{{AddonSidebar}}
- -

L'API d'extension de navigateur est encore un standard emergent. Par conséquent, bien qu'il soit pris en charge par la plupart des principaux navigateurs, dont Firefox, Chrome, Edge et Opera, il existe des différences entre les différentes implémentations. Cela signifie que certaines modifications peuvent être nécessaires pour implémenter votre extension pour plusieurs navigateurs

- -

Parmi les différents navigateurs supportant l'API d'extension, Firefox est le plus conforme à la norme émergente, et est donc votre meilleur point de départ pour développer des extensions de navigateur.

- -

Les différences entre les implémentations d'API d'extensions de navigateurs se répartissent en quatre domaines : l'espace de noms, la gestion asynchrone des événements, la couverture API et les clés de manifest.

- -

Espace de nommage

- -

Vous faites référence à toutes les fonctions de l'API des extensions en utilisant un espace de noms, par exemple, browser.alarms.create({delayInMinutes}); créerait une alarme dans Firefox qui se déclenche après le temps spécifié dans delayInMinutes.

- -

Deux espaces de noms API sont utilisés :

- - - -

Traitement asynchrone des événements

- -

JavaScript fournit plusieurs façons de gérer les événements asynchrones. La norme API d'extensions proposée est d'utiliser des promises. L'approche des promises offre des avantages significatifs lorsqu'il s'agit d'appels d'événements asynchrones en chaîne

- -

Si vous n'êtes pas familier avec la façon dont JavaScript peut gérer les événements asynchrones ou les promesses, jetez un coup d'oeil sur Apprendre à connaître Javascript Asynchrone : Callbacks, Promises et Async/Await ou la page des promises d'utilisation de MDN.

- -

Firefox est le seul navigateur majeur à avoir implémenté des promises pour les extensions API. Tous les autres navigateurs utilisent des callbacks.

- -

Couverture API

- -

Les différences dans l'implémentation des fonctions de l'API d'extension entre les navigateurs se répartissent en trois grandes catégories :

- - - -

Touches Manifest

- -

Les différences entre les clés clés manifest.json prises en charge par les navigateurs se répartissent en deux grandes catégories :

- - - -

Plus d'information

- -

Vous trouverez des informations plus détaillées sur les différences entre les extensions de navigateur prises en charge par les fonctionnalités API dans le domaine :

- - diff --git a/files/fr/mozilla/add-ons/webextensions/differences_between_api_implementations/index.md b/files/fr/mozilla/add-ons/webextensions/differences_between_api_implementations/index.md new file mode 100644 index 0000000000..47fabe33f8 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/differences_between_api_implementations/index.md @@ -0,0 +1,78 @@ +--- +title: Différences entre les implémentations d'API +slug: Mozilla/Add-ons/WebExtensions/Differences_between_API_implementations +tags: + - Guide + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Differences_between_API_implementations +original_slug: Mozilla/Add-ons/WebExtensions/Differences_entre_les_implementations_api +--- +
{{AddonSidebar}}
+ +

L'API d'extension de navigateur est encore un standard emergent. Par conséquent, bien qu'il soit pris en charge par la plupart des principaux navigateurs, dont Firefox, Chrome, Edge et Opera, il existe des différences entre les différentes implémentations. Cela signifie que certaines modifications peuvent être nécessaires pour implémenter votre extension pour plusieurs navigateurs

+ +

Parmi les différents navigateurs supportant l'API d'extension, Firefox est le plus conforme à la norme émergente, et est donc votre meilleur point de départ pour développer des extensions de navigateur.

+ +

Les différences entre les implémentations d'API d'extensions de navigateurs se répartissent en quatre domaines : l'espace de noms, la gestion asynchrone des événements, la couverture API et les clés de manifest.

+ +

Espace de nommage

+ +

Vous faites référence à toutes les fonctions de l'API des extensions en utilisant un espace de noms, par exemple, browser.alarms.create({delayInMinutes}); créerait une alarme dans Firefox qui se déclenche après le temps spécifié dans delayInMinutes.

+ +

Deux espaces de noms API sont utilisés :

+ + + +

Traitement asynchrone des événements

+ +

JavaScript fournit plusieurs façons de gérer les événements asynchrones. La norme API d'extensions proposée est d'utiliser des promises. L'approche des promises offre des avantages significatifs lorsqu'il s'agit d'appels d'événements asynchrones en chaîne

+ +

Si vous n'êtes pas familier avec la façon dont JavaScript peut gérer les événements asynchrones ou les promesses, jetez un coup d'oeil sur Apprendre à connaître Javascript Asynchrone : Callbacks, Promises et Async/Await ou la page des promises d'utilisation de MDN.

+ +

Firefox est le seul navigateur majeur à avoir implémenté des promises pour les extensions API. Tous les autres navigateurs utilisent des callbacks.

+ +

Couverture API

+ +

Les différences dans l'implémentation des fonctions de l'API d'extension entre les navigateurs se répartissent en trois grandes catégories :

+ + + +

Touches Manifest

+ +

Les différences entre les clés clés manifest.json prises en charge par les navigateurs se répartissent en deux grandes catégories :

+ + + +

Plus d'information

+ +

Vous trouverez des informations plus détaillées sur les différences entre les extensions de navigateur prises en charge par les fonctionnalités API dans le domaine :

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/examples/index.html b/files/fr/mozilla/add-ons/webextensions/examples/index.html deleted file mode 100644 index ae1447c381..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/examples/index.html +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: Exemples de WebExtensions -slug: Mozilla/Add-ons/WebExtensions/Examples -tags: - - Interface - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Examples -original_slug: Mozilla/Add-ons/WebExtensions/Exemples ---- -
{{AddonSidebar}}
- -

Pour illustrer la manière d'utiliser les API WebExtension, nous disposons d'un répertoire d'exemples d'extensions sur le site https://github.com/mdn/webextensions-examples. Cet article décrit comment exécuter ces exemples et énumère les exemples ainsi que les API WebExtension qu'ils illustrent.

- -

Ces exemples fonctionnent dans Firefox Nightly : la plupart travaillent dans les versions antérieures de Firefox, mais vérifiez la version minimum strict_min_version dans le fichier manifest.json de l'extension pour en être sur.

- -
-

Attention : Certains exemples ne fonctionnent que sur des domaines ou des pages spécifiques. Les détails des restrictions éventuelles sont fournis dans le fichier "readme" de chaque exemple. Aucun des exemples ne fonctionne par défaut dans les fenêtres de navigation privée, voir Extensions dans la navigation privée pour plus de détails.

-
- -

Pour essayer ces exemples, clonez ensuite le dépôt :

- -
    -
  1. Charger l'extension à partir de son dossier source en utilisant la fonction Charger temporairement l'extension. L'extension reste chargée jusqu'à ce que vous redémarriez Firefox.
  2. -
  3. Couvrir le dossier source de l'extension en ligne de commande et utiliser le  web-ext pour exécuter l'extension. L'extension reste chargée jusqu'à ce que vous redémarriez Firefox.
  4. -
  5. Dans Firefox utilisez File > Open File et trouvez l'exemple dans le dossier de  build. Le dossier build contient les versions construites et signées de tous les exemples. L'exemple est ainsi installé de façon permanente.
  6. -
- -
-

Attention : Veuillez ne pas soumettre ces exemples de WebExtension à AMO (addons.mozilla.org), vous n'avez pas besoin de signer l'add-on pour exécuter les exemples de WebExtension. Il suffit de suivre les étapes ci-dessus.

-
- -

Si vous souhaitez contribuer au dépôt, envoyez-nous une demande

- -

{{WebExtAllExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/examples/index.md b/files/fr/mozilla/add-ons/webextensions/examples/index.md new file mode 100644 index 0000000000..ae1447c381 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/examples/index.md @@ -0,0 +1,34 @@ +--- +title: Exemples de WebExtensions +slug: Mozilla/Add-ons/WebExtensions/Examples +tags: + - Interface + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Examples +original_slug: Mozilla/Add-ons/WebExtensions/Exemples +--- +
{{AddonSidebar}}
+ +

Pour illustrer la manière d'utiliser les API WebExtension, nous disposons d'un répertoire d'exemples d'extensions sur le site https://github.com/mdn/webextensions-examples. Cet article décrit comment exécuter ces exemples et énumère les exemples ainsi que les API WebExtension qu'ils illustrent.

+ +

Ces exemples fonctionnent dans Firefox Nightly : la plupart travaillent dans les versions antérieures de Firefox, mais vérifiez la version minimum strict_min_version dans le fichier manifest.json de l'extension pour en être sur.

+ +
+

Attention : Certains exemples ne fonctionnent que sur des domaines ou des pages spécifiques. Les détails des restrictions éventuelles sont fournis dans le fichier "readme" de chaque exemple. Aucun des exemples ne fonctionne par défaut dans les fenêtres de navigation privée, voir Extensions dans la navigation privée pour plus de détails.

+
+ +

Pour essayer ces exemples, clonez ensuite le dépôt :

+ +
    +
  1. Charger l'extension à partir de son dossier source en utilisant la fonction Charger temporairement l'extension. L'extension reste chargée jusqu'à ce que vous redémarriez Firefox.
  2. +
  3. Couvrir le dossier source de l'extension en ligne de commande et utiliser le  web-ext pour exécuter l'extension. L'extension reste chargée jusqu'à ce que vous redémarriez Firefox.
  4. +
  5. Dans Firefox utilisez File > Open File et trouvez l'exemple dans le dossier de  build. Le dossier build contient les versions construites et signées de tous les exemples. L'exemple est ainsi installé de façon permanente.
  6. +
+ +
+

Attention : Veuillez ne pas soumettre ces exemples de WebExtension à AMO (addons.mozilla.org), vous n'avez pas besoin de signer l'add-on pour exécuter les exemples de WebExtension. Il suffit de suivre les étapes ci-dessus.

+
+ +

Si vous souhaitez contribuer au dépôt, envoyez-nous une demande

+ +

{{WebExtAllExamples}}

diff --git a/files/fr/mozilla/add-ons/webextensions/extending_the_developer_tools/index.html b/files/fr/mozilla/add-ons/webextensions/extending_the_developer_tools/index.html deleted file mode 100644 index 118951f7a6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/extending_the_developer_tools/index.html +++ /dev/null @@ -1,167 +0,0 @@ ---- -title: Extension des outils de développement -slug: Mozilla/Add-ons/WebExtensions/Extending_the_developer_tools -tags: - - Add-ons - - DevTools - - Extensions - - Guide - - Needs Privileges - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Extending_the_developer_tools -original_slug: Mozilla/Add-ons/WebExtensions/extension_des_outils_de_developpement ---- -
{{AddonSidebar}}
- -
-

Note : Cette page décrit les API  de devtools telles qu'elles existent dans Firefox 55. Bien que les API soient basées sur les  API devtools de chrome, 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 quelles fonctionnalités sont actuellement manquantes, voir les Limitations des APIs devtools.

-
- -

Vous pouvez utiliser les API WebExtensions pour étendre les outils de développement intégrés du navigateur. Pour créer une extension devtools, incluez la clé "devtools_page" dans manifest.json:

- -
"devtools_page": "devtools/devtools-page.html"
- -

La valeur de cette clé est une URL indiquant un fichier HTML qui a été regroupé avec votre extension. L'URL doit être relative au fichier manifest.json lui-même.

- -

Le fichier HTML définit une page spéciale dans l'extension, appelée la page devtools.

- -

La page devtools

- -

La page Devtools est chargée lorsque les devtools du navigateur sont ouverts et déchargés lorsqu'ils sont fermés. Notez que, parce que la fenêtre devtools est associée avec un seul onglet, il est possible que plus d'une fenêtre devtools - donc plus d'une page devtools - existe en même temps.

- -

La page devtools n'a pas de DOM visible, mais peut inclure des sources JavaScript en utilisant les balises <script>. Les sources doivent être regroupées avec l'extension. Les sources ont accès à :

- - - -

Notez que la page devtools n'accède à aucune autre API WebExtension, et que la page d'arrière-plan n'a pas accès aux API devtools. Au lieu de cela, la page devtools et la page d'arrière-plan doivent communiquer à l'aide des API messageries d'éxécution. Voici un exemple :

- -
<!DOCTYPE html>
-<html>
-  <head>
-    <meta charset="utf-8">
-  </head>
-  <body>
-    <script src="devtools.js"></script>
-  </body>
-</html>
- -

Le fichier devtools.js contiendra le code réel créant vos extensions d'outils de développement.

- -

Creations de panneaux

- -

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".

- -

A l'aide de l'API devtools.panel.create(), vous pouvez créer votre propre panneau dans la fenêtre devtools :

- -
browser.devtools.panels.create(
-  "My Panel",                      // title
-  "icons/star.png",                // icon
-  "devtools/panel/panel.html"      // content
-).then((newPanel) => {
-  newPanel.onShown.addListener(initialisePanel);
-  newPanel.onHidden.addListener(unInitialisePanel);
-});
- -

Cela nécessite trois arguments obligatoires: le titre, l'icône et le contenu du panneau. Il renvoie une promesse qui résout un objet devtools.panels.ExtensionPanel représentant le nouveau panneau.

- -

Interaction avec la fenêtre cible

- -

Les outils de développement sont toujours attachés à un onglet de navigateur particulier. Ceci est appelé "target" pour les outils de développement, ou la "fenêtre inspectée". Vous pouvez interagir avec la fenêtre inspectée en utilisant l'API  devtools.inspectedWindow.

- -

Code d'exécution dans la fenêtre cible

- -

la fonction devtools.inspectedWindow.eval() fournit une façon d'exécuter le code dans la fenêtre inspectée.

- -

C'est un peu comme utiliser {{WebExtAPIRef("tabs.executeScript()")}}  pour injecter un script de contenu, mais avec une différence importante :

- - - -
-

Note : Une vue propre du DOM est une fonction de sécurité destinée à empêcher les pages hostiles de tromper WebExtensions en redéfinissant le comportement des fonctions DOM natives. Cela signifie que vous devez être très prudent en utilisant eval () et utiliser un script de contenu normal si vous le pouvez.

-
- -

Les scripts chargés à l'aide de devtools.inspectedWindow.eval() ne voient pas non plus de variables JavaScript définies par les scripts de contenu.

- -

Travailler avec les scripts de contenus

- -

Un document devtools n'a pas d'accès direct à  {{WebExtAPIRef("tabs.executeScript()")}}, donc, si vous devez injecter un script de contenu, le document devtools doit envoyer un message au script en arrière-plan en lui demandant d'injecter le script. La fonction devtools.inspectedWindow.tabId  fournit l'ID de l'onglet cible: le document devtools peut passer le script en arrière-plan, et le script de fond peut à son tour passer dans {{WebExtAPIRef("tabs.executeScript()")}}:

- -
// devtools-panel.js
-
-const scriptToAttach = "document.body.innerHTML = 'Hi from the devtools';";
-
-window.addEventListener("click", () => {
-  browser.runtime.sendMessage({
-    tabId: browser.devtools.inspectedWindow.tabId,
-    script: scriptToAttach
-  });
-});
- -
// background.js
-
-function handleMessage(request, sender, sendResponse) {
-  browser.tabs.executeScript(request.tabId, {
-    code: request.script
-  });
-}
-
-browser.runtime.onMessage.addListener(handleMessage);
- -

Si vous avez besoin d'échanger des messages entre les scripts de contenu exécutés dans la fenêtre cible et un document de developpement, il est judicieux d'utiliser {{WebExtAPIRef("runtime.connect()")}} et {{WebExtAPIRef("runtime.onConnect")}} pour configurer une connexion entre la page d'arrière-plan et le document devtools. La page d'arrière-plan peut alors maintenir un mappage entre les ID de l'onglet et les objets {{WebExtAPIRef("runtime.Port")}}, et utilisez-le pour acheminer les messages entre les deux champs.

- -

- -

Limitations des API des devtools

- -

Ces API sont basées sur les API devtools de Chrome, mais de nombreuses fonctionnalités sont encore manquantes par rapport à Chrome. Cette section répertorie les fonctionnalités qui ne sont pas encore implémentées, à partir de Firefox 54. Notez que les API de devtools sont en cours de développement et nous espérons ajouter de l'aide pour la plupart d'entre elles dans les versions ultérieures.

- -

devtools.inspectedWindow

- -

Les éléments suivants ne sont pas pris en charge :

- - - -

Aucune des options à inspectedWindow.eval() n'est prise en charge.

- -

Les scripts injectés à l'aide de inspectedWindow.eval() ne peuvent pas utiliser toutes les fonctions d'assistance en ligne de commande de la console, mais $0 et inspect(...) sont tous deux pris en charge (à partir de Firefox 55).

- -

devtools.panels

- -

Les éléments suivants ne sont pas pris en charge :

- - - -

Examples

- -

The webextensions-examples repo on GitHub contains several examples of WebExtensions that use devtools panels:

- - diff --git a/files/fr/mozilla/add-ons/webextensions/extending_the_developer_tools/index.md b/files/fr/mozilla/add-ons/webextensions/extending_the_developer_tools/index.md new file mode 100644 index 0000000000..118951f7a6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/extending_the_developer_tools/index.md @@ -0,0 +1,167 @@ +--- +title: Extension des outils de développement +slug: Mozilla/Add-ons/WebExtensions/Extending_the_developer_tools +tags: + - Add-ons + - DevTools + - Extensions + - Guide + - Needs Privileges + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Extending_the_developer_tools +original_slug: Mozilla/Add-ons/WebExtensions/extension_des_outils_de_developpement +--- +
{{AddonSidebar}}
+ +
+

Note : Cette page décrit les API  de devtools telles qu'elles existent dans Firefox 55. Bien que les API soient basées sur les  API devtools de chrome, 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 quelles fonctionnalités sont actuellement manquantes, voir les Limitations des APIs devtools.

+
+ +

Vous pouvez utiliser les API WebExtensions pour étendre les outils de développement intégrés du navigateur. Pour créer une extension devtools, incluez la clé "devtools_page" dans manifest.json:

+ +
"devtools_page": "devtools/devtools-page.html"
+ +

La valeur de cette clé est une URL indiquant un fichier HTML qui a été regroupé avec votre extension. L'URL doit être relative au fichier manifest.json lui-même.

+ +

Le fichier HTML définit une page spéciale dans l'extension, appelée la page devtools.

+ +

La page devtools

+ +

La page Devtools est chargée lorsque les devtools du navigateur sont ouverts et déchargés lorsqu'ils sont fermés. Notez que, parce que la fenêtre devtools est associée avec un seul onglet, il est possible que plus d'une fenêtre devtools - donc plus d'une page devtools - existe en même temps.

+ +

La page devtools n'a pas de DOM visible, mais peut inclure des sources JavaScript en utilisant les balises <script>. Les sources doivent être regroupées avec l'extension. Les sources ont accès à :

+ + + +

Notez que la page devtools n'accède à aucune autre API WebExtension, et que la page d'arrière-plan n'a pas accès aux API devtools. Au lieu de cela, la page devtools et la page d'arrière-plan doivent communiquer à l'aide des API messageries d'éxécution. Voici un exemple :

+ +
<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+  </head>
+  <body>
+    <script src="devtools.js"></script>
+  </body>
+</html>
+ +

Le fichier devtools.js contiendra le code réel créant vos extensions d'outils de développement.

+ +

Creations de panneaux

+ +

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".

+ +

A l'aide de l'API devtools.panel.create(), vous pouvez créer votre propre panneau dans la fenêtre devtools :

+ +
browser.devtools.panels.create(
+  "My Panel",                      // title
+  "icons/star.png",                // icon
+  "devtools/panel/panel.html"      // content
+).then((newPanel) => {
+  newPanel.onShown.addListener(initialisePanel);
+  newPanel.onHidden.addListener(unInitialisePanel);
+});
+ +

Cela nécessite trois arguments obligatoires: le titre, l'icône et le contenu du panneau. Il renvoie une promesse qui résout un objet devtools.panels.ExtensionPanel représentant le nouveau panneau.

+ +

Interaction avec la fenêtre cible

+ +

Les outils de développement sont toujours attachés à un onglet de navigateur particulier. Ceci est appelé "target" pour les outils de développement, ou la "fenêtre inspectée". Vous pouvez interagir avec la fenêtre inspectée en utilisant l'API  devtools.inspectedWindow.

+ +

Code d'exécution dans la fenêtre cible

+ +

la fonction devtools.inspectedWindow.eval() fournit une façon d'exécuter le code dans la fenêtre inspectée.

+ +

C'est un peu comme utiliser {{WebExtAPIRef("tabs.executeScript()")}}  pour injecter un script de contenu, mais avec une différence importante :

+ + + +
+

Note : Une vue propre du DOM est une fonction de sécurité destinée à empêcher les pages hostiles de tromper WebExtensions en redéfinissant le comportement des fonctions DOM natives. Cela signifie que vous devez être très prudent en utilisant eval () et utiliser un script de contenu normal si vous le pouvez.

+
+ +

Les scripts chargés à l'aide de devtools.inspectedWindow.eval() ne voient pas non plus de variables JavaScript définies par les scripts de contenu.

+ +

Travailler avec les scripts de contenus

+ +

Un document devtools n'a pas d'accès direct à  {{WebExtAPIRef("tabs.executeScript()")}}, donc, si vous devez injecter un script de contenu, le document devtools doit envoyer un message au script en arrière-plan en lui demandant d'injecter le script. La fonction devtools.inspectedWindow.tabId  fournit l'ID de l'onglet cible: le document devtools peut passer le script en arrière-plan, et le script de fond peut à son tour passer dans {{WebExtAPIRef("tabs.executeScript()")}}:

+ +
// devtools-panel.js
+
+const scriptToAttach = "document.body.innerHTML = 'Hi from the devtools';";
+
+window.addEventListener("click", () => {
+  browser.runtime.sendMessage({
+    tabId: browser.devtools.inspectedWindow.tabId,
+    script: scriptToAttach
+  });
+});
+ +
// background.js
+
+function handleMessage(request, sender, sendResponse) {
+  browser.tabs.executeScript(request.tabId, {
+    code: request.script
+  });
+}
+
+browser.runtime.onMessage.addListener(handleMessage);
+ +

Si vous avez besoin d'échanger des messages entre les scripts de contenu exécutés dans la fenêtre cible et un document de developpement, il est judicieux d'utiliser {{WebExtAPIRef("runtime.connect()")}} et {{WebExtAPIRef("runtime.onConnect")}} pour configurer une connexion entre la page d'arrière-plan et le document devtools. La page d'arrière-plan peut alors maintenir un mappage entre les ID de l'onglet et les objets {{WebExtAPIRef("runtime.Port")}}, et utilisez-le pour acheminer les messages entre les deux champs.

+ +

+ +

Limitations des API des devtools

+ +

Ces API sont basées sur les API devtools de Chrome, mais de nombreuses fonctionnalités sont encore manquantes par rapport à Chrome. Cette section répertorie les fonctionnalités qui ne sont pas encore implémentées, à partir de Firefox 54. Notez que les API de devtools sont en cours de développement et nous espérons ajouter de l'aide pour la plupart d'entre elles dans les versions ultérieures.

+ +

devtools.inspectedWindow

+ +

Les éléments suivants ne sont pas pris en charge :

+ + + +

Aucune des options à inspectedWindow.eval() n'est prise en charge.

+ +

Les scripts injectés à l'aide de inspectedWindow.eval() ne peuvent pas utiliser toutes les fonctions d'assistance en ligne de commande de la console, mais $0 et inspect(...) sont tous deux pris en charge (à partir de Firefox 55).

+ +

devtools.panels

+ +

Les éléments suivants ne sont pas pris en charge :

+ + + +

Examples

+ +

The webextensions-examples repo on GitHub contains several examples of WebExtensions that use devtools panels:

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/firefox_differentiators/index.html b/files/fr/mozilla/add-ons/webextensions/firefox_differentiators/index.html deleted file mode 100644 index 74eb48b795..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/firefox_differentiators/index.html +++ /dev/null @@ -1,90 +0,0 @@ ---- -title: Différenciateurs Firefox -slug: Mozilla/Add-ons/WebExtensions/Firefox_differentiators -tags: - - Add-ons - - Extensions - - Firefox - - NeedMarkupWork - - Themes - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Firefox_differentiators ---- -

{{AddonSidebar}}

- -

Firefox est un excellent endroit pour commencer le développement de votre extension de navigateur. Pour commencer, vous obtenez la conformité la plus élevée avec l'API d'extension de navigateur proposée, y compris l'utilisation de l'espace de noms browser.* et les promesses pour la gestion des événements asynchrones. Ensuite, il y a une communauté de développeurs de vulgarisation très solidaire, prêts à vous aider.

- -

Firefox offre également des fonctionnalités uniques que vous pouvez utiliser pour créer des extensions plus sûres, plus faciles à utiliser et plus attrayantes visuellement. Jetez un coup d’œil à ce qui est disponible:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Aider les utilisateurs à séparer les activités de leur navigateur avec les identités contextuelles (Contextual Identities ou Containers). Donner aux groupes d'onglets leur propre stockage de navigateur local : stockage de cookies et données locales dans localStorage et indexedDB. Ainsi, les détails tels que les préférences du site, les sessions ouvertes et les données de suivi des publicités restent confidentiels dans les onglets.

-
containers.png
-

Enregistrez et affichez des informations supplémentaires ou complémentaires sur une page Web à l'aide du composant de l'interface utilisation Sidebar, un panneau situé à côté des pages Web.

-
-

Mieux intégrer votre extension avec le navigateur en utilisant la possibilité de choisir le style du navigateur dans les actions des pages et du navigateur ainsi que dans la barre latérale de l'interface utilisateur. Définissez, dans le fichier manifest.json, les URLs où une action de page est affichée ou masquée, et choisissez où placer l'icône d'action du navigateur.

-
-

Aidez les utilisateurs à localiser le contenu qui les intéresse dans une page web, avec la possibilité de trouver et mettre en surbrillance le texte dans une page web.

-
-

Effectuez des recherches directement à partir de votre extension, avec des fonctions pour obtenir des détails sur les moteurs de recherche et effectuer une recherche.

-
-

Ajoutez une dimension supplémentaire à vos thèmes en  mettant à jour le thème du navigateur au moment de l'exécution. Avec cette fonction, vous pouvez alterner les thèmes par heure de la journée, appliquer un thème différent lorsque les utilisateurs naviguent sur votre site Web, refléter les actions des utilisateurs dans votre extension, et plus encore.

-
-

Effectuez des recherches directement à partir de votre extension, avec des fonctions pour obtenir les détails avec la possibilité de modifier (certains) paramètres globaux du navigateur.

-
-

Permettez aux utilisateurs d'ajouter de manière fiable les fonctionnalités de votre extension à de nouvelles pages et de nouveaux sites, avec la possibilité enregistrer et de désinscrire des scripts de contenu au moment de l'exécution.

-
-

Profitez des services externes pour gérer les protocoles ou les types de contenu en enregistrant les gestionnaires de protocole dans le manifest.json.

-
-

Effectuer des tâches Web supplémentaires telles que la résolution des noms de domaines et proxying des requêtes web.

-
-

Ajoutez des fonctionnalités de sécurité avancées à l'aide des modules de sécurités PKCS #11 aux clés et certificats source.

-
- -

Icônes de icon8

diff --git a/files/fr/mozilla/add-ons/webextensions/firefox_differentiators/index.md b/files/fr/mozilla/add-ons/webextensions/firefox_differentiators/index.md new file mode 100644 index 0000000000..74eb48b795 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/firefox_differentiators/index.md @@ -0,0 +1,90 @@ +--- +title: Différenciateurs Firefox +slug: Mozilla/Add-ons/WebExtensions/Firefox_differentiators +tags: + - Add-ons + - Extensions + - Firefox + - NeedMarkupWork + - Themes + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Firefox_differentiators +--- +

{{AddonSidebar}}

+ +

Firefox est un excellent endroit pour commencer le développement de votre extension de navigateur. Pour commencer, vous obtenez la conformité la plus élevée avec l'API d'extension de navigateur proposée, y compris l'utilisation de l'espace de noms browser.* et les promesses pour la gestion des événements asynchrones. Ensuite, il y a une communauté de développeurs de vulgarisation très solidaire, prêts à vous aider.

+ +

Firefox offre également des fonctionnalités uniques que vous pouvez utiliser pour créer des extensions plus sûres, plus faciles à utiliser et plus attrayantes visuellement. Jetez un coup d’œil à ce qui est disponible:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

Aider les utilisateurs à séparer les activités de leur navigateur avec les identités contextuelles (Contextual Identities ou Containers). Donner aux groupes d'onglets leur propre stockage de navigateur local : stockage de cookies et données locales dans localStorage et indexedDB. Ainsi, les détails tels que les préférences du site, les sessions ouvertes et les données de suivi des publicités restent confidentiels dans les onglets.

+
containers.png
+

Enregistrez et affichez des informations supplémentaires ou complémentaires sur une page Web à l'aide du composant de l'interface utilisation Sidebar, un panneau situé à côté des pages Web.

+
+

Mieux intégrer votre extension avec le navigateur en utilisant la possibilité de choisir le style du navigateur dans les actions des pages et du navigateur ainsi que dans la barre latérale de l'interface utilisateur. Définissez, dans le fichier manifest.json, les URLs où une action de page est affichée ou masquée, et choisissez où placer l'icône d'action du navigateur.

+
+

Aidez les utilisateurs à localiser le contenu qui les intéresse dans une page web, avec la possibilité de trouver et mettre en surbrillance le texte dans une page web.

+
+

Effectuez des recherches directement à partir de votre extension, avec des fonctions pour obtenir des détails sur les moteurs de recherche et effectuer une recherche.

+
+

Ajoutez une dimension supplémentaire à vos thèmes en  mettant à jour le thème du navigateur au moment de l'exécution. Avec cette fonction, vous pouvez alterner les thèmes par heure de la journée, appliquer un thème différent lorsque les utilisateurs naviguent sur votre site Web, refléter les actions des utilisateurs dans votre extension, et plus encore.

+
+

Effectuez des recherches directement à partir de votre extension, avec des fonctions pour obtenir les détails avec la possibilité de modifier (certains) paramètres globaux du navigateur.

+
+

Permettez aux utilisateurs d'ajouter de manière fiable les fonctionnalités de votre extension à de nouvelles pages et de nouveaux sites, avec la possibilité enregistrer et de désinscrire des scripts de contenu au moment de l'exécution.

+
+

Profitez des services externes pour gérer les protocoles ou les types de contenu en enregistrant les gestionnaires de protocole dans le manifest.json.

+
+

Effectuer des tâches Web supplémentaires telles que la résolution des noms de domaines et proxying des requêtes web.

+
+

Ajoutez des fonctionnalités de sécurité avancées à l'aide des modules de sécurités PKCS #11 aux clés et certificats source.

+
+ +

Icônes de icon8

diff --git a/files/fr/mozilla/add-ons/webextensions/firefox_workflow_overview/index.html b/files/fr/mozilla/add-ons/webextensions/firefox_workflow_overview/index.html deleted file mode 100644 index 07db67c927..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/firefox_workflow_overview/index.html +++ /dev/null @@ -1,74 +0,0 @@ ---- -title: Aperçu du flux de travail Firefox -slug: Mozilla/Add-ons/WebExtensions/Firefox_workflow_overview -tags: - - Add-ons - - Code - - Extensions - - Firefox - - WebExtensions - - enhance - - prepare - - publish - - retire - - workflow -translation_of: Mozilla/Add-ons/WebExtensions/Firefox_workflow_overview ---- -

{{AddonSidebar}}

- - - - - - - - - - - - - - - - - - -
- - - - - - - - - -
- -

* Ou distribuez votre extension pour le chargement latéral, les applications de bureaux, ou dans une enteprise.

- -

Vous avez une extension que vous souhaitez porter à Firefox?  Nous fournissons des conseils, des directives et des outils pour vous aider à rendre le portage simple. Pour commencer, visitez Portage d'une extension Google Chrome.

diff --git a/files/fr/mozilla/add-ons/webextensions/firefox_workflow_overview/index.md b/files/fr/mozilla/add-ons/webextensions/firefox_workflow_overview/index.md new file mode 100644 index 0000000000..07db67c927 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/firefox_workflow_overview/index.md @@ -0,0 +1,74 @@ +--- +title: Aperçu du flux de travail Firefox +slug: Mozilla/Add-ons/WebExtensions/Firefox_workflow_overview +tags: + - Add-ons + - Code + - Extensions + - Firefox + - WebExtensions + - enhance + - prepare + - publish + - retire + - workflow +translation_of: Mozilla/Add-ons/WebExtensions/Firefox_workflow_overview +--- +

{{AddonSidebar}}

+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + + +
+ +

* Ou distribuez votre extension pour le chargement latéral, les applications de bureaux, ou dans une enteprise.

+ +

Vous avez une extension que vous souhaitez porter à Firefox?  Nous fournissons des conseils, des directives et des outils pour vous aider à rendre le portage simple. Pour commencer, visitez Portage d'une extension Google Chrome.

diff --git a/files/fr/mozilla/add-ons/webextensions/implement_a_settings_page/index.html b/files/fr/mozilla/add-ons/webextensions/implement_a_settings_page/index.html deleted file mode 100644 index 9593767e1e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/implement_a_settings_page/index.html +++ /dev/null @@ -1,220 +0,0 @@ ---- -title: Ajouter une page de paramètres -slug: Mozilla/Add-ons/WebExtensions/Implement_a_settings_page -tags: - - Paramètres - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Implement_a_settings_page -original_slug: Mozilla/Add-ons/WebExtensions/Ajouter_une_page_de_paramètres ---- -
{{AddonSidebar}}
- -

Une page de paramètres donne aux utilisateurs la possiblité de voir et de changer les paramètres (parfois aussi appelée "préférences" ou "options") de l'extension.

- -

Avec les WebExtensions, les paramètres sont généralement stockés en utilisant l'API storage. L'ajout d'une page de paramètres se fait en trois étapes :

- - - -
-

Note : Vous pouvez aussi ouvrir cette page automatiquement en utilisant la fonction runtime.openOptionsPage().

-
- -

Une WebExtension simple

- -

Tout d'abord, nous allons écrire une extension qui ajoute une bordure bleue à chaque page visitée par l'utilisateur.

- -

Créez un nouveau dossier nommé "settings", dans lequel vous créez un fichier appelé "manifest.json" ayant pour contenu :

- -
{
-
-  "manifest_version": 2,
-  "name": "Settings example",
-  "version": "1.0",
-
-  "content_scripts": [
-    {
-      "matches": ["<all_urls>"],
-      "js": ["borderify.js"]
-    }
-  ]
-
-}
- -

Les instructions de l'extension charge au navigateur un script de contenu nommé "borderify.js" dans chaque page que l'utilisateur visite.

- -

Ensuite, créez un fichier nomé "borderify.js" dans le dossier "paramètres", et remplissez le comme suit :

- -
document.body.style.border = "10px solid blue";
- -

Ça ajoute une bordure bleue à la page.

- -

Maintenant, installez la WebExtension et testez la — ouvrez la page que vous voulez :

- -

{{EmbedYouTube("E-WUhihF8fw")}}

- -

Ajouter des paramètres

- -

Maintenant, créez une page de paramètres pour autoriser l'utilisateur à définire la couleur de la bordure.

- -

D'abord, mettez à jour le contenu de "manifest.json" avec ceci :

- -
{
-
-  "manifest_version": 2,
-  "name": "Settings example",
-  "version": "1.0",
-
-  "content_scripts": [
-    {
-      "matches": ["<all_urls>"],
-      "js": ["borderify.js"]
-    }
-  ],
-
-  "options_ui": {
-    "page": "options.html"
-  },
-
-  "permissions": ["storage"],
-
-  "applications": {
-    "gecko": {
-      "id": "addon@example.com",
-    }
-  }
-
-}
-
- -

Vous avez ajoutez trois nouvelles clés :

- - - -

Ensuite, puisque vous avez promis de fournir "options.html", créons-le. Créez un fichier avec ce nom dans le répertoire "settings", et donnez-lui le contenu suivant :

- -
<!DOCTYPE html>
-
-<html>
-  <head>
-    <meta charset="utf-8">
-  </head>
-
-  <body>
-
-    <form>
-        <label>Border color<input type="text" id="color" ></label>
-        <button type="submit">Save</button>
-    </form>
-
-    <script src="options.js"></script>
-
-  </body>
-
-</html>
-
- -

Cela définit un {{htmlelement("form")}} avec un label de texte {{htmlelement("input")}} et un {{htmlelement("button")}} de type "submit". Ça inclus également un script appelé "options.js".

- -

Créez "options.js", lui-aussi dans le dossier "settings", et remplissez le comme ceci :

- -
function saveOptions(e) {
-  e.preventDefault();
-  browser.storage.sync.set({
-    color: document.querySelector("#color").value
-  });
-}
-
-function restoreOptions() {
-
-  function setCurrentChoice(result) {
-    document.querySelector("#color").value = result.color || "blue";
-  }
-
-  function onError(error) {
-    console.log(`Error: ${error}`);
-  }
-
-  var getting = browser.storage.sync.get("color");
-  getting.then(setCurrentChoice, onError);
-}
-
-document.addEventListener("DOMContentLoaded", restoreOptions);
-document.querySelector("form").addEventListener("submit", saveOptions);
-
- -

Cela fait deux choses :

- - - -

Vous pouvez stocker les valeurs des paramètres dans le stockage local à la place si vous pensez que le stockage local est préférable pour votre extension.

- -
-

Note : L'implémentation de storage.sync dans Firefox repose sur l'ID du module complémentaire. Si vous utilisez storage.sync,  vous devez définir un ID pour votre extension à l'aide de la clé manifest.json des applications  comme indiqué dans l'exemple de manifeste ci-dessus.

-
- -

Finalement, mettez à jour "borderify.js" pour lire la couleur de la bordure depuis le stockage :

- -
-

Attention : A cause d'un bug dans browser.storage.local.get() dans Firefox pour les versions précédant la 52, le code qui suit ne fonctionnera pas. Pour le faire fonctionner pour les versions de Firefox avant la 52, les deux occurrences d'item.color dans onGot() doivent être changer pour item[0].color.

-
- -
 function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-function onGot(item) {
-  var color = "blue";
-  if (item.color) {
-    color = item.color;
-  }
-  document.body.style.border = "10px solid " + color;
-}
-
-var getting = browser.storage.sync.get("color");
-getting.then(onGot, onError);
-
- -

A ce moment, l'extension complète devrait ressembler à ceci :

- -
settings/
-    borderify.js
-    manifest.json
-    options.html
-    options.js
- -

Maintenant :

- - - -

Dans Firefox vous pouvez accéder à la page des paramètres en visitant about:addons et en cliquant le bouton "Preferences" situé à coté de l'extension.

- -

{{EmbedYouTube("ECt9cbWh1qs")}}

- -

Pour aller plus loin

- - diff --git a/files/fr/mozilla/add-ons/webextensions/implement_a_settings_page/index.md b/files/fr/mozilla/add-ons/webextensions/implement_a_settings_page/index.md new file mode 100644 index 0000000000..9593767e1e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/implement_a_settings_page/index.md @@ -0,0 +1,220 @@ +--- +title: Ajouter une page de paramètres +slug: Mozilla/Add-ons/WebExtensions/Implement_a_settings_page +tags: + - Paramètres + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Implement_a_settings_page +original_slug: Mozilla/Add-ons/WebExtensions/Ajouter_une_page_de_paramètres +--- +
{{AddonSidebar}}
+ +

Une page de paramètres donne aux utilisateurs la possiblité de voir et de changer les paramètres (parfois aussi appelée "préférences" ou "options") de l'extension.

+ +

Avec les WebExtensions, les paramètres sont généralement stockés en utilisant l'API storage. L'ajout d'une page de paramètres se fait en trois étapes :

+ + + +
+

Note : Vous pouvez aussi ouvrir cette page automatiquement en utilisant la fonction runtime.openOptionsPage().

+
+ +

Une WebExtension simple

+ +

Tout d'abord, nous allons écrire une extension qui ajoute une bordure bleue à chaque page visitée par l'utilisateur.

+ +

Créez un nouveau dossier nommé "settings", dans lequel vous créez un fichier appelé "manifest.json" ayant pour contenu :

+ +
{
+
+  "manifest_version": 2,
+  "name": "Settings example",
+  "version": "1.0",
+
+  "content_scripts": [
+    {
+      "matches": ["<all_urls>"],
+      "js": ["borderify.js"]
+    }
+  ]
+
+}
+ +

Les instructions de l'extension charge au navigateur un script de contenu nommé "borderify.js" dans chaque page que l'utilisateur visite.

+ +

Ensuite, créez un fichier nomé "borderify.js" dans le dossier "paramètres", et remplissez le comme suit :

+ +
document.body.style.border = "10px solid blue";
+ +

Ça ajoute une bordure bleue à la page.

+ +

Maintenant, installez la WebExtension et testez la — ouvrez la page que vous voulez :

+ +

{{EmbedYouTube("E-WUhihF8fw")}}

+ +

Ajouter des paramètres

+ +

Maintenant, créez une page de paramètres pour autoriser l'utilisateur à définire la couleur de la bordure.

+ +

D'abord, mettez à jour le contenu de "manifest.json" avec ceci :

+ +
{
+
+  "manifest_version": 2,
+  "name": "Settings example",
+  "version": "1.0",
+
+  "content_scripts": [
+    {
+      "matches": ["<all_urls>"],
+      "js": ["borderify.js"]
+    }
+  ],
+
+  "options_ui": {
+    "page": "options.html"
+  },
+
+  "permissions": ["storage"],
+
+  "applications": {
+    "gecko": {
+      "id": "addon@example.com",
+    }
+  }
+
+}
+
+ +

Vous avez ajoutez trois nouvelles clés :

+ + + +

Ensuite, puisque vous avez promis de fournir "options.html", créons-le. Créez un fichier avec ce nom dans le répertoire "settings", et donnez-lui le contenu suivant :

+ +
<!DOCTYPE html>
+
+<html>
+  <head>
+    <meta charset="utf-8">
+  </head>
+
+  <body>
+
+    <form>
+        <label>Border color<input type="text" id="color" ></label>
+        <button type="submit">Save</button>
+    </form>
+
+    <script src="options.js"></script>
+
+  </body>
+
+</html>
+
+ +

Cela définit un {{htmlelement("form")}} avec un label de texte {{htmlelement("input")}} et un {{htmlelement("button")}} de type "submit". Ça inclus également un script appelé "options.js".

+ +

Créez "options.js", lui-aussi dans le dossier "settings", et remplissez le comme ceci :

+ +
function saveOptions(e) {
+  e.preventDefault();
+  browser.storage.sync.set({
+    color: document.querySelector("#color").value
+  });
+}
+
+function restoreOptions() {
+
+  function setCurrentChoice(result) {
+    document.querySelector("#color").value = result.color || "blue";
+  }
+
+  function onError(error) {
+    console.log(`Error: ${error}`);
+  }
+
+  var getting = browser.storage.sync.get("color");
+  getting.then(setCurrentChoice, onError);
+}
+
+document.addEventListener("DOMContentLoaded", restoreOptions);
+document.querySelector("form").addEventListener("submit", saveOptions);
+
+ +

Cela fait deux choses :

+ + + +

Vous pouvez stocker les valeurs des paramètres dans le stockage local à la place si vous pensez que le stockage local est préférable pour votre extension.

+ +
+

Note : L'implémentation de storage.sync dans Firefox repose sur l'ID du module complémentaire. Si vous utilisez storage.sync,  vous devez définir un ID pour votre extension à l'aide de la clé manifest.json des applications  comme indiqué dans l'exemple de manifeste ci-dessus.

+
+ +

Finalement, mettez à jour "borderify.js" pour lire la couleur de la bordure depuis le stockage :

+ +
+

Attention : A cause d'un bug dans browser.storage.local.get() dans Firefox pour les versions précédant la 52, le code qui suit ne fonctionnera pas. Pour le faire fonctionner pour les versions de Firefox avant la 52, les deux occurrences d'item.color dans onGot() doivent être changer pour item[0].color.

+
+ +
 function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+function onGot(item) {
+  var color = "blue";
+  if (item.color) {
+    color = item.color;
+  }
+  document.body.style.border = "10px solid " + color;
+}
+
+var getting = browser.storage.sync.get("color");
+getting.then(onGot, onError);
+
+ +

A ce moment, l'extension complète devrait ressembler à ceci :

+ +
settings/
+    borderify.js
+    manifest.json
+    options.html
+    options.js
+ +

Maintenant :

+ + + +

Dans Firefox vous pouvez accéder à la page des paramètres en visitant about:addons et en cliquant le bouton "Preferences" situé à coté de l'extension.

+ +

{{EmbedYouTube("ECt9cbWh1qs")}}

+ +

Pour aller plus loin

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/index.html b/files/fr/mozilla/add-ons/webextensions/index.html deleted file mode 100644 index 689fe30f20..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/index.html +++ /dev/null @@ -1,62 +0,0 @@ ---- -title: WebExtensions -slug: Mozilla/Add-ons/WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions ---- -
{{AddonSidebar}}
- -

Les extensions, ou modules complémentaires, peuvent étendre et modifier les fonctionnalités d'un navigateur. Les extensions pour Firefox sont construites avec l'API WebExtensions qui fonctionnent pour les différents navigateurs.

- -

La technologie d'extensions Firefox est, en grande partie, compatible avec l'API d'extension prise en charge par les navigateurs Chromium tels que Google Chrome, Microsoft Edge et Opera. Dans la plupart des cas, les extensions écrites dans ces navigateurs fonctionnent sur Firefox avec seulement quelques modifications.

- -

Ressources principales

- -
-
Guides
-
Que vous débutiez ou soyez à la recherche de conseils plus avancés, apprenez comment fonctionnent les extensions et comment utiliser l'API WebExtensions grâce à notre large variété de tutoriels et guides.
-
Références
-
Obtenez des détails complets sur les méthodes, les propriétés, les types et les événements des API WebExtensions et des informations détaillées sur les clés du manifeste.
-
Flux de travail pour Firefox
-
Découvrez comment créer et publier des extensions pour Firefox : plongez dans le fonctionnement des outils de développement, de la publication, de la distribution, et du portage avec l'atelier des extensions Firefox.
-
- -
-

Note : Si vous avez des idées, des questions ou si vous avez besoin d'aide, vous pouvez nous contacter sur le forum communautaire ou sur le salon Add-ons sur Matrix.

-
- -

Premiers pas

- -

Découvrez ce que peuvent faire les extensions Firefox avant de construire votre première extension. Découvrez la structure d'une extension et obtenez un aperçu du processus de développement et de publication d'extension pour Firefox. Explorez un peu plus en profondeur leur fonctionnement avec un large éventail d'exemples d'extensions que vous pouvez exécuter directement sur Firefox.

- -

Concepts

- -

Obtenez des informations détaillées sur les concepts fondamentaux des extensions à l'aide d'une vue d'ensemble de l'API JavaScript, en passant par les scripts de contenu, les motifs de correspondance, la manipulation des fichiers, l'internationalisation, et les politiques de sécurité du contenu, jusqu'à des sujets plus avancés tels que les messages natifs, l'utilisation des API pour les outils de développement, et des manifestes natifs.

- -

Interface utilisateur

- -

Découvrez tous les composants que vous pouvez utiliser pour l'interface utilisateur de vos extensions, avec des exemples contenant des astuces et leur code.

- -

Tutoriels

- -

Vous trouverez une série de tutoriels pour vous aider à commencer et qui abordent des notions que vous utiliserez régulièrement, tels que la manipulation des onglets avec l'API Tabs, l'ajout d'un bouton à la barre d'outils ainsi que des sujets plus avancés tels que l'interception des requêtes HTTP et la gestion des identités contextuelles.

- -

Construction et distribution pour Firefox

- -

Lorsque vous êtes prête ou prêt à créer votre extension Firefox ou à porter une extension Chrome vers Firefox, dirigez-vous vers l'atelier des extensions Firefox. Vous y trouverez des détails sur :

- - - -

Référence

- -

Les API JavaScript

- -

Obtenez des détails complets sur les méthodes, les propriétés, les types et les événements pour l'ensemble des API JavaScript relatives aux extensions. Vous trouverez également des informations détaillées sur la compatibilité de chaque API avec les principaux navigateurs. La plupart des pages de référence comprennent également des exemples d'implémentation et des liens vers des exemples d'extensions qui utilisent l'API.

- -

Les clés du manifeste

- -

Obtenez tous les détails sur les clés du manifeste d'une extension, y compris toutes leurs propriétés et paramètres. Vous y trouverez également des informations détaillées sur la compatibilité de chaque clé pour les principaux navigateurs.

diff --git a/files/fr/mozilla/add-ons/webextensions/index.md b/files/fr/mozilla/add-ons/webextensions/index.md new file mode 100644 index 0000000000..689fe30f20 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/index.md @@ -0,0 +1,62 @@ +--- +title: WebExtensions +slug: Mozilla/Add-ons/WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions +--- +
{{AddonSidebar}}
+ +

Les extensions, ou modules complémentaires, peuvent étendre et modifier les fonctionnalités d'un navigateur. Les extensions pour Firefox sont construites avec l'API WebExtensions qui fonctionnent pour les différents navigateurs.

+ +

La technologie d'extensions Firefox est, en grande partie, compatible avec l'API d'extension prise en charge par les navigateurs Chromium tels que Google Chrome, Microsoft Edge et Opera. Dans la plupart des cas, les extensions écrites dans ces navigateurs fonctionnent sur Firefox avec seulement quelques modifications.

+ +

Ressources principales

+ +
+
Guides
+
Que vous débutiez ou soyez à la recherche de conseils plus avancés, apprenez comment fonctionnent les extensions et comment utiliser l'API WebExtensions grâce à notre large variété de tutoriels et guides.
+
Références
+
Obtenez des détails complets sur les méthodes, les propriétés, les types et les événements des API WebExtensions et des informations détaillées sur les clés du manifeste.
+
Flux de travail pour Firefox
+
Découvrez comment créer et publier des extensions pour Firefox : plongez dans le fonctionnement des outils de développement, de la publication, de la distribution, et du portage avec l'atelier des extensions Firefox.
+
+ +
+

Note : Si vous avez des idées, des questions ou si vous avez besoin d'aide, vous pouvez nous contacter sur le forum communautaire ou sur le salon Add-ons sur Matrix.

+
+ +

Premiers pas

+ +

Découvrez ce que peuvent faire les extensions Firefox avant de construire votre première extension. Découvrez la structure d'une extension et obtenez un aperçu du processus de développement et de publication d'extension pour Firefox. Explorez un peu plus en profondeur leur fonctionnement avec un large éventail d'exemples d'extensions que vous pouvez exécuter directement sur Firefox.

+ +

Concepts

+ +

Obtenez des informations détaillées sur les concepts fondamentaux des extensions à l'aide d'une vue d'ensemble de l'API JavaScript, en passant par les scripts de contenu, les motifs de correspondance, la manipulation des fichiers, l'internationalisation, et les politiques de sécurité du contenu, jusqu'à des sujets plus avancés tels que les messages natifs, l'utilisation des API pour les outils de développement, et des manifestes natifs.

+ +

Interface utilisateur

+ +

Découvrez tous les composants que vous pouvez utiliser pour l'interface utilisateur de vos extensions, avec des exemples contenant des astuces et leur code.

+ +

Tutoriels

+ +

Vous trouverez une série de tutoriels pour vous aider à commencer et qui abordent des notions que vous utiliserez régulièrement, tels que la manipulation des onglets avec l'API Tabs, l'ajout d'un bouton à la barre d'outils ainsi que des sujets plus avancés tels que l'interception des requêtes HTTP et la gestion des identités contextuelles.

+ +

Construction et distribution pour Firefox

+ +

Lorsque vous êtes prête ou prêt à créer votre extension Firefox ou à porter une extension Chrome vers Firefox, dirigez-vous vers l'atelier des extensions Firefox. Vous y trouverez des détails sur :

+ + + +

Référence

+ +

Les API JavaScript

+ +

Obtenez des détails complets sur les méthodes, les propriétés, les types et les événements pour l'ensemble des API JavaScript relatives aux extensions. Vous trouverez également des informations détaillées sur la compatibilité de chaque API avec les principaux navigateurs. La plupart des pages de référence comprennent également des exemples d'implémentation et des liens vers des exemples d'extensions qui utilisent l'API.

+ +

Les clés du manifeste

+ +

Obtenez tous les détails sur les clés du manifeste d'une extension, y compris toutes leurs propriétés et paramètres. Vous y trouverez également des informations détaillées sur la compatibilité de chaque clé pour les principaux navigateurs.

diff --git a/files/fr/mozilla/add-ons/webextensions/index/index.html b/files/fr/mozilla/add-ons/webextensions/index/index.html deleted file mode 100644 index c491132625..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/index/index.html +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: Index -slug: Mozilla/Add-ons/WebExtensions/Index -tags: - - Add-ons - - Index - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Index ---- -
{{AddonSidebar}}
- -
{{Index("/fr/Add-ons/WebExtensions")}}
diff --git a/files/fr/mozilla/add-ons/webextensions/index/index.md b/files/fr/mozilla/add-ons/webextensions/index/index.md new file mode 100644 index 0000000000..c491132625 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/index/index.md @@ -0,0 +1,12 @@ +--- +title: Index +slug: Mozilla/Add-ons/WebExtensions/Index +tags: + - Add-ons + - Index + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Index +--- +
{{AddonSidebar}}
+ +
{{Index("/fr/Add-ons/WebExtensions")}}
diff --git a/files/fr/mozilla/add-ons/webextensions/interact_with_the_clipboard/index.html b/files/fr/mozilla/add-ons/webextensions/interact_with_the_clipboard/index.html deleted file mode 100644 index 13c5835d8e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/interact_with_the_clipboard/index.html +++ /dev/null @@ -1,190 +0,0 @@ ---- -title: Interagir avec le presse-papier -slug: Mozilla/Add-ons/WebExtensions/Interact_with_the_clipboard -tags: - - Add-ons - - Clip - - Clipboard - - Cut - - Editing - - Extensions - - Text - - WebExtensions - - coller - - copier - - copy - - couper - - paste -translation_of: Mozilla/Add-ons/WebExtensions/Interact_with_the_clipboard -original_slug: Mozilla/Add-ons/WebExtensions/interagir_avec_le_presse_papier ---- -
{{AddonSidebar}}
- -

ll y a deux façons dont les extensions de navigateur peuvent interagir avec le presse-papiers système : la méthode {{domxref("Document.execCommand()")}}  et l'asynchrone moderne de l'API Presse-papiers.

- -

La méthode {{domxref("Document.execCommand()")}} peut être utilisée, en spécifiant la commande désirée :

- - - -

L'API Presse-papiers fournit un accès asynchrone pour lire et écrire directement le contenu du presse-papiers. Par exemple, pour lire le texte du presse-papiers :

- -
navigator.clipboard.readText().then(text => outputElem.innerText = text);
- -

Ceci demande le contenu du presse-papiers et, lorsque la réponse est reçue, stocke le texte du presse-papiers dans le {{domxref("Node.innerText", "innerText")}} d'un élément.

- -
-

Note: Les méthodes asynchrones de l'API Clipboard sont un ajout récent à la spécification et peuvent ne pas être entièrement implémentées dans tous les navigateurs. Assurez-vous de passer en revue les tableaux de compatibilité pour chaque méthode avant de les utiliser, afin de vous assurer que le support est suffisamment large pour vos besoins.

-
- -

Ecrire dans le presse-papiers

- -

Il y a deux façons d'écrire dans le presse-papiers. Vous pouvez utiliser les actions {{domxref("Document.execCommand", "document.execCommand()")}} pour déclencher les actions "couper" et "copier", qui remplace le contenu actuel du presse-papiers par les données actuellement sélectionnées. L'autre option est d'utiliser la méthode {{domxref("Clipboard.writeText()")}} ou {{domxref("Clipboard.write()")}} de l'API Presse-papiers pour remplacer le contenu du presse-papiers par des données spécifiques.

- -

Utiliser execCommand()

- -

Les commandes {{domxref("Document.execCommand", "document.execCommand()")}} de la méthode "couper" et "copier" peuvent être utilisées pour remplacer le contenu actuel du presse-papiers par le matériel sélectionné. Ces commandes peuvent être utilisées sans permission spéciale si vous les utilisez dans un gestionnaire d'événements de courte durée pour une action utilisateur (par exemple, un gestionnaire de clics).

- -

Par exemple, supposons que vous ayez un popup qui inclut le HTML suivant :

- -
<input id="input" type="text"/>
-<button id="copy">Copy</button>
-
- -

Pour que le bouton "copier" copie le contenu de l'élément {{HTMLElement("input")}}, vous pouvez utiliser du code comme ceci :

- -
function copy() {
-  var copyText = document.querySelector("#input");
-  copyText.select();
-  document.execCommand("copy");
-}
-
-document.querySelector("#copy").addEventListener("click", copy);
- -

Parce que l'appel execCommand() se trouve à l'intérieur d'un gestionnaire d'événements click, vous n'avez pas besoin de permissions spéciales ici.

- -

Cependant, disons que vous déclenchez plutôt la copie à partir d'une alarme  :

- -
function copy() {
-  var copyText = document.querySelector("#input");
-  copyText.select();
-  document.execCommand("copy");
-}
-
-browser.alarms.create({
-  delayInMinutes: 0.1
-});
-
-browser.alarms.onAlarm.addListener(copy);
- -

Selon le navigateur, cela peut ne pas fonctionner. Sur Firefox, cela ne fonctionnera pas, et vous verrez un message comme celui-ci dans votre console :

- -
document.execCommand(‘cut’/‘copy’) was denied because it was not called from inside a short running user-generated event handler.
- -

Pour activer ce cas d'utilisation, vous devez demander permission "clipboardWrite". Alors :  "clipboardWrite" vous permet d'écrire dans le presse-papiers en dehors d'un gestionnaire d'événements de courte durée pour une action utilisateur.

- -

Utilisation de l'API Presse-papiers

- -

L'API Presse-papiers ajoute une plus grande flexibilité, en ce sens que vous n'êtes pas limité à copier simplement la sélection courante dans le presse-papiers, mais vous pouvez spécifier directement quelles informations placer dans le presse-papiers.

- -

L'utilisation de l'API nécessite que vous ayez les permissons de l'API "clipboard-write". Vous pouvez vérifier cette permission en utilisant {{domxref("Permissions.query", "navigator.permissions.query()")}}:

- -
navigator.permissions.query({name: "clipboard-write"}).then(result => {
-  if (result.state == "granted" || result.state == "prompt") {
-    /* write to the clipboard now */
-  }
-});
-
- -

Cette fonction prend une chaîne de caractères comme entrée et met à jour le presse-papiers pour contenir cette chaîne :

- -
function updateClipboard(newClip) {
-  navigator.clipboard.writeText(newClip).then(function() {
-    /* clipboard successfully set */
-  }, function() {
-    /* clipboard write failed */
-  });
-}
-
- -
-

Note : Le nom de la permission clipboard-write n'est pas supporté actuellement dans Firefox - seulement les navigateurs Chromium.

-
- -

***Considérations spécifiques du navigateur

- -

Le presse-papiers et les autres API impliquées ici évoluent rapidement, de sorte qu'il y a des variations entre les navigateurs quant à leur mode de fonctionnement.

- -

Dans Chrome:

- - - -

Dans Firefox:

- - - -
-

Note : L'API execCommand('copy') n'est pas supporté dans Safari

-
- - - -

Lecture à partir du presse-papiers

- -

La méthode execCommand() fournit la commande "coller", qui vous permet de coller le contenu actuel du presse-papiers au point d'insertion dans un contrôle modifiable. Vous pouvez gagner en flexibilité en utilisant les méthodes {{domxref("Clipboard.read()")}} et {{domxref("Clipboard.readText()")}}.

- -

Utilisation de execCommand()

- -

Tout d'abord, vous devez avoir la permission "clipboardRead" établie pour votre extension. C'est le cas même si vous utilisez la commande "coller" à partir d'un gestionnaire d'événements généré par l'utilisateur tel que {{event("click")}} ou {{event("keypress")}}.

- -

Considérez le HTML qui inclut quelque chose comme ceci :

- -
<textarea id="output"></textarea>
-<button id="paste">Paste</button>
-
- -

Pour définir le contenu de l'élément {{HTMLElement("textarea")}} avec l'ID "output" du presse-papiers lorsque l'utilisateur clique sur le {{HTMLElement("button")}} "coller", vous pouvez utiliser du code comme ceci :

- -
function paste() {
-  var pasteText = document.querySelector("#output");
-  pasteText.focus();
-  document.execCommand("paste");
-  console.log(pasteText.textContent);
-}
-
-document.querySelector("#paste").addEventListener("click", paste);
- -

Utilisation de l'API Presse-papiers

- -

Les méthodes {{domxref("Clipboard.readText", "navigator.clipboard.readText()")}} et {{domxref("Clipboard.read", "navigator.clipboard.read()")}} de l'API Presse-papiers vous permettent de lire du texte arbitraire ou des données binaires à partir du presse-papiers. Cela vous permet d'accéder aux données du presse-papiers sans simplement les coller dans un élément modifiable.

- -

Une fois que vous avez la permission "clipboard-read" de l'API permissions, vous pouvez lire facilement à partir du presse-papiers :

- -
navigator.clipboard.readText().then(clipText =>
-  document.getElementById("outbox").innerText = clipText);
- -

Cet extrait de code récupère le texte du presse-papiers et remplace le contenu actuel de l'élément par l'ID "outbox" avec ce texte.

- -

Considérations spécifiques au navigateur

- -

Firefox supporte la permission "clipboardRead" à partir de la version 54, mais ne supporte pas que le collage dans les élements en mode édition de contenu, qui pour les scripts de contenu ne fonctionne qu'avec un {{HTMLElement("textarea")}}. Pour les scripts d'arrière-plan, n'importe quel élément peut être mis en mode contenu modifiable.

- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/interact_with_the_clipboard/index.md b/files/fr/mozilla/add-ons/webextensions/interact_with_the_clipboard/index.md new file mode 100644 index 0000000000..13c5835d8e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/interact_with_the_clipboard/index.md @@ -0,0 +1,190 @@ +--- +title: Interagir avec le presse-papier +slug: Mozilla/Add-ons/WebExtensions/Interact_with_the_clipboard +tags: + - Add-ons + - Clip + - Clipboard + - Cut + - Editing + - Extensions + - Text + - WebExtensions + - coller + - copier + - copy + - couper + - paste +translation_of: Mozilla/Add-ons/WebExtensions/Interact_with_the_clipboard +original_slug: Mozilla/Add-ons/WebExtensions/interagir_avec_le_presse_papier +--- +
{{AddonSidebar}}
+ +

ll y a deux façons dont les extensions de navigateur peuvent interagir avec le presse-papiers système : la méthode {{domxref("Document.execCommand()")}}  et l'asynchrone moderne de l'API Presse-papiers.

+ +

La méthode {{domxref("Document.execCommand()")}} peut être utilisée, en spécifiant la commande désirée :

+ + + +

L'API Presse-papiers fournit un accès asynchrone pour lire et écrire directement le contenu du presse-papiers. Par exemple, pour lire le texte du presse-papiers :

+ +
navigator.clipboard.readText().then(text => outputElem.innerText = text);
+ +

Ceci demande le contenu du presse-papiers et, lorsque la réponse est reçue, stocke le texte du presse-papiers dans le {{domxref("Node.innerText", "innerText")}} d'un élément.

+ +
+

Note: Les méthodes asynchrones de l'API Clipboard sont un ajout récent à la spécification et peuvent ne pas être entièrement implémentées dans tous les navigateurs. Assurez-vous de passer en revue les tableaux de compatibilité pour chaque méthode avant de les utiliser, afin de vous assurer que le support est suffisamment large pour vos besoins.

+
+ +

Ecrire dans le presse-papiers

+ +

Il y a deux façons d'écrire dans le presse-papiers. Vous pouvez utiliser les actions {{domxref("Document.execCommand", "document.execCommand()")}} pour déclencher les actions "couper" et "copier", qui remplace le contenu actuel du presse-papiers par les données actuellement sélectionnées. L'autre option est d'utiliser la méthode {{domxref("Clipboard.writeText()")}} ou {{domxref("Clipboard.write()")}} de l'API Presse-papiers pour remplacer le contenu du presse-papiers par des données spécifiques.

+ +

Utiliser execCommand()

+ +

Les commandes {{domxref("Document.execCommand", "document.execCommand()")}} de la méthode "couper" et "copier" peuvent être utilisées pour remplacer le contenu actuel du presse-papiers par le matériel sélectionné. Ces commandes peuvent être utilisées sans permission spéciale si vous les utilisez dans un gestionnaire d'événements de courte durée pour une action utilisateur (par exemple, un gestionnaire de clics).

+ +

Par exemple, supposons que vous ayez un popup qui inclut le HTML suivant :

+ +
<input id="input" type="text"/>
+<button id="copy">Copy</button>
+
+ +

Pour que le bouton "copier" copie le contenu de l'élément {{HTMLElement("input")}}, vous pouvez utiliser du code comme ceci :

+ +
function copy() {
+  var copyText = document.querySelector("#input");
+  copyText.select();
+  document.execCommand("copy");
+}
+
+document.querySelector("#copy").addEventListener("click", copy);
+ +

Parce que l'appel execCommand() se trouve à l'intérieur d'un gestionnaire d'événements click, vous n'avez pas besoin de permissions spéciales ici.

+ +

Cependant, disons que vous déclenchez plutôt la copie à partir d'une alarme  :

+ +
function copy() {
+  var copyText = document.querySelector("#input");
+  copyText.select();
+  document.execCommand("copy");
+}
+
+browser.alarms.create({
+  delayInMinutes: 0.1
+});
+
+browser.alarms.onAlarm.addListener(copy);
+ +

Selon le navigateur, cela peut ne pas fonctionner. Sur Firefox, cela ne fonctionnera pas, et vous verrez un message comme celui-ci dans votre console :

+ +
document.execCommand(‘cut’/‘copy’) was denied because it was not called from inside a short running user-generated event handler.
+ +

Pour activer ce cas d'utilisation, vous devez demander permission "clipboardWrite". Alors :  "clipboardWrite" vous permet d'écrire dans le presse-papiers en dehors d'un gestionnaire d'événements de courte durée pour une action utilisateur.

+ +

Utilisation de l'API Presse-papiers

+ +

L'API Presse-papiers ajoute une plus grande flexibilité, en ce sens que vous n'êtes pas limité à copier simplement la sélection courante dans le presse-papiers, mais vous pouvez spécifier directement quelles informations placer dans le presse-papiers.

+ +

L'utilisation de l'API nécessite que vous ayez les permissons de l'API "clipboard-write". Vous pouvez vérifier cette permission en utilisant {{domxref("Permissions.query", "navigator.permissions.query()")}}:

+ +
navigator.permissions.query({name: "clipboard-write"}).then(result => {
+  if (result.state == "granted" || result.state == "prompt") {
+    /* write to the clipboard now */
+  }
+});
+
+ +

Cette fonction prend une chaîne de caractères comme entrée et met à jour le presse-papiers pour contenir cette chaîne :

+ +
function updateClipboard(newClip) {
+  navigator.clipboard.writeText(newClip).then(function() {
+    /* clipboard successfully set */
+  }, function() {
+    /* clipboard write failed */
+  });
+}
+
+ +
+

Note : Le nom de la permission clipboard-write n'est pas supporté actuellement dans Firefox - seulement les navigateurs Chromium.

+
+ +

***Considérations spécifiques du navigateur

+ +

Le presse-papiers et les autres API impliquées ici évoluent rapidement, de sorte qu'il y a des variations entre les navigateurs quant à leur mode de fonctionnement.

+ +

Dans Chrome:

+ + + +

Dans Firefox:

+ + + +
+

Note : L'API execCommand('copy') n'est pas supporté dans Safari

+
+ + + +

Lecture à partir du presse-papiers

+ +

La méthode execCommand() fournit la commande "coller", qui vous permet de coller le contenu actuel du presse-papiers au point d'insertion dans un contrôle modifiable. Vous pouvez gagner en flexibilité en utilisant les méthodes {{domxref("Clipboard.read()")}} et {{domxref("Clipboard.readText()")}}.

+ +

Utilisation de execCommand()

+ +

Tout d'abord, vous devez avoir la permission "clipboardRead" établie pour votre extension. C'est le cas même si vous utilisez la commande "coller" à partir d'un gestionnaire d'événements généré par l'utilisateur tel que {{event("click")}} ou {{event("keypress")}}.

+ +

Considérez le HTML qui inclut quelque chose comme ceci :

+ +
<textarea id="output"></textarea>
+<button id="paste">Paste</button>
+
+ +

Pour définir le contenu de l'élément {{HTMLElement("textarea")}} avec l'ID "output" du presse-papiers lorsque l'utilisateur clique sur le {{HTMLElement("button")}} "coller", vous pouvez utiliser du code comme ceci :

+ +
function paste() {
+  var pasteText = document.querySelector("#output");
+  pasteText.focus();
+  document.execCommand("paste");
+  console.log(pasteText.textContent);
+}
+
+document.querySelector("#paste").addEventListener("click", paste);
+ +

Utilisation de l'API Presse-papiers

+ +

Les méthodes {{domxref("Clipboard.readText", "navigator.clipboard.readText()")}} et {{domxref("Clipboard.read", "navigator.clipboard.read()")}} de l'API Presse-papiers vous permettent de lire du texte arbitraire ou des données binaires à partir du presse-papiers. Cela vous permet d'accéder aux données du presse-papiers sans simplement les coller dans un élément modifiable.

+ +

Une fois que vous avez la permission "clipboard-read" de l'API permissions, vous pouvez lire facilement à partir du presse-papiers :

+ +
navigator.clipboard.readText().then(clipText =>
+  document.getElementById("outbox").innerText = clipText);
+ +

Cet extrait de code récupère le texte du presse-papiers et remplace le contenu actuel de l'élément par l'ID "outbox" avec ce texte.

+ +

Considérations spécifiques au navigateur

+ +

Firefox supporte la permission "clipboardRead" à partir de la version 54, mais ne supporte pas que le collage dans les élements en mode édition de contenu, qui pour les scripts de contenu ne fonctionne qu'avec un {{HTMLElement("textarea")}}. Pour les scripts d'arrière-plan, n'importe quel élément peut être mis en mode contenu modifiable.

+ +

Voir aussi

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/intercept_http_requests/index.html b/files/fr/mozilla/add-ons/webextensions/intercept_http_requests/index.html deleted file mode 100644 index ca2e92fed9..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/intercept_http_requests/index.html +++ /dev/null @@ -1,161 +0,0 @@ ---- -title: Intercepter les requêtes HTTP -slug: Mozilla/Add-ons/WebExtensions/Intercept_HTTP_requests -tags: - - Extensions - - Modules complémentaires - - Tutoriel - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Intercept_HTTP_requests -original_slug: Mozilla/Add-ons/WebExtensions/Intercepter_requêtes_HTTP ---- -
{{AddonSidebar}}
- -

Utilisez l’API {{WebExtAPIRef("webRequest")}} pour intercepter les requêtes HTTP. Avec cette API, vous pouvez ajouter des écouteurs à différents stades d’exécution d’une requête HTTP. Avec les écouteurs, vous pouvez :

- - - -

Cet article décrit trois utilisations possibles du module webRequest :

- - - -

Journalisation des URL de requête

- -

Créez un nouveau répertoire et nommez-le "requests". Dans ce répertoire, créez le fichier "manifest.json", avec le contenu suivant :

- -
{
-  "description": "Démonstration du module webRequests",
-  "manifest_version": 2,
-  "name": "webRequest-demo",
-  "version": "1.0",
-
-  "permissions": [
-    "webRequest",
-    "<all_urls>"
-  ],
-
-  "background": {
-    "scripts": ["background.js"]
-  }
-}
- -

Ensuite, créez un fichier nommé "background.js", avec le contenu suivant :

- -
function logURL(requestDetails) {
-  console.log("Chargement : " + requestDetails.url);
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  logURL,
-  {urls: ["<all_urls>"]}
-);
-
-
- -

Ici, nous utilisons l’écouteur {{WebExtAPIRef("webRequest.onBeforeRequest", "onBeforeRequest")}} pour appeler la fonction logURL() juste avant de démarrer la requête. La fonction logURL() récupère l’URL de la requête dans l’objet d’évènement et la journalise dans la console du navigateur. Le modèle {urls: ["<all_urls>"]} permet d’intercepter les requêtes HTTP vers toutes les URL.

- -

Pour tester ce module, installez l'extension, ouvrez la console du navigateur et accédez à quelques pages web. Dans la console du navigateur, les URL de toutes les ressources ayant fait l’objet d’une requête de navigateur devraient s’afficher :

- -

{{EmbedYouTube("X3rMgkRkB1Q")}}

- -

Redirection des requêtes

- -

Utilisons maintenant webRequest pour rediriger les requêtes HTTP. Commençons par modifier le fichier manifest.json comme suit :

- -
{
-
-  "description": "Demonstrating webRequests",
-  "manifest_version": 2,
-  "name": "webRequest-demo",
-  "version": "1.0",
-
-  "permissions": [
-    "webRequest",
-    "webRequestBlocking",
-    "https://developer.mozilla.org/",
-    "https://mdn.mozillademos.org/"
-  ],
-
-  "background": {
-    "scripts": ["background.js"]
-  }
-
-}
- -

Ici, il s’agit simplement d’ajouter la permission "webRequestBlocking". Cette permission supplémentaire est requise lors de toute modification active d’une requête.

- -

Modifions ensuite le fichier « background.js » comme suit :

- -
var pattern = "https://mdn.mozillademos.org/*";
-
-function redirect(requestDetails) {
-  console.log("Redirection : " + requestDetails.url);
-  return {
-    redirectUrl: "https://38.media.tumblr.com/tumblr_ldbj01lZiP1qe0eclo1_500.gif"
-  };
-}
-
-browser.webRequest.onBeforeRequest.addListener(
-  redirect,
-  {urls:[pattern], types:["image"]},
-  ["blocking"]
-);
- -

Encore une fois, nous utilisons l’écouteur d’évènement {{WebExtAPIRef("webRequest.onBeforeRequest", "onBeforeRequest")}} pour exécuter une fonction juste avant le démarrage de chaque requête. Cette fonction remplace l’URL cible par l’URL de redirection redirectUrl spécifiée dans la fonction.

- -

Cette fois-ci, toutes les requêtes ne sont pas interceptées. L’option {urls:[pattern], types:["image"]} indique qu’il ne faut intercepter que les requêtes (1) vers des URL résidant sous "https://mdn.mozillademos.org/" (2) pour les ressources d’images. Consultez la documentation {{WebExtAPIRef("webRequest.RequestFilter")}} pour en savoir plus.

- -

À noter également le passage de l’option "blocking": passez cette option dès que vous souhaitez modifier la requête. La fonction d’écouteur bloque la requête réseau. Le navigateur attend alors que l’écouteur renvoie un résultat avant de continuer. Consultez la documentation {{WebExtAPIRef("webRequest.onBeforeRequest")}} pour en savoir plus sur l’option "blocking".

- -

Pour tester ce module, ouvrez une page MDN contenant beaucoup d’images (par exemple https://developer.mozilla.org/fr/docs/Tools/Network_Monitor), rechargez l'extension, puis rechargez la page MDN :

- -

{{EmbedYouTube("ix5RrXGr0wA")}}

- -

Modification des en-têtes de requête

- -

Enfin, nous pouvons utiliser le module webRequest pour modifier les en-têtes de requête. Dans cet exemple, nous allons modifier l’en-tête "User-Agent" afin que le navigateur s’identifie lui-même comme Opera 12.16, mais uniquement en cas de consultation des pages sous http://useragentstring.com/".

- -

Il n’est pas nécessaire de modifier le fichier "manifest.json" par rapport à l’exemple précédent.

- -

Modifiez le code du fichier "background.js" comme suit :

- -
var targetPage = "http://useragentstring.com/*";
-
-var ua = "Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 Version/12.16";
-
-function rewriteUserAgentHeader(e) {
-  e.requestHeaders.forEach(function(header){
-    if (header.name.toLowerCase() == "user-agent") {
-      header.value = ua;
-    }
-  });
-  return {requestHeaders: e.requestHeaders};
-}
-
-browser.webRequest.onBeforeSendHeaders.addListener(
-  rewriteUserAgentHeader,
-  {urls: [targetPage]},
-  ["blocking", "requestHeaders"]
-);
- -

Ici, nous utilisons l’écouteur d’évènement {{WebExtAPIRef("webRequest.onBeforeSendHeaders", "onBeforeSendHeaders")}} pour exécuter une fonction juste avant l’envoi des en-têtes de requête.

- -

La fonction d’écouteur n’est appelée qu’en cas de requête vers des URL correspondant au modèle targetPage. Notez aussi le nouveau passage de l’option "blocking". Nous avons également passé "requestHeaders", qui indique que l’écouteur reçoit une liste contenant les en-têtes de requête à envoyer. Consultez la documentation {{WebExtAPIRef("webRequest.onBeforeSendHeaders")}} pour en savoir plus sur ces options.

- -

La fonction d’écouteur recherche l’en-tête "User-Agent" dans la liste, remplace sa valeur par celle de la variable ua et renvoie la liste modifiée. Cette dernière est ensuite envoyée au serveur.

- -

Pour tester ce module, accédez à useragentstring.com et vérifiez que le navigateur identifié est Firefox. Rechargez ensuite l'extension, rechargez useragentstring.com et vérifiez que Firefox a été remplacé par Opera :

- -

{{EmbedYouTube("SrSNS1-FIx0")}}

- -

En savoir plus

- -

Pour en apprendre davantage sur toutes les possibilités de l’API webRequest, consultez la documentation de référence correspondante.

diff --git a/files/fr/mozilla/add-ons/webextensions/intercept_http_requests/index.md b/files/fr/mozilla/add-ons/webextensions/intercept_http_requests/index.md new file mode 100644 index 0000000000..ca2e92fed9 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/intercept_http_requests/index.md @@ -0,0 +1,161 @@ +--- +title: Intercepter les requêtes HTTP +slug: Mozilla/Add-ons/WebExtensions/Intercept_HTTP_requests +tags: + - Extensions + - Modules complémentaires + - Tutoriel + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Intercept_HTTP_requests +original_slug: Mozilla/Add-ons/WebExtensions/Intercepter_requêtes_HTTP +--- +
{{AddonSidebar}}
+ +

Utilisez l’API {{WebExtAPIRef("webRequest")}} pour intercepter les requêtes HTTP. Avec cette API, vous pouvez ajouter des écouteurs à différents stades d’exécution d’une requête HTTP. Avec les écouteurs, vous pouvez :

+ + + +

Cet article décrit trois utilisations possibles du module webRequest :

+ + + +

Journalisation des URL de requête

+ +

Créez un nouveau répertoire et nommez-le "requests". Dans ce répertoire, créez le fichier "manifest.json", avec le contenu suivant :

+ +
{
+  "description": "Démonstration du module webRequests",
+  "manifest_version": 2,
+  "name": "webRequest-demo",
+  "version": "1.0",
+
+  "permissions": [
+    "webRequest",
+    "<all_urls>"
+  ],
+
+  "background": {
+    "scripts": ["background.js"]
+  }
+}
+ +

Ensuite, créez un fichier nommé "background.js", avec le contenu suivant :

+ +
function logURL(requestDetails) {
+  console.log("Chargement : " + requestDetails.url);
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  logURL,
+  {urls: ["<all_urls>"]}
+);
+
+
+ +

Ici, nous utilisons l’écouteur {{WebExtAPIRef("webRequest.onBeforeRequest", "onBeforeRequest")}} pour appeler la fonction logURL() juste avant de démarrer la requête. La fonction logURL() récupère l’URL de la requête dans l’objet d’évènement et la journalise dans la console du navigateur. Le modèle {urls: ["<all_urls>"]} permet d’intercepter les requêtes HTTP vers toutes les URL.

+ +

Pour tester ce module, installez l'extension, ouvrez la console du navigateur et accédez à quelques pages web. Dans la console du navigateur, les URL de toutes les ressources ayant fait l’objet d’une requête de navigateur devraient s’afficher :

+ +

{{EmbedYouTube("X3rMgkRkB1Q")}}

+ +

Redirection des requêtes

+ +

Utilisons maintenant webRequest pour rediriger les requêtes HTTP. Commençons par modifier le fichier manifest.json comme suit :

+ +
{
+
+  "description": "Demonstrating webRequests",
+  "manifest_version": 2,
+  "name": "webRequest-demo",
+  "version": "1.0",
+
+  "permissions": [
+    "webRequest",
+    "webRequestBlocking",
+    "https://developer.mozilla.org/",
+    "https://mdn.mozillademos.org/"
+  ],
+
+  "background": {
+    "scripts": ["background.js"]
+  }
+
+}
+ +

Ici, il s’agit simplement d’ajouter la permission "webRequestBlocking". Cette permission supplémentaire est requise lors de toute modification active d’une requête.

+ +

Modifions ensuite le fichier « background.js » comme suit :

+ +
var pattern = "https://mdn.mozillademos.org/*";
+
+function redirect(requestDetails) {
+  console.log("Redirection : " + requestDetails.url);
+  return {
+    redirectUrl: "https://38.media.tumblr.com/tumblr_ldbj01lZiP1qe0eclo1_500.gif"
+  };
+}
+
+browser.webRequest.onBeforeRequest.addListener(
+  redirect,
+  {urls:[pattern], types:["image"]},
+  ["blocking"]
+);
+ +

Encore une fois, nous utilisons l’écouteur d’évènement {{WebExtAPIRef("webRequest.onBeforeRequest", "onBeforeRequest")}} pour exécuter une fonction juste avant le démarrage de chaque requête. Cette fonction remplace l’URL cible par l’URL de redirection redirectUrl spécifiée dans la fonction.

+ +

Cette fois-ci, toutes les requêtes ne sont pas interceptées. L’option {urls:[pattern], types:["image"]} indique qu’il ne faut intercepter que les requêtes (1) vers des URL résidant sous "https://mdn.mozillademos.org/" (2) pour les ressources d’images. Consultez la documentation {{WebExtAPIRef("webRequest.RequestFilter")}} pour en savoir plus.

+ +

À noter également le passage de l’option "blocking": passez cette option dès que vous souhaitez modifier la requête. La fonction d’écouteur bloque la requête réseau. Le navigateur attend alors que l’écouteur renvoie un résultat avant de continuer. Consultez la documentation {{WebExtAPIRef("webRequest.onBeforeRequest")}} pour en savoir plus sur l’option "blocking".

+ +

Pour tester ce module, ouvrez une page MDN contenant beaucoup d’images (par exemple https://developer.mozilla.org/fr/docs/Tools/Network_Monitor), rechargez l'extension, puis rechargez la page MDN :

+ +

{{EmbedYouTube("ix5RrXGr0wA")}}

+ +

Modification des en-têtes de requête

+ +

Enfin, nous pouvons utiliser le module webRequest pour modifier les en-têtes de requête. Dans cet exemple, nous allons modifier l’en-tête "User-Agent" afin que le navigateur s’identifie lui-même comme Opera 12.16, mais uniquement en cas de consultation des pages sous http://useragentstring.com/".

+ +

Il n’est pas nécessaire de modifier le fichier "manifest.json" par rapport à l’exemple précédent.

+ +

Modifiez le code du fichier "background.js" comme suit :

+ +
var targetPage = "http://useragentstring.com/*";
+
+var ua = "Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 Version/12.16";
+
+function rewriteUserAgentHeader(e) {
+  e.requestHeaders.forEach(function(header){
+    if (header.name.toLowerCase() == "user-agent") {
+      header.value = ua;
+    }
+  });
+  return {requestHeaders: e.requestHeaders};
+}
+
+browser.webRequest.onBeforeSendHeaders.addListener(
+  rewriteUserAgentHeader,
+  {urls: [targetPage]},
+  ["blocking", "requestHeaders"]
+);
+ +

Ici, nous utilisons l’écouteur d’évènement {{WebExtAPIRef("webRequest.onBeforeSendHeaders", "onBeforeSendHeaders")}} pour exécuter une fonction juste avant l’envoi des en-têtes de requête.

+ +

La fonction d’écouteur n’est appelée qu’en cas de requête vers des URL correspondant au modèle targetPage. Notez aussi le nouveau passage de l’option "blocking". Nous avons également passé "requestHeaders", qui indique que l’écouteur reçoit une liste contenant les en-têtes de requête à envoyer. Consultez la documentation {{WebExtAPIRef("webRequest.onBeforeSendHeaders")}} pour en savoir plus sur ces options.

+ +

La fonction d’écouteur recherche l’en-tête "User-Agent" dans la liste, remplace sa valeur par celle de la variable ua et renvoie la liste modifiée. Cette dernière est ensuite envoyée au serveur.

+ +

Pour tester ce module, accédez à useragentstring.com et vérifiez que le navigateur identifié est Firefox. Rechargez ensuite l'extension, rechargez useragentstring.com et vérifiez que Firefox a été remplacé par Opera :

+ +

{{EmbedYouTube("SrSNS1-FIx0")}}

+ +

En savoir plus

+ +

Pour en apprendre davantage sur toutes les possibilités de l’API webRequest, consultez la documentation de référence correspondante.

diff --git a/files/fr/mozilla/add-ons/webextensions/internationalization/index.html b/files/fr/mozilla/add-ons/webextensions/internationalization/index.html deleted file mode 100644 index 0c45e130ea..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/internationalization/index.html +++ /dev/null @@ -1,408 +0,0 @@ ---- -title: Internationalization -slug: Mozilla/Add-ons/WebExtensions/Internationalization -tags: - - Article - - Guide - - Internationalization - - Localization - - WebExtensions - - i18n - - messages.json - - placeholders - - predefined -translation_of: Mozilla/Add-ons/WebExtensions/Internationalization ---- -
{{AddonSidebar}}
- -

L'API WebExtensions dispose d'un module assez pratique pour l'internationalisation des extensions — i18n. Dans cet article, nous allons explorer ses fonctionnalités et fournir un exemple pratique de son fonctionnement. Le système i18n pour les extensions construites à l'aide des APIs WebExtension est similaire aux bibliothèques JavaScript courantes pour i18n telles que i18n.js.

- -
-

Note : L'exemple d'extension présenté dans cet article — notify-link-clicks-i18n — est disponible sur GitHub. Suivez avec le code source que vous parcourez les sections ci-dessous.

-
- -

Anatomie d'une extension internationnalisée

- -

Une extension internationnalisée peut contenir les mêmes caractéristiques que n'importe quelle autre extension — scripts d'arrière-plan, scripts de contenu, etc. — mais elle a également  des parties supplémentaires pour lui permettre de basculer entre différentes locales. Ceux-ci sont résumés dans l'arborescence suivante :

- - - -

Examinons chacune des nouvelles fonctionnalités à tour de rôle — chacune des sections ci-dessous représente une étape à suivre lors de l'internationalisation de votre extension.

- -

Fourniture de chaînes localisées dans _locales

- -

Vous pouvez rechercher des sous-étiquettes de langue à l'aide de l'outil de Rechercher de la page de recherche sous-étiquette de langue. Notez que vous devez rechercher le nom anglais de la langue.

- -

Chaque système i18n nécessite la fourniture de chaînes traduites dans tous les différents environnements que vous souhaitez prendre en charge. Dans les extensions, elles sont contenues dans un répertoire appelé  _locales, placé dans la racine de l'extension. Chaque environnement local a ses chaînes (appelées messages) contenues dans un fichier appelé  messages.json, qui est placé dans un sous-répertoire de _locales, nommé en utilisant la sous-étiquette de langue pour la langue de ce local.

- -

Notez que si la sous-étiquette inclut une langue de base plus une variante régionale, la langue et la variante sont classiquement séparées en utilisant un trait d'union: par exemple, "en-US". Cependant, dans les répertoires sous _locales, le séparateur doit être un trait de soulignement :  "en_US".

- -

Par exemple, dans notre exemple d'application nous avons des répertoires pour "en" (anglais), "de" (allemand), "nl" (néerlandais), et "ja" (Japonais). Chaque d'entre eux a un fichier messages.json à l'intérieur.

- -

Regardons maintenant la structure de l'un de ces fichiers (_locales/en/messages.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"
-      }
-    }
-  }
-}
- -

Ce fichier est un JSON standard — chacun de ses membres est un objet avec un nom, qui contient un message  et une description. Tous ces éléments sont des chaînes ; $URL$ est un espace réservé, qui est remplacé par une sous-chaîne au moment où le membre notificationContent est appelé par l'extension. Vous apprendrez à le faire dans la section {{anch("Récupération des chaînes de messages de JavaScript")}}.

- -
-

Note : Vous pouvez trouver beaucoup plus d'informations sur le contenu des fichiers  messages.json dans notre référence spécifique aux paramètres régionaux.

-
- -

Internationaliser manifest.json

- -

Il y a plusieurs tâches à accomplir pour internationaliser votre manifest.json.

- -

Récupération des chaînes localisées dans le manifest

- -

Votre manifest.json inclut des chaînes qui sont affichées à l'utilisateur, telles que le nom et la description de l'extension. Si vous internationalisez ces chaînes et en mettez les traductions appropriées dans messages.json, la traduction correcte de la chaine sera affichée à l'utilisateur, en fonction des paramètres régionaux actuels, comme cela.

- -

Pour internationaliser les chaînes, spécifiez-les comme ceci :

- -
"name": "__MSG_extensionName__",
-"description": "__MSG_extensionDescription__",
- -

Ici, nous récupérons des chaînes de message en fonction des paramètres régionaux du navigateur, plutôt que d'inclure uniquement des chaînes statiques.

- -

Pour appeler une chaîne de message comme celle-ci, vous devez le spécifier comme ceci :

- -
    -
  1. Deux underscores, suivi de
  2. -
  3. La chaîne "MSG", suivi de
  4. -
  5. Un trait de soulignement, suivi de
  6. -
  7. Le nom du message que vous souhaitez appeler tel que défini dans messages.json, suivi de
  8. -
  9. Deux underscores
  10. -
- -
__MSG_ + messageName + __
- -

Spécification d'un paramètre régional par défaut

- -

Un autre champ que vous devez spécifier dans votre fichier manifest.json est default_locale:

- -
"default_locale": "en"
- -

Cela spécifie un paramètre régional par défaut à utiliser si l'extension n'inclut pas de chaîne localisée pour les paramètres régionaux actuels du navigateur. Toutes les chaînes de message qui ne sont pas disponibles dans les paramètres régionaux du navigateur proviennent des paramètres régionaux par défaut. Il y a d'autres détails à connaître en termes de la façon dont le navigateur sélectionne les chaînes — voir {{anch("Localized string selection")}}.

- -

CSS dépendant des paramètres régionaux

- -

Notez que vous pouvez également récupérer des chaînes localisées à partir de fichiers CSS dans l'extension. Par exemple, vous pouvez créer une règle CSS dépendante des paramètres régionaux, comme ceci :

- -
header {
-  background-image: url(../images/__MSG_extensionName__/header.png);
-}
- -

Ceci est utile, bien que vous fassiez mieux de gérer une telle situation en utilisant {{anch("Predefined messages")}}.

- -

Récupération des chaînes de messages de JavaScript

- -

Donc, vous avez configuré vos chaînes de message et votre manifest. Maintenant, Il vous suffit de commencer à appeler vos chaînes de message à partir de JavaScript pour que votre extension puisse parler le plus possible la bonne langue. L' API i18n est assez simple, contenant seulement quatre méthodes principales :

- - - -

Dans notre exemple notify-link-clicks-i18n, le script d'arrière plan contient les lignes suivantes :

- -
var title = browser.i18n.getMessage("notificationTitle");
-var content = browser.i18n.getMessage("notificationContent", message.url);
- -

La première récupère juste le message du champ notificationTitle du fichier messages.json le plus approprié pour les paramètres régionaux actuels du navigateur. Le second est similaire, mais il est passé une URL en tant que deuxième paramètre. Ce qui donne? C'est ainsi que vous spécifiez le contenu pour remplacer l'espace réservé $URL$  que nous voyons dans le champ message du champ  notificationContent :

- -
"notificationContent": {
-  "message": "You clicked $URL$.",
-  "description": "Tells the user which link they clicked.",
-  "placeholders": {
-    "url" : {
-      "content" : "$1",
-      "example" : "https://developer.mozilla.org"
-    }
-  }
-}
-
- -

Le membre "placeholders" définit tous les espaces réservés et d'où ils sont extraits. L'espace réservé "url" spécifie que son contenu est pris à partir de $1, qui est la première valeur donnée dans le second paramètre de  getMessage(). Puisque l'espace réservé est appelé "url", nous utilisons $URL$ pour l'appeler dans la chaîne de message (pour "name" vous utiliserez $NAME$, etc.) Si vous avez plusieurs espaces réservés, vous pouvez les fournir à l'intérieur un tableau qui est donné à {{WebExtAPIRef("i18n.getMessage()")}} en tant que deuxième paramètre — [a, b, c] sera disponible en $1, $2, et $3, et ainsi de suite, à l'intérieur des  messages.json.

- -

Parcourons un exemple: la chaîne originale du message  notificationContent dans le fichier  en/messages.json est

- -
You clicked $URL$.
- -

Disons que le lien a été cliqué sur https://developer.mozilla.org. Après l'appel  {{WebExtAPIRef("i18n.getMessage()")}} , le contenu du deuxième paramètre est mis à disposition dans messages.json sous la forme $1, qui remplace l'espace réservé $URL$ tel qu'il est défini dans l'espace réservé  "url". Donc, la chaîne de message final est

- -
You clicked https://developer.mozilla.org.
- -

Utilisation  de l'espace réservé direct

- -

Il est possible d'insérer vos variables ($1, $2, $3, etc.) directement dans les chaînes de message, par exemple nous pourrions réécrire le membre "notificationContent" comme ceci :

- -
"notificationContent": {
-  "message": "You clicked $1.",
-  "description": "Tells the user which link they clicked."
-}
- -

Cela peut sembler plus rapide et moins complexe, mais l'inverse (en utilisant "placeholders") est considéré comme la meilleure pratique. En effet, avoir le nom de l'espace réservé (par exemple "url") et l'exemple vous aide à vous souvenir de l'espace réservé pour l'espace réservé — une semaine après avoir écrit votre code, vous oublierez probablement ce que $1$8 , plus susceptibles de savoir à quoi correspondent les noms de vos espaces réservés.

- -

Substitution codée en dur

- -

Il est également possible d'inclure des chaînes codées en dur dans des espaces réservés, de sorte que la même valeur soit utilisée à chaque fois, au lieu d'obtenir la valeur d'une variable dans votre code. Par exemple :

- -
"mdn_banner": {
-  "message": "For more information on web technologies, go to $MDN$.",
-  "description": "Tell the user about MDN",
-  "placeholders": {
-    "mdn": {
-      "content": "https://developer.mozilla.org/"
-    }
-  }
-}
- -

Dans ce cas, nous ne faisons que coder en dur le contenu de l'espace réservé, plutôt que de l'obtenir à partir d'une valeur de variable comme $1. Cela peut parfois être utile lorsque votre fichier de message est très complexe et que vous souhaitez séparer différentes valeurs pour rendre les chaînes plus lisibles dans le fichier. De plus, ces valeurs peuvent être accédées par programmation.

- -

En outre, vous pouvez utiliser ces substitutions pour spécifier les parties de la chaîne que vous ne souhaitez pas traduire, telles que les noms de personne ou d'entreprise.

- -

Sélection de chaîne localisée

- -

Les paramètres régionaux peuvent être spécifiés en utilisant uniquement un code de langue, comme fr ou en, ou ils peuvent être qualifiés avec un code de région, comme en_US ou en_GB, qui décrit une variante régionale du même langage de base. Lorsque vous demandez au système i18n une chaîne, il sélectionne une chaîne en utilisant l'algorithme suivant:

- -
    -
  1. S'il existe un fichier messages.json pour l'environnement local actuel exact et qu'il contient la chaîne, renvoyez-le.
  2. -
  3. Sinon, si l'environnement local actuel est qualifié avec une région (par exemple en_US) et qu'il existe un fichier messages.json pour la version sans région de cet environnement local (par exemple en), et que ce fichier contient la chaîne, renvoyez-le.
  4. -
  5. Sinon, s'il existe un fichier messages.json pour l'argument default_locale défini dans manifest.json, et qu'il contient la chaîne, renvoyez-le.
  6. -
  7. Sinon, renvoyez une chaîne vide.
  8. -
- -

Prenons l'exemple suivant :

- - - -

Supposons que default_locale soit défini sur fr, et que les paramètres régionaux actuels du navigateur soient en_GB :

- - - -

Messages prédéfinis

- -

Le module i18n nous fournit des messages prédéfinis, que nous pouvons appeler de la manière que nous l'avons vu précédemment dans {{anch("Calling message strings from manifests and extension CSS")}}. Par exemple :

- -
__MSG_extensionName__
- -

Les messages prédéfinis utilisent exactement la même syntaxe, sauf avec @@ avant le nom du message, par exemple

- -
__MSG_@@ui_locale__
- -

Le tableau suivant montre les différents messages prédéfinis disponibles :

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nom du messageDescription
@@extension_id -

L'UUID généré en interne de l'extension. Vous pouvez utiliser cette chaîne pour créer des URL pour les ressources à l'intérieur de l'extension. Même les extensions non localisées peuvent utiliser ce message.

- -

Vous ne pouvez pas utiliser ce message dans un fichier manifest.

- -

Notez également que cet ID n'est pas l'ID de module complémentaire renvoyé par {{WebExtAPIRef("runtime.id")}}. Il peut être défini à l'aide de la clé applications dans le fichier manifest.json. C'est l'UUID généré qui apparaît dans l'URL de l'add-on. Cela signifie que vous ne pouvez pas utiliser cette valeur comme paramètre  extensionId pour {{WebExtAPIRef("runtime.sendMessage()")}}, et que vous ne pouvez pas l'utiliser pour vérifier la propriété id d'un objet  {{WebExtAPIRef("runtime.MessageSender")}}.

-
@@ui_localeLes paramètres régionaux actuels vous pouvez utiliser cette chaîne pour créer des URL spécifiques aux paramètres régionaux.
@@bidi_dirLa direction du texte pour les paramètres régionaux actuels, soit "ltr" pour les langues de gauche à droite telles que l'anglais ou "rtl" pour les langues de droite à gauche telles que l'arabe.
@@bidi_reversed_dirSi le @@bidi_dir est "ltr", alors il s'agit de "rtl"; sinon, c'est "ltr".
@@bidi_start_edgeSi le @@bidi_dir est "ltr", alors c'est "gauche"; sinon, c'est "droite".
@@bidi_end_edgeSi le @@bidi_dir est "ltr", alors c'est "droite"; sinon, c'est "gauche".
- -

Pour en revenir à notre exemple, il serait plus logique de l'écrire comme ceci :

- -
header {
-  background-image: url(../images/__MSG_@@ui_locale__/header.png);
-}
- -

Maintenant, nous pouvons simplement stocker nos images locales spécifiques dans des répertoires qui correspondent aux différentes locales que nous soutenons — en, de, etc. — ce qui est beaucoup plus logique.

- -

Regardons un exemple d'utilisation des messages @@bidi_* dans un fichier CSS :

- -
body {
-  direction: __MSG_@@bidi_dir__;
-}
-
-div#header {
-  margin-bottom: 1.05em;
-  overflow: hidden;
-  padding-bottom: 1.5em;
-  padding-__MSG_@@bidi_start_edge__: 0;
-  padding-__MSG_@@bidi_end_edge__: 1.5em;
-  position: relative;
-}
- -

Pour les langues de gauche à droite telles que l'anglais, les déclarations CSS impliquant les messages prédéfinis ci-dessus se traduiraient par les lignes de code définitives suivantes :

- -
direction: ltr;
-padding-left: 0;
-padding-right: 1.5em;
-
- -

Pour une langue de droite à gauche comme l'arabe, vous obtiendrez :

- -
direction: rtl;
-padding-right: 0;
-padding-left: 1.5em;
- -

Tester votre extension

- -

Depuis Firefox 45, vous pouvez installer temporairement des extensions à partir du disque — voir Chargement depuis le disque. Pour ce faire, puis essayez de tester notre extension notify-link-clicks-i18n. Accédez à l'un de vos sites Web préférés et cliquez sur un lien pour voir si une notification s'affiche indiquant l'URL du lien cliqué.

- -

Ensuite, changez les paramètres régionaux de Firefox en un supporté dans l'extension que vous voulez tester.

- -
    -
  1. Ouvrez "about:config" dans Firefox, et recherchez la préférence  intl.locale.requested  (gardez à l'esprit qu'avant Firefox 59, cette préférence s'appellait general.useragent.locale).
  2. -
  3. Double-cliquez sur la préférence (ou appuyez sur Retour/Entrée) pour le sélectionner, entrez le code de langue pour les paramètres régionaux que vous voulez tester, puis cliquez sur "OK" (ou appuyez sur Retour/Entrée). Par exemple, dans notre exemple d'extension, "en" (anglais), "de" (allemand), "nl" (néérlandais), et "ja" (Japonais) sont pris en charge.
  4. -
  5. Recherchez intl.locale.matchOS et double-cliquez sur la préférence pour qu'elle soit définie sur false.
  6. -
  7. Redémarrez votre navigateur pour terminer la modification.
  8. -
- -
-

Note : Cela fonctionne pour modifier les paramètres régionaux du navigateur, même si vous n'avez pas installé le pack de language pour cette langue. Vous obtiendrez simplement l'interface du navigateur dans votre langue par défaut si c'est le cas.

-
- -
    -
- -

Chargez l'extension temporairement à partir du disque, puis testez vos nouveaux paramètres régionaux:

- - - -

{{EmbedYouTube("R7--fp5pPGg")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/internationalization/index.md b/files/fr/mozilla/add-ons/webextensions/internationalization/index.md new file mode 100644 index 0000000000..0c45e130ea --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/internationalization/index.md @@ -0,0 +1,408 @@ +--- +title: Internationalization +slug: Mozilla/Add-ons/WebExtensions/Internationalization +tags: + - Article + - Guide + - Internationalization + - Localization + - WebExtensions + - i18n + - messages.json + - placeholders + - predefined +translation_of: Mozilla/Add-ons/WebExtensions/Internationalization +--- +
{{AddonSidebar}}
+ +

L'API WebExtensions dispose d'un module assez pratique pour l'internationalisation des extensions — i18n. Dans cet article, nous allons explorer ses fonctionnalités et fournir un exemple pratique de son fonctionnement. Le système i18n pour les extensions construites à l'aide des APIs WebExtension est similaire aux bibliothèques JavaScript courantes pour i18n telles que i18n.js.

+ +
+

Note : L'exemple d'extension présenté dans cet article — notify-link-clicks-i18n — est disponible sur GitHub. Suivez avec le code source que vous parcourez les sections ci-dessous.

+
+ +

Anatomie d'une extension internationnalisée

+ +

Une extension internationnalisée peut contenir les mêmes caractéristiques que n'importe quelle autre extension — scripts d'arrière-plan, scripts de contenu, etc. — mais elle a également  des parties supplémentaires pour lui permettre de basculer entre différentes locales. Ceux-ci sont résumés dans l'arborescence suivante :

+ + + +

Examinons chacune des nouvelles fonctionnalités à tour de rôle — chacune des sections ci-dessous représente une étape à suivre lors de l'internationalisation de votre extension.

+ +

Fourniture de chaînes localisées dans _locales

+ +

Vous pouvez rechercher des sous-étiquettes de langue à l'aide de l'outil de Rechercher de la page de recherche sous-étiquette de langue. Notez que vous devez rechercher le nom anglais de la langue.

+ +

Chaque système i18n nécessite la fourniture de chaînes traduites dans tous les différents environnements que vous souhaitez prendre en charge. Dans les extensions, elles sont contenues dans un répertoire appelé  _locales, placé dans la racine de l'extension. Chaque environnement local a ses chaînes (appelées messages) contenues dans un fichier appelé  messages.json, qui est placé dans un sous-répertoire de _locales, nommé en utilisant la sous-étiquette de langue pour la langue de ce local.

+ +

Notez que si la sous-étiquette inclut une langue de base plus une variante régionale, la langue et la variante sont classiquement séparées en utilisant un trait d'union: par exemple, "en-US". Cependant, dans les répertoires sous _locales, le séparateur doit être un trait de soulignement :  "en_US".

+ +

Par exemple, dans notre exemple d'application nous avons des répertoires pour "en" (anglais), "de" (allemand), "nl" (néerlandais), et "ja" (Japonais). Chaque d'entre eux a un fichier messages.json à l'intérieur.

+ +

Regardons maintenant la structure de l'un de ces fichiers (_locales/en/messages.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"
+      }
+    }
+  }
+}
+ +

Ce fichier est un JSON standard — chacun de ses membres est un objet avec un nom, qui contient un message  et une description. Tous ces éléments sont des chaînes ; $URL$ est un espace réservé, qui est remplacé par une sous-chaîne au moment où le membre notificationContent est appelé par l'extension. Vous apprendrez à le faire dans la section {{anch("Récupération des chaînes de messages de JavaScript")}}.

+ +
+

Note : Vous pouvez trouver beaucoup plus d'informations sur le contenu des fichiers  messages.json dans notre référence spécifique aux paramètres régionaux.

+
+ +

Internationaliser manifest.json

+ +

Il y a plusieurs tâches à accomplir pour internationaliser votre manifest.json.

+ +

Récupération des chaînes localisées dans le manifest

+ +

Votre manifest.json inclut des chaînes qui sont affichées à l'utilisateur, telles que le nom et la description de l'extension. Si vous internationalisez ces chaînes et en mettez les traductions appropriées dans messages.json, la traduction correcte de la chaine sera affichée à l'utilisateur, en fonction des paramètres régionaux actuels, comme cela.

+ +

Pour internationaliser les chaînes, spécifiez-les comme ceci :

+ +
"name": "__MSG_extensionName__",
+"description": "__MSG_extensionDescription__",
+ +

Ici, nous récupérons des chaînes de message en fonction des paramètres régionaux du navigateur, plutôt que d'inclure uniquement des chaînes statiques.

+ +

Pour appeler une chaîne de message comme celle-ci, vous devez le spécifier comme ceci :

+ +
    +
  1. Deux underscores, suivi de
  2. +
  3. La chaîne "MSG", suivi de
  4. +
  5. Un trait de soulignement, suivi de
  6. +
  7. Le nom du message que vous souhaitez appeler tel que défini dans messages.json, suivi de
  8. +
  9. Deux underscores
  10. +
+ +
__MSG_ + messageName + __
+ +

Spécification d'un paramètre régional par défaut

+ +

Un autre champ que vous devez spécifier dans votre fichier manifest.json est default_locale:

+ +
"default_locale": "en"
+ +

Cela spécifie un paramètre régional par défaut à utiliser si l'extension n'inclut pas de chaîne localisée pour les paramètres régionaux actuels du navigateur. Toutes les chaînes de message qui ne sont pas disponibles dans les paramètres régionaux du navigateur proviennent des paramètres régionaux par défaut. Il y a d'autres détails à connaître en termes de la façon dont le navigateur sélectionne les chaînes — voir {{anch("Localized string selection")}}.

+ +

CSS dépendant des paramètres régionaux

+ +

Notez que vous pouvez également récupérer des chaînes localisées à partir de fichiers CSS dans l'extension. Par exemple, vous pouvez créer une règle CSS dépendante des paramètres régionaux, comme ceci :

+ +
header {
+  background-image: url(../images/__MSG_extensionName__/header.png);
+}
+ +

Ceci est utile, bien que vous fassiez mieux de gérer une telle situation en utilisant {{anch("Predefined messages")}}.

+ +

Récupération des chaînes de messages de JavaScript

+ +

Donc, vous avez configuré vos chaînes de message et votre manifest. Maintenant, Il vous suffit de commencer à appeler vos chaînes de message à partir de JavaScript pour que votre extension puisse parler le plus possible la bonne langue. L' API i18n est assez simple, contenant seulement quatre méthodes principales :

+ + + +

Dans notre exemple notify-link-clicks-i18n, le script d'arrière plan contient les lignes suivantes :

+ +
var title = browser.i18n.getMessage("notificationTitle");
+var content = browser.i18n.getMessage("notificationContent", message.url);
+ +

La première récupère juste le message du champ notificationTitle du fichier messages.json le plus approprié pour les paramètres régionaux actuels du navigateur. Le second est similaire, mais il est passé une URL en tant que deuxième paramètre. Ce qui donne? C'est ainsi que vous spécifiez le contenu pour remplacer l'espace réservé $URL$  que nous voyons dans le champ message du champ  notificationContent :

+ +
"notificationContent": {
+  "message": "You clicked $URL$.",
+  "description": "Tells the user which link they clicked.",
+  "placeholders": {
+    "url" : {
+      "content" : "$1",
+      "example" : "https://developer.mozilla.org"
+    }
+  }
+}
+
+ +

Le membre "placeholders" définit tous les espaces réservés et d'où ils sont extraits. L'espace réservé "url" spécifie que son contenu est pris à partir de $1, qui est la première valeur donnée dans le second paramètre de  getMessage(). Puisque l'espace réservé est appelé "url", nous utilisons $URL$ pour l'appeler dans la chaîne de message (pour "name" vous utiliserez $NAME$, etc.) Si vous avez plusieurs espaces réservés, vous pouvez les fournir à l'intérieur un tableau qui est donné à {{WebExtAPIRef("i18n.getMessage()")}} en tant que deuxième paramètre — [a, b, c] sera disponible en $1, $2, et $3, et ainsi de suite, à l'intérieur des  messages.json.

+ +

Parcourons un exemple: la chaîne originale du message  notificationContent dans le fichier  en/messages.json est

+ +
You clicked $URL$.
+ +

Disons que le lien a été cliqué sur https://developer.mozilla.org. Après l'appel  {{WebExtAPIRef("i18n.getMessage()")}} , le contenu du deuxième paramètre est mis à disposition dans messages.json sous la forme $1, qui remplace l'espace réservé $URL$ tel qu'il est défini dans l'espace réservé  "url". Donc, la chaîne de message final est

+ +
You clicked https://developer.mozilla.org.
+ +

Utilisation  de l'espace réservé direct

+ +

Il est possible d'insérer vos variables ($1, $2, $3, etc.) directement dans les chaînes de message, par exemple nous pourrions réécrire le membre "notificationContent" comme ceci :

+ +
"notificationContent": {
+  "message": "You clicked $1.",
+  "description": "Tells the user which link they clicked."
+}
+ +

Cela peut sembler plus rapide et moins complexe, mais l'inverse (en utilisant "placeholders") est considéré comme la meilleure pratique. En effet, avoir le nom de l'espace réservé (par exemple "url") et l'exemple vous aide à vous souvenir de l'espace réservé pour l'espace réservé — une semaine après avoir écrit votre code, vous oublierez probablement ce que $1$8 , plus susceptibles de savoir à quoi correspondent les noms de vos espaces réservés.

+ +

Substitution codée en dur

+ +

Il est également possible d'inclure des chaînes codées en dur dans des espaces réservés, de sorte que la même valeur soit utilisée à chaque fois, au lieu d'obtenir la valeur d'une variable dans votre code. Par exemple :

+ +
"mdn_banner": {
+  "message": "For more information on web technologies, go to $MDN$.",
+  "description": "Tell the user about MDN",
+  "placeholders": {
+    "mdn": {
+      "content": "https://developer.mozilla.org/"
+    }
+  }
+}
+ +

Dans ce cas, nous ne faisons que coder en dur le contenu de l'espace réservé, plutôt que de l'obtenir à partir d'une valeur de variable comme $1. Cela peut parfois être utile lorsque votre fichier de message est très complexe et que vous souhaitez séparer différentes valeurs pour rendre les chaînes plus lisibles dans le fichier. De plus, ces valeurs peuvent être accédées par programmation.

+ +

En outre, vous pouvez utiliser ces substitutions pour spécifier les parties de la chaîne que vous ne souhaitez pas traduire, telles que les noms de personne ou d'entreprise.

+ +

Sélection de chaîne localisée

+ +

Les paramètres régionaux peuvent être spécifiés en utilisant uniquement un code de langue, comme fr ou en, ou ils peuvent être qualifiés avec un code de région, comme en_US ou en_GB, qui décrit une variante régionale du même langage de base. Lorsque vous demandez au système i18n une chaîne, il sélectionne une chaîne en utilisant l'algorithme suivant:

+ +
    +
  1. S'il existe un fichier messages.json pour l'environnement local actuel exact et qu'il contient la chaîne, renvoyez-le.
  2. +
  3. Sinon, si l'environnement local actuel est qualifié avec une région (par exemple en_US) et qu'il existe un fichier messages.json pour la version sans région de cet environnement local (par exemple en), et que ce fichier contient la chaîne, renvoyez-le.
  4. +
  5. Sinon, s'il existe un fichier messages.json pour l'argument default_locale défini dans manifest.json, et qu'il contient la chaîne, renvoyez-le.
  6. +
  7. Sinon, renvoyez une chaîne vide.
  8. +
+ +

Prenons l'exemple suivant :

+ + + +

Supposons que default_locale soit défini sur fr, et que les paramètres régionaux actuels du navigateur soient en_GB :

+ + + +

Messages prédéfinis

+ +

Le module i18n nous fournit des messages prédéfinis, que nous pouvons appeler de la manière que nous l'avons vu précédemment dans {{anch("Calling message strings from manifests and extension CSS")}}. Par exemple :

+ +
__MSG_extensionName__
+ +

Les messages prédéfinis utilisent exactement la même syntaxe, sauf avec @@ avant le nom du message, par exemple

+ +
__MSG_@@ui_locale__
+ +

Le tableau suivant montre les différents messages prédéfinis disponibles :

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Nom du messageDescription
@@extension_id +

L'UUID généré en interne de l'extension. Vous pouvez utiliser cette chaîne pour créer des URL pour les ressources à l'intérieur de l'extension. Même les extensions non localisées peuvent utiliser ce message.

+ +

Vous ne pouvez pas utiliser ce message dans un fichier manifest.

+ +

Notez également que cet ID n'est pas l'ID de module complémentaire renvoyé par {{WebExtAPIRef("runtime.id")}}. Il peut être défini à l'aide de la clé applications dans le fichier manifest.json. C'est l'UUID généré qui apparaît dans l'URL de l'add-on. Cela signifie que vous ne pouvez pas utiliser cette valeur comme paramètre  extensionId pour {{WebExtAPIRef("runtime.sendMessage()")}}, et que vous ne pouvez pas l'utiliser pour vérifier la propriété id d'un objet  {{WebExtAPIRef("runtime.MessageSender")}}.

+
@@ui_localeLes paramètres régionaux actuels vous pouvez utiliser cette chaîne pour créer des URL spécifiques aux paramètres régionaux.
@@bidi_dirLa direction du texte pour les paramètres régionaux actuels, soit "ltr" pour les langues de gauche à droite telles que l'anglais ou "rtl" pour les langues de droite à gauche telles que l'arabe.
@@bidi_reversed_dirSi le @@bidi_dir est "ltr", alors il s'agit de "rtl"; sinon, c'est "ltr".
@@bidi_start_edgeSi le @@bidi_dir est "ltr", alors c'est "gauche"; sinon, c'est "droite".
@@bidi_end_edgeSi le @@bidi_dir est "ltr", alors c'est "droite"; sinon, c'est "gauche".
+ +

Pour en revenir à notre exemple, il serait plus logique de l'écrire comme ceci :

+ +
header {
+  background-image: url(../images/__MSG_@@ui_locale__/header.png);
+}
+ +

Maintenant, nous pouvons simplement stocker nos images locales spécifiques dans des répertoires qui correspondent aux différentes locales que nous soutenons — en, de, etc. — ce qui est beaucoup plus logique.

+ +

Regardons un exemple d'utilisation des messages @@bidi_* dans un fichier CSS :

+ +
body {
+  direction: __MSG_@@bidi_dir__;
+}
+
+div#header {
+  margin-bottom: 1.05em;
+  overflow: hidden;
+  padding-bottom: 1.5em;
+  padding-__MSG_@@bidi_start_edge__: 0;
+  padding-__MSG_@@bidi_end_edge__: 1.5em;
+  position: relative;
+}
+ +

Pour les langues de gauche à droite telles que l'anglais, les déclarations CSS impliquant les messages prédéfinis ci-dessus se traduiraient par les lignes de code définitives suivantes :

+ +
direction: ltr;
+padding-left: 0;
+padding-right: 1.5em;
+
+ +

Pour une langue de droite à gauche comme l'arabe, vous obtiendrez :

+ +
direction: rtl;
+padding-right: 0;
+padding-left: 1.5em;
+ +

Tester votre extension

+ +

Depuis Firefox 45, vous pouvez installer temporairement des extensions à partir du disque — voir Chargement depuis le disque. Pour ce faire, puis essayez de tester notre extension notify-link-clicks-i18n. Accédez à l'un de vos sites Web préférés et cliquez sur un lien pour voir si une notification s'affiche indiquant l'URL du lien cliqué.

+ +

Ensuite, changez les paramètres régionaux de Firefox en un supporté dans l'extension que vous voulez tester.

+ +
    +
  1. Ouvrez "about:config" dans Firefox, et recherchez la préférence  intl.locale.requested  (gardez à l'esprit qu'avant Firefox 59, cette préférence s'appellait general.useragent.locale).
  2. +
  3. Double-cliquez sur la préférence (ou appuyez sur Retour/Entrée) pour le sélectionner, entrez le code de langue pour les paramètres régionaux que vous voulez tester, puis cliquez sur "OK" (ou appuyez sur Retour/Entrée). Par exemple, dans notre exemple d'extension, "en" (anglais), "de" (allemand), "nl" (néérlandais), et "ja" (Japonais) sont pris en charge.
  4. +
  5. Recherchez intl.locale.matchOS et double-cliquez sur la préférence pour qu'elle soit définie sur false.
  6. +
  7. Redémarrez votre navigateur pour terminer la modification.
  8. +
+ +
+

Note : Cela fonctionne pour modifier les paramètres régionaux du navigateur, même si vous n'avez pas installé le pack de language pour cette langue. Vous obtiendrez simplement l'interface du navigateur dans votre langue par défaut si c'est le cas.

+
+ +
    +
+ +

Chargez l'extension temporairement à partir du disque, puis testez vos nouveaux paramètres régionaux:

+ + + +

{{EmbedYouTube("R7--fp5pPGg")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/author/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/author/index.html deleted file mode 100644 index 967ba15adb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/author/index.html +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: author -slug: Mozilla/Add-ons/WebExtensions/manifest.json/author -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/author -original_slug: Mozilla/Add-ons/WebExtensions/manifest.json/auteur ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
Typechaîne de caractères
ObligatoireNon
Exemple -
-"author": "Walt Whitman"
-
- -

L'auteur de l'extension, destiné à être visualisé dans l'interface utilisateur du navigateur. Si la clé du developpeur est fournie et qu'elle contient la propriété "nom", elle remplacera la clé de l'auteur. Il n'y a aucun moyen de spécifier plusieurs auteurs.

- -

Notez que Firefox ne supporte cette clé qu'à partir de la version 52 et que cette clé est obligatoire dans Microsoft Edge.

- -

Exemple

- -
"author": "Walt Whitman"
- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.manifest.author")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/author/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/author/index.md new file mode 100644 index 0000000000..967ba15adb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/author/index.md @@ -0,0 +1,43 @@ +--- +title: author +slug: Mozilla/Add-ons/WebExtensions/manifest.json/author +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/author +original_slug: Mozilla/Add-ons/WebExtensions/manifest.json/auteur +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
Typechaîne de caractères
ObligatoireNon
Exemple +
+"author": "Walt Whitman"
+
+ +

L'auteur de l'extension, destiné à être visualisé dans l'interface utilisateur du navigateur. Si la clé du developpeur est fournie et qu'elle contient la propriété "nom", elle remplacera la clé de l'auteur. Il n'y a aucun moyen de spécifier plusieurs auteurs.

+ +

Notez que Firefox ne supporte cette clé qu'à partir de la version 52 et que cette clé est obligatoire dans Microsoft Edge.

+ +

Exemple

+ +
"author": "Walt Whitman"
+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.manifest.author")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/background/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/background/index.html deleted file mode 100644 index 865f95b6a0..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/background/index.html +++ /dev/null @@ -1,92 +0,0 @@ ---- -title: background -slug: Mozilla/Add-ons/WebExtensions/manifest.json/background -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/background -original_slug: Mozilla/Add-ons/WebExtensions/manifest.json/arriere-plan ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObject
ObligatoireNo
Exemple -
-"background": {
-  "scripts": ["background.js"]
-}
-
- -

Utilisez la clé background pour inclure un ou plusieurs scripts d'arrière-plan, et éventuellement une page d'arrière-plan dans votre extension.

- -

Les scripts d'arrière-plan sont l'endroit pour placer le code qui doit maintenir l'état à long terme, ou effectuer des opérations à long terme, indépendamment de la durée de vie de toutes les pages Web ou les fenêtres du navigateur.

- -

Les scripts d'arrière-plan sont chargés dès que l'extension est chargée et restent chargés jusqu'à ce que l'extension soit désactivée ou désinstallée. Vous pouvez utiliser n'importe laquelle des WebExtension APIs dans le script, tant que vous avez demandé les permissions nécessaires.

- -

Voir la section "Pages arrière-plan" dans l'anatomie d'une WebExtension pour plus de détails.

- -

La clé background est un objet qui peut avoir l'une des deux propriétés suivantes, toutes deux facultatives :

- - - - - - - - - - - - -
"scripts" -

Un ensemble de chaînes, chacune étant un chemin d'accès à une source JavaScript. Le chemin est relatif au fichier manifest.json lui-même. Ce sont les scripts d'arrière-plan qui seront inclus dans l'extension.

- -

Les scripts partagent la même fenêtre globale.

- -

Les scripts sont chargés dans l'ordre où 'ils apparaissent dans le tableau.

- -

Notez qu'il y a un bug affectant les versions de Firefox antérieures à la version 50 : lorsque le débogueur Firefox est ouvert, les scripts ne sont pas toujours chargés dans l'ordre indiqué dans le tableau. Pour contourner ce bug, vous pouvez utiliser la propriété "page" et inclure des scripts de fond de page en utilisant les balises <script>. Ce bug est résolu dans Firefox 50, et à partir de ce moment, les scripts sont toujours chargés dans l'ordre indiqué dans le tableau.

-
"page" -
-

Note : Si vous souhaitez récupérer un script à partir d'un emplacement distant avec la balise <script> (par exemple : <script src = "https://code.jquery.com/jquery-1.7.1.min.js"> ), vous devrez également modifier la clé content_security_policy dans le fichier manifest.json de votre extension.

-
- -

Si vous spécifiez des "scripts", une page vide sera créée pour que vos scripts s'exécutent.

- -

Si vous avez besoin de contenu particulier dans la page, vous pouvez définir votre propre page en utilisant l'option "page".

- -

Si vous utilisez cette propriété, vous ne pouvez plus spécifier de scripts de fond à l'aide de «scripts», mais vous pouvez inclure vos propres scripts à partir de la page, tout comme dans une page Web normale.

-
- -

Exemple

- -
 "background": {
-    "scripts": ["jquery.js", "my-background.js"]
-  }
- -

Chargez deux scripts de fond.

- -
  "background": {
-    "page": "my-background.html"
-  }
- -

Chargez une page d'arrière-plan personnalisée.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.background", 10)}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/background/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/background/index.md new file mode 100644 index 0000000000..865f95b6a0 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/background/index.md @@ -0,0 +1,92 @@ +--- +title: background +slug: Mozilla/Add-ons/WebExtensions/manifest.json/background +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/background +original_slug: Mozilla/Add-ons/WebExtensions/manifest.json/arriere-plan +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObject
ObligatoireNo
Exemple +
+"background": {
+  "scripts": ["background.js"]
+}
+
+ +

Utilisez la clé background pour inclure un ou plusieurs scripts d'arrière-plan, et éventuellement une page d'arrière-plan dans votre extension.

+ +

Les scripts d'arrière-plan sont l'endroit pour placer le code qui doit maintenir l'état à long terme, ou effectuer des opérations à long terme, indépendamment de la durée de vie de toutes les pages Web ou les fenêtres du navigateur.

+ +

Les scripts d'arrière-plan sont chargés dès que l'extension est chargée et restent chargés jusqu'à ce que l'extension soit désactivée ou désinstallée. Vous pouvez utiliser n'importe laquelle des WebExtension APIs dans le script, tant que vous avez demandé les permissions nécessaires.

+ +

Voir la section "Pages arrière-plan" dans l'anatomie d'une WebExtension pour plus de détails.

+ +

La clé background est un objet qui peut avoir l'une des deux propriétés suivantes, toutes deux facultatives :

+ + + + + + + + + + + + +
"scripts" +

Un ensemble de chaînes, chacune étant un chemin d'accès à une source JavaScript. Le chemin est relatif au fichier manifest.json lui-même. Ce sont les scripts d'arrière-plan qui seront inclus dans l'extension.

+ +

Les scripts partagent la même fenêtre globale.

+ +

Les scripts sont chargés dans l'ordre où 'ils apparaissent dans le tableau.

+ +

Notez qu'il y a un bug affectant les versions de Firefox antérieures à la version 50 : lorsque le débogueur Firefox est ouvert, les scripts ne sont pas toujours chargés dans l'ordre indiqué dans le tableau. Pour contourner ce bug, vous pouvez utiliser la propriété "page" et inclure des scripts de fond de page en utilisant les balises <script>. Ce bug est résolu dans Firefox 50, et à partir de ce moment, les scripts sont toujours chargés dans l'ordre indiqué dans le tableau.

+
"page" +
+

Note : Si vous souhaitez récupérer un script à partir d'un emplacement distant avec la balise <script> (par exemple : <script src = "https://code.jquery.com/jquery-1.7.1.min.js"> ), vous devrez également modifier la clé content_security_policy dans le fichier manifest.json de votre extension.

+
+ +

Si vous spécifiez des "scripts", une page vide sera créée pour que vos scripts s'exécutent.

+ +

Si vous avez besoin de contenu particulier dans la page, vous pouvez définir votre propre page en utilisant l'option "page".

+ +

Si vous utilisez cette propriété, vous ne pouvez plus spécifier de scripts de fond à l'aide de «scripts», mais vous pouvez inclure vos propres scripts à partir de la page, tout comme dans une page Web normale.

+
+ +

Exemple

+ +
 "background": {
+    "scripts": ["jquery.js", "my-background.js"]
+  }
+ +

Chargez deux scripts de fond.

+ +
  "background": {
+    "page": "my-background.html"
+  }
+ +

Chargez une page d'arrière-plan personnalisée.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.background", 10)}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/browser_action/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/browser_action/index.html deleted file mode 100644 index 8ed0e69f86..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/browser_action/index.html +++ /dev/null @@ -1,249 +0,0 @@ ---- -title: browser_action -slug: Mozilla/Add-ons/WebExtensions/manifest.json/browser_action -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/browser_action ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObject
MandatoryNo
Example -
-"browser_action": {
-  "browser_style": true,
-  "default_icon": {
-    "16": "button/geo-16.png",
-    "32": "button/geo-32.png"
-  },
-  "default_title": "Whereami?",
-  "default_popup": "popup/geo.html",
-  "theme_icons": [{
-    "light": "icons/geo-16-light.png",
-    "dark": "icons/geo-16.png",
-    "size": 16
-  }, {
-    "light": "icons/geo-32-light.png",
-    "dark": "icons/geo-32.png",
-    "size": 32
-  }]
-}
-
- -

Une action de navigateur est un bouton que votre extension ajoute à la barre d'outils du navigateur. Le bouton comporte une icône et peut éventuellement avoir une fenêtre contextuelle dont le contenu est spécifié à l'aide de HTML, CSS et JavaScript.

- -

Si vous fournissez une fenêtre contextuelle, la fenêtre contextuelle est ouverte lorsque l'utilisateur clique sur le bouton, et votre JavaScript s'exécute dans la fenêtre contextuelle permettant l'interaction de l'utilisateur avec elle. Si vous ne fournissez pas de popup, un événement de clic est envoyé aux scripts d'arrière-plan de votre extension lorsque l'utilisateur clique sur le bouton.

- -

Vous pouvez également créer et manipuler des actions de navigateur de manière programmée à l'aide de l'API browserAction.

- -

Syntaxe

- -

La clé browser_action est un objet qui peut avoir l'une des propriétés suivantes, toutes optionnelles :

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
browser_styleBooléen -

Facultatif, par défaut à false.

- -

Utilisez-le pour inclure une feuille de style dans votre popup qui le rendra cohérent avec l'interface utilisateur du navigateur et avec d'autres extensions qui utilisent la propriété browser_style. Bien que cette touche par défaut soit false, il est recommandé de l'inclure et de la mettre à true afin de rendre vos fenêtres contextuelles cohérentes avec l'apparence du reste de l'interface utilisateur du navigateur.

- -

Dans Firefox, la feuille de style peut être vue à chrome://browser/content/extension.css, ou chrome://browser/content/extension-mac.css sur OS X. Lorsque vous définissez les dimensions, sachez que cette feuille de style définit actuellement  box-sizing: border-box (voir box-sizing).

- -

Les Browser styles décrivent les classes que vous pouvez appliquer aux éléments dans le popup afin d'obtenir des styles particuliers.

- -

L'extension de l'exemple latest-download utilise browser_style dans son popup.

-
default_areaChaîne de caractères - -

Définit la partie du navigateur dans laquelle le bouton est initialement placé. Il s'agit d'une chaîne qui peut prendre l'une des quatre valeurs suivantes:

- -
    -
  • "navbar" : le bouton est placé dans la barre d'outils principale du navigateur, à côté de la barre d'URL.
  • -
  • "menupanel" : le bouton est placé dans un panneau contextuel.
  • -
  • "tabstrip" : le bouton est placé dans la barre d'outils qui contient les onglets du navigateur.
  • -
  • "personaltoolbar" : le bouton est placé dans la barre d'outils des signets
  • -
- -

Cette propriété est seulement supportée dans Firefox.

- -

Cett propriété est facultative, et defaut à "navbar".

- -

Firefox se souvient des paramètres default_area d'une extension,  même si cette extension est désinstallée et réinstallée par la suite. Pour forcer le navigateur à reconnaître une nouvelle valeur pour  default_area, l'identifiant de l'extension doit être modifié.

- -

Une extension ne peut pas changer l'emplacement du bouton après son installation, mais l'utilisateur doit pouvoir déplacer le bouton en utilisant le mécanisme de personnalisation du navigateur.

-
default_iconObjet ou chaîne de caractères -

Utilisez cette option pour spécifier une ou plusieurs icônes pour le bouton d'action du navigateur. L'icône est affichée dans la barre d'outils du navigateur par défaut.

- -

Les icônes sont spécifiées comme des URL relatives dans le fichier manifest.json lui-même.

- -

Vous pouvez spécifier un seul fichier d'icône en fournissant une chaîne ici:

- -
-"default_icon": "path/to/geo.svg"
- -

Pour spécifier plusieurs icônes dans différentes tailles, spécifiez ici un objet. Le nom de chaque propriété est la hauteur de l'icône en pixels et doit être converti en un nombre entier. La valeur est l'URL. Par exemple:

- -
-    "default_icon": {
-      "16": "path/to/geo-16.png",
-      "32": "path/to/geo-32.png"
-    }
- -

Vous ne pouvez pas spécifier plusieurs icônes de la même taille.

- -

Voir Choisir les tailles des icones pour plus de conseils à ce sujet.

-
default_popupchaîne de caractères -

Le chemin d'accès à un fichier HTML contenant la spécification de la fenêtre contextuelle.

- -

Le fichier HTML peut inclure des fichiers CSS et JavaScript en utilisant des éléments <link> et <script>, tout comme une page Web normale. Cependant, <script> doit avoir l'attribut src pour charger un fichier. N'utilisez pas <script> avec du code intégré, car vous obtiendrez une erreur de politique de violation de contenu confuse.

- -

Contrairement à une page Web normale, JavaScript en cours d'exécution dans la fenêtre contextuelle peut accéder à toutes les APIs WebExtension (soumis, bien sûr, à l'extension possédant les permissions appropriées).

- -

Ceci est une propriété localisable.

-
default_titlechaîne de caractères -

Info-bulle pour le bouton, affichée lorsque l'utilisateur passe sa souris dessus.

- -

Ceci est une propriété localisable.

-
theme_iconsTableau -

Cette propriété vous permet de spécifier différentes icônes pour les thèmes selon que Firefox détecte que le thème utilise du texte sombre ou clair.

- -

Si cette propriété est présente, il s'agit d'un tableau contenant au moins un objet ThemeIcons. Un objet ThemeIcons contient trois propriétés obligatoires :

- -
-
"dark"
-
Une URL pointant vers une icône. Cette icône s'affiche lorsqu'un thème utilisant du texte sombre est actif (tel que, le thème Light de Firefox et le thème Default si default_icon n'est pas spécifié).
-
"light"
-
Une URL pointant vers une icône. Cette icône s'affiche lorsqu'un thème utilisant du texte clair est actif (tel que, le thème sombre de Firefox).
-
"size"
-
La taille des deux icônes en pixels.
-
- -

Les icônes sont spécifiées en tant qu'URL par rapport au fichier manifest.json lui-même.

- -

Vous devez fournir un ThemeIcons en taille 16x16 et un en taille 32x32 (pour l'affichage de la rétine).

-
- -

Choisir les tailles des icônes

- -

L'icône de l'action du navigateur peut devoir être affichée dans différentes tailles dans différents contextes:

- - - -

Si le navigateur ne peut pas trouver une icône de la bonne taille dans une situation donnée, il choisira la meilleure correspondance et la mettra à l'échelle. Cette correction peut donner une apparence floue à l'icône, il est donc important de choisir attentivement les tailles d'icône.

- -

Il y a deux approches principales pour cela. Vous pouvez fournir une seule icône en tant que fichier SVG, et elle sera mise à l'échelle correctement :

- -
"default_icon": "path/to/geo.svg"
- -

Ou vous pouvez fournir plusieurs icônes dans différentes tailles, et le navigateur choisira la meilleure.

- -

Dans Firefox:

- - - -

Vous pouvez donc spécifier des icônes qui correspondent exactement, à la fois aux affichages normaux et à Retina, en fournissant trois fichiers d'icônes et en les spécifiant comme suit:

- -
    "default_icon": {
-      "16": "path/to/geo-16.png",
-      "32": "path/to/geo-32.png",
-      "64": "path/to/geo-64.png"
-    }
- -

Si Firefox ne peut pas trouver une correspondance exacte pour la taille qu'il veut, alors il choisira l'icône la plus petite spécifiée qui est plus grande que la taille idéale. Si toutes les icônes sont plus petites que la taille idéale, elle choisira la plus grande icône spécifiée.

- -

Exemple

- -
"browser_action": {
-  "default_icon": {
-    "16": "button/geo-16.png",
-    "32": "button/geo-32.png"
-  }
-}
- -

Une action de navigateur avec juste une icône, spécifiée en 2 tailles différentes. Les scripts d'arrière-plan de l'extension peuvent recevoir des événements de clic lorsque l'utilisateur clique sur l'icône en utilisant un code comme celui-ci :

- -
 browser.browserAction.onClicked.addListener(handleClick);
- -
"browser_action": {
-  "default_icon": {
-    "16": "button/geo-16.png",
-    "32": "button/geo-32.png"
-  },
-  "default_title": "Whereami?",
-  "default_popup": "popup/geo.html"
-}
- -

Une action de navigateur avec une icône, un titre et une fenêtre contextuelle. Celle-ci s'affiche lorsque l'utilisateur clique sur le bouton.

- -

Pour une extension simple, mais complète, qui utilise une action de navigateur, consultez le tutoriel pas à pas.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.browser_action", 10)}}

- -

See also

- - diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/browser_action/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/browser_action/index.md new file mode 100644 index 0000000000..8ed0e69f86 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/browser_action/index.md @@ -0,0 +1,249 @@ +--- +title: browser_action +slug: Mozilla/Add-ons/WebExtensions/manifest.json/browser_action +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/browser_action +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObject
MandatoryNo
Example +
+"browser_action": {
+  "browser_style": true,
+  "default_icon": {
+    "16": "button/geo-16.png",
+    "32": "button/geo-32.png"
+  },
+  "default_title": "Whereami?",
+  "default_popup": "popup/geo.html",
+  "theme_icons": [{
+    "light": "icons/geo-16-light.png",
+    "dark": "icons/geo-16.png",
+    "size": 16
+  }, {
+    "light": "icons/geo-32-light.png",
+    "dark": "icons/geo-32.png",
+    "size": 32
+  }]
+}
+
+ +

Une action de navigateur est un bouton que votre extension ajoute à la barre d'outils du navigateur. Le bouton comporte une icône et peut éventuellement avoir une fenêtre contextuelle dont le contenu est spécifié à l'aide de HTML, CSS et JavaScript.

+ +

Si vous fournissez une fenêtre contextuelle, la fenêtre contextuelle est ouverte lorsque l'utilisateur clique sur le bouton, et votre JavaScript s'exécute dans la fenêtre contextuelle permettant l'interaction de l'utilisateur avec elle. Si vous ne fournissez pas de popup, un événement de clic est envoyé aux scripts d'arrière-plan de votre extension lorsque l'utilisateur clique sur le bouton.

+ +

Vous pouvez également créer et manipuler des actions de navigateur de manière programmée à l'aide de l'API browserAction.

+ +

Syntaxe

+ +

La clé browser_action est un objet qui peut avoir l'une des propriétés suivantes, toutes optionnelles :

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
browser_styleBooléen +

Facultatif, par défaut à false.

+ +

Utilisez-le pour inclure une feuille de style dans votre popup qui le rendra cohérent avec l'interface utilisateur du navigateur et avec d'autres extensions qui utilisent la propriété browser_style. Bien que cette touche par défaut soit false, il est recommandé de l'inclure et de la mettre à true afin de rendre vos fenêtres contextuelles cohérentes avec l'apparence du reste de l'interface utilisateur du navigateur.

+ +

Dans Firefox, la feuille de style peut être vue à chrome://browser/content/extension.css, ou chrome://browser/content/extension-mac.css sur OS X. Lorsque vous définissez les dimensions, sachez que cette feuille de style définit actuellement  box-sizing: border-box (voir box-sizing).

+ +

Les Browser styles décrivent les classes que vous pouvez appliquer aux éléments dans le popup afin d'obtenir des styles particuliers.

+ +

L'extension de l'exemple latest-download utilise browser_style dans son popup.

+
default_areaChaîne de caractères + +

Définit la partie du navigateur dans laquelle le bouton est initialement placé. Il s'agit d'une chaîne qui peut prendre l'une des quatre valeurs suivantes:

+ +
    +
  • "navbar" : le bouton est placé dans la barre d'outils principale du navigateur, à côté de la barre d'URL.
  • +
  • "menupanel" : le bouton est placé dans un panneau contextuel.
  • +
  • "tabstrip" : le bouton est placé dans la barre d'outils qui contient les onglets du navigateur.
  • +
  • "personaltoolbar" : le bouton est placé dans la barre d'outils des signets
  • +
+ +

Cette propriété est seulement supportée dans Firefox.

+ +

Cett propriété est facultative, et defaut à "navbar".

+ +

Firefox se souvient des paramètres default_area d'une extension,  même si cette extension est désinstallée et réinstallée par la suite. Pour forcer le navigateur à reconnaître une nouvelle valeur pour  default_area, l'identifiant de l'extension doit être modifié.

+ +

Une extension ne peut pas changer l'emplacement du bouton après son installation, mais l'utilisateur doit pouvoir déplacer le bouton en utilisant le mécanisme de personnalisation du navigateur.

+
default_iconObjet ou chaîne de caractères +

Utilisez cette option pour spécifier une ou plusieurs icônes pour le bouton d'action du navigateur. L'icône est affichée dans la barre d'outils du navigateur par défaut.

+ +

Les icônes sont spécifiées comme des URL relatives dans le fichier manifest.json lui-même.

+ +

Vous pouvez spécifier un seul fichier d'icône en fournissant une chaîne ici:

+ +
+"default_icon": "path/to/geo.svg"
+ +

Pour spécifier plusieurs icônes dans différentes tailles, spécifiez ici un objet. Le nom de chaque propriété est la hauteur de l'icône en pixels et doit être converti en un nombre entier. La valeur est l'URL. Par exemple:

+ +
+    "default_icon": {
+      "16": "path/to/geo-16.png",
+      "32": "path/to/geo-32.png"
+    }
+ +

Vous ne pouvez pas spécifier plusieurs icônes de la même taille.

+ +

Voir Choisir les tailles des icones pour plus de conseils à ce sujet.

+
default_popupchaîne de caractères +

Le chemin d'accès à un fichier HTML contenant la spécification de la fenêtre contextuelle.

+ +

Le fichier HTML peut inclure des fichiers CSS et JavaScript en utilisant des éléments <link> et <script>, tout comme une page Web normale. Cependant, <script> doit avoir l'attribut src pour charger un fichier. N'utilisez pas <script> avec du code intégré, car vous obtiendrez une erreur de politique de violation de contenu confuse.

+ +

Contrairement à une page Web normale, JavaScript en cours d'exécution dans la fenêtre contextuelle peut accéder à toutes les APIs WebExtension (soumis, bien sûr, à l'extension possédant les permissions appropriées).

+ +

Ceci est une propriété localisable.

+
default_titlechaîne de caractères +

Info-bulle pour le bouton, affichée lorsque l'utilisateur passe sa souris dessus.

+ +

Ceci est une propriété localisable.

+
theme_iconsTableau +

Cette propriété vous permet de spécifier différentes icônes pour les thèmes selon que Firefox détecte que le thème utilise du texte sombre ou clair.

+ +

Si cette propriété est présente, il s'agit d'un tableau contenant au moins un objet ThemeIcons. Un objet ThemeIcons contient trois propriétés obligatoires :

+ +
+
"dark"
+
Une URL pointant vers une icône. Cette icône s'affiche lorsqu'un thème utilisant du texte sombre est actif (tel que, le thème Light de Firefox et le thème Default si default_icon n'est pas spécifié).
+
"light"
+
Une URL pointant vers une icône. Cette icône s'affiche lorsqu'un thème utilisant du texte clair est actif (tel que, le thème sombre de Firefox).
+
"size"
+
La taille des deux icônes en pixels.
+
+ +

Les icônes sont spécifiées en tant qu'URL par rapport au fichier manifest.json lui-même.

+ +

Vous devez fournir un ThemeIcons en taille 16x16 et un en taille 32x32 (pour l'affichage de la rétine).

+
+ +

Choisir les tailles des icônes

+ +

L'icône de l'action du navigateur peut devoir être affichée dans différentes tailles dans différents contextes:

+ + + +

Si le navigateur ne peut pas trouver une icône de la bonne taille dans une situation donnée, il choisira la meilleure correspondance et la mettra à l'échelle. Cette correction peut donner une apparence floue à l'icône, il est donc important de choisir attentivement les tailles d'icône.

+ +

Il y a deux approches principales pour cela. Vous pouvez fournir une seule icône en tant que fichier SVG, et elle sera mise à l'échelle correctement :

+ +
"default_icon": "path/to/geo.svg"
+ +

Ou vous pouvez fournir plusieurs icônes dans différentes tailles, et le navigateur choisira la meilleure.

+ +

Dans Firefox:

+ + + +

Vous pouvez donc spécifier des icônes qui correspondent exactement, à la fois aux affichages normaux et à Retina, en fournissant trois fichiers d'icônes et en les spécifiant comme suit:

+ +
    "default_icon": {
+      "16": "path/to/geo-16.png",
+      "32": "path/to/geo-32.png",
+      "64": "path/to/geo-64.png"
+    }
+ +

Si Firefox ne peut pas trouver une correspondance exacte pour la taille qu'il veut, alors il choisira l'icône la plus petite spécifiée qui est plus grande que la taille idéale. Si toutes les icônes sont plus petites que la taille idéale, elle choisira la plus grande icône spécifiée.

+ +

Exemple

+ +
"browser_action": {
+  "default_icon": {
+    "16": "button/geo-16.png",
+    "32": "button/geo-32.png"
+  }
+}
+ +

Une action de navigateur avec juste une icône, spécifiée en 2 tailles différentes. Les scripts d'arrière-plan de l'extension peuvent recevoir des événements de clic lorsque l'utilisateur clique sur l'icône en utilisant un code comme celui-ci :

+ +
 browser.browserAction.onClicked.addListener(handleClick);
+ +
"browser_action": {
+  "default_icon": {
+    "16": "button/geo-16.png",
+    "32": "button/geo-32.png"
+  },
+  "default_title": "Whereami?",
+  "default_popup": "popup/geo.html"
+}
+ +

Une action de navigateur avec une icône, un titre et une fenêtre contextuelle. Celle-ci s'affiche lorsque l'utilisateur clique sur le bouton.

+ +

Pour une extension simple, mais complète, qui utilise une action de navigateur, consultez le tutoriel pas à pas.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.browser_action", 10)}}

+ +

See also

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/browser_specific_settings/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/browser_specific_settings/index.html deleted file mode 100644 index 7c283ed432..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/browser_specific_settings/index.html +++ /dev/null @@ -1,117 +0,0 @@ ---- -title: browser_specific_settings -slug: Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings -tags: - - Add-ons - - Extensions - - WebExtensions - - browser_specific_settings -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings ---- -

{{AddonSidebar}}

- - - - - - - - - - - - - - - - -
TypeObject
Obligatoire -

Habituellement, non (mais voir aussi Quand avec-vous besoin d'une ID Complémentaire?). Obligatoire avant Firefox 48 (desktop) et Firefox pour Android.

-
Example -
-"browser_specific_settings": {
-  "gecko": {
-    "id": "addon@example.com",
-    "strict_min_version": "42.0"
-  }
-}
-
-
- -

Description

- -

La clé browser_specific_settings contient des clés qui sont spécifiques à certaines applications hôtes.

- -

Propriétés (Gecko) Firefox

- -

Actuellement, elle contient uniquement une clé, gecko, qui est structurée ainsi :

- - - -

Vois la liste des versions Gecko valides.

- -

Format d'ID d'extension

- -

L'ID d'extension doit être l'un des suivants :

- - - -

Ce dernier format est plus facile à générer et à manipuler. Sachez que l'utilisation d'une véritable adresse e-mail ici peut attirer des spams.

- -

Par exemple :

- -
"id": "extensionname@example.org"
- -
"id": "{daf44bf7-a45e-4450-979c-91cf07434c3d}"
- -

Propriétés Microsoft Edge

- -
-

Attention : L'ajout de propriétés spécifiques à Edge au manifeste a causé une erreur avant Firefox 69 qui peut empêcher l'extension de s'installer.

-
- -

Microsoft Edge stocke les paramètres spécifiques à son navigateur dans la sous-clé edge, qui possède les propriétés suivantes :

- -
-
browser_action_next_to_addressbar
-
-

Propriété booléenne qui contrôle le placement de l'action du navigateur.

- - -
-
- -

Exemples

- -

Exemple avec toutes les clés possibles. Notez que vous n'incluez normalement ni une version strict_max_version ni une clé update_url.

- -
"browser_specific_settings": {
-  "gecko": {
-    "id": "addon@example.com",
-    "strict_min_version": "42.0",
-    "strict_max_version": "50.*",
-    "update_url": "https://example.com/updates.json"
-  },
-  "edge": {
-    "browser_action_next_to_addressbar": true
-  }
-}
- -

Compatibilité des navigateurs

- - - -

{{Compat("webextensions.manifest.browser_specific_settings")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/browser_specific_settings/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/browser_specific_settings/index.md new file mode 100644 index 0000000000..7c283ed432 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/browser_specific_settings/index.md @@ -0,0 +1,117 @@ +--- +title: browser_specific_settings +slug: Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings +tags: + - Add-ons + - Extensions + - WebExtensions + - browser_specific_settings +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/browser_specific_settings +--- +

{{AddonSidebar}}

+ + + + + + + + + + + + + + + + +
TypeObject
Obligatoire +

Habituellement, non (mais voir aussi Quand avec-vous besoin d'une ID Complémentaire?). Obligatoire avant Firefox 48 (desktop) et Firefox pour Android.

+
Example +
+"browser_specific_settings": {
+  "gecko": {
+    "id": "addon@example.com",
+    "strict_min_version": "42.0"
+  }
+}
+
+
+ +

Description

+ +

La clé browser_specific_settings contient des clés qui sont spécifiques à certaines applications hôtes.

+ +

Propriétés (Gecko) Firefox

+ +

Actuellement, elle contient uniquement une clé, gecko, qui est structurée ainsi :

+ + + +

Vois la liste des versions Gecko valides.

+ +

Format d'ID d'extension

+ +

L'ID d'extension doit être l'un des suivants :

+ + + +

Ce dernier format est plus facile à générer et à manipuler. Sachez que l'utilisation d'une véritable adresse e-mail ici peut attirer des spams.

+ +

Par exemple :

+ +
"id": "extensionname@example.org"
+ +
"id": "{daf44bf7-a45e-4450-979c-91cf07434c3d}"
+ +

Propriétés Microsoft Edge

+ +
+

Attention : L'ajout de propriétés spécifiques à Edge au manifeste a causé une erreur avant Firefox 69 qui peut empêcher l'extension de s'installer.

+
+ +

Microsoft Edge stocke les paramètres spécifiques à son navigateur dans la sous-clé edge, qui possède les propriétés suivantes :

+ +
+
browser_action_next_to_addressbar
+
+

Propriété booléenne qui contrôle le placement de l'action du navigateur.

+ + +
+
+ +

Exemples

+ +

Exemple avec toutes les clés possibles. Notez que vous n'incluez normalement ni une version strict_max_version ni une clé update_url.

+ +
"browser_specific_settings": {
+  "gecko": {
+    "id": "addon@example.com",
+    "strict_min_version": "42.0",
+    "strict_max_version": "50.*",
+    "update_url": "https://example.com/updates.json"
+  },
+  "edge": {
+    "browser_action_next_to_addressbar": true
+  }
+}
+ +

Compatibilité des navigateurs

+ + + +

{{Compat("webextensions.manifest.browser_specific_settings")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_settings_overrides/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_settings_overrides/index.html deleted file mode 100644 index f662253280..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_settings_overrides/index.html +++ /dev/null @@ -1,134 +0,0 @@ ---- -title: chrome_settings_overrides -slug: Mozilla/Add-ons/WebExtensions/manifest.json/chrome_settings_overrides -tags: - - Add-ons - - Extensions - - WebExtensions - - chrome_settings_overrides - - manifest.json -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/chrome_settings_overrides ---- -
{{AddonSidebar}}
- -

Utilisez la clé chrome_settings_overrides pour remplacer certains paramètres du navigateur. Deux paramètres sont disponibles :

- - - -
"chrome_settings_overrides" : {
-  "homepage": "https://developer.mozilla.org/"
-}
- -
"chrome_settings_overrides": {
-  "search_provider": {
-    "name": "Discogs",
-    "search_url": "https://www.discogs.com/search/?q={searchTerms}",
-    "keyword": "disc",
-    "favicon_url": "https://www.discogs.com/favicon.ico"
-  }
-}
- - - - - - - - - - - - - - - -
clé de manifeste : chrome_settings_overrides
TypeObjet
ObligatoireNon
- -

Syntaxe

- -

La clé chrome_settings_overrides est un objet qui peut avoir les propriétés suivantes:

- - - - - - - - - - - - - - - - - - - - - -
NomTypeDescription
homepageChaîne de caractères -

Définit la page à utiliser comme page d'accueil du navigateur.

- -

Le remplacement est donné comme une URL. L'URL peut :

- -
    -
  • pointer sur un fichier regroupé avec l'extension, auquel cas il est donné comme une URL relative au fichier manifest.json
  • -
  • être une URL distante comme "https://developer.mozilla.org/".
  • -
- -

Si deux ou plusieurs extensions définissent toutes les deux cette valeur, alors le paramètre de la dernière extension installée aura la priorité.

- -

Pour éviter de nouveaux onglets, utilisez à la place "chrome_url_overrides".

- -

C'est une  propriété localisable.

-
search_providerObjet -

Définit un moteur de recherche à ajouter au navigateur.

- -

Le moteur de recherche a un nom et une URL principale. D'autres URL peuvent être fournies, y compris des URL pour des recherches plus spécialisées comme des recherches d'images. Dans l'URL que vous fournissez, utilisez "{searchTerms}" pour interpoler le terme de recherche  dans l'URL, comme : https://www.discogs.com/search/?q={searchTerms}. Vous pouvez également fournir des paramètres POST à envoyer avec la recherche.

- -

Le moteur de recherche sera présenté à l'utilisateur à côté de ceux fournis dans l'interface. Si vous incluez la propriété is_defaultet le configurez avec true, le nouveau moteur de recherche devient l'option par défaut. Avec l'utilisation de la propriétékeyword, vous permettez à l'utilisateur de sélectionner votre moteur de recherche en tapant le mot-clé dans la barre d'adresse avant le terme recherché.

- -

C'est un objet avec les propriétés listées ci-dessous. Toutes les propriétés chaîne de caractères sont localisables.

- -
-
name
-
Chaîne de caractères : le nom du moteur de recherche, affiché pour l'utilisateur.
-
search_url
-
Chaîne de caractères : l'URL utilisée par le moteur de recherche. Il peut être une URL HTTPS.
-
is_default
-
Booléen: "True" si le moteur de recherch doit être le choix par défaut.
-
alternate_urls {{optional_inline}}
-
Tableau de chaînes de caractères : un éventail d'URL alternatives, qui peut être utilisé à la place desearch_url.
-
encoding {{optional_inline}}
-
Chaîne de caractères : codage du terme de recherche, spécifié comme un standard character encoding name, voir "UTF-8".
-
favicon_url {{optional_inline}}
-
Chaîne de caractères : URL pointant sur une icône pour le moteur de recherche. Ce doit être une URL absolue HTTP ou HTTPS.
-
image_url {{optional_inline}}
-
Chaîne de caractères : URL utilisée pour une recherche d'images.
-
image_url_post_params {{optional_inline}}
-
Chaîne de caractères : paramètres POST à envoyer àimage_url.
-
instant_url {{optional_inline}}
-
Chaîne de caractères : URL utilisée pour une recherche instantanée.
-
instant_url_post_params {{optional_inline}}
-
Chaîne de caractères : paramètres POST à envoyer à instant_url.
-
keyword {{optional_inline}}
-
Chaîne de caractères : mots-clés de la barre d'adresse pour le moteur de recherche.
-
prepopulated_id {{optional_inline}}
-
L'ID d'un moteur de recherche intégré à utiliser.
-
search_url_post_params {{optional_inline}}
-
Chaîne de caractères : paramètres POST à envoyer àsearch_url.
-
suggest_url {{optional_inline}}
-
Chaîne de caractères : URL utilisée pour les suggestions de recherche. Ceci doit être une URL HTTPS
-
suggest_url_post_params {{optional_inline}}
-
Chaîne de caractères : paramètres POST à envoyer àsuggest_url.
-
-
- -

Compatibilité de navigateur

- -

{{Compat("webextensions.manifest.chrome_settings_overrides", 10)}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_settings_overrides/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_settings_overrides/index.md new file mode 100644 index 0000000000..f662253280 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_settings_overrides/index.md @@ -0,0 +1,134 @@ +--- +title: chrome_settings_overrides +slug: Mozilla/Add-ons/WebExtensions/manifest.json/chrome_settings_overrides +tags: + - Add-ons + - Extensions + - WebExtensions + - chrome_settings_overrides + - manifest.json +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/chrome_settings_overrides +--- +
{{AddonSidebar}}
+ +

Utilisez la clé chrome_settings_overrides pour remplacer certains paramètres du navigateur. Deux paramètres sont disponibles :

+ + + +
"chrome_settings_overrides" : {
+  "homepage": "https://developer.mozilla.org/"
+}
+ +
"chrome_settings_overrides": {
+  "search_provider": {
+    "name": "Discogs",
+    "search_url": "https://www.discogs.com/search/?q={searchTerms}",
+    "keyword": "disc",
+    "favicon_url": "https://www.discogs.com/favicon.ico"
+  }
+}
+ + + + + + + + + + + + + + + +
clé de manifeste : chrome_settings_overrides
TypeObjet
ObligatoireNon
+ +

Syntaxe

+ +

La clé chrome_settings_overrides est un objet qui peut avoir les propriétés suivantes:

+ + + + + + + + + + + + + + + + + + + + + +
NomTypeDescription
homepageChaîne de caractères +

Définit la page à utiliser comme page d'accueil du navigateur.

+ +

Le remplacement est donné comme une URL. L'URL peut :

+ +
    +
  • pointer sur un fichier regroupé avec l'extension, auquel cas il est donné comme une URL relative au fichier manifest.json
  • +
  • être une URL distante comme "https://developer.mozilla.org/".
  • +
+ +

Si deux ou plusieurs extensions définissent toutes les deux cette valeur, alors le paramètre de la dernière extension installée aura la priorité.

+ +

Pour éviter de nouveaux onglets, utilisez à la place "chrome_url_overrides".

+ +

C'est une  propriété localisable.

+
search_providerObjet +

Définit un moteur de recherche à ajouter au navigateur.

+ +

Le moteur de recherche a un nom et une URL principale. D'autres URL peuvent être fournies, y compris des URL pour des recherches plus spécialisées comme des recherches d'images. Dans l'URL que vous fournissez, utilisez "{searchTerms}" pour interpoler le terme de recherche  dans l'URL, comme : https://www.discogs.com/search/?q={searchTerms}. Vous pouvez également fournir des paramètres POST à envoyer avec la recherche.

+ +

Le moteur de recherche sera présenté à l'utilisateur à côté de ceux fournis dans l'interface. Si vous incluez la propriété is_defaultet le configurez avec true, le nouveau moteur de recherche devient l'option par défaut. Avec l'utilisation de la propriétékeyword, vous permettez à l'utilisateur de sélectionner votre moteur de recherche en tapant le mot-clé dans la barre d'adresse avant le terme recherché.

+ +

C'est un objet avec les propriétés listées ci-dessous. Toutes les propriétés chaîne de caractères sont localisables.

+ +
+
name
+
Chaîne de caractères : le nom du moteur de recherche, affiché pour l'utilisateur.
+
search_url
+
Chaîne de caractères : l'URL utilisée par le moteur de recherche. Il peut être une URL HTTPS.
+
is_default
+
Booléen: "True" si le moteur de recherch doit être le choix par défaut.
+
alternate_urls {{optional_inline}}
+
Tableau de chaînes de caractères : un éventail d'URL alternatives, qui peut être utilisé à la place desearch_url.
+
encoding {{optional_inline}}
+
Chaîne de caractères : codage du terme de recherche, spécifié comme un standard character encoding name, voir "UTF-8".
+
favicon_url {{optional_inline}}
+
Chaîne de caractères : URL pointant sur une icône pour le moteur de recherche. Ce doit être une URL absolue HTTP ou HTTPS.
+
image_url {{optional_inline}}
+
Chaîne de caractères : URL utilisée pour une recherche d'images.
+
image_url_post_params {{optional_inline}}
+
Chaîne de caractères : paramètres POST à envoyer àimage_url.
+
instant_url {{optional_inline}}
+
Chaîne de caractères : URL utilisée pour une recherche instantanée.
+
instant_url_post_params {{optional_inline}}
+
Chaîne de caractères : paramètres POST à envoyer à instant_url.
+
keyword {{optional_inline}}
+
Chaîne de caractères : mots-clés de la barre d'adresse pour le moteur de recherche.
+
prepopulated_id {{optional_inline}}
+
L'ID d'un moteur de recherche intégré à utiliser.
+
search_url_post_params {{optional_inline}}
+
Chaîne de caractères : paramètres POST à envoyer àsearch_url.
+
suggest_url {{optional_inline}}
+
Chaîne de caractères : URL utilisée pour les suggestions de recherche. Ceci doit être une URL HTTPS
+
suggest_url_post_params {{optional_inline}}
+
Chaîne de caractères : paramètres POST à envoyer àsuggest_url.
+
+
+ +

Compatibilité de navigateur

+ +

{{Compat("webextensions.manifest.chrome_settings_overrides", 10)}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_url_overrides/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_url_overrides/index.html deleted file mode 100644 index a7134b5b93..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_url_overrides/index.html +++ /dev/null @@ -1,95 +0,0 @@ ---- -title: chrome_url_overrides -slug: Mozilla/Add-ons/WebExtensions/manifest.json/chrome_url_overrides -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/chrome_url_overrides ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObjet
ObligatoireNon
Exemple -
-  "chrome_url_overrides" : {
-    "newtab": "my-new-tab.html"
-  }
-
- -

Utilisez la clé chrome_url_overrides pour fournir un remplacement personnalisé pour les documents chargés dans différentes pages spéciales généralement fournies par le navigateur lui-même.

- -

Syntaxe

- -

La clé chrome_url_overrides est un objet qui peut avoir les propriétés suivantes:

- - - - - - - - - - - - - - - - - - - - - - - - - - -
NomTypeDescription
bookmarksChaîne de caractères -

Remplace la page qui affiche les signets.

-
historychaîne de caractères -

Remplace la page qui affiche l'historique de navigation.

-
newtabchaîne de caractères -

Remplace le document qui s'affiche dans la page "Nouvel onglet". Ceci est la page affichée lorsque l'utilisateur a ouvert un nouvel onglet, mais n'a chargé aucun document : par exemple, en utilisant le raccourci clavier Ctrl/Command+T.

- -

Le remplacement est donné en tant qu'URL d'un fichier HTML. Le fichier doit être regroupé avec l'extension : vous ne pouvez pas spécifier une URL distante ici. Vous pouvez le spécifier par rapport au dossier racine de l'extension, comme : "path/to/newtab.html".

- -

Le document peut charger CSS et JavaScript, tout comme une page Web normale. L'utilisation de JavaScript dans la page permet d'accéder aux mêmes API privilégiées "browser.*" comme une extension d'arrière-plan.

- -

Il est très pratique d'inclure un <title> pour la page, ou le titre de l'onglet sera l'URL "moz-extension://..." .

- -

Un cas d'utilisation courant est de permettre à l'utilisateur de définir une nouvelle page d'onglet : pour ce faire, fournir une nouvelle page d'onglet personnalisée qui navigue vers la page définie par l'utilisateur.

- -

Si deux ou plusieurs extensions définissent toutes les deux de nouvelles pages à onglet personnalisées, alors la dernière à être installée ou activée utilise sa valeur.

- -

Pour remplacer la page d'accueil du navigateur, utilisez plutôt "chrome_settings_overrides".

-
- -

Toutes les propriétés sont localisables.

- -

Exemple

- -
"chrome_url_overrides" : {
-  "newtab": "my-new-tab.html"
-}
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.chrome_url_overrides")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_url_overrides/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_url_overrides/index.md new file mode 100644 index 0000000000..a7134b5b93 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/chrome_url_overrides/index.md @@ -0,0 +1,95 @@ +--- +title: chrome_url_overrides +slug: Mozilla/Add-ons/WebExtensions/manifest.json/chrome_url_overrides +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/chrome_url_overrides +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObjet
ObligatoireNon
Exemple +
+  "chrome_url_overrides" : {
+    "newtab": "my-new-tab.html"
+  }
+
+ +

Utilisez la clé chrome_url_overrides pour fournir un remplacement personnalisé pour les documents chargés dans différentes pages spéciales généralement fournies par le navigateur lui-même.

+ +

Syntaxe

+ +

La clé chrome_url_overrides est un objet qui peut avoir les propriétés suivantes:

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
NomTypeDescription
bookmarksChaîne de caractères +

Remplace la page qui affiche les signets.

+
historychaîne de caractères +

Remplace la page qui affiche l'historique de navigation.

+
newtabchaîne de caractères +

Remplace le document qui s'affiche dans la page "Nouvel onglet". Ceci est la page affichée lorsque l'utilisateur a ouvert un nouvel onglet, mais n'a chargé aucun document : par exemple, en utilisant le raccourci clavier Ctrl/Command+T.

+ +

Le remplacement est donné en tant qu'URL d'un fichier HTML. Le fichier doit être regroupé avec l'extension : vous ne pouvez pas spécifier une URL distante ici. Vous pouvez le spécifier par rapport au dossier racine de l'extension, comme : "path/to/newtab.html".

+ +

Le document peut charger CSS et JavaScript, tout comme une page Web normale. L'utilisation de JavaScript dans la page permet d'accéder aux mêmes API privilégiées "browser.*" comme une extension d'arrière-plan.

+ +

Il est très pratique d'inclure un <title> pour la page, ou le titre de l'onglet sera l'URL "moz-extension://..." .

+ +

Un cas d'utilisation courant est de permettre à l'utilisateur de définir une nouvelle page d'onglet : pour ce faire, fournir une nouvelle page d'onglet personnalisée qui navigue vers la page définie par l'utilisateur.

+ +

Si deux ou plusieurs extensions définissent toutes les deux de nouvelles pages à onglet personnalisées, alors la dernière à être installée ou activée utilise sa valeur.

+ +

Pour remplacer la page d'accueil du navigateur, utilisez plutôt "chrome_settings_overrides".

+
+ +

Toutes les propriétés sont localisables.

+ +

Exemple

+ +
"chrome_url_overrides" : {
+  "newtab": "my-new-tab.html"
+}
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.chrome_url_overrides")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/commands/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/commands/index.html deleted file mode 100644 index b37b11610c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/commands/index.html +++ /dev/null @@ -1,196 +0,0 @@ ---- -title: commands -slug: Mozilla/Add-ons/WebExtensions/manifest.json/commands -tags: - - Add-ons - - Extensions - - Keyboard Shortcuts - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/commands ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObjet
ObligatoireNon
Exemple -
-"commands": {
-  "toggle-feature": {
-    "suggested_key": {
-      "default": "Ctrl+Shift+Y",
-      "linux": "Ctrl+Shift+U"
-    },
-    "description": "Send a 'toggle-feature' event"
-  }
-}
-
- -

Utilisez la clé commands pour définir un ou plusieurs raccourcis clavier pour votre extension.

- -

Chaque raccourci clavier est défini avec un nom, une combination de clé, et un description. Une fois que vous avez défini des commandes dans le fichier manifest.json, de votre extension, vous pouvez écouter leurs combinaisons de touches associées avec l'API JavaScript  {{WebExtAPIRef("commands")}}.

- -

Syntaxe

- -

La clé commands est un objet et chaque raccourci est une propriété de celui-ci. Le nom de la propriété est le nom du raccourci.

- -

Chaque raccourci est lui-même un objet, qui possède jusqu'à deux propriétés :

- - - -

La propriété suggested_key est elle-même un objet pouvant avoir l'une des propriétés suivantes et qui sont toutes des chaînes :

- - - -

La valeur de chaque propriété est le raccourci clavier pour la commande sur la plateforme donnée, sous la forme d'une chaîne contenant les touches séparées par "+". La valeur de "default" est utilisée sur toutes les plateformes qui ne sont pas listées explicitement.

- -

Par exemple :

- -
"commands": {
-  "toggle-feature": {
-    "suggested_key": {
-      "default": "Alt+Shift+U",
-      "linux": "Ctrl+Shift+U"
-    },
-    "description": "Send a 'toggle-feature' event to the extension"
-  },
-  "do-another-thing": {
-    "suggested_key": {
-      "default": "Ctrl+Shift+Y"
-    }
-  }
-}
- -

Cela définit deux raccourcis :

- - - -

Vous pouvez alors écouter la commande "toggle-feature" avec un code comme celui-ci :

- -
browser.commands.onCommand.addListener(function(command) {
-  if (command == "toggle-feature") {
-    console.log("toggling the feature!");
-  }
-});
- -

Raccourcis spéciaux

- -

Il existe 3 raccourci spéciaux avec des actions par défaut, pour lesquels l'événement  {{WebExtAPIRef("commands.onCommand")}} n'est pas déclenché :

- - - -

Par exemple, ce JSON définit une combinaison de touches qui clique sur l'action du navigateur de l'extension :

- -
"commands": {
-  "_execute_browser_action": {
-    "suggested_key": {
-      "default": "Ctrl+Shift+Y"
-    }
-  }
-}
- -

Les valeurs de raccourci

- -

Il existe deux formats valides pour les touches de raccourci : comme une combinaison de touches ou comme une clé multimédia.

- -

Combinaisons de touches

- -

Sur Mac, "Ctrl" est interprété comme "Command", donc si vous avez réellement besoin de "Ctrl", spécifiez "MacCtrl".

- -

Les combinaisons de touches doivent être composées de deux ou trois touches :

- -
    -
  1. modificateur (obligatoire, à l'exception des touches de fonction). Il peut s'agir de "Ctrl", "Alt", "Command", ou "MacCtrl".
  2. -
  3. second modificateur (facultatif). S'il est fourni, il doit être "Shift" ou (pour Firefox ≥ 63) l'un quelconque des "Ctrl", "Alt", "Command", ou "MacCtrl". Ne doit pas être le modificateur déjà utilisé comme modificateur principal.
  4. -
  5. touche (obligatoire). Ce peut être l'une des touches : -
      -
    • lettres AZ
    • -
    • chiffres 09
    • -
    • fonctions F1F12
    • -
    • Comma(virgule), Period(point), Home (début), End (Fin), PageUp(page précédente), PageDown (page suivante), Space (espace), Insert(inser), Delete(Suppr), Up (haut), Down (bas), Left(gauche), Right (droite)
    • -
    -
  6. -
- -

La clé est ensuite donnée sous la forme d'une chaîne contenant l'ensemble des valeurs de clé, dans l'ordre indiqué ci-dessus, séparées "+". Par exemple, "Ctrl+Shift+Z".

- -

Si une combinaison de touches est déjà utilisée par le navigateur (comme "Ctrl+P") ou par un complément existant, vous ne pouvez pas la remplacer. Vous pouvez le définir, mais votre gestionnaire d'événements ne sera pas appelé lorsque l'utilisateur appuiera sur la combinaison de touches.

- -

Touches médias

- -

Une alternative est de spécifier le raccourci comme l'une des touches de média suivantes :

- - - -

Mise à jour des raccourcis

- -

Les raccourcis peuvent être mis à jour via {{WebExtAPIRef("commands.update()")}}. Les utilisateurs peuvent également mettre à jour les raccourcis via l'option "Gérer les raccourcis d'extension" sur about:addons dans Firefox, comme montré dans cette video. Dans Chrome, les utilisateurs peuvent modifier les raccourcis sur chrome://extensions/shortcuts.

- -

Exemple

- -

Définissez un seul raccourci clavier en utilisant uniquement la combinaison de touches par défaut :

- -
"commands": {
-  "toggle-feature": {
-    "suggested_key": {
-      "default": "Ctrl+Shift+Y"
-    },
-    "description": "Send a 'toggle-feature' event"
-  }
-}
- -

Définissez deux raccourcis clavier, l'un avec une combinaison de touches spécifique à la plate-forme :

- -
"commands": {
-  "toggle-feature": {
-    "suggested_key": {
-      "default": "Alt+Shift+U",
-      "linux": "Ctrl+Shift+U"
-    },
-    "description": "Send a 'toggle-feature' event"
-  },
-  "do-another-thing": {
-    "suggested_key": {
-      "default": "Ctrl+Shift+Y"
-    }
-  }
-}
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.commands")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/commands/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/commands/index.md new file mode 100644 index 0000000000..b37b11610c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/commands/index.md @@ -0,0 +1,196 @@ +--- +title: commands +slug: Mozilla/Add-ons/WebExtensions/manifest.json/commands +tags: + - Add-ons + - Extensions + - Keyboard Shortcuts + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/commands +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObjet
ObligatoireNon
Exemple +
+"commands": {
+  "toggle-feature": {
+    "suggested_key": {
+      "default": "Ctrl+Shift+Y",
+      "linux": "Ctrl+Shift+U"
+    },
+    "description": "Send a 'toggle-feature' event"
+  }
+}
+
+ +

Utilisez la clé commands pour définir un ou plusieurs raccourcis clavier pour votre extension.

+ +

Chaque raccourci clavier est défini avec un nom, une combination de clé, et un description. Une fois que vous avez défini des commandes dans le fichier manifest.json, de votre extension, vous pouvez écouter leurs combinaisons de touches associées avec l'API JavaScript  {{WebExtAPIRef("commands")}}.

+ +

Syntaxe

+ +

La clé commands est un objet et chaque raccourci est une propriété de celui-ci. Le nom de la propriété est le nom du raccourci.

+ +

Chaque raccourci est lui-même un objet, qui possède jusqu'à deux propriétés :

+ + + +

La propriété suggested_key est elle-même un objet pouvant avoir l'une des propriétés suivantes et qui sont toutes des chaînes :

+ + + +

La valeur de chaque propriété est le raccourci clavier pour la commande sur la plateforme donnée, sous la forme d'une chaîne contenant les touches séparées par "+". La valeur de "default" est utilisée sur toutes les plateformes qui ne sont pas listées explicitement.

+ +

Par exemple :

+ +
"commands": {
+  "toggle-feature": {
+    "suggested_key": {
+      "default": "Alt+Shift+U",
+      "linux": "Ctrl+Shift+U"
+    },
+    "description": "Send a 'toggle-feature' event to the extension"
+  },
+  "do-another-thing": {
+    "suggested_key": {
+      "default": "Ctrl+Shift+Y"
+    }
+  }
+}
+ +

Cela définit deux raccourcis :

+ + + +

Vous pouvez alors écouter la commande "toggle-feature" avec un code comme celui-ci :

+ +
browser.commands.onCommand.addListener(function(command) {
+  if (command == "toggle-feature") {
+    console.log("toggling the feature!");
+  }
+});
+ +

Raccourcis spéciaux

+ +

Il existe 3 raccourci spéciaux avec des actions par défaut, pour lesquels l'événement  {{WebExtAPIRef("commands.onCommand")}} n'est pas déclenché :

+ + + +

Par exemple, ce JSON définit une combinaison de touches qui clique sur l'action du navigateur de l'extension :

+ +
"commands": {
+  "_execute_browser_action": {
+    "suggested_key": {
+      "default": "Ctrl+Shift+Y"
+    }
+  }
+}
+ +

Les valeurs de raccourci

+ +

Il existe deux formats valides pour les touches de raccourci : comme une combinaison de touches ou comme une clé multimédia.

+ +

Combinaisons de touches

+ +

Sur Mac, "Ctrl" est interprété comme "Command", donc si vous avez réellement besoin de "Ctrl", spécifiez "MacCtrl".

+ +

Les combinaisons de touches doivent être composées de deux ou trois touches :

+ +
    +
  1. modificateur (obligatoire, à l'exception des touches de fonction). Il peut s'agir de "Ctrl", "Alt", "Command", ou "MacCtrl".
  2. +
  3. second modificateur (facultatif). S'il est fourni, il doit être "Shift" ou (pour Firefox ≥ 63) l'un quelconque des "Ctrl", "Alt", "Command", ou "MacCtrl". Ne doit pas être le modificateur déjà utilisé comme modificateur principal.
  4. +
  5. touche (obligatoire). Ce peut être l'une des touches : +
      +
    • lettres AZ
    • +
    • chiffres 09
    • +
    • fonctions F1F12
    • +
    • Comma(virgule), Period(point), Home (début), End (Fin), PageUp(page précédente), PageDown (page suivante), Space (espace), Insert(inser), Delete(Suppr), Up (haut), Down (bas), Left(gauche), Right (droite)
    • +
    +
  6. +
+ +

La clé est ensuite donnée sous la forme d'une chaîne contenant l'ensemble des valeurs de clé, dans l'ordre indiqué ci-dessus, séparées "+". Par exemple, "Ctrl+Shift+Z".

+ +

Si une combinaison de touches est déjà utilisée par le navigateur (comme "Ctrl+P") ou par un complément existant, vous ne pouvez pas la remplacer. Vous pouvez le définir, mais votre gestionnaire d'événements ne sera pas appelé lorsque l'utilisateur appuiera sur la combinaison de touches.

+ +

Touches médias

+ +

Une alternative est de spécifier le raccourci comme l'une des touches de média suivantes :

+ + + +

Mise à jour des raccourcis

+ +

Les raccourcis peuvent être mis à jour via {{WebExtAPIRef("commands.update()")}}. Les utilisateurs peuvent également mettre à jour les raccourcis via l'option "Gérer les raccourcis d'extension" sur about:addons dans Firefox, comme montré dans cette video. Dans Chrome, les utilisateurs peuvent modifier les raccourcis sur chrome://extensions/shortcuts.

+ +

Exemple

+ +

Définissez un seul raccourci clavier en utilisant uniquement la combinaison de touches par défaut :

+ +
"commands": {
+  "toggle-feature": {
+    "suggested_key": {
+      "default": "Ctrl+Shift+Y"
+    },
+    "description": "Send a 'toggle-feature' event"
+  }
+}
+ +

Définissez deux raccourcis clavier, l'un avec une combinaison de touches spécifique à la plate-forme :

+ +
"commands": {
+  "toggle-feature": {
+    "suggested_key": {
+      "default": "Alt+Shift+U",
+      "linux": "Ctrl+Shift+U"
+    },
+    "description": "Send a 'toggle-feature' event"
+  },
+  "do-another-thing": {
+    "suggested_key": {
+      "default": "Ctrl+Shift+Y"
+    }
+  }
+}
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.commands")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/content_scripts/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/content_scripts/index.html deleted file mode 100644 index 05c42eb71b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/content_scripts/index.html +++ /dev/null @@ -1,232 +0,0 @@ ---- -title: content_scripts -slug: Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
Type{{ jsxref("array", "Tableau") }}
ObligatoireNon
Exemple -
-"content_scripts": [
-  {
-    "matches": ["*://*.mozilla.org/*"],
-    "js": ["borderify.js"]
-  }
-]
-
- -

Ordonne au navigateur de charger des scripts de contenu dans les pages web dont l’URL correspond à un modèle donné.

- -

Cette clé est un tableau. Chaque élément est un objet qui :

- - - -

Le tableau ci-dessous présente le détail de toutes les clés que vous pouvez inclure.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NomTypeDescription
all_frames{{ jsxref("boolean", "Booléen") }} -

true : injecte les scripts spécifiés dans {{ anch("js") }} et {{ anch("css") }} dans tous les cadres correspondant aux exigences d’URL spécifiées, même s’il n’est pas le cadre le plus haut d’un onglet. Cela n’injecte pas dans les cadres enfants quand seul leur parent correspond aux exigences d’URL et pas les cadres enfants. Les exigences d’URL sont vérifiées pour chaque cadre indépendamment.

- -

false : injecte seulement dans le cadre le plus haut de l’onglet qui répond aux exigences d’URL.

- -

Par défaut à false.

-
css{{ jsxref("array", "Tableau") }} -

Un tableau de chemins, relatifs à manifest.json, référençant les fichiers CSS qui seront injectés dans les pages correspondantes.

- -

Les fichiers sont injectés dans l’ordre donné, et avant que le DOM ne soit chargé.

- -
-

Note : Firefox résout les URLs dans les fichiers CSS injectés par rapport au fichier CSS lui-même, plutôt que par rapport à la page dans laquelle il est injecté.

-
-
exclude_globs{{ jsxref("array", "Tableau") }} -

Un tableau de chaînes contenant des caractères génériques. Voir les {{ anch("Les_modèles_de_correspondance_d’URL", "modèles de correpondance d’URL") }} ci-dessous.

-
exclude_matches{{ jsxref("array", "Tableau") }} -

Un tableau de modèles de correspondance. Voir les {{ anch("Les_modèles_de_correspondance_d’URL", "modèles de correpondance d’URL") }} ci-dessous.

-
include_globs{{ jsxref("array", "Tableau") }}Un tableau de chaînes contenant des caractères génériques. Voir les {{ anch("Les_modèles_de_correspondance_d’URL", "modèles de correpondance d’URL") }} ci-dessous.
js{{ jsxref("array", "Tableau") }} -

Un tableau de chemins, relatifs au fichier manifest.json, référençant les fichiers JavaScript qui seront injectés dans les pages correspondantes.

- -

Les fichiers sont injectés dans l’ordre indiqué. Cela signifie que, par exemple, si vous incluez ici jQuery suivi d’un autre script de contenu, comme ceci :

- -
"js": ["jquery.js", "my-content-script.js"]
- -

alors my-content-script.js peut utiliser jQuery.

- -

Les fichiers sont injectés au moment spécifié par {{ anch("run_at") }}.

-
match_about_blank{{ jsxref("boolean", "Booléen") }} -

Insère les scripts de contenu dans les pages dont l’URL est about:blank ou about:srcdoc, si l’URL de la page qui a ouvert ou créé cette page {{ anch("Les_modèles_de_correspondance_d’URL", "correspond aux modèles") }} spécifiés dans le reste de la clé content_scripts.

- -

Ceci est particulièrement utile pour exécuter des scripts dans des {{ htmlelement("iframe", "iframes") }} vides, dont l’URL est about:blank. Pour ce faire, vous devez également définir la clé all_frames.

- -

Par exemple, supposons que vous disposiez d’une clé de content_scripts comme ceci :

- -
-"content_scripts": [
-  {
-    "js": ["my-script.js"],
-    "matches": ["https://example.org/"],
-    "match_about_blank": true,
-    "all_frames": true
-  }
-]
- -

Si l’utilisateur ou l’utilisatrice charge https://example.org/, et si cette page intègre une iframe vide, alors my-script.js sera chargé dans l’iframe.

- -

match_about_blank est supporté dans Firefox à partir de la version 52. Notez que dans Firefox, les scripts de contenu ne seront pas injectés dans les iframes vides à "document_start" même si vous spécifiez cette valeur dans {{ anch("run_at") }}.

-
matches{{ jsxref("array", "Tableau") }} -

Un ensemble de modèles de correspondance. Voir les {{ anch("Les_modèles_de_correspondance_d’URL", "modèles de correpondance d’URL") }} ci-dessous.

- -

C’est la seule clé obligatoire.

-
run_at{{ jsxref("string", "Chaîne") }} -

Cette option détermine quand les scripts spécifiés dans {{ anch("js") }} sont injectés. Vous pouvez fournir une chaîne parmi trois ici, chacune identifiant un état dans le processus de chargement d’un document. Les états correspondent directement à {{domxref("Document/readyState", "Document.readyState")}} :

- -
    -
  • "document_start" : correspond à "loading". Le DOM est toujours en cours de chargement.
  • -
  • "document_end" : correspond à "interactive". Le DOM a fini de charger, mais des ressources telles que des scripts et des images peuvent toujours être en cours de chargement.
  • -
  • "document_idle" : correspond à "complete". Le document et toutes ses ressources ont terminé de charger.
  • -
- -

La valeur par défaut est "document_idle".

- -

Dans tous les cas, les fichiers dans {{ anch("js") }} sont injectés après les fichiers dans {{ anch("css") }}.

-
- -

Les modèles de correspondance d’URL

- -

La clé content_scripts associe les scripts de contenu aux documents en fonction de la correspondance des URL : si l’URL du document correspond à la spécification de la clé, le script sera joint. Il existe quatre propriétés dans content_scripts que vous pouvez utiliser pour cette spécification :

- - - -

Pour associer une de ces propriétés, une URL doit correspondre à au moins un des éléments de son tableau. Par exemple, donner une propriété comme :

- -
"matches": ["*://*.example.org/*", "*://*.example.com/*"]
- -

Les deux adresses http://example.org/ et http://example.com/ correspondront.

- -

Étant donné que matches est la seule clé obligatoire, les trois autres clés sont utilisées pour limiter davantage les URL qui correspondent. Pour associer la clé dans son ensemble, une URL doit :

- -
    -
  1. Correspondre à la propriété matches ;
  2. -
  3. ET associer à la propriété include_globs, si présent ;
  4. -
  5. ET NE PAS correspondre à la propriété exclude_matches, si présent ;
  6. -
  7. ET NE PAS correspondre à la propriété exclude_globs, si présent.
  8. -
- -

globs

- -

Un « glob » est juste une chaîne qui peut contenir des caractères génériques. Il existe deux types de caractères génériques, et vous pouvez les combiner dans le même glob :

- - - -

Par exemple : "*na?i" correspond à "illuminati" et à "annunaki", mais pas à "sagnarelli".

- -

Exemple

- -
"content_scripts": [
-  {
-    "matches": ["*://*.mozilla.org/*"],
-    "js": ["borderify.js"]
-  }
-]
- -

Cela injecte un seul script de contenu borderify.js dans toutes les pages sous mozilla.org ou l’un de ses sous-domaines, qu’ils soient fournis via HTTP ou HTTPS.

- -
"content_scripts": [
-  {
-    "exclude_matches": ["*://developer.mozilla.org/*"],
-    "matches": ["*://*.mozilla.org/*"],
-    "js": ["jquery.js", "borderify.js"]
-  }
-]
- -

Cela implique deux scripts de contenu dans toutes les pages sous mozilla.org ou l’un de ses sous-domaines, à l’exception de developer.mozilla.org, qu’il s’agisse de HTTP ou HTTPS.

- -

Les scripts de contenu ont la même vue du DOM et sont injectés dans l’ordre où ils apparaissent dans le tableau, de sorte que borderify.js peut voir les variables globales ajoutées par jquery.js.

- -

Compatibilité des navigateurs

- -
{{Compat("webextensions.manifest.content_scripts")}}
diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/content_scripts/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/content_scripts/index.md new file mode 100644 index 0000000000..05c42eb71b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/content_scripts/index.md @@ -0,0 +1,232 @@ +--- +title: content_scripts +slug: Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/content_scripts +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
Type{{ jsxref("array", "Tableau") }}
ObligatoireNon
Exemple +
+"content_scripts": [
+  {
+    "matches": ["*://*.mozilla.org/*"],
+    "js": ["borderify.js"]
+  }
+]
+
+ +

Ordonne au navigateur de charger des scripts de contenu dans les pages web dont l’URL correspond à un modèle donné.

+ +

Cette clé est un tableau. Chaque élément est un objet qui :

+ + + +

Le tableau ci-dessous présente le détail de toutes les clés que vous pouvez inclure.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NomTypeDescription
all_frames{{ jsxref("boolean", "Booléen") }} +

true : injecte les scripts spécifiés dans {{ anch("js") }} et {{ anch("css") }} dans tous les cadres correspondant aux exigences d’URL spécifiées, même s’il n’est pas le cadre le plus haut d’un onglet. Cela n’injecte pas dans les cadres enfants quand seul leur parent correspond aux exigences d’URL et pas les cadres enfants. Les exigences d’URL sont vérifiées pour chaque cadre indépendamment.

+ +

false : injecte seulement dans le cadre le plus haut de l’onglet qui répond aux exigences d’URL.

+ +

Par défaut à false.

+
css{{ jsxref("array", "Tableau") }} +

Un tableau de chemins, relatifs à manifest.json, référençant les fichiers CSS qui seront injectés dans les pages correspondantes.

+ +

Les fichiers sont injectés dans l’ordre donné, et avant que le DOM ne soit chargé.

+ +
+

Note : Firefox résout les URLs dans les fichiers CSS injectés par rapport au fichier CSS lui-même, plutôt que par rapport à la page dans laquelle il est injecté.

+
+
exclude_globs{{ jsxref("array", "Tableau") }} +

Un tableau de chaînes contenant des caractères génériques. Voir les {{ anch("Les_modèles_de_correspondance_d’URL", "modèles de correpondance d’URL") }} ci-dessous.

+
exclude_matches{{ jsxref("array", "Tableau") }} +

Un tableau de modèles de correspondance. Voir les {{ anch("Les_modèles_de_correspondance_d’URL", "modèles de correpondance d’URL") }} ci-dessous.

+
include_globs{{ jsxref("array", "Tableau") }}Un tableau de chaînes contenant des caractères génériques. Voir les {{ anch("Les_modèles_de_correspondance_d’URL", "modèles de correpondance d’URL") }} ci-dessous.
js{{ jsxref("array", "Tableau") }} +

Un tableau de chemins, relatifs au fichier manifest.json, référençant les fichiers JavaScript qui seront injectés dans les pages correspondantes.

+ +

Les fichiers sont injectés dans l’ordre indiqué. Cela signifie que, par exemple, si vous incluez ici jQuery suivi d’un autre script de contenu, comme ceci :

+ +
"js": ["jquery.js", "my-content-script.js"]
+ +

alors my-content-script.js peut utiliser jQuery.

+ +

Les fichiers sont injectés au moment spécifié par {{ anch("run_at") }}.

+
match_about_blank{{ jsxref("boolean", "Booléen") }} +

Insère les scripts de contenu dans les pages dont l’URL est about:blank ou about:srcdoc, si l’URL de la page qui a ouvert ou créé cette page {{ anch("Les_modèles_de_correspondance_d’URL", "correspond aux modèles") }} spécifiés dans le reste de la clé content_scripts.

+ +

Ceci est particulièrement utile pour exécuter des scripts dans des {{ htmlelement("iframe", "iframes") }} vides, dont l’URL est about:blank. Pour ce faire, vous devez également définir la clé all_frames.

+ +

Par exemple, supposons que vous disposiez d’une clé de content_scripts comme ceci :

+ +
+"content_scripts": [
+  {
+    "js": ["my-script.js"],
+    "matches": ["https://example.org/"],
+    "match_about_blank": true,
+    "all_frames": true
+  }
+]
+ +

Si l’utilisateur ou l’utilisatrice charge https://example.org/, et si cette page intègre une iframe vide, alors my-script.js sera chargé dans l’iframe.

+ +

match_about_blank est supporté dans Firefox à partir de la version 52. Notez que dans Firefox, les scripts de contenu ne seront pas injectés dans les iframes vides à "document_start" même si vous spécifiez cette valeur dans {{ anch("run_at") }}.

+
matches{{ jsxref("array", "Tableau") }} +

Un ensemble de modèles de correspondance. Voir les {{ anch("Les_modèles_de_correspondance_d’URL", "modèles de correpondance d’URL") }} ci-dessous.

+ +

C’est la seule clé obligatoire.

+
run_at{{ jsxref("string", "Chaîne") }} +

Cette option détermine quand les scripts spécifiés dans {{ anch("js") }} sont injectés. Vous pouvez fournir une chaîne parmi trois ici, chacune identifiant un état dans le processus de chargement d’un document. Les états correspondent directement à {{domxref("Document/readyState", "Document.readyState")}} :

+ +
    +
  • "document_start" : correspond à "loading". Le DOM est toujours en cours de chargement.
  • +
  • "document_end" : correspond à "interactive". Le DOM a fini de charger, mais des ressources telles que des scripts et des images peuvent toujours être en cours de chargement.
  • +
  • "document_idle" : correspond à "complete". Le document et toutes ses ressources ont terminé de charger.
  • +
+ +

La valeur par défaut est "document_idle".

+ +

Dans tous les cas, les fichiers dans {{ anch("js") }} sont injectés après les fichiers dans {{ anch("css") }}.

+
+ +

Les modèles de correspondance d’URL

+ +

La clé content_scripts associe les scripts de contenu aux documents en fonction de la correspondance des URL : si l’URL du document correspond à la spécification de la clé, le script sera joint. Il existe quatre propriétés dans content_scripts que vous pouvez utiliser pour cette spécification :

+ + + +

Pour associer une de ces propriétés, une URL doit correspondre à au moins un des éléments de son tableau. Par exemple, donner une propriété comme :

+ +
"matches": ["*://*.example.org/*", "*://*.example.com/*"]
+ +

Les deux adresses http://example.org/ et http://example.com/ correspondront.

+ +

Étant donné que matches est la seule clé obligatoire, les trois autres clés sont utilisées pour limiter davantage les URL qui correspondent. Pour associer la clé dans son ensemble, une URL doit :

+ +
    +
  1. Correspondre à la propriété matches ;
  2. +
  3. ET associer à la propriété include_globs, si présent ;
  4. +
  5. ET NE PAS correspondre à la propriété exclude_matches, si présent ;
  6. +
  7. ET NE PAS correspondre à la propriété exclude_globs, si présent.
  8. +
+ +

globs

+ +

Un « glob » est juste une chaîne qui peut contenir des caractères génériques. Il existe deux types de caractères génériques, et vous pouvez les combiner dans le même glob :

+ + + +

Par exemple : "*na?i" correspond à "illuminati" et à "annunaki", mais pas à "sagnarelli".

+ +

Exemple

+ +
"content_scripts": [
+  {
+    "matches": ["*://*.mozilla.org/*"],
+    "js": ["borderify.js"]
+  }
+]
+ +

Cela injecte un seul script de contenu borderify.js dans toutes les pages sous mozilla.org ou l’un de ses sous-domaines, qu’ils soient fournis via HTTP ou HTTPS.

+ +
"content_scripts": [
+  {
+    "exclude_matches": ["*://developer.mozilla.org/*"],
+    "matches": ["*://*.mozilla.org/*"],
+    "js": ["jquery.js", "borderify.js"]
+  }
+]
+ +

Cela implique deux scripts de contenu dans toutes les pages sous mozilla.org ou l’un de ses sous-domaines, à l’exception de developer.mozilla.org, qu’il s’agisse de HTTP ou HTTPS.

+ +

Les scripts de contenu ont la même vue du DOM et sont injectés dans l’ordre où ils apparaissent dans le tableau, de sorte que borderify.js peut voir les variables globales ajoutées par jquery.js.

+ +

Compatibilité des navigateurs

+ +
{{Compat("webextensions.manifest.content_scripts")}}
diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/content_security_policy/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/content_security_policy/index.html deleted file mode 100644 index 5689c7be65..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/content_security_policy/index.html +++ /dev/null @@ -1,115 +0,0 @@ ---- -title: content_security_policy -slug: Mozilla/Add-ons/WebExtensions/manifest.json/content_security_policy -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/content_security_policy ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeString
ObligatoireNon
Exemple -
-"content_security_policy": "default-src 'self'"
-
- -

Les extensions ont une politique de sécurité de contenu qui leur est appliquée par défaut. La stratégie par défaut restreint les sources à partir desquelles elles peuvent charger les ressources <script> et <object>, et interdit les pratiques potentiellement dangereuses telles que l’utilisation d’eval(). Voir la politique de sécurité de contenu par défaut pour en savoir plus sur ces implications.

- -

Vous pouvez utiliser la clé "content_security_policy" pour desserrer ou resserrer la politique par défaut. Cette clé est spécifiée de la même manière que l’en-tête HTTP Content-Security-Policy. Voir l’utilisation de la politique de sécurité de contenu pour une description générale de la syntaxe de CSP.

- -

Par exemple, vous pouvez utiliser cette clé pour :

- - - -

Il existe des restrictions sur la politique que vous pouvez spécifier ici :

- - - -

Exemple

- -

Examples valides

- -

Autoriser les scripts distants de "https://example.com" : (voir note 1)

- -
"content_security_policy": "script-src 'self' https://example.com; object-src 'self'"
- -

Autoriser les scripts distants depuis n’importe quel sous-domaine de « jquery.com » :

- -
"content_security_policy": "script-src 'self' https://*.jquery.com; object-src 'self'"
- -

Autoriser eval() et ses amis :

- -
"content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self';"
- -

Autoriser le script en ligne : "<script>alert('Hello, world.');</script>" :

- -
"content_security_policy": "script-src 'self' 'sha256-qznLcsROx4GACP2dm0UCKCzCG+HiZ1guq6ZZDob/Tng='; object-src 'self'"
- -

Conserver le reste de la politique, mais exiger également que les images soient empaquetées avec l’extension :

- -
"content_security_policy": "script-src 'self'; object-src 'self'; img-src 'self'"
- -

Exiger que tous les types de contenu soient empaquetés avec l’extension :

- -
"content_security_policy": "default-src 'self'"
-
- -

Exemples non valides

- -

Politique qui omet la directive "object-src" :

- -
"content_security_policy": "script-src 'self' https://*.jquery.com;"
- -

Politique qui omet le mot-clé "self" dans la directive "script-src" :

- -
"content_security_policy": "script-src https://*.jquery.com; object-src 'self'"
- -

Le schéma pour une source distante n’est pas https: :

- -
"content_security_policy": "script-src 'self' http://code.jquery.com; object-src 'self'"
- -

Le caractère générique est utilisé avec un domaine générique :

- -
"content_security_policy": "script-src 'self' https://*.blogspot.com; object-src 'self'"
- -

La source spécifie un schéma mais aucun hôte :

- -
"content_security_policy": "script-src 'self' https:; object-src 'self'"
- -

La directive inclut le mot-clé non pris en charge 'unsafe-inline' :

- -
"content_security_policy": "script-src 'self' 'unsafe-inline'; object-src 'self'"
- -

1. Note : les exemples valides montrent l’utilisation correcte des clés dans CSP. Toutefois, les extensions avec 'unsafe-eval', 'unsafe-inline', des blobs, des scripts ou des sources distantes dans leur CSP ne sont pas autorisées à être répertoriées sur addons.mozilla.org en raison de problèmes de sécurité majeurs.

- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.manifest.content_security_policy")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/content_security_policy/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/content_security_policy/index.md new file mode 100644 index 0000000000..5689c7be65 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/content_security_policy/index.md @@ -0,0 +1,115 @@ +--- +title: content_security_policy +slug: Mozilla/Add-ons/WebExtensions/manifest.json/content_security_policy +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/content_security_policy +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeString
ObligatoireNon
Exemple +
+"content_security_policy": "default-src 'self'"
+
+ +

Les extensions ont une politique de sécurité de contenu qui leur est appliquée par défaut. La stratégie par défaut restreint les sources à partir desquelles elles peuvent charger les ressources <script> et <object>, et interdit les pratiques potentiellement dangereuses telles que l’utilisation d’eval(). Voir la politique de sécurité de contenu par défaut pour en savoir plus sur ces implications.

+ +

Vous pouvez utiliser la clé "content_security_policy" pour desserrer ou resserrer la politique par défaut. Cette clé est spécifiée de la même manière que l’en-tête HTTP Content-Security-Policy. Voir l’utilisation de la politique de sécurité de contenu pour une description générale de la syntaxe de CSP.

+ +

Par exemple, vous pouvez utiliser cette clé pour :

+ + + +

Il existe des restrictions sur la politique que vous pouvez spécifier ici :

+ + + +

Exemple

+ +

Examples valides

+ +

Autoriser les scripts distants de "https://example.com" : (voir note 1)

+ +
"content_security_policy": "script-src 'self' https://example.com; object-src 'self'"
+ +

Autoriser les scripts distants depuis n’importe quel sous-domaine de « jquery.com » :

+ +
"content_security_policy": "script-src 'self' https://*.jquery.com; object-src 'self'"
+ +

Autoriser eval() et ses amis :

+ +
"content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self';"
+ +

Autoriser le script en ligne : "<script>alert('Hello, world.');</script>" :

+ +
"content_security_policy": "script-src 'self' 'sha256-qznLcsROx4GACP2dm0UCKCzCG+HiZ1guq6ZZDob/Tng='; object-src 'self'"
+ +

Conserver le reste de la politique, mais exiger également que les images soient empaquetées avec l’extension :

+ +
"content_security_policy": "script-src 'self'; object-src 'self'; img-src 'self'"
+ +

Exiger que tous les types de contenu soient empaquetés avec l’extension :

+ +
"content_security_policy": "default-src 'self'"
+
+ +

Exemples non valides

+ +

Politique qui omet la directive "object-src" :

+ +
"content_security_policy": "script-src 'self' https://*.jquery.com;"
+ +

Politique qui omet le mot-clé "self" dans la directive "script-src" :

+ +
"content_security_policy": "script-src https://*.jquery.com; object-src 'self'"
+ +

Le schéma pour une source distante n’est pas https: :

+ +
"content_security_policy": "script-src 'self' http://code.jquery.com; object-src 'self'"
+ +

Le caractère générique est utilisé avec un domaine générique :

+ +
"content_security_policy": "script-src 'self' https://*.blogspot.com; object-src 'self'"
+ +

La source spécifie un schéma mais aucun hôte :

+ +
"content_security_policy": "script-src 'self' https:; object-src 'self'"
+ +

La directive inclut le mot-clé non pris en charge 'unsafe-inline' :

+ +
"content_security_policy": "script-src 'self' 'unsafe-inline'; object-src 'self'"
+ +

1. Note : les exemples valides montrent l’utilisation correcte des clés dans CSP. Toutefois, les extensions avec 'unsafe-eval', 'unsafe-inline', des blobs, des scripts ou des sources distantes dans leur CSP ne sont pas autorisées à être répertoriées sur addons.mozilla.org en raison de problèmes de sécurité majeurs.

+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.manifest.content_security_policy")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/default_locale/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/default_locale/index.html deleted file mode 100644 index 8081e37c38..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/default_locale/index.html +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: default_locale -slug: Mozilla/Add-ons/WebExtensions/manifest.json/default_locale -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/default_locale ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
Typechaîne
Obligatoire -

Il doit être présent si le sous-répertoire _locales est présent, sinon il doit être absent.

-
Exemple -
-"default_locale": "fr"
-
- -

Cette clé doit être présente si l'extension contient le répertoire _locales, et doit être absente sinon. Il identifie un sous-répertoire de _locales, et ce sous-répertoire sera utilisé pour trouver les chaînes par défaut pour votre extension.

- -

Voir Internationalisation.

- -

Exemple

- -
"default_locale": "fr"
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.default_locale")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/default_locale/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/default_locale/index.md new file mode 100644 index 0000000000..8081e37c38 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/default_locale/index.md @@ -0,0 +1,44 @@ +--- +title: default_locale +slug: Mozilla/Add-ons/WebExtensions/manifest.json/default_locale +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/default_locale +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
Typechaîne
Obligatoire +

Il doit être présent si le sous-répertoire _locales est présent, sinon il doit être absent.

+
Exemple +
+"default_locale": "fr"
+
+ +

Cette clé doit être présente si l'extension contient le répertoire _locales, et doit être absente sinon. Il identifie un sous-répertoire de _locales, et ce sous-répertoire sera utilisé pour trouver les chaînes par défaut pour votre extension.

+ +

Voir Internationalisation.

+ +

Exemple

+ +
"default_locale": "fr"
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.default_locale")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/description/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/description/index.html deleted file mode 100644 index 3db7d64c3c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/description/index.html +++ /dev/null @@ -1,42 +0,0 @@ ---- -title: description -slug: Mozilla/Add-ons/WebExtensions/manifest.json/description -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/description ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
Typechaîne
ObligatoireNon
Exemple -
-"description": "Remplace des images par des portraits de chats."
-
- -

Une brève description de l'extension, destinée à être affichée dans l'interface utilisateur du navigateur.

- -

Ceci est une propriété localisable.

- -

Exemple

- -
"description": "Remplace des images par des portraits de chats."
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.description")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/description/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/description/index.md new file mode 100644 index 0000000000..3db7d64c3c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/description/index.md @@ -0,0 +1,42 @@ +--- +title: description +slug: Mozilla/Add-ons/WebExtensions/manifest.json/description +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/description +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
Typechaîne
ObligatoireNon
Exemple +
+"description": "Remplace des images par des portraits de chats."
+
+ +

Une brève description de l'extension, destinée à être affichée dans l'interface utilisateur du navigateur.

+ +

Ceci est une propriété localisable.

+ +

Exemple

+ +
"description": "Remplace des images par des portraits de chats."
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.description")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/developer/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/developer/index.html deleted file mode 100644 index 06cb4c1223..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/developer/index.html +++ /dev/null @@ -1,50 +0,0 @@ ---- -title: developer -slug: Mozilla/Add-ons/WebExtensions/manifest.json/developer -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/developer ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObjet
ObligatoireNon
Exemple -
-"developer": {
-  "name": "Walt Whitman",
-  "url": "https://en.wikipedia.org/wiki/Walt_Whitman"
-}
-
- -

Le nom du développeur de l'extension et l'URL de sa page d'accueil, destinés à être affichés dans l'interface utilisateur du navigateur.

- -

L'objet et ses deux propriétés sont facultatifs. Les propriétés "nom" et "url", si présentes, remplacent respectivement les clés author et homepage_url. Cet objet ne permet qu'un seul nom de développeur et une URL à spécifier.

- -

Ceci est une propriété localisable.

- -

Exemple

- -
"developer": {
-  "name": "Walt Whitman",
-  "url": "https://en.wikipedia.org/wiki/Walt_Whitman"
-}
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.developer")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/developer/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/developer/index.md new file mode 100644 index 0000000000..06cb4c1223 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/developer/index.md @@ -0,0 +1,50 @@ +--- +title: developer +slug: Mozilla/Add-ons/WebExtensions/manifest.json/developer +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/developer +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObjet
ObligatoireNon
Exemple +
+"developer": {
+  "name": "Walt Whitman",
+  "url": "https://en.wikipedia.org/wiki/Walt_Whitman"
+}
+
+ +

Le nom du développeur de l'extension et l'URL de sa page d'accueil, destinés à être affichés dans l'interface utilisateur du navigateur.

+ +

L'objet et ses deux propriétés sont facultatifs. Les propriétés "nom" et "url", si présentes, remplacent respectivement les clés author et homepage_url. Cet objet ne permet qu'un seul nom de développeur et une URL à spécifier.

+ +

Ceci est une propriété localisable.

+ +

Exemple

+ +
"developer": {
+  "name": "Walt Whitman",
+  "url": "https://en.wikipedia.org/wiki/Walt_Whitman"
+}
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.developer")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/devtools_page/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/devtools_page/index.html deleted file mode 100644 index 0abeca65bf..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/devtools_page/index.html +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: devtools_page -slug: Mozilla/Add-ons/WebExtensions/manifest.json/devtools_page -tags: - - Add-ons - - DevTools - - Extensions - - Manifest - - Reference - - WebExtensions - - devtools_page -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/devtools_page ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
Typechaîne
ObligatoireNon
Exemple -
-"devtools_page": "devtools/my-page.html"
-
- -

Utilisez cette clé pour activer votre extension et intégrer les outils de développement du navigateur.

- -

Cette clé est définie comme une URL d'un fichier HTML. Le fichier HTML doit être regroupé avec l'extension, et l'URL est relative à la racine de l'extension.

- -

Voir Extension des outils développeurs pour plus d'informations.

- -

Exemple

- -
"devtools_page": "devtools/my-page.html"
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.devtools_page")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/devtools_page/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/devtools_page/index.md new file mode 100644 index 0000000000..0abeca65bf --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/devtools_page/index.md @@ -0,0 +1,48 @@ +--- +title: devtools_page +slug: Mozilla/Add-ons/WebExtensions/manifest.json/devtools_page +tags: + - Add-ons + - DevTools + - Extensions + - Manifest + - Reference + - WebExtensions + - devtools_page +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/devtools_page +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
Typechaîne
ObligatoireNon
Exemple +
+"devtools_page": "devtools/my-page.html"
+
+ +

Utilisez cette clé pour activer votre extension et intégrer les outils de développement du navigateur.

+ +

Cette clé est définie comme une URL d'un fichier HTML. Le fichier HTML doit être regroupé avec l'extension, et l'URL est relative à la racine de l'extension.

+ +

Voir Extension des outils développeurs pour plus d'informations.

+ +

Exemple

+ +
"devtools_page": "devtools/my-page.html"
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.devtools_page")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/dictionaries/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/dictionaries/index.html deleted file mode 100644 index 1aad1f271c..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/dictionaries/index.html +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: dictionaries -slug: Mozilla/Add-ons/WebExtensions/manifest.json/dictionaries -tags: - - Add-ons - - Extensions - - WebExtensions - - manifest.json -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/dictionaries ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObject
ObligatoireNon
Exemple -
-"dictionaries": {
-  "en-US": "dictionaries/en-US.dic"
-}
-
- -

Les clés des dictionaries specifie le locale_code pour lequel votre extension fournit un dictionnaire. Bien que le dictionnaire se compose de deux fichiers, l'un avec une extension  .dic et l'autre avec une extension .aff, seul celui avec l'extension .dic est référencé dans le fichier manifest.json.

- -

Exemple

- -
"dictionaries": {
-  "en-US": "dictionaries/en-US.dic"
-}
- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.manifest.dictionaries")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/dictionaries/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/dictionaries/index.md new file mode 100644 index 0000000000..1aad1f271c --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/dictionaries/index.md @@ -0,0 +1,45 @@ +--- +title: dictionaries +slug: Mozilla/Add-ons/WebExtensions/manifest.json/dictionaries +tags: + - Add-ons + - Extensions + - WebExtensions + - manifest.json +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/dictionaries +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObject
ObligatoireNon
Exemple +
+"dictionaries": {
+  "en-US": "dictionaries/en-US.dic"
+}
+
+ +

Les clés des dictionaries specifie le locale_code pour lequel votre extension fournit un dictionnaire. Bien que le dictionnaire se compose de deux fichiers, l'un avec une extension  .dic et l'autre avec une extension .aff, seul celui avec l'extension .dic est référencé dans le fichier manifest.json.

+ +

Exemple

+ +
"dictionaries": {
+  "en-US": "dictionaries/en-US.dic"
+}
+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.manifest.dictionaries")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/externally_connectable/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/externally_connectable/index.html deleted file mode 100644 index 86feb2a3de..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/externally_connectable/index.html +++ /dev/null @@ -1,65 +0,0 @@ ---- -title: externally_connectable -slug: Mozilla/Add-ons/WebExtensions/manifest.json/externally_connectable -tags: - - Add-ons - - WebExtensions - - manifest.json -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/externally_connectable ---- -

{{AddonSidebar}}{{SeeCompatTable}}

- - - - - - - - - - - - - - - - -
TypeObject
ObligatoireNon
Exemple -
-"externally_connectable": {
-  // List of extension IDs that extension wishes to communicate with
-  // If "browser_action" is specified but "browser_action.ids" is not,
-  // no extensions can communicate with this extension.
-  // To match all extension IDs use "*".
-  "ids": [
-    "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
-    "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
-    "cccccccccccccccccccccccccccccccc"
-  ],
-  // Regular expression patterns specifying web pages
-  // If "matches" is not specified, no web pages can communicate with
-  // this extension
-  "matches": [
-    "https://example1.com/*",
-    "*://*.example2.com/*"
-  ]
-}
-
- -

Une connexion externe permet au développeur d’extensions de contrôler quelles autres extensions et pages Web peuvent communiquer avec cette extension via  {{WebExtAPIRef("runtime.connect","runtime.connect()")}} et {{WebExtAPIRef("runtime.sendMessage", "runtime.sendMessage()")}} passage de message. Si externally_connectable n'est pas spécifié, toutes les extensions peuvent communiquer entre elles, mais pas avec les pages Web.

- -

attribut "ids"

- -

ids active la communication entre cette extension et les autres extensions installées spécifiées par les identificateurs d'extension. Utilisez le motif "*" si vous souhaitez communiquer avec toutes les extensions. 

- -

attribut "matches"

- -

Les correspondances permettent la communication entre cette extension et les pages Web. Voici une liste d'expressions régulières pour les URL de page avec lesquelles vous souhaitez communiquer.

- -
-

Note : Si browser_action n'est pas spécifié, la communication entre les extensions est toujours autorisée, comme si browser_action était {"ids": ["*"] }, par conséquent, si vous spécifiez browser_action.matches n'oubliez pas d'ajouter des identifiants si vous souhaitez toujours communiquer. avec d'autres extensions.

-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.externally_connectable")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/externally_connectable/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/externally_connectable/index.md new file mode 100644 index 0000000000..86feb2a3de --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/externally_connectable/index.md @@ -0,0 +1,65 @@ +--- +title: externally_connectable +slug: Mozilla/Add-ons/WebExtensions/manifest.json/externally_connectable +tags: + - Add-ons + - WebExtensions + - manifest.json +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/externally_connectable +--- +

{{AddonSidebar}}{{SeeCompatTable}}

+ + + + + + + + + + + + + + + + +
TypeObject
ObligatoireNon
Exemple +
+"externally_connectable": {
+  // List of extension IDs that extension wishes to communicate with
+  // If "browser_action" is specified but "browser_action.ids" is not,
+  // no extensions can communicate with this extension.
+  // To match all extension IDs use "*".
+  "ids": [
+    "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
+    "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
+    "cccccccccccccccccccccccccccccccc"
+  ],
+  // Regular expression patterns specifying web pages
+  // If "matches" is not specified, no web pages can communicate with
+  // this extension
+  "matches": [
+    "https://example1.com/*",
+    "*://*.example2.com/*"
+  ]
+}
+
+ +

Une connexion externe permet au développeur d’extensions de contrôler quelles autres extensions et pages Web peuvent communiquer avec cette extension via  {{WebExtAPIRef("runtime.connect","runtime.connect()")}} et {{WebExtAPIRef("runtime.sendMessage", "runtime.sendMessage()")}} passage de message. Si externally_connectable n'est pas spécifié, toutes les extensions peuvent communiquer entre elles, mais pas avec les pages Web.

+ +

attribut "ids"

+ +

ids active la communication entre cette extension et les autres extensions installées spécifiées par les identificateurs d'extension. Utilisez le motif "*" si vous souhaitez communiquer avec toutes les extensions. 

+ +

attribut "matches"

+ +

Les correspondances permettent la communication entre cette extension et les pages Web. Voici une liste d'expressions régulières pour les URL de page avec lesquelles vous souhaitez communiquer.

+ +
+

Note : Si browser_action n'est pas spécifié, la communication entre les extensions est toujours autorisée, comme si browser_action était {"ids": ["*"] }, par conséquent, si vous spécifiez browser_action.matches n'oubliez pas d'ajouter des identifiants si vous souhaitez toujours communiquer. avec d'autres extensions.

+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.externally_connectable")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/homepage_url/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/homepage_url/index.html deleted file mode 100644 index aadd14cc6f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/homepage_url/index.html +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: homepage_url -slug: Mozilla/Add-ons/WebExtensions/manifest.json/homepage_url -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/homepage_url ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
Typechaîne
ObligatoireNon
Exemple -
-"homepage_url": "https://example.org/my-addon"
-
- -

URL pour la page d'accueil de l'extension.

- -

Si la clé dévelopeur est fournie et qu'elle contient la propriété "url", cela remplacera la clé "homepage_url".

- -

c'est une proriété localisable.

- -

Exemple

- -
"homepage_url": "https://github.com/mdn/webextensions-examples/tree/master/beastify"
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.homepage_url")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/homepage_url/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/homepage_url/index.md new file mode 100644 index 0000000000..aadd14cc6f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/homepage_url/index.md @@ -0,0 +1,44 @@ +--- +title: homepage_url +slug: Mozilla/Add-ons/WebExtensions/manifest.json/homepage_url +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/homepage_url +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
Typechaîne
ObligatoireNon
Exemple +
+"homepage_url": "https://example.org/my-addon"
+
+ +

URL pour la page d'accueil de l'extension.

+ +

Si la clé dévelopeur est fournie et qu'elle contient la propriété "url", cela remplacera la clé "homepage_url".

+ +

c'est une proriété localisable.

+ +

Exemple

+ +
"homepage_url": "https://github.com/mdn/webextensions-examples/tree/master/beastify"
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.homepage_url")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/icons/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/icons/index.html deleted file mode 100644 index 53b3ee6991..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/icons/index.html +++ /dev/null @@ -1,76 +0,0 @@ ---- -title: icons -slug: Mozilla/Add-ons/WebExtensions/manifest.json/icons -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/icons ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObjet
ObligatoireNon
Exemple -
-"icons": {
-  "48": "icon.png",
-  "96": "icon@2x.png"
-}
-
- -

La clé icons spécifie des icônes pour votre extension. Ces icônes seront utilisées pour représenter l'extension dans des composants tels que le gestionnaire des modules d'extensions.

- -

Elle se compose d'une paire de valeurs-clés de taille d'image et le chemin d'accès au fichier image par rapport au répertoire racine de l'extension.

- -

Si la clé icons n'est pas fournie, une icône d'extension standard sera utilisée par défaut.

- -

Vous devez fournir au moins une icône d'extension principale, idéalement d'une taille de 48x48 pixels. C'est l'icône par défaut qui sera utilisée dans le Gestionnaire des extensions. Vous pouvez, cependant, fournir des icônes de n'importe quelle taille, et Firefox tentera de trouver la meilleure icône à afficher dans les différents composants.

- -

Firefox considérera la résolution de l'écran lors du choix d'une icône. Pour offrir la meilleure expérience visuelle aux utilisateurs avec des écrans haute résolution, tels que les écrans Retina, fournissez des versions deux fois plus grandes de toutes vos icônes.

- -

Exemple

- -

Les clés dans l'objet icons spécifient la taille de l'icône en pixels et la valeur spécifie le chemin relatif de l'icône. Cet exemple contient une icône d'extension 48px et une version plus grande pour les écrans haute résolution.

- -
"icons": {
-  "48": "icon.png",
-  "96": "icon@2x.png"
-}
- -

SVG

- -

Vous pouvez utiliser SVG et le navigateur mettra à l'échelle appropriée votre icône. Il existe actuellement deux réserves :

- -
    -
  1. Vous devez spécifier un "viewBox" dans l'image. Par exemple : -
    <svg viewBox="0 0 48 48" width="48" height="48" ...
    -
  2. -
  3. Même si vous pouvez utiliser un fichier, vous devez toujours spécifier différentes tailles de l'icône dans votre manifest. Par exemple : -
    "icons": {
    -  "48": "icon.svg",
    -  "96": "icon.svg"
    -}
    -
  4. -
- -
-

Note : si vous utilisez un programme comme Inkscape pour créer un SVG, vous voudrez peut-être l'enregistrer en tant que "SVG simple". Firefox peut être gêné par des espaces de noms spéciaux, et ne pas afficher votre icône.

-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.icons")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/icons/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/icons/index.md new file mode 100644 index 0000000000..53b3ee6991 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/icons/index.md @@ -0,0 +1,76 @@ +--- +title: icons +slug: Mozilla/Add-ons/WebExtensions/manifest.json/icons +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/icons +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObjet
ObligatoireNon
Exemple +
+"icons": {
+  "48": "icon.png",
+  "96": "icon@2x.png"
+}
+
+ +

La clé icons spécifie des icônes pour votre extension. Ces icônes seront utilisées pour représenter l'extension dans des composants tels que le gestionnaire des modules d'extensions.

+ +

Elle se compose d'une paire de valeurs-clés de taille d'image et le chemin d'accès au fichier image par rapport au répertoire racine de l'extension.

+ +

Si la clé icons n'est pas fournie, une icône d'extension standard sera utilisée par défaut.

+ +

Vous devez fournir au moins une icône d'extension principale, idéalement d'une taille de 48x48 pixels. C'est l'icône par défaut qui sera utilisée dans le Gestionnaire des extensions. Vous pouvez, cependant, fournir des icônes de n'importe quelle taille, et Firefox tentera de trouver la meilleure icône à afficher dans les différents composants.

+ +

Firefox considérera la résolution de l'écran lors du choix d'une icône. Pour offrir la meilleure expérience visuelle aux utilisateurs avec des écrans haute résolution, tels que les écrans Retina, fournissez des versions deux fois plus grandes de toutes vos icônes.

+ +

Exemple

+ +

Les clés dans l'objet icons spécifient la taille de l'icône en pixels et la valeur spécifie le chemin relatif de l'icône. Cet exemple contient une icône d'extension 48px et une version plus grande pour les écrans haute résolution.

+ +
"icons": {
+  "48": "icon.png",
+  "96": "icon@2x.png"
+}
+ +

SVG

+ +

Vous pouvez utiliser SVG et le navigateur mettra à l'échelle appropriée votre icône. Il existe actuellement deux réserves :

+ +
    +
  1. Vous devez spécifier un "viewBox" dans l'image. Par exemple : +
    <svg viewBox="0 0 48 48" width="48" height="48" ...
    +
  2. +
  3. Même si vous pouvez utiliser un fichier, vous devez toujours spécifier différentes tailles de l'icône dans votre manifest. Par exemple : +
    "icons": {
    +  "48": "icon.svg",
    +  "96": "icon.svg"
    +}
    +
  4. +
+ +
+

Note : si vous utilisez un programme comme Inkscape pour créer un SVG, vous voudrez peut-être l'enregistrer en tant que "SVG simple". Firefox peut être gêné par des espaces de noms spéciaux, et ne pas afficher votre icône.

+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.icons")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/incognito/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/incognito/index.html deleted file mode 100644 index 8c4dc2adb3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/incognito/index.html +++ /dev/null @@ -1,68 +0,0 @@ ---- -title: incognito -slug: Mozilla/Add-ons/WebExtensions/manifest.json/incognito -tags: - - Add-ons - - WebExtensions - - incognito - - manifest.json -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/incognito ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
Typechaîne
ObligatoireNon
Exemple -
-"incognito": "spanning"
- -
-"incognito": "split"
- -
-"incognito": "not_allowed"
-
- -

Utilisez la clé incognito pour contrôler la façon dont l'extension fonctionne avec les fenêtres de navigation privées.

- -

Il s'agit d'une chaîne qui peut prendre l'une des valeurs suivantes:

- - - -

Exemple

- -
"incognito": "spanning"
-
- -
"incognito": "split"
-
- -
"incognito": "not_allowed"
-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.incognito")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/incognito/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/incognito/index.md new file mode 100644 index 0000000000..8c4dc2adb3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/incognito/index.md @@ -0,0 +1,68 @@ +--- +title: incognito +slug: Mozilla/Add-ons/WebExtensions/manifest.json/incognito +tags: + - Add-ons + - WebExtensions + - incognito + - manifest.json +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/incognito +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
Typechaîne
ObligatoireNon
Exemple +
+"incognito": "spanning"
+ +
+"incognito": "split"
+ +
+"incognito": "not_allowed"
+
+ +

Utilisez la clé incognito pour contrôler la façon dont l'extension fonctionne avec les fenêtres de navigation privées.

+ +

Il s'agit d'une chaîne qui peut prendre l'une des valeurs suivantes:

+ + + +

Exemple

+ +
"incognito": "spanning"
+
+ +
"incognito": "split"
+
+ +
"incognito": "not_allowed"
+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.incognito")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/index.html deleted file mode 100644 index 564d4ae030..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/index.html +++ /dev/null @@ -1,138 +0,0 @@ ---- -title: manifest.json -slug: Mozilla/Add-ons/WebExtensions/manifest.json -tags: - - Add-ons - - Extensions - - Overview - - WebExtensions - - manifest.json -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json ---- -

{{AddonSidebar}}

- -
-

Note : Cet article décrit manifest.json pour les extensions web. Si vous cherchez des informations sur le manifeste.json dans les PWAs, consultez l'article Web App Manifest.

-
- -

Le fichier manifest.json est le seul fichier que chaque extension utilisant les API WebExtension doit contenir.

- -

En utilisant manifest.json, vous spécifiez les métadonnées basiques de votre extension comme son nom et sa version, et des fonctionnalités de votre extension comme les scripts en arrière-plan (les scripts de contenu et les actions du navigateur).

- -

C'est un fichier au format JSON à une exception près : il peut contenir des commentaires de type "//".

- -

List of manifest.json keys

- -

Les clés manifest.json sont listées ci-dessous:

- -
{{ListSubpages("/en-US/Add-ons/WebExtensions/manifest.json")}}
- -

Notes about manifest.json keys

- - - -

Accessing manifest.json keys at runtime

- -

Vous pouvez accéder au manifest de votre extension depuis le JavaScript de l'extension en utilisant la fonction {{WebExtAPIRef("runtime.getManifest()")}} :

- -
browser.runtime.getManifest().version;
- -

Exemple

- -

Le bloc ci-dessous contient la syntaxe de base de certaines clés communes du manifest

- -
-

Note : Il ne s'agit pas d'un exemple à copier-coller. Le choix des clés dont vous aurez besoin dépend de l'extension que vous développez.

-
- -

Pour des exemples complets d'extensions, voir Exemple d'extensions.

- -
{
-  "browser_specific_settings": {
-    "gecko": {
-      "id": "addon@example.com",
-      "strict_min_version": "42.0"
-    }
-  },
-
-  "background": {
-    "scripts": ["jquery.js", "my-background.js"],
-  },
-
-  "browser_action": {
-    "default_icon": {
-      "19": "button/geo-19.png",
-      "38": "button/geo-38.png"
-    },
-    "default_title": "Whereami?",
-    "default_popup": "popup/geo.html"
-  },
-
-  "commands": {
-    "toggle-feature": {
-      "suggested_key": {
-        "default": "Ctrl+Shift+Y",
-        "linux": "Ctrl+Shift+U"
-      },
-      "description": "Send a 'toggle-feature' event"
-    }
-  },
-
-  "content_security_policy": "script-src 'self' https://example.com; object-src 'self'",
-
-  "content_scripts": [
-    {
-      "exclude_matches": ["*://developer.mozilla.org/*"],
-      "matches": ["*://*.mozilla.org/*"],
-      "js": ["borderify.js"]
-    }
-  ],
-
-  "default_locale": "en",
-
-  "description": "...",
-
-  "icons": {
-    "48": "icon.png",
-    "96": "icon@2x.png"
-  },
-
-  "manifest_version": 2,
-
-  "name": "...",
-
-  "page_action": {
-    "default_icon": {
-      "19": "button/geo-19.png",
-      "38": "button/geo-38.png"
-    },
-    "default_title": "Whereami?",
-    "default_popup": "popup/geo.html"
-  },
-
-  "permissions": ["webNavigation"],
-
-  "version": "0.1",
-
-  "user_scripts": {
-    "api_script": "apiscript.js",
-  },
-
-  "web_accessible_resources": ["images/my-image.png"]
-}
- -

Compatibilité du navigateur

- -

Pour un aperçu complet de toutes les clés de manifeste et de leurs sous-clés, voir le tableau complet de compatibilité du navigateur manifest.json.

- - - -

{{Compat("webextensions.manifest")}}

- -

Voir aussi

- -

{{WebExtAPIRef("permissions")}} JavaScript API

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/index.md new file mode 100644 index 0000000000..564d4ae030 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/index.md @@ -0,0 +1,138 @@ +--- +title: manifest.json +slug: Mozilla/Add-ons/WebExtensions/manifest.json +tags: + - Add-ons + - Extensions + - Overview + - WebExtensions + - manifest.json +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json +--- +

{{AddonSidebar}}

+ +
+

Note : Cet article décrit manifest.json pour les extensions web. Si vous cherchez des informations sur le manifeste.json dans les PWAs, consultez l'article Web App Manifest.

+
+ +

Le fichier manifest.json est le seul fichier que chaque extension utilisant les API WebExtension doit contenir.

+ +

En utilisant manifest.json, vous spécifiez les métadonnées basiques de votre extension comme son nom et sa version, et des fonctionnalités de votre extension comme les scripts en arrière-plan (les scripts de contenu et les actions du navigateur).

+ +

C'est un fichier au format JSON à une exception près : il peut contenir des commentaires de type "//".

+ +

List of manifest.json keys

+ +

Les clés manifest.json sont listées ci-dessous:

+ +
{{ListSubpages("/en-US/Add-ons/WebExtensions/manifest.json")}}
+ +

Notes about manifest.json keys

+ + + +

Accessing manifest.json keys at runtime

+ +

Vous pouvez accéder au manifest de votre extension depuis le JavaScript de l'extension en utilisant la fonction {{WebExtAPIRef("runtime.getManifest()")}} :

+ +
browser.runtime.getManifest().version;
+ +

Exemple

+ +

Le bloc ci-dessous contient la syntaxe de base de certaines clés communes du manifest

+ +
+

Note : Il ne s'agit pas d'un exemple à copier-coller. Le choix des clés dont vous aurez besoin dépend de l'extension que vous développez.

+
+ +

Pour des exemples complets d'extensions, voir Exemple d'extensions.

+ +
{
+  "browser_specific_settings": {
+    "gecko": {
+      "id": "addon@example.com",
+      "strict_min_version": "42.0"
+    }
+  },
+
+  "background": {
+    "scripts": ["jquery.js", "my-background.js"],
+  },
+
+  "browser_action": {
+    "default_icon": {
+      "19": "button/geo-19.png",
+      "38": "button/geo-38.png"
+    },
+    "default_title": "Whereami?",
+    "default_popup": "popup/geo.html"
+  },
+
+  "commands": {
+    "toggle-feature": {
+      "suggested_key": {
+        "default": "Ctrl+Shift+Y",
+        "linux": "Ctrl+Shift+U"
+      },
+      "description": "Send a 'toggle-feature' event"
+    }
+  },
+
+  "content_security_policy": "script-src 'self' https://example.com; object-src 'self'",
+
+  "content_scripts": [
+    {
+      "exclude_matches": ["*://developer.mozilla.org/*"],
+      "matches": ["*://*.mozilla.org/*"],
+      "js": ["borderify.js"]
+    }
+  ],
+
+  "default_locale": "en",
+
+  "description": "...",
+
+  "icons": {
+    "48": "icon.png",
+    "96": "icon@2x.png"
+  },
+
+  "manifest_version": 2,
+
+  "name": "...",
+
+  "page_action": {
+    "default_icon": {
+      "19": "button/geo-19.png",
+      "38": "button/geo-38.png"
+    },
+    "default_title": "Whereami?",
+    "default_popup": "popup/geo.html"
+  },
+
+  "permissions": ["webNavigation"],
+
+  "version": "0.1",
+
+  "user_scripts": {
+    "api_script": "apiscript.js",
+  },
+
+  "web_accessible_resources": ["images/my-image.png"]
+}
+ +

Compatibilité du navigateur

+ +

Pour un aperçu complet de toutes les clés de manifeste et de leurs sous-clés, voir le tableau complet de compatibilité du navigateur manifest.json.

+ + + +

{{Compat("webextensions.manifest")}}

+ +

Voir aussi

+ +

{{WebExtAPIRef("permissions")}} JavaScript API

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/manifest_version/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/manifest_version/index.html deleted file mode 100644 index 2ee8e5c568..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/manifest_version/index.html +++ /dev/null @@ -1,43 +0,0 @@ ---- -title: manifest_version -slug: Mozilla/Add-ons/WebExtensions/manifest.json/manifest_version -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/manifest_version ---- -

{{AddonSidebar}}

- - - - - - - - - - - - - - - - -
TypeNumérique
ObligatoireOui
Exemple -
-"manifest_version": 2
-
- -

Cette clé spécifie la version de manifest.json utilisée par cette extension.

- -

Actuellement, cela doit toujours être 2.

- -

Exemple

- -
"manifest_version": 2
-
- -

Comptabilité des navigateurs

- -

{{Compat("webextensions.manifest.manifest_version")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/manifest_version/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/manifest_version/index.md new file mode 100644 index 0000000000..2ee8e5c568 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/manifest_version/index.md @@ -0,0 +1,43 @@ +--- +title: manifest_version +slug: Mozilla/Add-ons/WebExtensions/manifest.json/manifest_version +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/manifest_version +--- +

{{AddonSidebar}}

+ + + + + + + + + + + + + + + + +
TypeNumérique
ObligatoireOui
Exemple +
+"manifest_version": 2
+
+ +

Cette clé spécifie la version de manifest.json utilisée par cette extension.

+ +

Actuellement, cela doit toujours être 2.

+ +

Exemple

+ +
"manifest_version": 2
+
+ +

Comptabilité des navigateurs

+ +

{{Compat("webextensions.manifest.manifest_version")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/name/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/name/index.html deleted file mode 100644 index 90316241bc..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/name/index.html +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: name -slug: Mozilla/Add-ons/WebExtensions/manifest.json/name -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/name ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
Typechaîne
ObligatoireOui
Exemple -
-"name": "Mon extension"
-
- -

Nom de l'extension. Ceci permet d'identifier l'extension dans l'interface utilisateur du navigateur et sur les sites comme addons.mozilla.org.

- -

Il est recommandé de garder le nom suffisamment court pour pouvoir s'afficher dans l'interface utilisateur. Google Chrome et Microsoft Edge limitent la longueur du nom à 45 caractères.

- -

C'est une propriété localisable.

- -

Exemple

- -
"name": "Mon extension"
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.name")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/name/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/name/index.md new file mode 100644 index 0000000000..90316241bc --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/name/index.md @@ -0,0 +1,44 @@ +--- +title: name +slug: Mozilla/Add-ons/WebExtensions/manifest.json/name +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/name +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
Typechaîne
ObligatoireOui
Exemple +
+"name": "Mon extension"
+
+ +

Nom de l'extension. Ceci permet d'identifier l'extension dans l'interface utilisateur du navigateur et sur les sites comme addons.mozilla.org.

+ +

Il est recommandé de garder le nom suffisamment court pour pouvoir s'afficher dans l'interface utilisateur. Google Chrome et Microsoft Edge limitent la longueur du nom à 45 caractères.

+ +

C'est une propriété localisable.

+ +

Exemple

+ +
"name": "Mon extension"
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.name")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/offline_enabled/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/offline_enabled/index.html deleted file mode 100644 index 610193a425..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/offline_enabled/index.html +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: offline_enabled -slug: Mozilla/Add-ons/WebExtensions/manifest.json/offline_enabled -tags: - - Add-ons - - Deprecated - - Extensions - - Non-standard - - Offline - - WebExtensions - - google chrome -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/offline_enabled ---- -

{{AddonSidebar}}

- - - - - - - - - - - - - - - - -
TypeString
ObligatoireNon
Exemple -
-"offline_enabled": true
-
- -

{{Non-standard_Header}}

- -

Si l'application ou l'extension doit fonctionner hors ligne. Lorsque Chrome détecte qu'il est hors ligne, les applications avec ce champ réglé sur true seront mises en surbrillance dans la page Nouvel onglet.

- -

A partir de Chrome 35, les applications (ChromeOS uniquement à partir de 2018) sont supposées activées hors ligne et la valeur par défaut de "offline_enabled" est true sauf si la permission "webview" est demandée.Dans ce cas, la connectivité réseau est supposée nécessaire et "offline_enabled" par défaut est false.

- -

La valeur "offline_enabled" est également utilisée pour déterminer si un contrôle de connectivité réseau sera effectué lors du lancement d'une application en mode Chrome OS kiosk. Une vérification de la connectivité réseau sera effectuée lorsque les applications ne sont pas activées hors ligne, et le lancement de l'application sera mis en attente jusqu'à ce que l'appareil obtienne la connectivité à Internet.

- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.manifest.offline_enabled")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/offline_enabled/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/offline_enabled/index.md new file mode 100644 index 0000000000..610193a425 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/offline_enabled/index.md @@ -0,0 +1,48 @@ +--- +title: offline_enabled +slug: Mozilla/Add-ons/WebExtensions/manifest.json/offline_enabled +tags: + - Add-ons + - Deprecated + - Extensions + - Non-standard + - Offline + - WebExtensions + - google chrome +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/offline_enabled +--- +

{{AddonSidebar}}

+ + + + + + + + + + + + + + + + +
TypeString
ObligatoireNon
Exemple +
+"offline_enabled": true
+
+ +

{{Non-standard_Header}}

+ +

Si l'application ou l'extension doit fonctionner hors ligne. Lorsque Chrome détecte qu'il est hors ligne, les applications avec ce champ réglé sur true seront mises en surbrillance dans la page Nouvel onglet.

+ +

A partir de Chrome 35, les applications (ChromeOS uniquement à partir de 2018) sont supposées activées hors ligne et la valeur par défaut de "offline_enabled" est true sauf si la permission "webview" est demandée.Dans ce cas, la connectivité réseau est supposée nécessaire et "offline_enabled" par défaut est false.

+ +

La valeur "offline_enabled" est également utilisée pour déterminer si un contrôle de connectivité réseau sera effectué lors du lancement d'une application en mode Chrome OS kiosk. Une vérification de la connectivité réseau sera effectuée lorsque les applications ne sont pas activées hors ligne, et le lancement de l'application sera mis en attente jusqu'à ce que l'appareil obtienne la connectivité à Internet.

+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.manifest.offline_enabled")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/omnibox/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/omnibox/index.html deleted file mode 100644 index 77574d4145..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/omnibox/index.html +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: omnibox -slug: Mozilla/Add-ons/WebExtensions/manifest.json/omnibox -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/omnibox ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObjet
ObligatoireNon
Exemple -
-"omnibox": {
-  "keyword": "mdn"
-}
-
- -

Utilisez la clé omnibox pour définir un mot-clé omnibox pour votre extension.

- -

Lorsque l'utilisateur tape ce mot-clé dans la barre d'adresse du navigateur, suivi d'un espace, les caractères suivants seront envoyés à l'extension à l'aide de l'API omnibox. L'extension pourra ensuite remplir la liste de suggestions de la liste déroulante de la barre d'adresse avec ses propres suggestions.

- -

Si deux ou plusieurs extensions définissent le même mot-clé, l'extension qui a été installée la dernière permet de contrôler le mot-clé. Toute extension précédemment installée qui définit le même mot-clé ne pourra plus utiliser l'API omnibox.

- -

Exemple

- -
"omnibox": {
-  "keyword": "mdn"
-}
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.omnibox")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/omnibox/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/omnibox/index.md new file mode 100644 index 0000000000..77574d4145 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/omnibox/index.md @@ -0,0 +1,48 @@ +--- +title: omnibox +slug: Mozilla/Add-ons/WebExtensions/manifest.json/omnibox +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/omnibox +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObjet
ObligatoireNon
Exemple +
+"omnibox": {
+  "keyword": "mdn"
+}
+
+ +

Utilisez la clé omnibox pour définir un mot-clé omnibox pour votre extension.

+ +

Lorsque l'utilisateur tape ce mot-clé dans la barre d'adresse du navigateur, suivi d'un espace, les caractères suivants seront envoyés à l'extension à l'aide de l'API omnibox. L'extension pourra ensuite remplir la liste de suggestions de la liste déroulante de la barre d'adresse avec ses propres suggestions.

+ +

Si deux ou plusieurs extensions définissent le même mot-clé, l'extension qui a été installée la dernière permet de contrôler le mot-clé. Toute extension précédemment installée qui définit le même mot-clé ne pourra plus utiliser l'API omnibox.

+ +

Exemple

+ +
"omnibox": {
+  "keyword": "mdn"
+}
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.omnibox")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/optional_permissions/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/optional_permissions/index.html deleted file mode 100644 index 766909ece8..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/optional_permissions/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -title: optional_permissions -slug: Mozilla/Add-ons/WebExtensions/manifest.json/optional_permissions -tags: - - Add-ons - - WebExtensions - - manifest.json - - optional_permissions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/optional_permissions ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeTableau
ObligatoireNon
Exemple -
-
-"optional_permissions": [
-  "*://developer.mozilla.org/*",
-  "webRequest"
-]
-
- -

Utilisez la clé optional_permissions pour lister les permissions que vous souhaitez demander pour l'exécution, une fois que votre extension a été installée.

- -

La clé de permissions énumère les permissions dont votre extension a besoin  si elle doit être installée. En revanche , optional_permissions liste les permissions dont votre extension n'a pas besoin au moment de l'installation, mais qu'il peut être nécessaire de demander pour l'exécution à un moment donné après son installation. Pour demander une permission, utilisez l'API  {{webextapiref("permissions")}} . La demande de permission peut présenter probablement à l'utilisateur une boîte de dialogue lui demandant d'accorder la permission à votre extension.

- -

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, voir Demander les permissions à éxécuter.

- -

La clé peut contenir deux types d'autorisations: les permissions d'hôte et les permissions d'API

- -

Permissions d'hôte

- -

Ce sont les mêmes que les permissions d'hôte que vous pouvez spécifier dans la clé permissions.

- -

Permissions d'API

- -

Vous pouvez inclure l'un des éléments suivants ici, mais pas dans tous les navigateurs : consultez la table de compatibilité pour obtenir des détails spécifiques au navigateur :

- -
- -
- -

Notez qu'il s'agit d'un sous-ensemble des permissions API permises dans les permissions.

- -

Dans cet ensemble, les permissions suivantes sont accordées en silence, sans invite de l'utilisateur : activeTab, cookies, idle, webRequest, webRequestBlocking.

- -

Exemple

- -
 "optional_permissions": ["*://developer.mozilla.org/*"]
- -

Activez l'extension pour demander un accès privilégié aux pages sous developer.mozilla.org.

- -
  "optional_permissions": ["tabs"]
- -

Activez l'extension pour demander l'accès aux éléments privilégiés de l'API des onglets.

- -
  "optional_permissions": ["*://developer.mozilla.org/*", "tabs"]
- -

Activez l'extension pour demander les deux permissions ci-dessus.

- -

Comptabilité du navigateur

- -

{{Compat("webextensions.manifest.optional_permissions")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/optional_permissions/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/optional_permissions/index.md new file mode 100644 index 0000000000..766909ece8 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/optional_permissions/index.md @@ -0,0 +1,104 @@ +--- +title: optional_permissions +slug: Mozilla/Add-ons/WebExtensions/manifest.json/optional_permissions +tags: + - Add-ons + - WebExtensions + - manifest.json + - optional_permissions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/optional_permissions +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeTableau
ObligatoireNon
Exemple +
+
+"optional_permissions": [
+  "*://developer.mozilla.org/*",
+  "webRequest"
+]
+
+ +

Utilisez la clé optional_permissions pour lister les permissions que vous souhaitez demander pour l'exécution, une fois que votre extension a été installée.

+ +

La clé de permissions énumère les permissions dont votre extension a besoin  si elle doit être installée. En revanche , optional_permissions liste les permissions dont votre extension n'a pas besoin au moment de l'installation, mais qu'il peut être nécessaire de demander pour l'exécution à un moment donné après son installation. Pour demander une permission, utilisez l'API  {{webextapiref("permissions")}} . La demande de permission peut présenter probablement à l'utilisateur une boîte de dialogue lui demandant d'accorder la permission à votre extension.

+ +

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, voir Demander les permissions à éxécuter.

+ +

La clé peut contenir deux types d'autorisations: les permissions d'hôte et les permissions d'API

+ +

Permissions d'hôte

+ +

Ce sont les mêmes que les permissions d'hôte que vous pouvez spécifier dans la clé permissions.

+ +

Permissions d'API

+ +

Vous pouvez inclure l'un des éléments suivants ici, mais pas dans tous les navigateurs : consultez la table de compatibilité pour obtenir des détails spécifiques au navigateur :

+ +
+ +
+ +

Notez qu'il s'agit d'un sous-ensemble des permissions API permises dans les permissions.

+ +

Dans cet ensemble, les permissions suivantes sont accordées en silence, sans invite de l'utilisateur : activeTab, cookies, idle, webRequest, webRequestBlocking.

+ +

Exemple

+ +
 "optional_permissions": ["*://developer.mozilla.org/*"]
+ +

Activez l'extension pour demander un accès privilégié aux pages sous developer.mozilla.org.

+ +
  "optional_permissions": ["tabs"]
+ +

Activez l'extension pour demander l'accès aux éléments privilégiés de l'API des onglets.

+ +
  "optional_permissions": ["*://developer.mozilla.org/*", "tabs"]
+ +

Activez l'extension pour demander les deux permissions ci-dessus.

+ +

Comptabilité du navigateur

+ +

{{Compat("webextensions.manifest.optional_permissions")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/options_page/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/options_page/index.html deleted file mode 100644 index a3a47b2679..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/options_page/index.html +++ /dev/null @@ -1,63 +0,0 @@ ---- -title: options_page -slug: Mozilla/Add-ons/WebExtensions/manifest.json/options_page -tags: - - Add-ons - - Deprecated - - Extensions - - Manifest - - Options - - WebExtensions - - options_page -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/options_page ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeString
MandatoryNo
Example -
-"options_page": "options/options.html"
-
- -
{{Deprecated_Header}} -
-

Attention :Cette clé du manifest a été dépréciée. Utilisez options_uià la place.

-
- -

Utilisez la clé d'options_page pour définir une page d'options pour votre extension.

- -

La page des options contient les paramètres de l'extension. L'utilisateur peut y accéder depuis le gestionnaire d'add-ons du navigateur, et vous pouvez l'ouvrir depuis votre extension en utilisant {{WebExtAPIRef("runtime.openOptionsPage()")}}.

- -

Contrairement aux pages d'options spécifiées à l'aide de la nouvelle clé options_ui, les pages d'options spécifiées à l'aide de la clé options_page obsolète ne reçoivent pas les styles de navigateur et s'ouvrent toujours dans un onglet normal du navigateur.

- -

Exemple

- -
"options_page": "options/options.html"
-
- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.manifest.options_page")}}

- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/options_page/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/options_page/index.md new file mode 100644 index 0000000000..a3a47b2679 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/options_page/index.md @@ -0,0 +1,63 @@ +--- +title: options_page +slug: Mozilla/Add-ons/WebExtensions/manifest.json/options_page +tags: + - Add-ons + - Deprecated + - Extensions + - Manifest + - Options + - WebExtensions + - options_page +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/options_page +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeString
MandatoryNo
Example +
+"options_page": "options/options.html"
+
+ +
{{Deprecated_Header}} +
+

Attention :Cette clé du manifest a été dépréciée. Utilisez options_uià la place.

+
+ +

Utilisez la clé d'options_page pour définir une page d'options pour votre extension.

+ +

La page des options contient les paramètres de l'extension. L'utilisateur peut y accéder depuis le gestionnaire d'add-ons du navigateur, et vous pouvez l'ouvrir depuis votre extension en utilisant {{WebExtAPIRef("runtime.openOptionsPage()")}}.

+ +

Contrairement aux pages d'options spécifiées à l'aide de la nouvelle clé options_ui, les pages d'options spécifiées à l'aide de la clé options_page obsolète ne reçoivent pas les styles de navigateur et s'ouvrent toujours dans un onglet normal du navigateur.

+ +

Exemple

+ +
"options_page": "options/options.html"
+
+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.manifest.options_page")}}

+ +

Voir aussi

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/options_ui/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/options_ui/index.html deleted file mode 100644 index 9e272b1055..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/options_ui/index.html +++ /dev/null @@ -1,118 +0,0 @@ ---- -title: options_ui -slug: Mozilla/Add-ons/WebExtensions/manifest.json/options_ui -tags: - - Add-ons - - Extensions - - Manifest - - Options - - WebExtensions - - options_ui -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/options_ui ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObjet
ObligatoireNon
Exemple -
-"options_ui": {
-  "page": "options/options.html"
-}
-
- -

Utilisez la clé options_ui pour définir une page d'options pour votre extension.

- -

La page d'options contient des paramètres pour l'extension. L'utilisateur peut y accéder à partir du gestionnaire des extensions du navigateur, et vous pouvez l'ouvrir à partir de votre extension à l'aide de {{WebExtAPIRef("runtime.openOptionsPage()")}}.

- -

Vous spécifiez options_ui comme un chemin vers un fichier HTML intégré à votre extension. Le fichier HTML peut inclure des fichiers CSS et JavaScript, tout comme une page Web normale. Contrairement à une page normale, le JavaScript peut utiliser toutes les APIs WebExtension pour lesquelles l'extension possède des permissions. Cependant, il fonctionne dans un "scope" différent de celui de vos scripts d'arrière plan.

- -

Si vous souhaitez partager des données ou des fonctions, entre JavaScript sur votre page d'options et vos scripts d'arrière-plan, vous pouvez le faire directement en obtenant une référence à la fenêtre de vos scripts d'arrière-plan avec {{WebExtAPIRef("extension.getBackgroundPage()")}}, ou une référence à {{domxref("Window")}} de l'une des pages s'exécutant dans votre extension avec {{WebExtAPIRef("extension.getViews()")}}. Ou, vous pouvez faire communiquer le JavaScript de votre page d'options et vos scripts en arrière-plan à l'aide de {{WebExtAPIRef("runtime.sendMessage()")}}, {{WebExtAPIRef("runtime.onMessage")}}, ou {{WebExtAPIRef("runtime.connect()")}}.

- -

Ces derniers (ou les équivalents {{WebExtAPIRef("runtime.Port")}}  peuvent également être utilisés pour partager des options entre vos scripts d'arrière-plan et vos scripts de contenu.

- -

En général, vous souhaiterez stocker les options modifiées sur les pages d'options à l'aide de {{WebExtAPIRef("storage", "storage API", "", "true")}}  soit dans {{WebExtAPIRef("storage.sync()")}} (si vous souhaitez que les paramètres soient synchronisés sur toutes les instances du navigateur auxquelles l'utilisateur est connecté), ou {{WebExtAPIRef("storage.local()")}} (si les paramètres sont locaux, dans la machine/le profil actuel). Si vous le faites et que votre (vos) scripts d'arrière plan (ou script(s) de contenus)  doit connaître le changement, votre (vos) script(s) d'arrière plan pourra choisir d'ajouter un auditeur à {{WebExtAPIRef("storage.onChanged")}}.

- -

Syntaxe

- -

La clé options_ui est un objet avec le contenu suivant :

- - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
browser_style
- {{optional_inline}}
Booléen -

Facultatif, par défaut : true .

- -

Utilisez cette option pour inclure une feuille de style dans votre page qui la rendra compatible avec l'interface utilisateur du navigateur et avec d'autres extensions qui utilisent la propriété browser_style . Bien qu'il contienne par défaut true , il est recommandé d'inclure cette propriété.

- -

Dans Firefox, la feuille de style peut être vue sur chrome://browser/content/extension.css, ou chrome://browser/content/extension-mac.css sur macOS. Lorsque vous fixez les dimensions, sachez que cette feuille de style fixe actuellement box-sizing: border-box (voir box-sizing).

- -

Le guide de style Firefox décrit les classes que vous pouvez appliquer aux éléments de la fenêtre contextuelle afin d'obtenir des styles particuliers.

-
open_in_tab
- {{optional_inline}}
Booléen -

par défaut : false.

- -

Si c'est true , la page options s'ouvrira dans un onglet normal du navigateur, plutôt que d'être intégrée au gestionnaire des extensions du navigateur.

-
pageChaîne de caractères -

Obligatoire

- -

Le chemin d'accès au fichier HTML contenant la spécification de votre page d'options.

- -

Le chemin est relatif à l'emplacement du manifest.json lui-même.

-
- -

Exemple

- -
  "options_ui": {
-    "page": "options/options.html"
-  }
- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.manifest.options_ui")}}

- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/options_ui/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/options_ui/index.md new file mode 100644 index 0000000000..9e272b1055 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/options_ui/index.md @@ -0,0 +1,118 @@ +--- +title: options_ui +slug: Mozilla/Add-ons/WebExtensions/manifest.json/options_ui +tags: + - Add-ons + - Extensions + - Manifest + - Options + - WebExtensions + - options_ui +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/options_ui +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObjet
ObligatoireNon
Exemple +
+"options_ui": {
+  "page": "options/options.html"
+}
+
+ +

Utilisez la clé options_ui pour définir une page d'options pour votre extension.

+ +

La page d'options contient des paramètres pour l'extension. L'utilisateur peut y accéder à partir du gestionnaire des extensions du navigateur, et vous pouvez l'ouvrir à partir de votre extension à l'aide de {{WebExtAPIRef("runtime.openOptionsPage()")}}.

+ +

Vous spécifiez options_ui comme un chemin vers un fichier HTML intégré à votre extension. Le fichier HTML peut inclure des fichiers CSS et JavaScript, tout comme une page Web normale. Contrairement à une page normale, le JavaScript peut utiliser toutes les APIs WebExtension pour lesquelles l'extension possède des permissions. Cependant, il fonctionne dans un "scope" différent de celui de vos scripts d'arrière plan.

+ +

Si vous souhaitez partager des données ou des fonctions, entre JavaScript sur votre page d'options et vos scripts d'arrière-plan, vous pouvez le faire directement en obtenant une référence à la fenêtre de vos scripts d'arrière-plan avec {{WebExtAPIRef("extension.getBackgroundPage()")}}, ou une référence à {{domxref("Window")}} de l'une des pages s'exécutant dans votre extension avec {{WebExtAPIRef("extension.getViews()")}}. Ou, vous pouvez faire communiquer le JavaScript de votre page d'options et vos scripts en arrière-plan à l'aide de {{WebExtAPIRef("runtime.sendMessage()")}}, {{WebExtAPIRef("runtime.onMessage")}}, ou {{WebExtAPIRef("runtime.connect()")}}.

+ +

Ces derniers (ou les équivalents {{WebExtAPIRef("runtime.Port")}}  peuvent également être utilisés pour partager des options entre vos scripts d'arrière-plan et vos scripts de contenu.

+ +

En général, vous souhaiterez stocker les options modifiées sur les pages d'options à l'aide de {{WebExtAPIRef("storage", "storage API", "", "true")}}  soit dans {{WebExtAPIRef("storage.sync()")}} (si vous souhaitez que les paramètres soient synchronisés sur toutes les instances du navigateur auxquelles l'utilisateur est connecté), ou {{WebExtAPIRef("storage.local()")}} (si les paramètres sont locaux, dans la machine/le profil actuel). Si vous le faites et que votre (vos) scripts d'arrière plan (ou script(s) de contenus)  doit connaître le changement, votre (vos) script(s) d'arrière plan pourra choisir d'ajouter un auditeur à {{WebExtAPIRef("storage.onChanged")}}.

+ +

Syntaxe

+ +

La clé options_ui est un objet avec le contenu suivant :

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
browser_style
+ {{optional_inline}}
Booléen +

Facultatif, par défaut : true .

+ +

Utilisez cette option pour inclure une feuille de style dans votre page qui la rendra compatible avec l'interface utilisateur du navigateur et avec d'autres extensions qui utilisent la propriété browser_style . Bien qu'il contienne par défaut true , il est recommandé d'inclure cette propriété.

+ +

Dans Firefox, la feuille de style peut être vue sur chrome://browser/content/extension.css, ou chrome://browser/content/extension-mac.css sur macOS. Lorsque vous fixez les dimensions, sachez que cette feuille de style fixe actuellement box-sizing: border-box (voir box-sizing).

+ +

Le guide de style Firefox décrit les classes que vous pouvez appliquer aux éléments de la fenêtre contextuelle afin d'obtenir des styles particuliers.

+
open_in_tab
+ {{optional_inline}}
Booléen +

par défaut : false.

+ +

Si c'est true , la page options s'ouvrira dans un onglet normal du navigateur, plutôt que d'être intégrée au gestionnaire des extensions du navigateur.

+
pageChaîne de caractères +

Obligatoire

+ +

Le chemin d'accès au fichier HTML contenant la spécification de votre page d'options.

+ +

Le chemin est relatif à l'emplacement du manifest.json lui-même.

+
+ +

Exemple

+ +
  "options_ui": {
+    "page": "options/options.html"
+  }
+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.manifest.options_ui")}}

+ +

Voir aussi

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/page_action/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/page_action/index.html deleted file mode 100644 index bed07e4a3e..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/page_action/index.html +++ /dev/null @@ -1,200 +0,0 @@ ---- -title: page_action -slug: Mozilla/Add-ons/WebExtensions/manifest.json/page_action -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/page_action ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObjet
ObligatoireNon
Exemple -
-"page_action": {
-  "browser_style": true,
-  "default_icon": {
-    "19": "button/geo-19.png",
-    "38": "button/geo-38.png"
-  },
-  "default_title": "Whereami?",
-  "default_popup": "popup/geo.html"
-}
-
- -

Une action de page est une icône que votre extension ajoute dans la barre d'URL du navigateur.

- -

Votre extension peut éventuellement fournir une fenêtre contextuelle associée dont le contenu est spécifié en utilisant HTML, CSS et JavaScript.

- -

Si vous fournissez une fenêtre contextuelle, celle-ci est ouverte lorsque l'utilisateur clique sur l'icône, et l'exécution de votre JavaScript dans la fenêtre contextuelle peut gérer l'interaction de l'utilisateur avec elle. Si vous ne fournissez pas de fenêtre contextuelle, un clic événement est envoyé à votre extension aux scripts d'arrière plan quand l'utilisateur clique sur l'icône.

- -

Vous pouvez également créer et activer des actions de page par programme en utilisant l'API pageAction.

- -

Les actions de page sont comme les actions de navigateur, mais elles sont associées à des pages Web particulières et non au navigateur dans son ensemble. Si une action est seulement pertinente sur certaines pages, vous devez utiliser une action de page et l'afficher uniquement sur les pages pertinentes. Si une action est pertinente pour toutes les pages ou pour le navigateur lui-même, utilisez une action de navigateur.

- -

Alors que les actions du navigateur sont affichées par défaut, les actions de page sont cachées par défaut. Elles peuvent être affichées pour un onglet particulier en appelant pageAction.show(), en passant dans l'ID de l'onglet. Vous pouvez également modifier ce comportement par défaut en utilisant la propriété show_matches.

- -

Syntaxe

- -

La clé page_action est un objet qui peut avoir l'une des trois propriétés, toutes optionnelles:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
browser_styleBooléen -

Facultatif, par defaut : false.

- -

Utilisez-le pour inclure une feuille de style dans votre popup qui le rendra cohérent avec l'interface utilisateur du navigateur et avec d'autres extensions qui utilisent la propriété browser_style. Bien que cette touche par défaut soit false, il est recommandé de l'inclure et de la mettre à true afin de rendre vos fenêtres contextuelles cohérentes avec l'apparence du reste de l'interface utilisateur du navigateur.

- -

Dans Firefox, la feuille de style peut être vue sur chrome://browser/content/extension.css, ou chrome://browser/content/extension-mac.css sur OS X.

- -

Le guide de style Firefox décrit les classes que vous pouvez appliquer aux éléments de la fenêtre contextuelle afin d'obtenir des styles particuliers.

- -

L'extension exemple latest-download utilise browser_style dans sa fenêtre contextuelle.

-
default_iconObjet ou Chaîne de caractères -

Utilisez cette option pour spécifier une icône pour l'action.

- -

Il est recommandé de fournir deux icônes ici, une 19x19 pixels et une 38x38 pixels, et de les spécifier dans un objet avec les noms de propriété "19" et "38", comme ceci:

- -
-    "default_icon": {
-      "19": "geo-19.png",
-      "38": "geo-38.png"
-    }
- -

Si vous faites cela, le navigateur choisira l'icône de la bonne taille selon la densité des pixels de l'écran.

- -

Vous pouvez simplement fournir une chaîne ici :

- -
-"default_icon": "geo.png"
- -

Si vous faites cela, l'icône sera mise à l'échelle pour correspondre à la barre d'outils et peut sembler floue.

-
default_popupChaîne de caractères -

Le chemin d'accès à un fichier HTML contenant la spécification de la fenêtre contextuelle.

- -

Le fichier HTML peut inclure des fichiers CSS et JavaScript utilisant des éléments <link> et <script>, tout comme une page Web normale. Cependant, n'utilisez pas <script> avec du code intégré, car vous obtiendrez une erreur de politique de violation de contenu. Au lieu de cela, <script> doit utiliser l'attribut src pour charger un fichier script séparé.

- -

Contrairement à une page Web normale, JavaScript en cours d'exécution dans la fenêtre contextuelle peut accéder à toutes les APIs WebExtension (à condition, bien sûr, que l'extension ait les permissions appropriées).

- -

Ceci est une propriété localisable.

-
default_titleChaîne de caractères -

Info-bulle pour l'icône, affichée lorsque l'utilisateur passe sa souris dessus.

- -

Ceci est une propriété localisable.

-
hide_matchesTableau de Match Pattern sauf  <all_urls> -

Masquer l'action de page par défaut pour les pages dont les URLs correspondent des modèles de correspondance données.

- -

Notez que les actions de page sont toujours cachées par défaut à moins que show_matches ne soit donné. Par conséquent, il est logique d'inclure cette propriété uniquement si show_matches est également donné, et dans ce casil remplacera les patterns dans show_matches. Par exemple, considérez une valeur comme :

- -
-"page_action": {
-  "show_matches": ["https://*.mozilla.org/*"],
-  "hide_matches": ["https://developer.mozilla.org/*"]
-}
- -

Ceci montre l'action de page par défaut pour toutes les URL HTTPS sous le domaine "mozilla.org", à l'exception des pages sous "developer.mozilla.org".

-
show_matchesTableau de Match Pattern -

Affiche l'action de page par défaut pour les pages dont les URLs correspondent à l'un des modèles donnés.

- -

Voir aussi hide_matches.

-
pinnedBoolean -

Facultatif, par défaut à true.

- -

Contrôle si l'action de la page doit apparaître dans la barre d'emplacement par défaut lorsque l'utilisateur installe l'extension.

-
- -

Exemple

- -
"page_action": {
-  "default_icon": {
-    "19": "button/geo-19.png",
-    "38": "button/geo-38.png"
-  }
-}
- -

Une action de page avec juste une icône spécifiée en 2 tailles différentes. Les scripts d'arrière-plan de l'extension peuvent recevoir des événements de clic lorsque l'utilisateur clique sur l'icône en utilisant un code comme celui-ci :

- -
 browser.pageAction.onClicked.addListener(handleClick);
- -
"page_action": {
-  "default_icon": {
-    "19": "button/geo-19.png",
-    "38": "button/geo-38.png"
-  },
-  "default_title": "Où suis-je ?",
-  "default_popup": "popup/geo.html"
-}
- -

Une action de page avec une icône, un titre et une fenêtre contextuelle. Cette dernière s'affiche lorsque l'utilisateur clique sur l'icône.

- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.manifest.page_action")}}

- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/page_action/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/page_action/index.md new file mode 100644 index 0000000000..bed07e4a3e --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/page_action/index.md @@ -0,0 +1,200 @@ +--- +title: page_action +slug: Mozilla/Add-ons/WebExtensions/manifest.json/page_action +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/page_action +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObjet
ObligatoireNon
Exemple +
+"page_action": {
+  "browser_style": true,
+  "default_icon": {
+    "19": "button/geo-19.png",
+    "38": "button/geo-38.png"
+  },
+  "default_title": "Whereami?",
+  "default_popup": "popup/geo.html"
+}
+
+ +

Une action de page est une icône que votre extension ajoute dans la barre d'URL du navigateur.

+ +

Votre extension peut éventuellement fournir une fenêtre contextuelle associée dont le contenu est spécifié en utilisant HTML, CSS et JavaScript.

+ +

Si vous fournissez une fenêtre contextuelle, celle-ci est ouverte lorsque l'utilisateur clique sur l'icône, et l'exécution de votre JavaScript dans la fenêtre contextuelle peut gérer l'interaction de l'utilisateur avec elle. Si vous ne fournissez pas de fenêtre contextuelle, un clic événement est envoyé à votre extension aux scripts d'arrière plan quand l'utilisateur clique sur l'icône.

+ +

Vous pouvez également créer et activer des actions de page par programme en utilisant l'API pageAction.

+ +

Les actions de page sont comme les actions de navigateur, mais elles sont associées à des pages Web particulières et non au navigateur dans son ensemble. Si une action est seulement pertinente sur certaines pages, vous devez utiliser une action de page et l'afficher uniquement sur les pages pertinentes. Si une action est pertinente pour toutes les pages ou pour le navigateur lui-même, utilisez une action de navigateur.

+ +

Alors que les actions du navigateur sont affichées par défaut, les actions de page sont cachées par défaut. Elles peuvent être affichées pour un onglet particulier en appelant pageAction.show(), en passant dans l'ID de l'onglet. Vous pouvez également modifier ce comportement par défaut en utilisant la propriété show_matches.

+ +

Syntaxe

+ +

La clé page_action est un objet qui peut avoir l'une des trois propriétés, toutes optionnelles:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
browser_styleBooléen +

Facultatif, par defaut : false.

+ +

Utilisez-le pour inclure une feuille de style dans votre popup qui le rendra cohérent avec l'interface utilisateur du navigateur et avec d'autres extensions qui utilisent la propriété browser_style. Bien que cette touche par défaut soit false, il est recommandé de l'inclure et de la mettre à true afin de rendre vos fenêtres contextuelles cohérentes avec l'apparence du reste de l'interface utilisateur du navigateur.

+ +

Dans Firefox, la feuille de style peut être vue sur chrome://browser/content/extension.css, ou chrome://browser/content/extension-mac.css sur OS X.

+ +

Le guide de style Firefox décrit les classes que vous pouvez appliquer aux éléments de la fenêtre contextuelle afin d'obtenir des styles particuliers.

+ +

L'extension exemple latest-download utilise browser_style dans sa fenêtre contextuelle.

+
default_iconObjet ou Chaîne de caractères +

Utilisez cette option pour spécifier une icône pour l'action.

+ +

Il est recommandé de fournir deux icônes ici, une 19x19 pixels et une 38x38 pixels, et de les spécifier dans un objet avec les noms de propriété "19" et "38", comme ceci:

+ +
+    "default_icon": {
+      "19": "geo-19.png",
+      "38": "geo-38.png"
+    }
+ +

Si vous faites cela, le navigateur choisira l'icône de la bonne taille selon la densité des pixels de l'écran.

+ +

Vous pouvez simplement fournir une chaîne ici :

+ +
+"default_icon": "geo.png"
+ +

Si vous faites cela, l'icône sera mise à l'échelle pour correspondre à la barre d'outils et peut sembler floue.

+
default_popupChaîne de caractères +

Le chemin d'accès à un fichier HTML contenant la spécification de la fenêtre contextuelle.

+ +

Le fichier HTML peut inclure des fichiers CSS et JavaScript utilisant des éléments <link> et <script>, tout comme une page Web normale. Cependant, n'utilisez pas <script> avec du code intégré, car vous obtiendrez une erreur de politique de violation de contenu. Au lieu de cela, <script> doit utiliser l'attribut src pour charger un fichier script séparé.

+ +

Contrairement à une page Web normale, JavaScript en cours d'exécution dans la fenêtre contextuelle peut accéder à toutes les APIs WebExtension (à condition, bien sûr, que l'extension ait les permissions appropriées).

+ +

Ceci est une propriété localisable.

+
default_titleChaîne de caractères +

Info-bulle pour l'icône, affichée lorsque l'utilisateur passe sa souris dessus.

+ +

Ceci est une propriété localisable.

+
hide_matchesTableau de Match Pattern sauf  <all_urls> +

Masquer l'action de page par défaut pour les pages dont les URLs correspondent des modèles de correspondance données.

+ +

Notez que les actions de page sont toujours cachées par défaut à moins que show_matches ne soit donné. Par conséquent, il est logique d'inclure cette propriété uniquement si show_matches est également donné, et dans ce casil remplacera les patterns dans show_matches. Par exemple, considérez une valeur comme :

+ +
+"page_action": {
+  "show_matches": ["https://*.mozilla.org/*"],
+  "hide_matches": ["https://developer.mozilla.org/*"]
+}
+ +

Ceci montre l'action de page par défaut pour toutes les URL HTTPS sous le domaine "mozilla.org", à l'exception des pages sous "developer.mozilla.org".

+
show_matchesTableau de Match Pattern +

Affiche l'action de page par défaut pour les pages dont les URLs correspondent à l'un des modèles donnés.

+ +

Voir aussi hide_matches.

+
pinnedBoolean +

Facultatif, par défaut à true.

+ +

Contrôle si l'action de la page doit apparaître dans la barre d'emplacement par défaut lorsque l'utilisateur installe l'extension.

+
+ +

Exemple

+ +
"page_action": {
+  "default_icon": {
+    "19": "button/geo-19.png",
+    "38": "button/geo-38.png"
+  }
+}
+ +

Une action de page avec juste une icône spécifiée en 2 tailles différentes. Les scripts d'arrière-plan de l'extension peuvent recevoir des événements de clic lorsque l'utilisateur clique sur l'icône en utilisant un code comme celui-ci :

+ +
 browser.pageAction.onClicked.addListener(handleClick);
+ +
"page_action": {
+  "default_icon": {
+    "19": "button/geo-19.png",
+    "38": "button/geo-38.png"
+  },
+  "default_title": "Où suis-je ?",
+  "default_popup": "popup/geo.html"
+}
+ +

Une action de page avec une icône, un titre et une fenêtre contextuelle. Cette dernière s'affiche lorsque l'utilisateur clique sur l'icône.

+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.manifest.page_action")}}

+ +

Voir aussi

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/permissions/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/permissions/index.html deleted file mode 100644 index 9fb4e2b3e0..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/permissions/index.html +++ /dev/null @@ -1,196 +0,0 @@ ---- -title: permissions -slug: Mozilla/Add-ons/WebExtensions/manifest.json/permissions -tags: - - Add-ons - - Extensions - - Permissions - - Reference - - WebExtensions - - manifest.json -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/permissions ---- -

{{AddonSidebar}}

- - - - - - - - - - - - - - - - -
TypeTableau
ObligatoireNon
Exemple -
-"permissions": [
-  "*://developer.mozilla.org/*",
-  "webRequest"
-]
-
- -

Utilisez la clé permissions pour demander des pouvoirs spéciaux pour votre extension. Cette clé est un ensemble de chaînes, et chaque chaîne est une demande d'autorisation.

- -

Si vous demandez des autorisations avec cette clé, le navigateur peut informer l'utilisateur, au moment de l'installation, que l'extension demande certains privilèges, et lui demande de confirmer qu'il est d'accord. Le navigateur peut également permettre à l'utilisateur d'inspecter les privilèges d'une extension après l'installation.

- -

Comme la demande d'octroi de privilèges peut avoir un impact sur la volonté des utilisateurs d'installer votre extension, la demande de privilèges mérite une attention particulière. Par exemple, vous voulez éviter de demander des permissions inutiles et vous voudrez peut-être fournir des informations sur la raison pour laquelle vous demandez des permissions dans la description du magasin de votre extension. Vous trouverez plus d'informations sur les questions que vous devez prendre en compte dans l'article Demander les bonnes permissions.

- -

La clé peut contenir trois types d'autorisations:

- - - -

Les permissions d'hôte

- -

Les permissions d'hôte sont spécifiées comme modèles de correspondance, et chaque modèle identifie un groupe d'URL pour lequel l'extension demande des privilèges supplémentaires. Par exemple, une autorisation d'hôte pourrait être "*://developer.mozilla.org/*".

- -

Les privilèges supplémentaires incluent :

- - - -

Dans Firefox, à partir de la version 56, les extensions reçoivent automatiquement les permissions d'hôte pour leur propre origine, qui se présentent sous la forme :

- -
moz-extension://60a20a9b-1ad4-af49-9b6c-c64c98c37920/
- -

60a20a9b-1ad4-af49-9b6c-c64c98c37920 est l'ID interne de l'extension. L'extension peut obtenir cette URL par programmation en appelant extension.getURL() :

- -
browser.extension.getURL("");
-// moz-extension://60a20a9b-1ad4-af49-9b6c-c64c98c37920/
-
- -

Les permissions API

- -

Les autorisations API sont spécifiées comme des mots-clés, et chaque mot clé nomme une API WebExtension que l'extension souhaite utiliser.

- -

Les mots clés suivants sont actuellement disponibles:

- - - -

Dans la plupart des cas, la permission accorde uniquement l'accès à l'API, avec les exceptions suivantes :

- - - -

Permission activeTab

- -

Cette autorisation est spécifiée comme " activeTab " (onglet actif). Si une extension possède la permission activeTab , lorsque l'utilisateur interagit avec l'extension, celle-ci reçoit des privilèges supplémentaires uniquement pour l'onglet actif.

- -

"L'interaction utilisateur" comprend :

- - - -

Les privilèges supplémentaires sont les suivants :

- - - -

L'objectif de cette permission est de permettre aux extensions de réaliser une utilisation courante, sans avoir à leur accorder de permissions très puissantes. Beaucoup d'extensions veulent "faire quelque chose à la page courante quand l'utilisateur le demande". Par exemple, considérez une extension qui veut exécuter un script dans la page courante quand l'utilisateur clique sur une action de navigateur. Si la permission activeTab n'existait pas, l'extension devrait demander une permission d'hôte <all_urls>. Mais cela donnerait à l'extension plus de puissance que nécessaire : elle pourrait désormais exécuter des scripts dans n'importe quel onglet, à tout moment, plutôt que simplement dans l'onglet actif et juste en réponse à une action de l'utilisateur.

- -

Notez que vous ne pouvez accéder qu'à l'onglet ou aux données qui s'y trouvaient au moment de l'interaction de l'utilisateur (par exemple le clic). Lorsque l'onglet actif s'éloigne, par exemple en raison d'un chargement terminé ou d'un autre événement, l'autorisation ne vous donne plus accès à l'onglet.

- -

Habituellement, l'onglet qui est accordé à activeTab est juste l'onglet actuellement actif, sauf dans un cas. L'API menus  permet à une extension de créer un élément de menu qui s'affiche lorsque le contexte utilisateur clique sur un onglet (c'est-à-dire sur l'élément de l'onglet qui permet à l'utilisateur de passer d'un onglet à un autre). Si l'utilisateur clique sur un tel élément, la permission activeTab est accordée pour l'onglet sur lequel l'utilisateur a cliqué, même s'il ne s'agit pas de l'onglet actuellement actif (A partir de Firefox 63, {{bug(1446956)}}).

- -

Accès au presse-papiers

- -

Il existe deux permissions qui permettent aux extensions d'interagir avec le Presse-papiers :

- - - -

Voir Intérargir avec le presse-papiers pour tous les détails de ce sujet.***

- -

Stockage illimité

- -

La permission unlimitedStorage :

- - - -

Exemple

- -
"permissions": ["*://developer.mozilla.org/*"]
- -

Demande d'accès privilégié aux pages sous developer.mozilla.org.

- -
"permissions": ["tabs"]
- -

Demande d'accès aux éléments privilégiés de l'API tabs.

- -
"permissions": ["*://developer.mozilla.org/*", "tabs"]
- -

Demande des deux permissions ci-dessus.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.permissions")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/permissions/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/permissions/index.md new file mode 100644 index 0000000000..9fb4e2b3e0 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/permissions/index.md @@ -0,0 +1,196 @@ +--- +title: permissions +slug: Mozilla/Add-ons/WebExtensions/manifest.json/permissions +tags: + - Add-ons + - Extensions + - Permissions + - Reference + - WebExtensions + - manifest.json +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/permissions +--- +

{{AddonSidebar}}

+ + + + + + + + + + + + + + + + +
TypeTableau
ObligatoireNon
Exemple +
+"permissions": [
+  "*://developer.mozilla.org/*",
+  "webRequest"
+]
+
+ +

Utilisez la clé permissions pour demander des pouvoirs spéciaux pour votre extension. Cette clé est un ensemble de chaînes, et chaque chaîne est une demande d'autorisation.

+ +

Si vous demandez des autorisations avec cette clé, le navigateur peut informer l'utilisateur, au moment de l'installation, que l'extension demande certains privilèges, et lui demande de confirmer qu'il est d'accord. Le navigateur peut également permettre à l'utilisateur d'inspecter les privilèges d'une extension après l'installation.

+ +

Comme la demande d'octroi de privilèges peut avoir un impact sur la volonté des utilisateurs d'installer votre extension, la demande de privilèges mérite une attention particulière. Par exemple, vous voulez éviter de demander des permissions inutiles et vous voudrez peut-être fournir des informations sur la raison pour laquelle vous demandez des permissions dans la description du magasin de votre extension. Vous trouverez plus d'informations sur les questions que vous devez prendre en compte dans l'article Demander les bonnes permissions.

+ +

La clé peut contenir trois types d'autorisations:

+ + + +

Les permissions d'hôte

+ +

Les permissions d'hôte sont spécifiées comme modèles de correspondance, et chaque modèle identifie un groupe d'URL pour lequel l'extension demande des privilèges supplémentaires. Par exemple, une autorisation d'hôte pourrait être "*://developer.mozilla.org/*".

+ +

Les privilèges supplémentaires incluent :

+ + + +

Dans Firefox, à partir de la version 56, les extensions reçoivent automatiquement les permissions d'hôte pour leur propre origine, qui se présentent sous la forme :

+ +
moz-extension://60a20a9b-1ad4-af49-9b6c-c64c98c37920/
+ +

60a20a9b-1ad4-af49-9b6c-c64c98c37920 est l'ID interne de l'extension. L'extension peut obtenir cette URL par programmation en appelant extension.getURL() :

+ +
browser.extension.getURL("");
+// moz-extension://60a20a9b-1ad4-af49-9b6c-c64c98c37920/
+
+ +

Les permissions API

+ +

Les autorisations API sont spécifiées comme des mots-clés, et chaque mot clé nomme une API WebExtension que l'extension souhaite utiliser.

+ +

Les mots clés suivants sont actuellement disponibles:

+ + + +

Dans la plupart des cas, la permission accorde uniquement l'accès à l'API, avec les exceptions suivantes :

+ + + +

Permission activeTab

+ +

Cette autorisation est spécifiée comme " activeTab " (onglet actif). Si une extension possède la permission activeTab , lorsque l'utilisateur interagit avec l'extension, celle-ci reçoit des privilèges supplémentaires uniquement pour l'onglet actif.

+ +

"L'interaction utilisateur" comprend :

+ + + +

Les privilèges supplémentaires sont les suivants :

+ + + +

L'objectif de cette permission est de permettre aux extensions de réaliser une utilisation courante, sans avoir à leur accorder de permissions très puissantes. Beaucoup d'extensions veulent "faire quelque chose à la page courante quand l'utilisateur le demande". Par exemple, considérez une extension qui veut exécuter un script dans la page courante quand l'utilisateur clique sur une action de navigateur. Si la permission activeTab n'existait pas, l'extension devrait demander une permission d'hôte <all_urls>. Mais cela donnerait à l'extension plus de puissance que nécessaire : elle pourrait désormais exécuter des scripts dans n'importe quel onglet, à tout moment, plutôt que simplement dans l'onglet actif et juste en réponse à une action de l'utilisateur.

+ +

Notez que vous ne pouvez accéder qu'à l'onglet ou aux données qui s'y trouvaient au moment de l'interaction de l'utilisateur (par exemple le clic). Lorsque l'onglet actif s'éloigne, par exemple en raison d'un chargement terminé ou d'un autre événement, l'autorisation ne vous donne plus accès à l'onglet.

+ +

Habituellement, l'onglet qui est accordé à activeTab est juste l'onglet actuellement actif, sauf dans un cas. L'API menus  permet à une extension de créer un élément de menu qui s'affiche lorsque le contexte utilisateur clique sur un onglet (c'est-à-dire sur l'élément de l'onglet qui permet à l'utilisateur de passer d'un onglet à un autre). Si l'utilisateur clique sur un tel élément, la permission activeTab est accordée pour l'onglet sur lequel l'utilisateur a cliqué, même s'il ne s'agit pas de l'onglet actuellement actif (A partir de Firefox 63, {{bug(1446956)}}).

+ +

Accès au presse-papiers

+ +

Il existe deux permissions qui permettent aux extensions d'interagir avec le Presse-papiers :

+ + + +

Voir Intérargir avec le presse-papiers pour tous les détails de ce sujet.***

+ +

Stockage illimité

+ +

La permission unlimitedStorage :

+ + + +

Exemple

+ +
"permissions": ["*://developer.mozilla.org/*"]
+ +

Demande d'accès privilégié aux pages sous developer.mozilla.org.

+ +
"permissions": ["tabs"]
+ +

Demande d'accès aux éléments privilégiés de l'API tabs.

+ +
"permissions": ["*://developer.mozilla.org/*", "tabs"]
+ +

Demande des deux permissions ci-dessus.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.permissions")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.html deleted file mode 100644 index 7c0478b2a2..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.html +++ /dev/null @@ -1,83 +0,0 @@ ---- -title: protocol_handlers -slug: Mozilla/Add-ons/WebExtensions/manifest.json/protocol_handlers -tags: - - Add-ons - - Extensions - - WebExtensions - - manifest.json -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/protocol_handlers ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeTableau
ObligatoireNon
Exemple -
-"protocol_handlers": [
-  {
-    "protocol": "ircs",
-    "name": "IRC Mozilla Extension",
-    "uriTemplate": "https://irccloud.mozilla.com/#!/%s"
-  }
-]
-
- -

Utilisez cette clé pour enregistrer un ou plusieurs gestionnaires de protocole basés sur le Web.

- -

Un gestionnaire de protocole est une application qui sait comment gérer certains types de liens : par exemple, un client de messagerie est un gestionnaire de protocole pour les liens "mailto:".  Lorsque l'utilisateur clique sur un lien "mailto:", le navigateur ouvre l'application sélectionnée comme le gestionnaire pour le protocole "mailto:" (ou offre un choix de gestionnaires, en fonction de leurs paramètres).

- -

Avec cette clé, vous pouvez enregistrer un site Web en tant que gestionnaire pour un protocole particulier. La syntaxe et la sémantique de cette clé ressemblent beaucoup à la fonction Navigator.registerProtocolHandler(), excepté que avec registerProtocolHandler() un site Web ne peut s'inscrire lui-même comme un gestionnaire.

- -

Chaque gestionnaire de protocole possède trois propriétés, toutes obligatoires :

- -
-
protocol
-
Une chaîne définissant le protocole. Cela doit être soit: -
    -
  • L'une des suivantes : "bitcoin", "dat", "dweb", "geo", "gopher", "im", "ipfs", "ipns", "irc", "ircs", "magnet", "mailto", "mms", "news", "nntp", "sip", "sms", "smsto", "ssb", "ssh", "tel", "urn", "webcal", "wtai", "xmpp".
  • -
  • Une chaîne composée d'un nom personnalisé préfixé avec "web+" ou "ext+". Par exemple : "web+foo" ou  "ext+foo". Le nom personnalisé doit comporter uniquement des caractères ASCII minuscules. Il est recommandé que les extensions utilisent la forme "ext+".
  • -
-
-
name
-
Une chaîne représentant le nom du gestionnaire de protocole. Il sera affiché à l'utilisateur lorsqu'il sera interrogé s'il souhaite que ce gestionnaire ouvre le lien.
-
uriTemplate
-
Une chaîne représentant l'URL du gestionnaire. Cette chaîne doit inclure "%s" comme espace réservé : il sera remplacé par l'URL échappée du document à traiter. Cette URL peut être une vraie URL, ou il peut s'agir d'un numéro de téléphone, d'une adresse de courrier électronique, etc. C'est une propriété localisable.
-
- -

Exemple

- -
"protocol_handlers": [
-  {
-    "protocol": "magnet",
-    "name": "Magnet Extension",
-    "uriTemplate": "https://example.com/#!/%s"
-  }
-]
- -

Les gestionnaires peuvent également être des pages d'extension.

- -
"protocol_handlers": [
-  {
-    "protocol": "magnet",
-    "name": "Magnet Extension",
-    "uriTemplate": "/example.xhtml#!/%s"
-  }
-]
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.protocol_handlers")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.md new file mode 100644 index 0000000000..7c0478b2a2 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/protocol_handlers/index.md @@ -0,0 +1,83 @@ +--- +title: protocol_handlers +slug: Mozilla/Add-ons/WebExtensions/manifest.json/protocol_handlers +tags: + - Add-ons + - Extensions + - WebExtensions + - manifest.json +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/protocol_handlers +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeTableau
ObligatoireNon
Exemple +
+"protocol_handlers": [
+  {
+    "protocol": "ircs",
+    "name": "IRC Mozilla Extension",
+    "uriTemplate": "https://irccloud.mozilla.com/#!/%s"
+  }
+]
+
+ +

Utilisez cette clé pour enregistrer un ou plusieurs gestionnaires de protocole basés sur le Web.

+ +

Un gestionnaire de protocole est une application qui sait comment gérer certains types de liens : par exemple, un client de messagerie est un gestionnaire de protocole pour les liens "mailto:".  Lorsque l'utilisateur clique sur un lien "mailto:", le navigateur ouvre l'application sélectionnée comme le gestionnaire pour le protocole "mailto:" (ou offre un choix de gestionnaires, en fonction de leurs paramètres).

+ +

Avec cette clé, vous pouvez enregistrer un site Web en tant que gestionnaire pour un protocole particulier. La syntaxe et la sémantique de cette clé ressemblent beaucoup à la fonction Navigator.registerProtocolHandler(), excepté que avec registerProtocolHandler() un site Web ne peut s'inscrire lui-même comme un gestionnaire.

+ +

Chaque gestionnaire de protocole possède trois propriétés, toutes obligatoires :

+ +
+
protocol
+
Une chaîne définissant le protocole. Cela doit être soit: +
    +
  • L'une des suivantes : "bitcoin", "dat", "dweb", "geo", "gopher", "im", "ipfs", "ipns", "irc", "ircs", "magnet", "mailto", "mms", "news", "nntp", "sip", "sms", "smsto", "ssb", "ssh", "tel", "urn", "webcal", "wtai", "xmpp".
  • +
  • Une chaîne composée d'un nom personnalisé préfixé avec "web+" ou "ext+". Par exemple : "web+foo" ou  "ext+foo". Le nom personnalisé doit comporter uniquement des caractères ASCII minuscules. Il est recommandé que les extensions utilisent la forme "ext+".
  • +
+
+
name
+
Une chaîne représentant le nom du gestionnaire de protocole. Il sera affiché à l'utilisateur lorsqu'il sera interrogé s'il souhaite que ce gestionnaire ouvre le lien.
+
uriTemplate
+
Une chaîne représentant l'URL du gestionnaire. Cette chaîne doit inclure "%s" comme espace réservé : il sera remplacé par l'URL échappée du document à traiter. Cette URL peut être une vraie URL, ou il peut s'agir d'un numéro de téléphone, d'une adresse de courrier électronique, etc. C'est une propriété localisable.
+
+ +

Exemple

+ +
"protocol_handlers": [
+  {
+    "protocol": "magnet",
+    "name": "Magnet Extension",
+    "uriTemplate": "https://example.com/#!/%s"
+  }
+]
+ +

Les gestionnaires peuvent également être des pages d'extension.

+ +
"protocol_handlers": [
+  {
+    "protocol": "magnet",
+    "name": "Magnet Extension",
+    "uriTemplate": "/example.xhtml#!/%s"
+  }
+]
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.protocol_handlers")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/short_name/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/short_name/index.html deleted file mode 100644 index 9f7f4ed0c7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/short_name/index.html +++ /dev/null @@ -1,42 +0,0 @@ ---- -title: short_name -slug: Mozilla/Add-ons/WebExtensions/manifest.json/short_name -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/short_name ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeChaîne
ObligatoireNon
Exemple -
-"short_name": "MonExtension"
-
- -

Nom abrégé de l'extension. S'il est donné, il sera utilisé dans des contextes où le champ name est trop long. Il est recommandé que le nom court ne dépasse pas 12 caractères. Si le champ du nom court n'est pas inclus dans manifest.json, le nom sera utilisé à la place et peut être tronqué. 

- -

C'est une propriété localisable.

- -

Exemple

- -
"short_name": "MonExtension"
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.short_name")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/short_name/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/short_name/index.md new file mode 100644 index 0000000000..9f7f4ed0c7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/short_name/index.md @@ -0,0 +1,42 @@ +--- +title: short_name +slug: Mozilla/Add-ons/WebExtensions/manifest.json/short_name +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/short_name +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeChaîne
ObligatoireNon
Exemple +
+"short_name": "MonExtension"
+
+ +

Nom abrégé de l'extension. S'il est donné, il sera utilisé dans des contextes où le champ name est trop long. Il est recommandé que le nom court ne dépasse pas 12 caractères. Si le champ du nom court n'est pas inclus dans manifest.json, le nom sera utilisé à la place et peut être tronqué. 

+ +

C'est une propriété localisable.

+ +

Exemple

+ +
"short_name": "MonExtension"
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.short_name")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/sidebar_action/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/sidebar_action/index.html deleted file mode 100644 index 372b64e952..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/sidebar_action/index.html +++ /dev/null @@ -1,151 +0,0 @@ ---- -title: sidebar_action -slug: Mozilla/Add-ons/WebExtensions/manifest.json/sidebar_action -tags: - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/sidebar_action ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObjet
ObligatoireNon
Exemple -
-"sidebar_action": {
-  "default_icon": {
-    "16": "button/geo-16.png",
-    "32": "button/geo-32.png"
-  },
-  "default_title": "My sidebar",
-  "default_panel": "sidebar/sidebar.html",
-  "open_at_install":true
-}
-
- -

Une barre latérale est un volet qui s'affiche à gauche de la fenêtre du navigateur, à côté de la page Web. Le navigateur fournit une interface qui permet à l'utilisateur de voir les barres latérales actuellement disponibles et de sélectionner celle à afficher.

- -

La clé sidebar_action vous permet de définir les propriétés par défaut de la barre latérale. Vous pouvez modifier ces propriétés lors de l'exécution à l'aide de l'API {{WebExtAPIRef("sidebarAction")}}.

- -

Syntaxe

- -

La clé sidebar_action est un objet qui peut avoir l'une des propriétés listées ci-dessous. La seule propriété obligatoire est default_panel.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NomTypeDescription
browser_styleBooléen -

Facultatif, par défaut : true .

- -

Utilisez cette option pour inclure une feuille de style dans votre fenêtre contextuelle qui permettra la correspondance avec l'interface utilisateur du navigateur et les autres extensions qui utilisent la propriété browser_style.

- -

Dans Firefox, la feuille de style peut être vue sur  chrome://browser/content/extension.css, ou chrome://browser/content/extension-mac.css sur OS X. Lors de la définition des dimensions, savez que cette feiulle de style est actuellement définit box-sizing: border-box (see box-sizing).

- -

Le guide de style de Firefox décrit les classes que vous pouvez appliquer aux éléments de la barre latérale afin d'obtenir des styles particuliers.

-
default_iconObjet ou Chaîne de caractères -

Utilisez cette option pour spécifier une ou plusieurs icônes pour la barre latérale. L'icône est affichée dans l'interface utilisateur du navigateur pour l'ouverture et la fermeture des barres latérales.

- -

Les icônes sont spécifiées comme des URL relatives au fichier manifest.json lui-même.

- -

Vous pouvez spécifier un seul fichier d'icône en fournissant une chaîne ici :

- -
-"default_icon": "path/to/geo.svg"
- -

Pour spécifier plusieurs icônes dans différentes tailles, spécifiez ici un objet. Le nom de chaque propriété est la hauteur de l'icône en pixels convertie en un nombre entier. La valeur est l'URL. Par exemple:

- -
-    "default_icon": {
-      "16": "path/to/geo-16.png",
-      "32": "path/to/geo-32.png"
-    }
- -

Voir Choix de la taille d'icones pour plus de conseils sur ce sujet.

- -

Cette propriété est optionnelle : si elle est omise, la barre latérale n'obtient pas d'icône.

-
default_panelChaîne de caractères -

Le chemin d'accès à un fichier HTML qui spécifie le contenu de la barre latérale.

- -

Le fichier HTML peut inclure des fichiers CSS et JavaScript à l'aide des éléments <link> et <script>, tout comme une page Web normale.

- -

 Contrairement à une page Web normale, JavaScript en cours d'exécution dans le panneau peut accéder à toutes les APIs des WebExtension (à condition, bien sûr, que l'extension ait les permissions appropriées).

- -

Cette propriété est obligatoire.

- -

C'est une propriété localisable.

-
default_titleString -

Titre de la barre latérale. Ceci est utilisé dans l'interface utilisateur du navigateur pour la liste et l'ouverture des barres latérales, et s'affiche en haut de la barre latérale lorsqu'elle est ouverte.

- -

Cette propriété est facultative : si elle est omise, le titre de la barre latérale est le nom de l'extension.

- -

C'est une propriété localisable.

-
open_at_installBooleanFacultatif, par défaut à true. Détermine si la barre latérale doit s'ouvrir lors de l'installation. Le comportement par defaut est d'ouvrir la barre latérale lorsque l'installation est terminée.
- -

Exemple

- -
"sidebar_action": {
-  "default_icon": "sidebar.svg",
-  "default_title": "Ma barre latérale !",
-  "default_panel": "sidebar.html",
-  "browser_style": true
-}
- -

Pour un exemple simple d'une extension qui utilise une barre latérale, regarder  annotate-page.

- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.manifest.sidebar_action")}}

- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/sidebar_action/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/sidebar_action/index.md new file mode 100644 index 0000000000..372b64e952 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/sidebar_action/index.md @@ -0,0 +1,151 @@ +--- +title: sidebar_action +slug: Mozilla/Add-ons/WebExtensions/manifest.json/sidebar_action +tags: + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/sidebar_action +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObjet
ObligatoireNon
Exemple +
+"sidebar_action": {
+  "default_icon": {
+    "16": "button/geo-16.png",
+    "32": "button/geo-32.png"
+  },
+  "default_title": "My sidebar",
+  "default_panel": "sidebar/sidebar.html",
+  "open_at_install":true
+}
+
+ +

Une barre latérale est un volet qui s'affiche à gauche de la fenêtre du navigateur, à côté de la page Web. Le navigateur fournit une interface qui permet à l'utilisateur de voir les barres latérales actuellement disponibles et de sélectionner celle à afficher.

+ +

La clé sidebar_action vous permet de définir les propriétés par défaut de la barre latérale. Vous pouvez modifier ces propriétés lors de l'exécution à l'aide de l'API {{WebExtAPIRef("sidebarAction")}}.

+ +

Syntaxe

+ +

La clé sidebar_action est un objet qui peut avoir l'une des propriétés listées ci-dessous. La seule propriété obligatoire est default_panel.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NomTypeDescription
browser_styleBooléen +

Facultatif, par défaut : true .

+ +

Utilisez cette option pour inclure une feuille de style dans votre fenêtre contextuelle qui permettra la correspondance avec l'interface utilisateur du navigateur et les autres extensions qui utilisent la propriété browser_style.

+ +

Dans Firefox, la feuille de style peut être vue sur  chrome://browser/content/extension.css, ou chrome://browser/content/extension-mac.css sur OS X. Lors de la définition des dimensions, savez que cette feiulle de style est actuellement définit box-sizing: border-box (see box-sizing).

+ +

Le guide de style de Firefox décrit les classes que vous pouvez appliquer aux éléments de la barre latérale afin d'obtenir des styles particuliers.

+
default_iconObjet ou Chaîne de caractères +

Utilisez cette option pour spécifier une ou plusieurs icônes pour la barre latérale. L'icône est affichée dans l'interface utilisateur du navigateur pour l'ouverture et la fermeture des barres latérales.

+ +

Les icônes sont spécifiées comme des URL relatives au fichier manifest.json lui-même.

+ +

Vous pouvez spécifier un seul fichier d'icône en fournissant une chaîne ici :

+ +
+"default_icon": "path/to/geo.svg"
+ +

Pour spécifier plusieurs icônes dans différentes tailles, spécifiez ici un objet. Le nom de chaque propriété est la hauteur de l'icône en pixels convertie en un nombre entier. La valeur est l'URL. Par exemple:

+ +
+    "default_icon": {
+      "16": "path/to/geo-16.png",
+      "32": "path/to/geo-32.png"
+    }
+ +

Voir Choix de la taille d'icones pour plus de conseils sur ce sujet.

+ +

Cette propriété est optionnelle : si elle est omise, la barre latérale n'obtient pas d'icône.

+
default_panelChaîne de caractères +

Le chemin d'accès à un fichier HTML qui spécifie le contenu de la barre latérale.

+ +

Le fichier HTML peut inclure des fichiers CSS et JavaScript à l'aide des éléments <link> et <script>, tout comme une page Web normale.

+ +

 Contrairement à une page Web normale, JavaScript en cours d'exécution dans le panneau peut accéder à toutes les APIs des WebExtension (à condition, bien sûr, que l'extension ait les permissions appropriées).

+ +

Cette propriété est obligatoire.

+ +

C'est une propriété localisable.

+
default_titleString +

Titre de la barre latérale. Ceci est utilisé dans l'interface utilisateur du navigateur pour la liste et l'ouverture des barres latérales, et s'affiche en haut de la barre latérale lorsqu'elle est ouverte.

+ +

Cette propriété est facultative : si elle est omise, le titre de la barre latérale est le nom de l'extension.

+ +

C'est une propriété localisable.

+
open_at_installBooleanFacultatif, par défaut à true. Détermine si la barre latérale doit s'ouvrir lors de l'installation. Le comportement par defaut est d'ouvrir la barre latérale lorsque l'installation est terminée.
+ +

Exemple

+ +
"sidebar_action": {
+  "default_icon": "sidebar.svg",
+  "default_title": "Ma barre latérale !",
+  "default_panel": "sidebar.html",
+  "browser_style": true
+}
+ +

Pour un exemple simple d'une extension qui utilise une barre latérale, regarder  annotate-page.

+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.manifest.sidebar_action")}}

+ +

Voir aussi

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/storage/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/storage/index.html deleted file mode 100644 index fefc85229b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/storage/index.html +++ /dev/null @@ -1,67 +0,0 @@ ---- -title: storage -slug: Mozilla/Add-ons/WebExtensions/manifest.json/storage -tags: - - Add-ons - - Extensions - - Manifest - - Reference - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/storage ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObject
ObligatoireNon
Exemple -
-"storage": {
-  "managed_schema": "schema.json"
-}
-
- -

Utilisez la clé storage pour spécifier le nom du fichier de schéma qui définit la structure des données dans le stockage géré.

- -

Les données gérées déclarent les politiques d'entreprise soutenues par l'application. Les politiques sont analogues aux options mais sont configurées par un administrateur système au lieu de l'utilisateur, ce qui permet à l'application d'être configurée pour tous les utilisateurs d'une organisation.

- -

Après avoir déclaré les politiques, elles sont lues à partir de l'API  {{WebExtAPIRef("storage.managed")}}. Cependant, si une valeur de politique n'est pas conforme au schéma, elle n'est pas publiée par l'API storage.managed. Il appartient à l'application d'appliquer les politiques configurées par l'administrateur.

- -
-

Note : Firefox ne définit pas de schéma pour le stockage géré, soir {{WebExtAPIRef("storage.managed")}} pour plus de détails.

-
- -

La clé de storage est un objet qui possède les propriétés requises suivantes:

- - - - - - - - -
managed_schema -

Un String spécifiant le chemin complet du fichier dans l'extension qui définit le schéma de gestion du stockage..

-
- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.storage", 10)}}

- -
-

Note :

- -

Cette page comprend les détails de la page du site web des développeurs de Chrome Manifeste pour les zones de stockage incluses ici sous la licence Creative Commons Attribution 3.0 United States License.

-
diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/storage/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/storage/index.md new file mode 100644 index 0000000000..fefc85229b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/storage/index.md @@ -0,0 +1,67 @@ +--- +title: storage +slug: Mozilla/Add-ons/WebExtensions/manifest.json/storage +tags: + - Add-ons + - Extensions + - Manifest + - Reference + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/storage +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObject
ObligatoireNon
Exemple +
+"storage": {
+  "managed_schema": "schema.json"
+}
+
+ +

Utilisez la clé storage pour spécifier le nom du fichier de schéma qui définit la structure des données dans le stockage géré.

+ +

Les données gérées déclarent les politiques d'entreprise soutenues par l'application. Les politiques sont analogues aux options mais sont configurées par un administrateur système au lieu de l'utilisateur, ce qui permet à l'application d'être configurée pour tous les utilisateurs d'une organisation.

+ +

Après avoir déclaré les politiques, elles sont lues à partir de l'API  {{WebExtAPIRef("storage.managed")}}. Cependant, si une valeur de politique n'est pas conforme au schéma, elle n'est pas publiée par l'API storage.managed. Il appartient à l'application d'appliquer les politiques configurées par l'administrateur.

+ +
+

Note : Firefox ne définit pas de schéma pour le stockage géré, soir {{WebExtAPIRef("storage.managed")}} pour plus de détails.

+
+ +

La clé de storage est un objet qui possède les propriétés requises suivantes:

+ + + + + + + + +
managed_schema +

Un String spécifiant le chemin complet du fichier dans l'extension qui définit le schéma de gestion du stockage..

+
+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.storage", 10)}}

+ +
+

Note :

+ +

Cette page comprend les détails de la page du site web des développeurs de Chrome Manifeste pour les zones de stockage incluses ici sous la licence Creative Commons Attribution 3.0 United States License.

+
diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/theme/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/theme/index.html deleted file mode 100644 index 4fbeefd71f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/theme/index.html +++ /dev/null @@ -1,1335 +0,0 @@ ---- -title: theme -slug: Mozilla/Add-ons/WebExtensions/manifest.json/theme -tags: - - Add-ons - - Browser - - Customization - - Customize - - Design - - Look and Feel - - Themes - - colors - - theme manifest -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/theme ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObject
MandatoryNo
Example -
-"theme": {
-  "images": {
-    "theme_frame": "images/sun.jpg"
-  },
-  "colors": {
-    "frame": "#CF723F",
-    "tab_background_text": "#000"
-  }
-}
-
- -

Utilisez la clé du thème pour définir un thème statique à appliquer à Firefox.

- -
-

Note : Si vous voulez inclure un thème avec une extension, veuillez voir l'API  {{WebExtAPIRef("theme")}}.

-
- -
-

Note : Depuis mai 2019, les thèmes doivent être signés pour être installés ({{bug(1545109)}}). Voir Signature et distribution votre extension pour plus de détails.

-
- -
-

Note : Prise en charge des thèmes dans Firefox pour Android : Une nouvelle version de Firefox pour Android, basée sur GeckoView, est en cours de développement. Une pré-version ne support pas les thèmes.

-
- -

Formats des images

- -

Les formats d'image suivants sont pris en charge dans toutes les propriétés de l'image du thème :

- - - -

Syntaxe

- -

La clé du thème est un objet qui prend les propriétés suivantes:

- - - - - - - - - - - - - - - - - - - - - - - - - - -
NomTypeDescription
imagesObjet -

Facultatif à partir de Firefox 60. Obligatoire avant Firefox 60.

- -

Un objet JSON dont les propriétés représentent les images à afficher dans différentes parties du navigateur. Voir les images pour plus de détails sur les propriétés que cet objet peut contenir.

-
colorsObjet -

Obligatoire.

- -

Un objet JSON dont les propriétés représentent les couleurs de différentes parties du navigateur. Voir couleurs pour plus de détails sur les propriétés que cet objet peut contenir.

-
propertiesObjet -

Optionnel

- -

This object has two properties that affect how the "additional_backgrounds" images are displayed. See properties for details on the properties that this object can contain.

- -
    -
  • "additional_backgrounds_alignment": un tableau énumérant les valeurs définissant l'alignement des éléments correspondants du tableau  "additional_backgrounds":.
    - Les options d'alignement comprennent  : "bottom" (bas), "center" (centre), "left" (gauche), "right" (droite), "top" (haut), "center bottom"(centre bas), "center center" (centre milieu), "center top" (centre haut), "left bottom" (gauche bas), "left center" (gauche milieu), "left top" (gauche haut), "right bottom" (droite bas), "right center" (droite milieu), et "right top" (droite haut). Si elle n'est pas spécifiée, par défaut, "right top".
    - Facultatif
  • -
  • "additional_backgrounds_tiling": un tableau énumérant les valeurs de répétition des éléments correspondants du tableau "additional_backgrounds":, avec le support de "no-repeat" (pas de répétition), "repeat" (répétition), "repeat-x" et "repeat-y". Si elle n'est pas spécifiée, par défaut, "no-repeat".
    - Facultatif
  • -
-
- -

images

- -

Toutes les URL sont relatives au fichier manifest.json et ne peuvent pas référencer une URL externe.

- -

Les images doivent avoir une hauteur de 200 pixels pour garantir qu'elles remplissent toujours l'espace d'en-tête verticalement.

- - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
-

headerURL {{Deprecated_Inline}}

-
String -
-

Attention : headerURL a été supprimé dans Firefox 70. Vous commencerez à recevoir des avertissements dans Firefox 65 et plus tard si vous chargez un thème qui utilise cette propriété. Utilisez theme_frame à la place.

-
- -

L'URL d'une image de premier plan doit être ajoutée à la zone d'en-tête et ancrée dans le coin supérieur droit de la zone d'en-tête.

- -

En option à partir de Firefox 60. Un de theme_frame ou headerURL devait être spécifié avant Firefox 60. Notez également que dans Firefox 60 et suivants, tout {{cssxref("text-shadow")}} appliqué au texte d'en-tête est supprimé si aucun headerURL n'est spécifié (voir {{bug(1404688)}}).

- -

Dans Firefox pour Android, headerURL ou theme_frame doit être spécifié.

- -
    -
-
theme_frameString -

L'URL d'une image de premier plan doit être ajoutée à la zone d'en-tête et ancrée dans le coin supérieur droit de la zone d'en-tête.

- -
-

Note : L'ancre de l'image en haut à gauche de l'en-tête pour Chrome et si l'image ne remplit pas la zone de l'en-tête, l'image sera en mosaïque.

-
- -

Optionnel à partir de Firefox 60. Un de theme_frame ou headerURL devait être spécifié avant Firefox 60.

- -

Dans Firefox pour Android, headerURL ou theme_frame doit être spécifié.

-
additional_backgroundsArray de String -
-

Attention : La propriété additional_backgrounds est experimentale.  Il est actuellement accepté dans les versions finale de Firefox, mais son comportement est sujet à changement.

-
- -

Un tableau d'URLs pour les images de fond supplémentaires à ajouter à la zone d'en-tête et à afficher derrière l'image "theme_frame" :  Ces images superposent la première image du tableau en haut, la dernière image du tableau en bas.

- -

Optionel.

- -

Par défaut, toutes les images sont ancrées dans le coin supérieur droit de la zone d'en-tête, mais leur alignement et leur comportement répété peuvent être contrôlés par les propriétés des "properties".

-
- -

Couleurs

- -

Ces propriétés définissent les couleurs utilisées pour les différentes parties du navigateur. Ils sont tous facultatifs (mais notez que "accentcolor" et "textcolor"  étaient obligatoires dans Firefox avant la version 63). L'effet de ces propriétés sur l'interface utilisateur de Firefox est présenté ici:

- - - - - - - -
-

-
- -
-

Note : Lorsqu'un composant est affecté par plusieurs propriétés de couleur, les propriétés sont listées par ordre de priorité.

-
- -

Toutes ces propriétés peuvent être spécifiées sous la forme d'une chaîne contenant un code de couleur CSS, ou un tableau RVB tel que "tab_background_text": [ 107 , 99 , 23 ], ou en héxadécimal, tel que "tab_background_text": #6b6317.

- -
-

Note : Dans Chrome, les couleurs ne peuvent être spécifiées que sous forme de tableau RVB.

- -

Dans Firefox pour Android, les couleurs peuvent être spécifiées en utilisant:

- - - -

Les couleurs pour les thèmes Firefox pour Android ne peuvent pas être spécifiées à l'aide des noms de couleurs.

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDescription
accentcolor {{Deprecated_Inline}} -
-

Attention : accentcolor a été supprimé dans Firefox 70. Vous commencerez à recevoir des avertissements dans Firefox 65 et plus tard si vous chargez un thème qui utilise cette propriété. Utilisez  frame à la place.

-
- -

La couleur de l'arrière-plan de la zone d'en-tête, affichée dans l'en-tête quand il n'est pas couvert ou reste visible à travers les images spécifiées dans "headerURL" et "additional_backgrounds".

- -
-"theme": {
-  "colors": {
-     "accentcolor": "red",
-     "tab_background_text": "white"
-  }
-}
- - -

-
bookmark_text -

La couleur du texte et des icônes dans le signet et les barres de recherche. De plus, si tab_text n'est pas défini, il définit la couleur du texte de l'onglet actif et si les icons ne sont pas définies, la couleur des icônes de la barre d'outils. Fourni en tant qu'alias compatible Chrome pour l'outils toolbar_text.

- -
-

Note : Assurez-vous que toute couleur utilisée contraste bien avec celles utilisées dans frame et frame_inactive ou toolbar si vous utilisez cette propriété.

- -

Là où les icons ne sont pas définis, assurez-vous également d'un bon contraste avec button_background_active et button_background_hover.

-
- - - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "tab_background_text": "white",
-    "toolbar": "black",
-    "bookmark_text": "red"
-  }
-}
- - -

-
button_background_active -

La couleur de l'arrière-plan des boutons de la barre d'outils.

- - - -
-"theme": {
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "button_background_active": "red"
-  }
-}
- - -

-
button_background_hover -

La couleur de l'arrière-plan des boutons de la barre d'outils au survol.

- - -
-"theme": {
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "button_background_hover": "red"
-  }
-}
- - -

-
icons -

La couleur des icônes de la barre d'outils, à l'exclusion de celles de la barre d'outils de recherche.

- -
-

Note : Assurez-vous que la couleur utilisée contraste bien avec celles utilisées dans frameframe_inactive, button_background_active, et  button_background_hover.

-
- - -
-"theme": {
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "icons": "red"
-  }
-}
- - -

-
icons_attention -

La couleur des icônes de la barre d'outils dans l'état d'attention comme l'icône de signet étoilé ou l'icône de téléchargement terminé.

- -
-

Note : Assurez-vous que la couleur utilisée contraste bien avec celles utilisées dans frameframe_inactive, button_background_active, et  button_background_hover.

-
- - - -
-"theme": {
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "icons_attention": "red"
-  }
-}
- - -

-
frame -

La couleur de l'arrière-plan de la zone d'en-tête, affichée dans la partie de l'en-tête non couverte ou visible à travers les images spécifiées dans "theme_frame" et "additional_backgrounds".

- - -
-"theme": {
-  "colors": {
-     "frame": "red",
-     "tab_background_text": "white"
-  }
-}
- - -

-
frame_inactive -

La couleur de l'arrière-plan de la zone d'en-tête quand la fenêtre du navigateur est inactive, affichée dans la partie de l'en-tête non couverte ou visible à travers les images spécifiées dans "theme_frame" et "additional_backgrounds".

- - -
-"theme": {
-  "colors": {
-     "frame": "red",
-     "frame_inactive": "gray",
-     "tab_text": "white"
-  }
-}
- - -

-
ntp_background -

La nouvelle couleur d'arrière-plan de la page à onglet.

- - -
-"theme": {
-  "colors": {
-     "ntp_background": "red",
-     "ntp_text": "white"
-  }
-}
- - -

-
ntp_text -

La couleur du texte de la page nouvel onglet.

- -
-

Note : Assurez-vous que la couleur utilisée contraste bien avec celle utilisée dans  ntp_background.

-
- - -
-"theme": {
-  "colors": {
-     "ntp_background": "red",
-     "ntp_text": "white"
-  }
-}
- - -

-
popup -

La couleur d'arrière-plan des popups (telles que la liste déroulante de la barre d'adresse et les menus avec une flèche)

- - -
-"theme": {
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "popup": "red"
-  }
-}
- - -

-
popup_border -

La couleur de la bordure des popups.

- - -
-"theme": {
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "popup": "black",
-     "popup_text": "white",
-     "popup_border": "red"
-  }
-}
- - -

-
popup_highlight -

La couleur d'arrière-plan des éléments mis en surbrillance à l'aide du clavier dans les fenêtre contextuelles (tel que l’élément sélectionné dans le menu déroulant de la barre d'URL).

- -
-

Note : Il est recommandé de définir popup_highlight_text pour remplacer la couleur de texte par défaut du navigateur sur différentes plateformes.

-
- - -
-"theme": {
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "popup_highlight": "red",
-     "popup_highlight_text": "white",
-  }
-}
- - -

-
popup_highlight_text -

La couleur du texte des éléments mis en surbrillance dans les fenêtres contextuelles.

- -
-

Note : S'assurer que la couleur utilisée contraste bien avec celle utilisée dans popup_highlight.

-
- - - -
-"theme": {
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "popup_highlight": "black",
-     "popup_highlight_text": "red"
-  }
-}
- - -

-
popup_text -

La couleur du texte des popups.

- -
-

Note : S'assurer que la couleur utilisée contraste bien avec celle utilisée dans popup.

-
- - -
-"theme": {
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "popup": "black",
-     "popup_text": "red"
-  }
-}
- - -

-
sidebar -

La couleur de fond des barres latérales intégrées.

- - -
-"theme": {
-  "colors": {
-     "sidebar": "red",
-     "sidebar_highlight": "white",
-     "sidebar_highlight_text": "green",
-     "sidebar_text": "white"
-  }
-}
- - -

-
sidebar_border -

La couleur de la bordure et du séparateur de la barre latérale du navigateur.

- - -
-"theme": {
-  "colors": {
-     "sidebar_border": "red"
-  }
-}
- - -

-
sidebar_highlight -

La couleur d'arrière-plan des lignes en surbrillance dans les barres latérales intégrées.

- - -
-"theme": {
-  "colors": {
-     "sidebar_highlight": "red",
-     "sidebar_highlight_text": "white"
-  }
-}
- - -

-
sidebar_highlight_text -

La couleur du texte des lignes en surbrillance dans les barres latérales intégrées.

- -
-

Note : S'assurer que la couleur utilisée contraste bien avec celle utilisée dans sidebar_highlight.

-
- - -
-"theme": {
-  "colors": {
-    "sidebar_highlight": "pink",
-    "sidebar_highlight_text": "red",
-  }
-}
- - -

-
sidebar_text -

La couleur du texte des barres latérales intégrées.

- -
-

Note : S'assurer que la couleur utilisée contraste bien avec celle utilisée dans sidebar.

-
- - -
-"theme": {
-  "colors": {
-     "sidebar": "red",
-     "sidebar_highlight": "white",
-     "sidebar_highlight_text": "green",
-     "sidebar_text": "white"
-  }
-}
- - -

-
tab_background_separator -

La couleur du séparateur vertical des onglets d'arrière-plan.

- - -
-"theme": {
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "tab_background_separator": "red"
-  }
-}
- - -

-
tab_background_text -

La couleur du texte affiché dans les onglets des pages inactives. Si tab_text ou bookmark_text n'est pas spécifié, s'applique au texte de l'onglet actif.

- -
-

Note : Assurez-vous que la couleur utilisée contraste bien avec celles utilisées dans  tab_selected ou frame et  frame_inactive.

-
- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "toolbar": "white",
-    "tab_background_text": "red"
-  }
-}
- - -

-
tab_line -

La couleur de la ligne de l'onglet sélectionnée.

- - -
-"theme": {
-  "colors": {
-     "frame": "black",
-     "tab_bckground_text": "white",
-     "tab_line": "red"
-  }
-}
- - -

-
tab_loading -

La couleur de l'indicateur de chargement de l'onglet et de l'effet de vague.

- - -
-"theme": {
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "tab_loading": "red"
-  }
-}
- - -

-
tab_selected -

La couleur de fond de l'onglet sélectionné. Lorsqu'elle n'est pas utilisée, la couleur de l'onglet sélectionné est définie par frame et frame_inactive.

- - -
-"theme": {
-  "images": {
-  "theme_frame": "weta.png"
-},
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "tab_selected": "red"
-  }
-}
- - -

-
tab_text -

Depuis Firefox 59, il représente la couleur du texte de l'onglet sélectionné. Si tab_line n'est pas spécifié, il définit également la couleur de la ligne de tabulation sélectionnée.

- -
-

Note : Assurez-vous que la couleur utilisée contraste bien avec celles utilisées dans  tab_selected ou frame et  frame_inactive.

-
- -

De Firefox 55 à 58, il est incorrectement implémenté comme alias pour "textcolor"

- - - -
-"theme": {
-  "images": {
-  "theme_frame": "weta.png"
-},
-  "colors": {
-     "frame": "black",
-     "tab_background_text": "white",
-     "tab_selected": "white",
-     "tab_text": "red"
-  }
-}
- - -

-
textcolor {{Deprecated_Inline}} -
-

Attention : textcolor a été supprimé dans Firefox 70. Vous commencerez à recevoir des avertissements dans Firefox 65 et plus tard si vous chargez un thème qui utilise cette propriété. Utilisez tab_text à la place.

-
- -

La couleur du texte affiché dans la zone d'en-tête.

- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "toolbar": "white",
-    "textcolor": "red"
-  }
-}
- - -

-
toolbar -

La couleur de fond de la barre de navigation, de la barre de signets et de l'onglet sélectionné.

- -

Ceci définit également la couleur de fond de la barre "Rechercher".

- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "toolbar": "red",
-    "tab_background_text": "white"
-  }
-}
- - -

-
toolbar_bottom_separator -

La couleur de la ligne séparant le bas de la barre d'outils de la région en dessous.

- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "tab_background_text": "white",
-    "toolbar_bottom_separator": "red"
-  }
-}
- - -

-
toolbar_field -

La couleur d'arrière-plan des champs de la barre d'outils, comme la barre URL.

- -

Ceci définit également la couleur de fond du champ Rechercher dans la page.

- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "tab_background_text": "white",
-    "toolbar_field": "red"
-  }
-}
- - -

-
toolbar_field_border -

La couleur de la bordure des champs de la barre d'outils.

- -

Ceci définit également la couleur de fond du champ Rechercher dans la page.

- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "toolbar": "black",
-    "tab_background_text": "white",
-    "toolbar_field": "black",
-    "toolbar_field_text": "white",
-    "toolbar_field_border": "red"
-  }
-}
- - -

-
toolbar_field_border_focus -

La couleur de bordure pour les champs de la barre d'outils qui ont le focus.

- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "toolbar": "black",
-    "tab_background_text": "white",
-    "toolbar_field": "black",
-    "toolbar_field_text": "white",
-    "toolbar_field_border_focus": "red"
-  }
-}
- - -

-
toolbar_field_focus -

La couleur de fond pour les champs de la barre d'outils qui ont le focus, tels que la barre d'URL.

- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "toolbar": "black",
-    "tab_background_text": "white",
-    "toolbar_field": "black",
-    "toolbar_field_text": "white",
-    "toolbar_field_focus": "red"
-  }
-}
- - -

-
toolbar_field_highlightLa couleur d'arrière-plan utilisée pour indiquer la sélection actuelle du texte dans la barre URL (et la barre de recherche, si elle est configurée pour être séparée). -
-"theme": {
-  "colors": {
-    "toolbar_field": "rgba(255, 255, 255, 0.91)",
-    "toolbar_field_text": "rgb(0, 100, 0)",
-    "toolbar_field_highlight": "rgb(180, 240, 180, 0.9)",
-    "toolbar_field_highlight_text": "rgb(0, 80, 0)"
-  }
-}
- - -

- -

Ici, le champ toolbar_field_highlight spécifie que la couleur de surbrillance est un vert clair, alors que le texte est réglé sur un vert foncé à vert moyen en utilisant le texte  toolbar_field_highlight_text.

-
toolbar_field_highlight_text -

La couleur utilisée pour dessiner le texte actuellement sélectionné dans la barre d'URL (et la barre de recherche, si elle est configurée comme boîte séparée).

- -
-

Note : S'assurer que la couleur utilisée contraste bien avec celles utilisées dans  toolbar_field_highlight.

-
- - -
-"theme": {
-  "colors": {
-    "toolbar_field": "rgba(255, 255, 255, 0.91)",
-    "toolbar_field_text": "rgb(0, 100, 0)",
-    "toolbar_field_highlight": "rgb(180, 240, 180, 0.9)",
-    "toolbar_field_highlight_text": "rgb(0, 80, 0)"
-  }
-}
- - -

- -

Ici, le champ toolbar_field_highlight_text permet de régler la couleur du texte sur un vert foncé moyen foncé, tandis que la couleur de surbrillance est un vert clair.

-
toolbar_field_separator -

La couleur des séparateurs à l'intérieur de la barre d'URL. Dans Firefox 58, cela a été implémenté en tant que toolbar_vertical_separator.

- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "toolbar": "black",
-    "tab_background_text": "white",
-    "toolbar_field_separator": "red"
-  }
-}
- - -

- -

Dans cette capture d'écran, "toolbar_vertical_separator" est la ligne verticale blanche dans la barre URL qui sépare l'icône du mode lecture des autres icônes.

-
toolbar_field_text -

La couleur du texte dans les champs de la barre d'outils, comme la barre URL. Ceci définit également la couleur du texte dans le champ Rechercher dans la page.

- -
-

Note : Assurez-vous que la couleur utilisée contraste bien avec celles utilisées dans  toolbar_field.

-
- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "toolbar": "black",
-    "tab_background_text": "white",
-    "toolbar_field": "black",
-    "toolbar_field_text": "red"
-  }
-}
- - -

-
toolbar_field_text_focus -

La couleur du texte dans les champs de la barre d'outils qui ont le focus, tels que la barre d'URL.

- -
-

Note : Assurez-vous que la couleur utilisée contraste bien avec celles utilisées dans  toolbar_field_focus.

-
- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "toolbar": "black",
-    "tab_background_text": "white",
-    "toolbar_field": "black",
-    "toolbar_field_text": "white",
-    "toolbar_field_text_focus": "red"
-  }
-}
- - -

-
toolbar_text -

La couleur du texte de la barre d'outils. Ceci définit également la couleur du texte dans la barre "Rechercher".

- -
-

Note : Pour la compatibilité avec Chrome, utilisez l'alias bookmark_text.

-
- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "tab_background_text": "white",
-    "toolbar": "black",
-    "toolbar_text": "red"
-  }
-}
- - -

-
toolbar_top_separator -

La couleur de la ligne séparant le bas de la barre d'outils de la région en dessous.

- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "tab_background_text": "white",
-    "toolbar": "black",
-    "toolbar_top_separator": "red"
-  }
-}
- - -

-
toolbar_vertical_separator -

La couleur du séparateur à côté de l'icône du menu d'application. Dans Firefox 58, il correspond à la couleur des séparateurs dans la barre d'URL.

- - -
-"theme": {
-  "colors": {
-    "frame": "black",
-    "tab_background_text": "white",
-    "toolbar": "black",
-    "toolbar_vertical_separator": "red"
-  }
-}
- - -

-
- -

Aliases

- -

En outre, cette clé accepte diverses propriétés qui sont des alias pour l'une des propriétés ci-dessus. Ceux-ci sont fournis pour la compatibilité avec Chrome. Si un alias est donné et que la version non-alias est également donnée, alors la valeur sera tirée de la version non-alias.

- -
-

Attention : A partir de Firefox 70, les propriétés suivantes sont supprimées : accentcolor et textcolor. Utilisez à la place frame et tab_background_text. L'utilisation de ces valeurs dans des thèmes chargés dans Firefox 65 ou une version ultérieure augmentera les avertissements.

-
- - - - - - - - - - - - - - - - - - - - - - - - - - -
NomAlias pour
bookmark_texttoolbar_text {{Deprecated_Inline}}
frameaccentcolor {{Deprecated_Inline}}
frame_inactiveaccentcolor {{Deprecated_Inline}}
tab_background_texttextcolor {{Deprecated_Inline}}
- -

properties

- - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
additional_backgrounds_alignment -

Array of String

-
-

Optionel.

- -

Un tableau de valeurs d'énumération définissant l'alignement de l'élément "additional_backgrounds": élément de tableau.
- Les options d'alignement comprennent:

- -
    -
  • "bottom"
  • -
  • "center"
  • -
  • "left"
  • -
  • "right"
  • -
  • "top"
  • -
  • "center bottom"
  • -
  • "center center"
  • -
  • "center top"
  • -
  • "left bottom"
  • -
  • "left center"
  • -
  • "left top"
  • -
  • "right bottom"
  • -
  • "right center"
  • -
  • "right top".
  • -
- -

Si non spécifié, par default "right top".

-
additional_backgrounds_tiling -

Array of String

-
-

Optional.

- -

Un tableau de valeurs d'énumérations définissant, comme l'élément de tableau  "additional_backgrounds": correspondant de répétition. Les options comprennent :

- -
    -
  • "no-repeat"
  • -
  • "repeat"
  • -
  • "repeat-x"
  • -
  • "repeat-y"
  • -
- -

Si non spécifié, par default "no-repeat".

-
- -

Exemples

- -

Un thème de base doit définir une image à ajouter à l'en-tête, la couleur d'accent à utiliser dans l'en-tête et la couleur du texte utilisée dans l'en-tête:

- -
 "theme": {
-   "images": {
-     "theme_frame": "images/sun.jpg"
-   },
-   "colors": {
-     "frame": "#CF723F",
-     "tab_background_text": "#000"
-   }
- }
- -

Plusieurs images peuvent être utilisées pour remplir l'en-tête, en utilisant une image d'en-tête vierge/transparente pour donner le contrôle de l'emplacement à chaque image visible:

- -
 "theme": {
-   "images": {
-     "headerURL": "images/blank.png",
-     "additional_backgrounds": [ "images/left.png" , "images/middle.png", "images/right.png"]
-   },
-   "properties": {
-     "additional_backgrounds_alignment": [ "left top" , "top", "right top"]
-   },
-   "colors": {
-     "frame": "blue",
-     "tab_background_text": "#ffffff"
-   }
- }
- -

Vous pouvez également remplir l'en-tête avec une image répétée, ou des images, dans ce cas, une seule image ancrée dans le milieu du haut de l'en-tête et répétée sur le reste de l'en-tête:

- -
 "theme": {
-   "images": {
-     "additional_backgrounds": [ "images/logo.png"]
-   },
-   "properties": {
-     "additional_backgrounds_alignment": [ "top" ],
-     "additional_backgrounds_tiling": [ "repeat"  ]
-   },
-   "colors": {
-     "frame": "green",
-     "tab_background_text": "#000"
-   }
- }
- -

L'exemple suivant utilise la plupart des différentes valeurs de "theme.colors":

- -
  "theme": {
-    "images": {
-      "theme_frame": "weta.png"
-    },
-
-    "colors": {
-       "accentcolor": "darkgreen",
-       "tab_background_text": "white",
-       "toolbar": "blue",
-       "bookmark_text": "cyan",
-       "toolbar_field": "orange",
-       "toolbar_field_border": "white",
-       "toolbar_field_text": "green",
-       "toolbar_top_separator": "red",
-       "toolbar_bottom_separator": "white",
-       "toolbar_vertical_separator": "white"
-    }
-  }
- -

Il vous donnera un navigateur qui ressemble à ceci :

- -

- -

Dans cette capture d'écran, "toolbar_vertical_separator" est la ligne verticale blanche dans la barre d'URL divisant l'icône du mode Lecteur des autres icônes.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.theme")}}

- -

Couleurs

- -

{{Compat("webextensions.manifest.theme.colors", 10)}}

- -

Images

- -

{{Compat("webextensions.manifest.theme.images", 10)}}

- -

Propriétés

- -

{{Compat("webextensions.manifest.theme.properties", 10)}}

- -

Compatibilité de Chrome

- -

Dans Chrome:

- - - -
"theme": {
-  "colors": {
-     "frame": [255, 0, 0],
-     "tab_background_text": [0, 255, 0],
-     "bookmark_text": [0, 0, 255]
-  }
-}
- -

A partir de Firefox 59, la forme tableau et la forme couleur CSS sont acceptées pour toutes les propriétés. Avant cela, colors/frame et colors/tab_background_text nécessitaient la forme tableau, alors que d'autres propriétés nécessitaient la forme couleur CSS.

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/theme/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/theme/index.md new file mode 100644 index 0000000000..4fbeefd71f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/theme/index.md @@ -0,0 +1,1335 @@ +--- +title: theme +slug: Mozilla/Add-ons/WebExtensions/manifest.json/theme +tags: + - Add-ons + - Browser + - Customization + - Customize + - Design + - Look and Feel + - Themes + - colors + - theme manifest +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/theme +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObject
MandatoryNo
Example +
+"theme": {
+  "images": {
+    "theme_frame": "images/sun.jpg"
+  },
+  "colors": {
+    "frame": "#CF723F",
+    "tab_background_text": "#000"
+  }
+}
+
+ +

Utilisez la clé du thème pour définir un thème statique à appliquer à Firefox.

+ +
+

Note : Si vous voulez inclure un thème avec une extension, veuillez voir l'API  {{WebExtAPIRef("theme")}}.

+
+ +
+

Note : Depuis mai 2019, les thèmes doivent être signés pour être installés ({{bug(1545109)}}). Voir Signature et distribution votre extension pour plus de détails.

+
+ +
+

Note : Prise en charge des thèmes dans Firefox pour Android : Une nouvelle version de Firefox pour Android, basée sur GeckoView, est en cours de développement. Une pré-version ne support pas les thèmes.

+
+ +

Formats des images

+ +

Les formats d'image suivants sont pris en charge dans toutes les propriétés de l'image du thème :

+ + + +

Syntaxe

+ +

La clé du thème est un objet qui prend les propriétés suivantes:

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
NomTypeDescription
imagesObjet +

Facultatif à partir de Firefox 60. Obligatoire avant Firefox 60.

+ +

Un objet JSON dont les propriétés représentent les images à afficher dans différentes parties du navigateur. Voir les images pour plus de détails sur les propriétés que cet objet peut contenir.

+
colorsObjet +

Obligatoire.

+ +

Un objet JSON dont les propriétés représentent les couleurs de différentes parties du navigateur. Voir couleurs pour plus de détails sur les propriétés que cet objet peut contenir.

+
propertiesObjet +

Optionnel

+ +

This object has two properties that affect how the "additional_backgrounds" images are displayed. See properties for details on the properties that this object can contain.

+ +
    +
  • "additional_backgrounds_alignment": un tableau énumérant les valeurs définissant l'alignement des éléments correspondants du tableau  "additional_backgrounds":.
    + Les options d'alignement comprennent  : "bottom" (bas), "center" (centre), "left" (gauche), "right" (droite), "top" (haut), "center bottom"(centre bas), "center center" (centre milieu), "center top" (centre haut), "left bottom" (gauche bas), "left center" (gauche milieu), "left top" (gauche haut), "right bottom" (droite bas), "right center" (droite milieu), et "right top" (droite haut). Si elle n'est pas spécifiée, par défaut, "right top".
    + Facultatif
  • +
  • "additional_backgrounds_tiling": un tableau énumérant les valeurs de répétition des éléments correspondants du tableau "additional_backgrounds":, avec le support de "no-repeat" (pas de répétition), "repeat" (répétition), "repeat-x" et "repeat-y". Si elle n'est pas spécifiée, par défaut, "no-repeat".
    + Facultatif
  • +
+
+ +

images

+ +

Toutes les URL sont relatives au fichier manifest.json et ne peuvent pas référencer une URL externe.

+ +

Les images doivent avoir une hauteur de 200 pixels pour garantir qu'elles remplissent toujours l'espace d'en-tête verticalement.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
+

headerURL {{Deprecated_Inline}}

+
String +
+

Attention : headerURL a été supprimé dans Firefox 70. Vous commencerez à recevoir des avertissements dans Firefox 65 et plus tard si vous chargez un thème qui utilise cette propriété. Utilisez theme_frame à la place.

+
+ +

L'URL d'une image de premier plan doit être ajoutée à la zone d'en-tête et ancrée dans le coin supérieur droit de la zone d'en-tête.

+ +

En option à partir de Firefox 60. Un de theme_frame ou headerURL devait être spécifié avant Firefox 60. Notez également que dans Firefox 60 et suivants, tout {{cssxref("text-shadow")}} appliqué au texte d'en-tête est supprimé si aucun headerURL n'est spécifié (voir {{bug(1404688)}}).

+ +

Dans Firefox pour Android, headerURL ou theme_frame doit être spécifié.

+ +
    +
+
theme_frameString +

L'URL d'une image de premier plan doit être ajoutée à la zone d'en-tête et ancrée dans le coin supérieur droit de la zone d'en-tête.

+ +
+

Note : L'ancre de l'image en haut à gauche de l'en-tête pour Chrome et si l'image ne remplit pas la zone de l'en-tête, l'image sera en mosaïque.

+
+ +

Optionnel à partir de Firefox 60. Un de theme_frame ou headerURL devait être spécifié avant Firefox 60.

+ +

Dans Firefox pour Android, headerURL ou theme_frame doit être spécifié.

+
additional_backgroundsArray de String +
+

Attention : La propriété additional_backgrounds est experimentale.  Il est actuellement accepté dans les versions finale de Firefox, mais son comportement est sujet à changement.

+
+ +

Un tableau d'URLs pour les images de fond supplémentaires à ajouter à la zone d'en-tête et à afficher derrière l'image "theme_frame" :  Ces images superposent la première image du tableau en haut, la dernière image du tableau en bas.

+ +

Optionel.

+ +

Par défaut, toutes les images sont ancrées dans le coin supérieur droit de la zone d'en-tête, mais leur alignement et leur comportement répété peuvent être contrôlés par les propriétés des "properties".

+
+ +

Couleurs

+ +

Ces propriétés définissent les couleurs utilisées pour les différentes parties du navigateur. Ils sont tous facultatifs (mais notez que "accentcolor" et "textcolor"  étaient obligatoires dans Firefox avant la version 63). L'effet de ces propriétés sur l'interface utilisateur de Firefox est présenté ici:

+ + + + + + + +
+

+
+ +
+

Note : Lorsqu'un composant est affecté par plusieurs propriétés de couleur, les propriétés sont listées par ordre de priorité.

+
+ +

Toutes ces propriétés peuvent être spécifiées sous la forme d'une chaîne contenant un code de couleur CSS, ou un tableau RVB tel que "tab_background_text": [ 107 , 99 , 23 ], ou en héxadécimal, tel que "tab_background_text": #6b6317.

+ +
+

Note : Dans Chrome, les couleurs ne peuvent être spécifiées que sous forme de tableau RVB.

+ +

Dans Firefox pour Android, les couleurs peuvent être spécifiées en utilisant:

+ + + +

Les couleurs pour les thèmes Firefox pour Android ne peuvent pas être spécifiées à l'aide des noms de couleurs.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescription
accentcolor {{Deprecated_Inline}} +
+

Attention : accentcolor a été supprimé dans Firefox 70. Vous commencerez à recevoir des avertissements dans Firefox 65 et plus tard si vous chargez un thème qui utilise cette propriété. Utilisez  frame à la place.

+
+ +

La couleur de l'arrière-plan de la zone d'en-tête, affichée dans l'en-tête quand il n'est pas couvert ou reste visible à travers les images spécifiées dans "headerURL" et "additional_backgrounds".

+ +
+"theme": {
+  "colors": {
+     "accentcolor": "red",
+     "tab_background_text": "white"
+  }
+}
+ + +

+
bookmark_text +

La couleur du texte et des icônes dans le signet et les barres de recherche. De plus, si tab_text n'est pas défini, il définit la couleur du texte de l'onglet actif et si les icons ne sont pas définies, la couleur des icônes de la barre d'outils. Fourni en tant qu'alias compatible Chrome pour l'outils toolbar_text.

+ +
+

Note : Assurez-vous que toute couleur utilisée contraste bien avec celles utilisées dans frame et frame_inactive ou toolbar si vous utilisez cette propriété.

+ +

Là où les icons ne sont pas définis, assurez-vous également d'un bon contraste avec button_background_active et button_background_hover.

+
+ + + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "tab_background_text": "white",
+    "toolbar": "black",
+    "bookmark_text": "red"
+  }
+}
+ + +

+
button_background_active +

La couleur de l'arrière-plan des boutons de la barre d'outils.

+ + + +
+"theme": {
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "button_background_active": "red"
+  }
+}
+ + +

+
button_background_hover +

La couleur de l'arrière-plan des boutons de la barre d'outils au survol.

+ + +
+"theme": {
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "button_background_hover": "red"
+  }
+}
+ + +

+
icons +

La couleur des icônes de la barre d'outils, à l'exclusion de celles de la barre d'outils de recherche.

+ +
+

Note : Assurez-vous que la couleur utilisée contraste bien avec celles utilisées dans frameframe_inactive, button_background_active, et  button_background_hover.

+
+ + +
+"theme": {
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "icons": "red"
+  }
+}
+ + +

+
icons_attention +

La couleur des icônes de la barre d'outils dans l'état d'attention comme l'icône de signet étoilé ou l'icône de téléchargement terminé.

+ +
+

Note : Assurez-vous que la couleur utilisée contraste bien avec celles utilisées dans frameframe_inactive, button_background_active, et  button_background_hover.

+
+ + + +
+"theme": {
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "icons_attention": "red"
+  }
+}
+ + +

+
frame +

La couleur de l'arrière-plan de la zone d'en-tête, affichée dans la partie de l'en-tête non couverte ou visible à travers les images spécifiées dans "theme_frame" et "additional_backgrounds".

+ + +
+"theme": {
+  "colors": {
+     "frame": "red",
+     "tab_background_text": "white"
+  }
+}
+ + +

+
frame_inactive +

La couleur de l'arrière-plan de la zone d'en-tête quand la fenêtre du navigateur est inactive, affichée dans la partie de l'en-tête non couverte ou visible à travers les images spécifiées dans "theme_frame" et "additional_backgrounds".

+ + +
+"theme": {
+  "colors": {
+     "frame": "red",
+     "frame_inactive": "gray",
+     "tab_text": "white"
+  }
+}
+ + +

+
ntp_background +

La nouvelle couleur d'arrière-plan de la page à onglet.

+ + +
+"theme": {
+  "colors": {
+     "ntp_background": "red",
+     "ntp_text": "white"
+  }
+}
+ + +

+
ntp_text +

La couleur du texte de la page nouvel onglet.

+ +
+

Note : Assurez-vous que la couleur utilisée contraste bien avec celle utilisée dans  ntp_background.

+
+ + +
+"theme": {
+  "colors": {
+     "ntp_background": "red",
+     "ntp_text": "white"
+  }
+}
+ + +

+
popup +

La couleur d'arrière-plan des popups (telles que la liste déroulante de la barre d'adresse et les menus avec une flèche)

+ + +
+"theme": {
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "popup": "red"
+  }
+}
+ + +

+
popup_border +

La couleur de la bordure des popups.

+ + +
+"theme": {
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "popup": "black",
+     "popup_text": "white",
+     "popup_border": "red"
+  }
+}
+ + +

+
popup_highlight +

La couleur d'arrière-plan des éléments mis en surbrillance à l'aide du clavier dans les fenêtre contextuelles (tel que l’élément sélectionné dans le menu déroulant de la barre d'URL).

+ +
+

Note : Il est recommandé de définir popup_highlight_text pour remplacer la couleur de texte par défaut du navigateur sur différentes plateformes.

+
+ + +
+"theme": {
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "popup_highlight": "red",
+     "popup_highlight_text": "white",
+  }
+}
+ + +

+
popup_highlight_text +

La couleur du texte des éléments mis en surbrillance dans les fenêtres contextuelles.

+ +
+

Note : S'assurer que la couleur utilisée contraste bien avec celle utilisée dans popup_highlight.

+
+ + + +
+"theme": {
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "popup_highlight": "black",
+     "popup_highlight_text": "red"
+  }
+}
+ + +

+
popup_text +

La couleur du texte des popups.

+ +
+

Note : S'assurer que la couleur utilisée contraste bien avec celle utilisée dans popup.

+
+ + +
+"theme": {
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "popup": "black",
+     "popup_text": "red"
+  }
+}
+ + +

+
sidebar +

La couleur de fond des barres latérales intégrées.

+ + +
+"theme": {
+  "colors": {
+     "sidebar": "red",
+     "sidebar_highlight": "white",
+     "sidebar_highlight_text": "green",
+     "sidebar_text": "white"
+  }
+}
+ + +

+
sidebar_border +

La couleur de la bordure et du séparateur de la barre latérale du navigateur.

+ + +
+"theme": {
+  "colors": {
+     "sidebar_border": "red"
+  }
+}
+ + +

+
sidebar_highlight +

La couleur d'arrière-plan des lignes en surbrillance dans les barres latérales intégrées.

+ + +
+"theme": {
+  "colors": {
+     "sidebar_highlight": "red",
+     "sidebar_highlight_text": "white"
+  }
+}
+ + +

+
sidebar_highlight_text +

La couleur du texte des lignes en surbrillance dans les barres latérales intégrées.

+ +
+

Note : S'assurer que la couleur utilisée contraste bien avec celle utilisée dans sidebar_highlight.

+
+ + +
+"theme": {
+  "colors": {
+    "sidebar_highlight": "pink",
+    "sidebar_highlight_text": "red",
+  }
+}
+ + +

+
sidebar_text +

La couleur du texte des barres latérales intégrées.

+ +
+

Note : S'assurer que la couleur utilisée contraste bien avec celle utilisée dans sidebar.

+
+ + +
+"theme": {
+  "colors": {
+     "sidebar": "red",
+     "sidebar_highlight": "white",
+     "sidebar_highlight_text": "green",
+     "sidebar_text": "white"
+  }
+}
+ + +

+
tab_background_separator +

La couleur du séparateur vertical des onglets d'arrière-plan.

+ + +
+"theme": {
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "tab_background_separator": "red"
+  }
+}
+ + +

+
tab_background_text +

La couleur du texte affiché dans les onglets des pages inactives. Si tab_text ou bookmark_text n'est pas spécifié, s'applique au texte de l'onglet actif.

+ +
+

Note : Assurez-vous que la couleur utilisée contraste bien avec celles utilisées dans  tab_selected ou frame et  frame_inactive.

+
+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "toolbar": "white",
+    "tab_background_text": "red"
+  }
+}
+ + +

+
tab_line +

La couleur de la ligne de l'onglet sélectionnée.

+ + +
+"theme": {
+  "colors": {
+     "frame": "black",
+     "tab_bckground_text": "white",
+     "tab_line": "red"
+  }
+}
+ + +

+
tab_loading +

La couleur de l'indicateur de chargement de l'onglet et de l'effet de vague.

+ + +
+"theme": {
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "tab_loading": "red"
+  }
+}
+ + +

+
tab_selected +

La couleur de fond de l'onglet sélectionné. Lorsqu'elle n'est pas utilisée, la couleur de l'onglet sélectionné est définie par frame et frame_inactive.

+ + +
+"theme": {
+  "images": {
+  "theme_frame": "weta.png"
+},
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "tab_selected": "red"
+  }
+}
+ + +

+
tab_text +

Depuis Firefox 59, il représente la couleur du texte de l'onglet sélectionné. Si tab_line n'est pas spécifié, il définit également la couleur de la ligne de tabulation sélectionnée.

+ +
+

Note : Assurez-vous que la couleur utilisée contraste bien avec celles utilisées dans  tab_selected ou frame et  frame_inactive.

+
+ +

De Firefox 55 à 58, il est incorrectement implémenté comme alias pour "textcolor"

+ + + +
+"theme": {
+  "images": {
+  "theme_frame": "weta.png"
+},
+  "colors": {
+     "frame": "black",
+     "tab_background_text": "white",
+     "tab_selected": "white",
+     "tab_text": "red"
+  }
+}
+ + +

+
textcolor {{Deprecated_Inline}} +
+

Attention : textcolor a été supprimé dans Firefox 70. Vous commencerez à recevoir des avertissements dans Firefox 65 et plus tard si vous chargez un thème qui utilise cette propriété. Utilisez tab_text à la place.

+
+ +

La couleur du texte affiché dans la zone d'en-tête.

+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "toolbar": "white",
+    "textcolor": "red"
+  }
+}
+ + +

+
toolbar +

La couleur de fond de la barre de navigation, de la barre de signets et de l'onglet sélectionné.

+ +

Ceci définit également la couleur de fond de la barre "Rechercher".

+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "toolbar": "red",
+    "tab_background_text": "white"
+  }
+}
+ + +

+
toolbar_bottom_separator +

La couleur de la ligne séparant le bas de la barre d'outils de la région en dessous.

+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "tab_background_text": "white",
+    "toolbar_bottom_separator": "red"
+  }
+}
+ + +

+
toolbar_field +

La couleur d'arrière-plan des champs de la barre d'outils, comme la barre URL.

+ +

Ceci définit également la couleur de fond du champ Rechercher dans la page.

+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "tab_background_text": "white",
+    "toolbar_field": "red"
+  }
+}
+ + +

+
toolbar_field_border +

La couleur de la bordure des champs de la barre d'outils.

+ +

Ceci définit également la couleur de fond du champ Rechercher dans la page.

+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "toolbar": "black",
+    "tab_background_text": "white",
+    "toolbar_field": "black",
+    "toolbar_field_text": "white",
+    "toolbar_field_border": "red"
+  }
+}
+ + +

+
toolbar_field_border_focus +

La couleur de bordure pour les champs de la barre d'outils qui ont le focus.

+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "toolbar": "black",
+    "tab_background_text": "white",
+    "toolbar_field": "black",
+    "toolbar_field_text": "white",
+    "toolbar_field_border_focus": "red"
+  }
+}
+ + +

+
toolbar_field_focus +

La couleur de fond pour les champs de la barre d'outils qui ont le focus, tels que la barre d'URL.

+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "toolbar": "black",
+    "tab_background_text": "white",
+    "toolbar_field": "black",
+    "toolbar_field_text": "white",
+    "toolbar_field_focus": "red"
+  }
+}
+ + +

+
toolbar_field_highlightLa couleur d'arrière-plan utilisée pour indiquer la sélection actuelle du texte dans la barre URL (et la barre de recherche, si elle est configurée pour être séparée). +
+"theme": {
+  "colors": {
+    "toolbar_field": "rgba(255, 255, 255, 0.91)",
+    "toolbar_field_text": "rgb(0, 100, 0)",
+    "toolbar_field_highlight": "rgb(180, 240, 180, 0.9)",
+    "toolbar_field_highlight_text": "rgb(0, 80, 0)"
+  }
+}
+ + +

+ +

Ici, le champ toolbar_field_highlight spécifie que la couleur de surbrillance est un vert clair, alors que le texte est réglé sur un vert foncé à vert moyen en utilisant le texte  toolbar_field_highlight_text.

+
toolbar_field_highlight_text +

La couleur utilisée pour dessiner le texte actuellement sélectionné dans la barre d'URL (et la barre de recherche, si elle est configurée comme boîte séparée).

+ +
+

Note : S'assurer que la couleur utilisée contraste bien avec celles utilisées dans  toolbar_field_highlight.

+
+ + +
+"theme": {
+  "colors": {
+    "toolbar_field": "rgba(255, 255, 255, 0.91)",
+    "toolbar_field_text": "rgb(0, 100, 0)",
+    "toolbar_field_highlight": "rgb(180, 240, 180, 0.9)",
+    "toolbar_field_highlight_text": "rgb(0, 80, 0)"
+  }
+}
+ + +

+ +

Ici, le champ toolbar_field_highlight_text permet de régler la couleur du texte sur un vert foncé moyen foncé, tandis que la couleur de surbrillance est un vert clair.

+
toolbar_field_separator +

La couleur des séparateurs à l'intérieur de la barre d'URL. Dans Firefox 58, cela a été implémenté en tant que toolbar_vertical_separator.

+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "toolbar": "black",
+    "tab_background_text": "white",
+    "toolbar_field_separator": "red"
+  }
+}
+ + +

+ +

Dans cette capture d'écran, "toolbar_vertical_separator" est la ligne verticale blanche dans la barre URL qui sépare l'icône du mode lecture des autres icônes.

+
toolbar_field_text +

La couleur du texte dans les champs de la barre d'outils, comme la barre URL. Ceci définit également la couleur du texte dans le champ Rechercher dans la page.

+ +
+

Note : Assurez-vous que la couleur utilisée contraste bien avec celles utilisées dans  toolbar_field.

+
+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "toolbar": "black",
+    "tab_background_text": "white",
+    "toolbar_field": "black",
+    "toolbar_field_text": "red"
+  }
+}
+ + +

+
toolbar_field_text_focus +

La couleur du texte dans les champs de la barre d'outils qui ont le focus, tels que la barre d'URL.

+ +
+

Note : Assurez-vous que la couleur utilisée contraste bien avec celles utilisées dans  toolbar_field_focus.

+
+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "toolbar": "black",
+    "tab_background_text": "white",
+    "toolbar_field": "black",
+    "toolbar_field_text": "white",
+    "toolbar_field_text_focus": "red"
+  }
+}
+ + +

+
toolbar_text +

La couleur du texte de la barre d'outils. Ceci définit également la couleur du texte dans la barre "Rechercher".

+ +
+

Note : Pour la compatibilité avec Chrome, utilisez l'alias bookmark_text.

+
+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "tab_background_text": "white",
+    "toolbar": "black",
+    "toolbar_text": "red"
+  }
+}
+ + +

+
toolbar_top_separator +

La couleur de la ligne séparant le bas de la barre d'outils de la région en dessous.

+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "tab_background_text": "white",
+    "toolbar": "black",
+    "toolbar_top_separator": "red"
+  }
+}
+ + +

+
toolbar_vertical_separator +

La couleur du séparateur à côté de l'icône du menu d'application. Dans Firefox 58, il correspond à la couleur des séparateurs dans la barre d'URL.

+ + +
+"theme": {
+  "colors": {
+    "frame": "black",
+    "tab_background_text": "white",
+    "toolbar": "black",
+    "toolbar_vertical_separator": "red"
+  }
+}
+ + +

+
+ +

Aliases

+ +

En outre, cette clé accepte diverses propriétés qui sont des alias pour l'une des propriétés ci-dessus. Ceux-ci sont fournis pour la compatibilité avec Chrome. Si un alias est donné et que la version non-alias est également donnée, alors la valeur sera tirée de la version non-alias.

+ +
+

Attention : A partir de Firefox 70, les propriétés suivantes sont supprimées : accentcolor et textcolor. Utilisez à la place frame et tab_background_text. L'utilisation de ces valeurs dans des thèmes chargés dans Firefox 65 ou une version ultérieure augmentera les avertissements.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +
NomAlias pour
bookmark_texttoolbar_text {{Deprecated_Inline}}
frameaccentcolor {{Deprecated_Inline}}
frame_inactiveaccentcolor {{Deprecated_Inline}}
tab_background_texttextcolor {{Deprecated_Inline}}
+ +

properties

+ + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
additional_backgrounds_alignment +

Array of String

+
+

Optionel.

+ +

Un tableau de valeurs d'énumération définissant l'alignement de l'élément "additional_backgrounds": élément de tableau.
+ Les options d'alignement comprennent:

+ +
    +
  • "bottom"
  • +
  • "center"
  • +
  • "left"
  • +
  • "right"
  • +
  • "top"
  • +
  • "center bottom"
  • +
  • "center center"
  • +
  • "center top"
  • +
  • "left bottom"
  • +
  • "left center"
  • +
  • "left top"
  • +
  • "right bottom"
  • +
  • "right center"
  • +
  • "right top".
  • +
+ +

Si non spécifié, par default "right top".

+
additional_backgrounds_tiling +

Array of String

+
+

Optional.

+ +

Un tableau de valeurs d'énumérations définissant, comme l'élément de tableau  "additional_backgrounds": correspondant de répétition. Les options comprennent :

+ +
    +
  • "no-repeat"
  • +
  • "repeat"
  • +
  • "repeat-x"
  • +
  • "repeat-y"
  • +
+ +

Si non spécifié, par default "no-repeat".

+
+ +

Exemples

+ +

Un thème de base doit définir une image à ajouter à l'en-tête, la couleur d'accent à utiliser dans l'en-tête et la couleur du texte utilisée dans l'en-tête:

+ +
 "theme": {
+   "images": {
+     "theme_frame": "images/sun.jpg"
+   },
+   "colors": {
+     "frame": "#CF723F",
+     "tab_background_text": "#000"
+   }
+ }
+ +

Plusieurs images peuvent être utilisées pour remplir l'en-tête, en utilisant une image d'en-tête vierge/transparente pour donner le contrôle de l'emplacement à chaque image visible:

+ +
 "theme": {
+   "images": {
+     "headerURL": "images/blank.png",
+     "additional_backgrounds": [ "images/left.png" , "images/middle.png", "images/right.png"]
+   },
+   "properties": {
+     "additional_backgrounds_alignment": [ "left top" , "top", "right top"]
+   },
+   "colors": {
+     "frame": "blue",
+     "tab_background_text": "#ffffff"
+   }
+ }
+ +

Vous pouvez également remplir l'en-tête avec une image répétée, ou des images, dans ce cas, une seule image ancrée dans le milieu du haut de l'en-tête et répétée sur le reste de l'en-tête:

+ +
 "theme": {
+   "images": {
+     "additional_backgrounds": [ "images/logo.png"]
+   },
+   "properties": {
+     "additional_backgrounds_alignment": [ "top" ],
+     "additional_backgrounds_tiling": [ "repeat"  ]
+   },
+   "colors": {
+     "frame": "green",
+     "tab_background_text": "#000"
+   }
+ }
+ +

L'exemple suivant utilise la plupart des différentes valeurs de "theme.colors":

+ +
  "theme": {
+    "images": {
+      "theme_frame": "weta.png"
+    },
+
+    "colors": {
+       "accentcolor": "darkgreen",
+       "tab_background_text": "white",
+       "toolbar": "blue",
+       "bookmark_text": "cyan",
+       "toolbar_field": "orange",
+       "toolbar_field_border": "white",
+       "toolbar_field_text": "green",
+       "toolbar_top_separator": "red",
+       "toolbar_bottom_separator": "white",
+       "toolbar_vertical_separator": "white"
+    }
+  }
+ +

Il vous donnera un navigateur qui ressemble à ceci :

+ +

+ +

Dans cette capture d'écran, "toolbar_vertical_separator" est la ligne verticale blanche dans la barre d'URL divisant l'icône du mode Lecteur des autres icônes.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.theme")}}

+ +

Couleurs

+ +

{{Compat("webextensions.manifest.theme.colors", 10)}}

+ +

Images

+ +

{{Compat("webextensions.manifest.theme.images", 10)}}

+ +

Propriétés

+ +

{{Compat("webextensions.manifest.theme.properties", 10)}}

+ +

Compatibilité de Chrome

+ +

Dans Chrome:

+ + + +
"theme": {
+  "colors": {
+     "frame": [255, 0, 0],
+     "tab_background_text": [0, 255, 0],
+     "bookmark_text": [0, 0, 255]
+  }
+}
+ +

A partir de Firefox 59, la forme tableau et la forme couleur CSS sont acceptées pour toutes les propriétés. Avant cela, colors/frame et colors/tab_background_text nécessitaient la forme tableau, alors que d'autres propriétés nécessitaient la forme couleur CSS.

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/theme_experiment/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/theme_experiment/index.html deleted file mode 100644 index 5bf66f5ad3..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/theme_experiment/index.html +++ /dev/null @@ -1,161 +0,0 @@ ---- -title: theme expérimentation -slug: Mozilla/Add-ons/WebExtensions/manifest.json/theme_experiment -tags: - - Add-ons - - Browser - - Customisation - - Customise - - Design - - Look and Feel - - Themes - - colors - - navigatuer - - theme manifest -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/theme_experiment -original_slug: Mozilla/Add-ons/WebExtensions/manifest.json/theme_experimentation ---- -
{{AddonSidebar}}
- - - - - - - - - - - - - - - - -
TypeObject
ObligatoireNon
Exemple -
-"theme_experiment": {
-  "stylesheet": "style.css",
-  "colors": {
-    "popup_affordance": "--arrowpanel-dimmed"
-  },
-  "images": {
-    "theme_toolbar": "--toolbar-bgimage"
-  },
-  "properties": {
-    "toolbar_image_alignment":
-    "--toolbar-bgalignment"
-  }
-}
-
- -

Cette clé permet de définir les propriétés de la clé expérimentale de theme pour l'interface Firefox. Ces expériences sont un précurseur pour proposer de nouvelles fonctionnalités thématiques à inclure dans Firefox. L'expérimentation se fait par:

- - - -

Pour découvrir les sélecteurs CSS des éléments de l'interface utilisateur Firefox ou des variables CSS internes de Firefox, utilise la boite à outils du navigateur.

- -
-

Note : Cette clé est uniquement disponible pour une utilisation dans les canaux Firefox Developer Edition et Firefox Nightly et nécessite l'activation de la préférence extensions.legacy.enabled.

-
- -
-

Attention : Cette fonctionnalité est expérimentale et peut être sujette à modification.

-
- -

Syntaxe

- -

La clé theme_experiment est un objet qui prend les propriétés suivantes :

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NomTypeDescription
stylesheetString -

Facultatif

- -

Nom d'une feuille de style fournissant le mappage des sélecteurs CSS des éléments de l'interface Firefox aux variables CSS.

-
imagesObject -

Facultatif

- -

Mappings des variables CSS (telles que définies dans Firefox ou par la feuille de style définie dans la stylesheet) aux noms de propriétés images à utiliser dans la clé theme.

-
colorsObject -

Facultatif

- -

Mappings des variables CSS (telles que définies dans Firefox ou par la feuille de style définie dans la stylesheet) aux noms de propriétés colors à utiliser dans la clé theme.

-
propertiesObject -

Facultatif

- -

Mappings des variables CSS (telles que définies dans Firefox ou par la feuille de style définie dans la stylesheet) aux noms de propriétés properties à utiliser dans la clé theme.

-
- -

Exemples

- -

Ces exemples utilisent une feuille de style appelée style.css pour permettre de définir une couleur pour le bouton de recharge du navigateur dans la clé theme.

- -

La feuille de style définit :

- -
#reload-button {
-  fill: var(--reload-button-color);
-}
-
- -

#reload-button est le sélecteur CSS interne de Firefox pour le bouton reload et  --reload-button-color est un nom arbitraire..

- -

Dans le fichier manifest.json, --reload-button-color est alors mappé au nom à utiliser dans la propriété theme colors :

- -
"theme_experiment": {
-  "stylesheet": "style.css",
-  "colors": {
-    "reload_button": "--reload-button-color"
-  }
-}
-
- -

L'argument reload_button est alors utilisé de la même manière que n'importe quelle autre propriété de theme .

- -
"theme": {
-  "colors": {
-    "reload_button": "orange"
-  }
-}
-
- -

Ceci a pour effet de rendre l'icône de recharge orange.

- - - -

Cette propriété peut également être utilisée dans browser.theme.update(). images et  properties travaillent de la même manière que colors.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.theme_experiment")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/theme_experiment/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/theme_experiment/index.md new file mode 100644 index 0000000000..5bf66f5ad3 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/theme_experiment/index.md @@ -0,0 +1,161 @@ +--- +title: theme expérimentation +slug: Mozilla/Add-ons/WebExtensions/manifest.json/theme_experiment +tags: + - Add-ons + - Browser + - Customisation + - Customise + - Design + - Look and Feel + - Themes + - colors + - navigatuer + - theme manifest +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/theme_experiment +original_slug: Mozilla/Add-ons/WebExtensions/manifest.json/theme_experimentation +--- +
{{AddonSidebar}}
+ + + + + + + + + + + + + + + + +
TypeObject
ObligatoireNon
Exemple +
+"theme_experiment": {
+  "stylesheet": "style.css",
+  "colors": {
+    "popup_affordance": "--arrowpanel-dimmed"
+  },
+  "images": {
+    "theme_toolbar": "--toolbar-bgimage"
+  },
+  "properties": {
+    "toolbar_image_alignment":
+    "--toolbar-bgalignment"
+  }
+}
+
+ +

Cette clé permet de définir les propriétés de la clé expérimentale de theme pour l'interface Firefox. Ces expériences sont un précurseur pour proposer de nouvelles fonctionnalités thématiques à inclure dans Firefox. L'expérimentation se fait par:

+ + + +

Pour découvrir les sélecteurs CSS des éléments de l'interface utilisateur Firefox ou des variables CSS internes de Firefox, utilise la boite à outils du navigateur.

+ +
+

Note : Cette clé est uniquement disponible pour une utilisation dans les canaux Firefox Developer Edition et Firefox Nightly et nécessite l'activation de la préférence extensions.legacy.enabled.

+
+ +
+

Attention : Cette fonctionnalité est expérimentale et peut être sujette à modification.

+
+ +

Syntaxe

+ +

La clé theme_experiment est un objet qui prend les propriétés suivantes :

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NomTypeDescription
stylesheetString +

Facultatif

+ +

Nom d'une feuille de style fournissant le mappage des sélecteurs CSS des éléments de l'interface Firefox aux variables CSS.

+
imagesObject +

Facultatif

+ +

Mappings des variables CSS (telles que définies dans Firefox ou par la feuille de style définie dans la stylesheet) aux noms de propriétés images à utiliser dans la clé theme.

+
colorsObject +

Facultatif

+ +

Mappings des variables CSS (telles que définies dans Firefox ou par la feuille de style définie dans la stylesheet) aux noms de propriétés colors à utiliser dans la clé theme.

+
propertiesObject +

Facultatif

+ +

Mappings des variables CSS (telles que définies dans Firefox ou par la feuille de style définie dans la stylesheet) aux noms de propriétés properties à utiliser dans la clé theme.

+
+ +

Exemples

+ +

Ces exemples utilisent une feuille de style appelée style.css pour permettre de définir une couleur pour le bouton de recharge du navigateur dans la clé theme.

+ +

La feuille de style définit :

+ +
#reload-button {
+  fill: var(--reload-button-color);
+}
+
+ +

#reload-button est le sélecteur CSS interne de Firefox pour le bouton reload et  --reload-button-color est un nom arbitraire..

+ +

Dans le fichier manifest.json, --reload-button-color est alors mappé au nom à utiliser dans la propriété theme colors :

+ +
"theme_experiment": {
+  "stylesheet": "style.css",
+  "colors": {
+    "reload_button": "--reload-button-color"
+  }
+}
+
+ +

L'argument reload_button est alors utilisé de la même manière que n'importe quelle autre propriété de theme .

+ +
"theme": {
+  "colors": {
+    "reload_button": "orange"
+  }
+}
+
+ +

Ceci a pour effet de rendre l'icône de recharge orange.

+ + + +

Cette propriété peut également être utilisée dans browser.theme.update(). images et  properties travaillent de la même manière que colors.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.theme_experiment")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/user_scripts/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/user_scripts/index.html deleted file mode 100644 index 5c5285cecf..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/user_scripts/index.html +++ /dev/null @@ -1,47 +0,0 @@ ---- -title: user_scripts -slug: Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts -tags: - - Add-ons - - Extensions - - WebExtensions - - manifest.json - - user_scripts key -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts ---- -

{{AddonSidebar}}

- - - - - - - - - - - - - - - - -
TypeArray
ObligatoireNon
Exemple -
  "user_scripts": {
-    "api_script": "apiscript.js",
-  }
-
-
- -

Charge le navigateur de charger le script utilisateur nommé dans la propriété "api_script" .

- -

La propriété "api_script" nomme le script utilisateur qui sera associé à cette extension.

- -

Une fois chargé, le script sera appelé après l'exécution du gestionnaire d'événement affecté à la propriété {{WebExtAPIRef("userScripts.onBeforeScript")}}. Ceci permet au gestionnaire d'exporter un ensemble de méthodes API personnalisées qui seront mises à la disposition des scripts de contenu représentés par {{WebExtAPIRef("contentScripts")}}.

- -

Voir aussi

- - diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/user_scripts/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/user_scripts/index.md new file mode 100644 index 0000000000..5c5285cecf --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/user_scripts/index.md @@ -0,0 +1,47 @@ +--- +title: user_scripts +slug: Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts +tags: + - Add-ons + - Extensions + - WebExtensions + - manifest.json + - user_scripts key +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/user_scripts +--- +

{{AddonSidebar}}

+ + + + + + + + + + + + + + + + +
TypeArray
ObligatoireNon
Exemple +
  "user_scripts": {
+    "api_script": "apiscript.js",
+  }
+
+
+ +

Charge le navigateur de charger le script utilisateur nommé dans la propriété "api_script" .

+ +

La propriété "api_script" nomme le script utilisateur qui sera associé à cette extension.

+ +

Une fois chargé, le script sera appelé après l'exécution du gestionnaire d'événement affecté à la propriété {{WebExtAPIRef("userScripts.onBeforeScript")}}. Ceci permet au gestionnaire d'exporter un ensemble de méthodes API personnalisées qui seront mises à la disposition des scripts de contenu représentés par {{WebExtAPIRef("contentScripts")}}.

+ +

Voir aussi

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/version/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/version/index.html deleted file mode 100644 index 2751ee94eb..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/version/index.html +++ /dev/null @@ -1,61 +0,0 @@ ---- -title: version -slug: Mozilla/Add-ons/WebExtensions/manifest.json/version -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/version ---- -

{{AddonSidebar}}

- - - - - - - - - - - - - - - - -
TypeChaîne
ObligatoireOui
Exemple -
-"version": "0.1"
-
- -

Version de l'extension, sous forme de nombres et de caractères ASCII séparés par des points. Pour connaître les détails du format de version, consultez la page Format de la version.

- -

Vous pouvez inspecter le code de linter des modules complémentaires pour voir comment les versions d'extension pour Firefox sont validées.

- -

Notez que la syntaxe définie pour la version de Chrome est plus restrictive que celle utilisée par Firefox :

- - - -

Pour obtenir votre version d'extension dans votre code JavaScript, utilisez :

- -
console.log(browser.runtime.getManifest().version);
- -

Exemple

- -

Si le manifest contient :

- -
"version": "0.1"
- -

Pour obtenir votre version d'extension dans votre code JavaScript, utilisez :

- -
console.log(browser.runtime.getManifest().version);
-// expected output: "0.1"
-
- -

Compatibilité des navigateurs

- -

{{Compat("webextensions.manifest.version")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/version/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/version/index.md new file mode 100644 index 0000000000..2751ee94eb --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/version/index.md @@ -0,0 +1,61 @@ +--- +title: version +slug: Mozilla/Add-ons/WebExtensions/manifest.json/version +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/version +--- +

{{AddonSidebar}}

+ + + + + + + + + + + + + + + + +
TypeChaîne
ObligatoireOui
Exemple +
+"version": "0.1"
+
+ +

Version de l'extension, sous forme de nombres et de caractères ASCII séparés par des points. Pour connaître les détails du format de version, consultez la page Format de la version.

+ +

Vous pouvez inspecter le code de linter des modules complémentaires pour voir comment les versions d'extension pour Firefox sont validées.

+ +

Notez que la syntaxe définie pour la version de Chrome est plus restrictive que celle utilisée par Firefox :

+ + + +

Pour obtenir votre version d'extension dans votre code JavaScript, utilisez :

+ +
console.log(browser.runtime.getManifest().version);
+ +

Exemple

+ +

Si le manifest contient :

+ +
"version": "0.1"
+ +

Pour obtenir votre version d'extension dans votre code JavaScript, utilisez :

+ +
console.log(browser.runtime.getManifest().version);
+// expected output: "0.1"
+
+ +

Compatibilité des navigateurs

+ +

{{Compat("webextensions.manifest.version")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/version_name/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/version_name/index.html deleted file mode 100644 index 9e48f55933..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/version_name/index.html +++ /dev/null @@ -1,38 +0,0 @@ ---- -title: version_name -slug: Mozilla/Add-ons/WebExtensions/manifest.json/version_name -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/version_name ---- -

{{AddonSidebar}}

- - - - - - - - - - - - - - - - -
TypeString
ObligatoireNon
Exemple -
-"version_name": "0.1 beta"
-
- -

En plus du champ version, qui est utilisé à des fins de mise à jour, version_name peut être défini sur une chaîne de version descriptive et sera utilisé à des fins d'affichage s'il est présent.

- -

Si aucun version_name n'est présent, le champ de version sera également utilisé à des fins d'affichage.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.version_name")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/version_name/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/version_name/index.md new file mode 100644 index 0000000000..9e48f55933 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/version_name/index.md @@ -0,0 +1,38 @@ +--- +title: version_name +slug: Mozilla/Add-ons/WebExtensions/manifest.json/version_name +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/version_name +--- +

{{AddonSidebar}}

+ + + + + + + + + + + + + + + + +
TypeString
ObligatoireNon
Exemple +
+"version_name": "0.1 beta"
+
+ +

En plus du champ version, qui est utilisé à des fins de mise à jour, version_name peut être défini sur une chaîne de version descriptive et sera utilisé à des fins d'affichage s'il est présent.

+ +

Si aucun version_name n'est présent, le champ de version sera également utilisé à des fins d'affichage.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.version_name")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/web_accessible_resources/index.html b/files/fr/mozilla/add-ons/webextensions/manifest.json/web_accessible_resources/index.html deleted file mode 100644 index e07a25f583..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/manifest.json/web_accessible_resources/index.html +++ /dev/null @@ -1,96 +0,0 @@ ---- -title: web_accessible_resources -slug: Mozilla/Add-ons/WebExtensions/manifest.json/web_accessible_resources -tags: - - Add-ons - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/web_accessible_resources ---- -

{{AddonSidebar}}

- - - - - - - - - - - - - - - - -
TypeTableau
ObligatoireNon
Exemple -
-"web_accessible_resources": [
-  "images/my-image.png"
-]
-
- -

Description

- -

Parfois, vous souhaitez associer certaines ressources - par exemple, images, HTML, CSS ou JavaScript - avec votre extension pour les mettre à la disposition des pages Web.

- -

Par exemple, l'extensions d'exemple "beastify" remplace une page web par une image d'une bête sélectionnée par l'utilisateur. Les images de la bête sont emballées avec l'extension. Pour rendre visible l'image sélectionnée, l'extension ajoute  <img> des éléments dont l'attribut src pointe sur l'image de la bête. Pour que la page Web puisse charger les images, elles doivent être rendues accessibles sur le Web.

- -

Avec la clé web_accessible_resources liste toutes les ressources packagées que vous souhaitez mettre à la disposition des pages Web. Vous les spécifiez comme chemins relatifs dans le fichier manifest.json.

- -

Notez que les scripts de contenu n'ont pas besoin d'être listés comme ressources accessibles sur le Web.

- -

Si une extension veut utiliser {{WebExtAPIRef("webRequest")}}} pour rediriger une URL publique (par exemple, HTTPS) vers une page qui est packagée dans l'extension, alors l'extension doit lister la page dans la clé web_accessible_resources.

- -

Utiliser web_accessible_resources

- -

Par exemple, supposons que votre extension inclut un fichier image sur images images/my-image.png, comme ceci :

- -
my-extension-files/
-    manifest.json
-    my-background-script.js
-    images/
-        my-image.png
- -

Pour permettre à une page Web d'utiliser un élément <img> dont l'attribut src pointe sur cette image, vous pouvez spécifier "web_accessible_resources" comme suit :

- -
"web_accessible_resources": ["images/my-image.png"]
- -

Le fichier sera alors disponible en utilisant une URL comme :

- -
moz-extension://<extension-UUID>/images/my-image.png"
- -

<extension-UUID> n'est pas l'identifiant de votre extension. Il est généré de manière aléatoire pour chaque instance de navigateur. Ceci empêche les sites Web de prendre les empreintes digitales d'un navigateur en examinant les extensions qu'il a installées.

- -
-

Note : Dans Chrome, l'ID d'une extension est fixe. Quand une ressource est listée dans  web_accessible_resources, elle est accessible comme chrome-extension://<your-extension-id>/<path/to/resource>.  

-
- -

L'approche recommandée pour obtenir l'URL de la ressource est d'utiliser runtime.getURL en passant le chemin relatif à manifest.json, par exemple :

- -
browser.runtime.getURL("images/my-image.png");
-// something like:
-// moz-extension://944cfddf-7a95-3c47-bd9a-663b3ce8d699/images/my-image.png
- -

Cette approche vous donne l'URL correcte quel que soit le navigateur sur lequel votre extension est lancée.

- -

Caractères génériques

- -

web_accessible_resources peuvent contenir des caractères génériques. Par exemple, l'entrée suivante fonctionnera également pour inclure la ressource à  "images/my-image.png":

- -
  "web_accessible_resources": ["images/*.png"]
- -

Sécurité

- -

Notez que si vous créez une page accessible sur le Web, n'importe quel site Web peut alors lier ou rediriger vers cette page. La page doit ensuite traiter toute entrée (données POST, par exemple) comme si elle provenait d'une source non fiable, tout comme une page Web normale.

- -

Exemple

- -
"web_accessible_resources": ["images/my-image.png"]
- -

Crée un fichier dans "images/my-image.png" accessible sur le web.

- -

Compatibilité du navigateur

- -

{{Compat("webextensions.manifest.web_accessible_resources")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/manifest.json/web_accessible_resources/index.md b/files/fr/mozilla/add-ons/webextensions/manifest.json/web_accessible_resources/index.md new file mode 100644 index 0000000000..e07a25f583 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/manifest.json/web_accessible_resources/index.md @@ -0,0 +1,96 @@ +--- +title: web_accessible_resources +slug: Mozilla/Add-ons/WebExtensions/manifest.json/web_accessible_resources +tags: + - Add-ons + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/manifest.json/web_accessible_resources +--- +

{{AddonSidebar}}

+ + + + + + + + + + + + + + + + +
TypeTableau
ObligatoireNon
Exemple +
+"web_accessible_resources": [
+  "images/my-image.png"
+]
+
+ +

Description

+ +

Parfois, vous souhaitez associer certaines ressources - par exemple, images, HTML, CSS ou JavaScript - avec votre extension pour les mettre à la disposition des pages Web.

+ +

Par exemple, l'extensions d'exemple "beastify" remplace une page web par une image d'une bête sélectionnée par l'utilisateur. Les images de la bête sont emballées avec l'extension. Pour rendre visible l'image sélectionnée, l'extension ajoute  <img> des éléments dont l'attribut src pointe sur l'image de la bête. Pour que la page Web puisse charger les images, elles doivent être rendues accessibles sur le Web.

+ +

Avec la clé web_accessible_resources liste toutes les ressources packagées que vous souhaitez mettre à la disposition des pages Web. Vous les spécifiez comme chemins relatifs dans le fichier manifest.json.

+ +

Notez que les scripts de contenu n'ont pas besoin d'être listés comme ressources accessibles sur le Web.

+ +

Si une extension veut utiliser {{WebExtAPIRef("webRequest")}}} pour rediriger une URL publique (par exemple, HTTPS) vers une page qui est packagée dans l'extension, alors l'extension doit lister la page dans la clé web_accessible_resources.

+ +

Utiliser web_accessible_resources

+ +

Par exemple, supposons que votre extension inclut un fichier image sur images images/my-image.png, comme ceci :

+ +
my-extension-files/
+    manifest.json
+    my-background-script.js
+    images/
+        my-image.png
+ +

Pour permettre à une page Web d'utiliser un élément <img> dont l'attribut src pointe sur cette image, vous pouvez spécifier "web_accessible_resources" comme suit :

+ +
"web_accessible_resources": ["images/my-image.png"]
+ +

Le fichier sera alors disponible en utilisant une URL comme :

+ +
moz-extension://<extension-UUID>/images/my-image.png"
+ +

<extension-UUID> n'est pas l'identifiant de votre extension. Il est généré de manière aléatoire pour chaque instance de navigateur. Ceci empêche les sites Web de prendre les empreintes digitales d'un navigateur en examinant les extensions qu'il a installées.

+ +
+

Note : Dans Chrome, l'ID d'une extension est fixe. Quand une ressource est listée dans  web_accessible_resources, elle est accessible comme chrome-extension://<your-extension-id>/<path/to/resource>.  

+
+ +

L'approche recommandée pour obtenir l'URL de la ressource est d'utiliser runtime.getURL en passant le chemin relatif à manifest.json, par exemple :

+ +
browser.runtime.getURL("images/my-image.png");
+// something like:
+// moz-extension://944cfddf-7a95-3c47-bd9a-663b3ce8d699/images/my-image.png
+ +

Cette approche vous donne l'URL correcte quel que soit le navigateur sur lequel votre extension est lancée.

+ +

Caractères génériques

+ +

web_accessible_resources peuvent contenir des caractères génériques. Par exemple, l'entrée suivante fonctionnera également pour inclure la ressource à  "images/my-image.png":

+ +
  "web_accessible_resources": ["images/*.png"]
+ +

Sécurité

+ +

Notez que si vous créez une page accessible sur le Web, n'importe quel site Web peut alors lier ou rediriger vers cette page. La page doit ensuite traiter toute entrée (données POST, par exemple) comme si elle provenait d'une source non fiable, tout comme une page Web normale.

+ +

Exemple

+ +
"web_accessible_resources": ["images/my-image.png"]
+ +

Crée un fichier dans "images/my-image.png" accessible sur le web.

+ +

Compatibilité du navigateur

+ +

{{Compat("webextensions.manifest.web_accessible_resources")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/match_patterns/index.html b/files/fr/mozilla/add-ons/webextensions/match_patterns/index.html deleted file mode 100644 index 682f842662..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/match_patterns/index.html +++ /dev/null @@ -1,436 +0,0 @@ ---- -title: Motifs (Match patterns) -slug: Mozilla/Add-ons/WebExtensions/Match_patterns -tags: - - Match pattern - - Modèle de correspondance - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Match_patterns ---- -
{{AddonSidebar}}
- -

Les modèles de correspondance sont un moyen de spécifier des groupes d’URL : un modèle de correspondance correspond à un ensemble spécifique d'URL. Ils sont destinés à des extensions à l’aide d’API WebExtensions dans quelques endroits, notamment pour spécifier les documents dans lesquels charger des content scripts, et pour spécifier les URL à ajouter aux auditeurs webRequest.

- -

Les API qui utilisent des modèles de correspondance acceptent généralement une liste de modèles de correspondance et effectueront les actions appropriées si l’URL correspond à l’un des motifs. Voir, par exemple, la clé content_scripts dans manifest.json.

- -

Structure du modèle de correspondance

- -
-

Note : Certains navigateurs ne prennent pas en charge certains schémas.
- Consultez le tableau de compatibilité du navigateur pour plus de détails.

-
- -

Tous les modèles de correspondance sont spécifiés comme des chaînes. Outre le motif spécial « <all_urls> », les modèles de correspondance se composent de trois partie : schéma, l’hôte, et le chemin d’accès. Le schéma et l’hôte sont séparés par « :// ».

- -
<scheme>://<host><path>
- -

schéma

- -

Le composant du schéma peut prendre l’une des deux formes suivantes :

- - - - - - - - - - - - - - - - - - -
ValeurCorrespondances
*Seulement "http" et "https" et dans certains navigateurs "ws" et "wss" aussi.
Une parmi http, https, ws, wss, ftp, ftps, data ou file.Seulement le schéma donné.
- -

hôte

- -

Le composant hôte peut prendre l'une des trois formes suivantes :

- - - - - - - - - - - - - - - - - - - - - - -
ValeurCorrespondances
*Tout hôte
*. Suivi d’une partie du nom d’hôteL’hôte donné et l’un de ses sous-domaines
Un nom d’hôte complet, sans caractères génériquesSeul l’hôte donné
- -

L’hôte ne doit pas inclure un numéro de port.

- -

L’hôte est facultatif seulement si le schéma est un « fichier ».

- -

Notez que le caractère générique ne peut apparaître qu’au début.

- -

chemin

- -

Le composant du chemin d’accès doit commencer par un /.

- -

Ensuite, il peut contenir éventuellement toute combinaison du caractère générique * et de l’un des caractères autorisés dans les chemins d’URL ou chaînes de requête. Contrairement à l’hôte, le composant du chemin peut contenir le caractère générique * au milieu ou à la fin, et le caractère * peut apparaître plusieurs fois.

- - - -

La valeur du chemin matches correspond à la chaîne de caractères qui est le chemin plus la  chaine de requête URL. Ceci inclut le signe ? entre les deux, si la chaîne de requête est présente dans l'URL. Par exemple, si vous voulez faire correspondre des URLs sur n'importe quel domaine où le chemin URL se termine par foo.bar, alors vous devez utiliser un tableau de Match Patterns comme ['*://*/*foo.bar', '*://*/*foo.bar?*']. Le ?* est nécessaire, plutôt que juste la bar*, afin d'ancrer la fin * comme s'appliquant à la chaîne de requête URL et non à une partie du chemin URL.

- -

Ni l'identificateur de fragment d'URL, ni le # qui le précède, ne sont considérés comme faisant partie du chemin.

- -
-

Note : La chaîne de modèle de chemin d'accès ne doit pas inclure de numéro de port. Ajout d'un port, comme dans : "http://localhost:1234/*" fait que le motif de match est ignoré. Cependant, "http://localhost:1234" correspondra avec "http://localhost/*"

-
- -

<all_urls>

- -

La valeur spéciale <all_urls> correspond à toutes les URL sous l’un des schémas pris en charge, c’est‐à‐dire : "http", "https", "ws", "wss", "ftp", "data" et "file".

- -

Exemples

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ModèleExemples de correspondancesExemples de non-correspondances
-

<all_urls>

- -

Correspondance à toutes les URL

-
-

http://example.org/

- -

https://a.org/some/path/

- -

ws://sockets.somewhere.org/

- -

wss://ws.example.com/stuff/

- -

ftp://files.somewhere.org/

- -

ftps://files.somewhere.org/

-
-

resource://a/b/c/
- (schéma sans équivalent)

-
-

*://*/*

- -

Correspondance à toutes les URLs HTTP, HTTPS et WebSocket

-
-

http://example.org/

- -

https://a.org/some/path/

- -

ws://sockets.somewhere.org/

- -

wss://ws.example.com/stuff/

-
-

ftp://ftp.example.org/
- (schéma sans équivalent)

- -

ftps://ftp.example.org/
- (schéma sans équivalent)

- -

file:///a/
- (schéma sans équivalent)

-
-

*://*.mozilla.org/*

- -

Correspondance à toutes les URLs HTTP, HTTPS et WebSocket URLs qui sont hébergés sur "mozilla.org" ou l’un de ses sous-domaines.

-
-

http://mozilla.org/

- -

https://mozilla.org/

- -

http://a.mozilla.org/

- -

http://a.b.mozilla.org/

- -

https://b.mozilla.org/path/

- -

ws://ws.mozilla.org/

- -

wss://secure.mozilla.org/something

-
-

ftp://mozilla.org/
- (schéma sans équivalent)

- -

http://mozilla.com/
- (hôte sans équivalent)

- -

http://firefox.org/
- (hôte sans équivalent)

-
-

*://mozilla.org/

- -

Correspondance à toutes les URLs HTTP, HTTPS and WebSocket qui sont hébergés exactement chez "mozilla.org/"

-
-

http://mozilla.org/

- -

https://mozilla.org/

- -

ws://mozilla.org/

- -

wss://mozilla.org/

-
-

ftp://mozilla.org/
- (schéma sans équivalent)

- -

http://a.mozilla.org/
- (hôte sans équivalent)

- -

http://mozilla.org/a
- (chemin sans équivalent)

-
-

ftp://mozilla.org/

- -

Correspondance seulement à "ftp://mozilla.org/".

-
ftp://mozilla.org -

http://mozilla.org/
- (schéma sans équivalent)

- -

ftp://sub.mozilla.org/
- (hôte sans équivalent)

- -

ftp://mozilla.org/path
- (chemin sans équivalent)

-
-

https://*/path

- -

Correspondance aux URLs  HTTPS sur n'importe quel hôte, dont le chemin est "path".

-
-

https://mozilla.org/path

- -

https://a.mozilla.org/path

- -

https://something.com/path

-
-

http://mozilla.org/path
- (schéma sans équivalent)

- -

https://mozilla.org/path/
- (chemin sans équivalent)

- -

https://mozilla.org/a
- (chemin sans équivalent)

- -

https://mozilla.org/
- (chemin sans équivalent)

- -

https://mozilla.org/path?foo=1
- (chemin d'accès inégalé grâce à la chaîne d'interrogation URL)

-
-

https://*/path/

- -

Correspondance aux URLs HTTPS sur n’importe quel hôte, dont le chemin est "path/".

-
-

https://mozilla.org/path/

- -

https://a.mozilla.org/path/

- -

https://something.com/path/

-
-

http://mozilla.org/path/
- (schéma sans équivalent)

- -

https://mozilla.org/path
- (chemin sans équivalent)

- -

https://mozilla.org/a
- (chemin sans équivalent)

- -

https://mozilla.org/
- (chemin sans équivalent)

- -

https://mozilla.org/path/?foo=1
- (chemin d'accès inégalé grâce à la chaîne d'interrogation URL)

-
-

https://mozilla.org/*

- -

Correspondance sur toutes les URLs HTTPS uniquement sur "mozilla.org", avec n’importe quel chemin

-
-

https://mozilla.org/

- -

https://mozilla.org/path

- -

https://mozilla.org/another

- -

https://mozilla.org/path/to/doc

- -

https://mozilla.org/path/to/doc?foo=1

-
-

http://mozilla.org/path
- (chemin sans équivalent)

- -

https://mozilla.com/path
- (hôte sans équivalent)

-
-

https://mozilla.org/a/b/c/

- -

Correspondance seulement pour cet URL.

-
-

https://mozilla.org/a/b/c/

- -

https://mozilla.org/a/b/c/#section1

-
N'importe quoi d'autre.
-

https://mozilla.org/*/b/*/

- -

Correspondance sur toutes les URL HTTPS hébergées sur "mozilla.org", dont le chemin d’accès contient un composant "b" quelque part au milieu. Correspond aux URLs avec les chaînes de requête, si la chaîne se termine par un /.

-
-

https://mozilla.org/a/b/c/

- -

https://mozilla.org/d/b/f/

- -

https://mozilla.org/a/b/c/d/

- -

https://mozilla.org/a/b/c/d/#section1

- -

https://mozilla.org/a/b/c/d/?foo=/

- -

https://mozilla.org/a?foo=21314&bar=/b/&extra=c/

-
-

https://mozilla.org/b/*/
- (chemin sans équivalent)

- -

https://mozilla.org/a/b/
- (chemin sans équivalent)

- -

https://mozilla.org/a/b/c/d/?foo=bar
- (chemin d'accès inégalé grâce à la chaîne d'interrogation URL)

-
-

file:///blah/*

- -

Correspondance à n’importe quelle URL FILE dont le chemin commence par "blah".

-
-

file:///blah/

- -

file:///blah/bleh

-
file:///bleh/
- (chemin sans équivalent)
- -

Modèles de correspondance invalides

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Modèle invalideRaison
resource://path/schéma non pris en charge.
https://mozilla.orgpas de chemin.
https://mozilla.*.org/"*" dans hôte doit être au départ.
https://*zilla.org/"*" dans hôte doit être le seul caractère ou être suivi de « . ».
http*://mozilla.org/"*" dans le schéma doit être le seul caractère.
https://mozilla.org:80/L’hôte ne doit pas inclure un numéro de port.
*://*Chemin vide : il doit être "*://*/*".
file://*Chemin vide : il doit être "file:///*".
- -

Compatibilité des navigateurs

- -

schéma

- - - -

{{Compat("webextensions.match_patterns.scheme",10)}}

diff --git a/files/fr/mozilla/add-ons/webextensions/match_patterns/index.md b/files/fr/mozilla/add-ons/webextensions/match_patterns/index.md new file mode 100644 index 0000000000..682f842662 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/match_patterns/index.md @@ -0,0 +1,436 @@ +--- +title: Motifs (Match patterns) +slug: Mozilla/Add-ons/WebExtensions/Match_patterns +tags: + - Match pattern + - Modèle de correspondance + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Match_patterns +--- +
{{AddonSidebar}}
+ +

Les modèles de correspondance sont un moyen de spécifier des groupes d’URL : un modèle de correspondance correspond à un ensemble spécifique d'URL. Ils sont destinés à des extensions à l’aide d’API WebExtensions dans quelques endroits, notamment pour spécifier les documents dans lesquels charger des content scripts, et pour spécifier les URL à ajouter aux auditeurs webRequest.

+ +

Les API qui utilisent des modèles de correspondance acceptent généralement une liste de modèles de correspondance et effectueront les actions appropriées si l’URL correspond à l’un des motifs. Voir, par exemple, la clé content_scripts dans manifest.json.

+ +

Structure du modèle de correspondance

+ +
+

Note : Certains navigateurs ne prennent pas en charge certains schémas.
+ Consultez le tableau de compatibilité du navigateur pour plus de détails.

+
+ +

Tous les modèles de correspondance sont spécifiés comme des chaînes. Outre le motif spécial « <all_urls> », les modèles de correspondance se composent de trois partie : schéma, l’hôte, et le chemin d’accès. Le schéma et l’hôte sont séparés par « :// ».

+ +
<scheme>://<host><path>
+ +

schéma

+ +

Le composant du schéma peut prendre l’une des deux formes suivantes :

+ + + + + + + + + + + + + + + + + + +
ValeurCorrespondances
*Seulement "http" et "https" et dans certains navigateurs "ws" et "wss" aussi.
Une parmi http, https, ws, wss, ftp, ftps, data ou file.Seulement le schéma donné.
+ +

hôte

+ +

Le composant hôte peut prendre l'une des trois formes suivantes :

+ + + + + + + + + + + + + + + + + + + + + + +
ValeurCorrespondances
*Tout hôte
*. Suivi d’une partie du nom d’hôteL’hôte donné et l’un de ses sous-domaines
Un nom d’hôte complet, sans caractères génériquesSeul l’hôte donné
+ +

L’hôte ne doit pas inclure un numéro de port.

+ +

L’hôte est facultatif seulement si le schéma est un « fichier ».

+ +

Notez que le caractère générique ne peut apparaître qu’au début.

+ +

chemin

+ +

Le composant du chemin d’accès doit commencer par un /.

+ +

Ensuite, il peut contenir éventuellement toute combinaison du caractère générique * et de l’un des caractères autorisés dans les chemins d’URL ou chaînes de requête. Contrairement à l’hôte, le composant du chemin peut contenir le caractère générique * au milieu ou à la fin, et le caractère * peut apparaître plusieurs fois.

+ + + +

La valeur du chemin matches correspond à la chaîne de caractères qui est le chemin plus la  chaine de requête URL. Ceci inclut le signe ? entre les deux, si la chaîne de requête est présente dans l'URL. Par exemple, si vous voulez faire correspondre des URLs sur n'importe quel domaine où le chemin URL se termine par foo.bar, alors vous devez utiliser un tableau de Match Patterns comme ['*://*/*foo.bar', '*://*/*foo.bar?*']. Le ?* est nécessaire, plutôt que juste la bar*, afin d'ancrer la fin * comme s'appliquant à la chaîne de requête URL et non à une partie du chemin URL.

+ +

Ni l'identificateur de fragment d'URL, ni le # qui le précède, ne sont considérés comme faisant partie du chemin.

+ +
+

Note : La chaîne de modèle de chemin d'accès ne doit pas inclure de numéro de port. Ajout d'un port, comme dans : "http://localhost:1234/*" fait que le motif de match est ignoré. Cependant, "http://localhost:1234" correspondra avec "http://localhost/*"

+
+ +

<all_urls>

+ +

La valeur spéciale <all_urls> correspond à toutes les URL sous l’un des schémas pris en charge, c’est‐à‐dire : "http", "https", "ws", "wss", "ftp", "data" et "file".

+ +

Exemples

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ModèleExemples de correspondancesExemples de non-correspondances
+

<all_urls>

+ +

Correspondance à toutes les URL

+
+

http://example.org/

+ +

https://a.org/some/path/

+ +

ws://sockets.somewhere.org/

+ +

wss://ws.example.com/stuff/

+ +

ftp://files.somewhere.org/

+ +

ftps://files.somewhere.org/

+
+

resource://a/b/c/
+ (schéma sans équivalent)

+
+

*://*/*

+ +

Correspondance à toutes les URLs HTTP, HTTPS et WebSocket

+
+

http://example.org/

+ +

https://a.org/some/path/

+ +

ws://sockets.somewhere.org/

+ +

wss://ws.example.com/stuff/

+
+

ftp://ftp.example.org/
+ (schéma sans équivalent)

+ +

ftps://ftp.example.org/
+ (schéma sans équivalent)

+ +

file:///a/
+ (schéma sans équivalent)

+
+

*://*.mozilla.org/*

+ +

Correspondance à toutes les URLs HTTP, HTTPS et WebSocket URLs qui sont hébergés sur "mozilla.org" ou l’un de ses sous-domaines.

+
+

http://mozilla.org/

+ +

https://mozilla.org/

+ +

http://a.mozilla.org/

+ +

http://a.b.mozilla.org/

+ +

https://b.mozilla.org/path/

+ +

ws://ws.mozilla.org/

+ +

wss://secure.mozilla.org/something

+
+

ftp://mozilla.org/
+ (schéma sans équivalent)

+ +

http://mozilla.com/
+ (hôte sans équivalent)

+ +

http://firefox.org/
+ (hôte sans équivalent)

+
+

*://mozilla.org/

+ +

Correspondance à toutes les URLs HTTP, HTTPS and WebSocket qui sont hébergés exactement chez "mozilla.org/"

+
+

http://mozilla.org/

+ +

https://mozilla.org/

+ +

ws://mozilla.org/

+ +

wss://mozilla.org/

+
+

ftp://mozilla.org/
+ (schéma sans équivalent)

+ +

http://a.mozilla.org/
+ (hôte sans équivalent)

+ +

http://mozilla.org/a
+ (chemin sans équivalent)

+
+

ftp://mozilla.org/

+ +

Correspondance seulement à "ftp://mozilla.org/".

+
ftp://mozilla.org +

http://mozilla.org/
+ (schéma sans équivalent)

+ +

ftp://sub.mozilla.org/
+ (hôte sans équivalent)

+ +

ftp://mozilla.org/path
+ (chemin sans équivalent)

+
+

https://*/path

+ +

Correspondance aux URLs  HTTPS sur n'importe quel hôte, dont le chemin est "path".

+
+

https://mozilla.org/path

+ +

https://a.mozilla.org/path

+ +

https://something.com/path

+
+

http://mozilla.org/path
+ (schéma sans équivalent)

+ +

https://mozilla.org/path/
+ (chemin sans équivalent)

+ +

https://mozilla.org/a
+ (chemin sans équivalent)

+ +

https://mozilla.org/
+ (chemin sans équivalent)

+ +

https://mozilla.org/path?foo=1
+ (chemin d'accès inégalé grâce à la chaîne d'interrogation URL)

+
+

https://*/path/

+ +

Correspondance aux URLs HTTPS sur n’importe quel hôte, dont le chemin est "path/".

+
+

https://mozilla.org/path/

+ +

https://a.mozilla.org/path/

+ +

https://something.com/path/

+
+

http://mozilla.org/path/
+ (schéma sans équivalent)

+ +

https://mozilla.org/path
+ (chemin sans équivalent)

+ +

https://mozilla.org/a
+ (chemin sans équivalent)

+ +

https://mozilla.org/
+ (chemin sans équivalent)

+ +

https://mozilla.org/path/?foo=1
+ (chemin d'accès inégalé grâce à la chaîne d'interrogation URL)

+
+

https://mozilla.org/*

+ +

Correspondance sur toutes les URLs HTTPS uniquement sur "mozilla.org", avec n’importe quel chemin

+
+

https://mozilla.org/

+ +

https://mozilla.org/path

+ +

https://mozilla.org/another

+ +

https://mozilla.org/path/to/doc

+ +

https://mozilla.org/path/to/doc?foo=1

+
+

http://mozilla.org/path
+ (chemin sans équivalent)

+ +

https://mozilla.com/path
+ (hôte sans équivalent)

+
+

https://mozilla.org/a/b/c/

+ +

Correspondance seulement pour cet URL.

+
+

https://mozilla.org/a/b/c/

+ +

https://mozilla.org/a/b/c/#section1

+
N'importe quoi d'autre.
+

https://mozilla.org/*/b/*/

+ +

Correspondance sur toutes les URL HTTPS hébergées sur "mozilla.org", dont le chemin d’accès contient un composant "b" quelque part au milieu. Correspond aux URLs avec les chaînes de requête, si la chaîne se termine par un /.

+
+

https://mozilla.org/a/b/c/

+ +

https://mozilla.org/d/b/f/

+ +

https://mozilla.org/a/b/c/d/

+ +

https://mozilla.org/a/b/c/d/#section1

+ +

https://mozilla.org/a/b/c/d/?foo=/

+ +

https://mozilla.org/a?foo=21314&bar=/b/&extra=c/

+
+

https://mozilla.org/b/*/
+ (chemin sans équivalent)

+ +

https://mozilla.org/a/b/
+ (chemin sans équivalent)

+ +

https://mozilla.org/a/b/c/d/?foo=bar
+ (chemin d'accès inégalé grâce à la chaîne d'interrogation URL)

+
+

file:///blah/*

+ +

Correspondance à n’importe quelle URL FILE dont le chemin commence par "blah".

+
+

file:///blah/

+ +

file:///blah/bleh

+
file:///bleh/
+ (chemin sans équivalent)
+ +

Modèles de correspondance invalides

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Modèle invalideRaison
resource://path/schéma non pris en charge.
https://mozilla.orgpas de chemin.
https://mozilla.*.org/"*" dans hôte doit être au départ.
https://*zilla.org/"*" dans hôte doit être le seul caractère ou être suivi de « . ».
http*://mozilla.org/"*" dans le schéma doit être le seul caractère.
https://mozilla.org:80/L’hôte ne doit pas inclure un numéro de port.
*://*Chemin vide : il doit être "*://*/*".
file://*Chemin vide : il doit être "file:///*".
+ +

Compatibilité des navigateurs

+ +

schéma

+ + + +

{{Compat("webextensions.match_patterns.scheme",10)}}

diff --git a/files/fr/mozilla/add-ons/webextensions/modify_a_web_page/index.html b/files/fr/mozilla/add-ons/webextensions/modify_a_web_page/index.html deleted file mode 100644 index 18587b3b34..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/modify_a_web_page/index.html +++ /dev/null @@ -1,245 +0,0 @@ ---- -title: Modifier une page web -slug: Mozilla/Add-ons/WebExtensions/Modify_a_web_page -tags: - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Modify_a_web_page ---- -
{{AddonSidebar}}
- -

L'un des cas d'utilisation les plus courants pour un complément de navigateur est de modifier une page Web. Par exemple, une extension pourrait vouloir modifier le style appliqué à une page, cacher des nœuds DOM particuliers ou injecter des nœuds DOM supplémentaires dans la page.

- -

Il existe deux façons de le faire avec WebExtensions :

- - - -

Quoi qu'il en soit, ces scripts sont appelés scripts de contenu, et sont différents des autres scripts qui forment un WebExtension :

- - - -

Dans cet article, nous examinerons les deux méthodes de chargement d'un script.

- -

Modification des pages qui correspondent à un modèle d'URL

- -

Tout d'abord, créez un nouveau répertoire intitulé "modify-page". Dans ce répertoire, créez un fichier appelé "manifest.json", avec le contenu suivant :

- -
{
-
-  "manifest_version": 2,
-  "name": "modify-page",
-  "version": "1.0",
-
-  "content_scripts": [
-    {
-      "matches": ["https://developer.mozilla.org/*"],
-      "js": ["page-eater.js"]
-    }
-  ]
-
-}
- -

La clé content_scripts  est la façon dont vous chargez les scripts dans des pages qui correspondent aux modèles d'URL. Dans ce cas, les instructions content_scripts demandent au navigateur de charger un script appelé  "page-eater.js" dans toutes les pages sous https://developer.mozilla.org/.

- -
-

Note : Puisque la propriété "js" de content_scripts est un tableau, vous pouvez l'utiliser pour injecter plus d'un script dans des pages correspondantes. Si vous faites cela, les pages partagent la même portée, tout comme les scripts multiples chargés par une page, et ils sont chargés dans l'ordre dans lequel ils sont répertoriés dans le tableau.

-
- -
-

Note : La clé content_scripts possède également une propriété "css" que vous pouvez utiliser pour injecter des feuilles de style CSS.

-
- -

Ensuite, créez un fichier appelé "page-eater.js" dans le dossier "modify-page" et donnez-lui le contenu suivant :

- -
document.body.textContent = "";
-
-var header = document.createElement('h1');
-header.textContent = "This page has been eaten";
-document.body.appendChild(header);
- -

Maintenant installer la WebExtension, et visiter https://developer.mozilla.org/:

- -

{{EmbedYouTube("lxf2Tkg6U1M")}}

- -
-

Note : Cette vidéo montre le script de contenu fonctionnant dans addons.mozilla.org, les scripts de contenu sont actuellement bloqués pour ce site.

-
- -

Modification des pages par programme

- -

Que faire si vous voulez toujours consommer des pages, mais seulement lorsque l'utilisateur vous le demande? Mettons à jour cet exemple afin d'injecter le script de contenu lorsque l'utilisateur clique sur un élément de menu contextuel.

- -

Tout d'abord, mettez à jour "manifest.json" pour qu'il contienne les contenus suivants:

- -
{
-
-  "manifest_version": 2,
-  "name": "modify-page",
-  "version": "1.0",
-
-  "permissions": [
-    "activeTab",
-    "contextMenus"
-  ],
-
-  "background": {
-    "scripts": ["background.js"]
-  }
-
-}
- -

Ici, nous avons supprimé la clé content_scripts et ajouté deux nouvelles clés:

- - - -

Créons ce fichier, pour cela nous créons un fichier appelé "background.js" dans le dossier "modify-page", et donnez-lui le contenu suivant :

- -
browser.contextMenus.create({
-  id: "eat-page",
-  title: "Eat this page"
-});
-
-browser.contextMenus.onClicked.addListener(function(info, tab) {
-  if (info.menuItemId == "eat-page") {
-    browser.tabs.executeScript({
-      file: "page-eater.js"
-    });
-  }
-});
-
- -

Dans ce script, nous créons un élément de menu contextuel, lui donnant un identifiant et un titre précis (le texte à afficher dans le menu contextuel). Ensuite, nous mettons en place une écoute d'événements afin que l'utilisateur clique sur un élément de menu contextuel, nous vérifions si c'est notre élément de la page. Si c'est le cas, nous injectons "page-eater.js" dans l'onglet actuel à l'aide de l'API tabs.executeScript(). Cette API prend facultativement un ID de tabulation en tant qu'argument: nous avons omis l'ID de l'onglet, ce qui signifie que le script est injecté dans l'onglet actuellement actif.

- -

A ce stade, l'extension devrait ressembler à ceci :

- -
modify-page/
-    background.js
-    manifest.json
-    page-eater.js
- -

Maintenant rechargeons la WebExtension, Ouvrez une page (n'importe quelle page, cette fois) activez le menu contextuel et sélectionnez "Eat this page":

- -

{{EmbedYouTube("zX4Bcv8VctA")}}

- -
-

Note : Bien que cette vidéo montre le script de contenu fonctionnant dans  addons.mozilla.org, les scripts de contenu sont actuellement bloqués pour ce site.

-
- -

Messagerie

- -

Les scripts de contenu et les scripts de fond ne peuvent pas accéder directement à l'état de l'autre.

- -

Cependant, ils peuvent communiquer en envoyant des messages. Une extrémité met en place un message auditeur, et l'autre extrémité peut lui envoyer un message. Le tableau suivant résume les API impliquées de chaque côté:

- - - - - - - - - - - - - - - - - - - -
Dans le script de contenuDans le script d'arrière plan
Envoyer un messagebrowser.runtime.sendMessage()browser.tabs.sendMessage()
Reçevoir un messagebrowser.runtime.onMessagebrowser.runtime.onMessage
- -
-

Note : En ajoutant à cette méthode de communication, qui envoie des messages uniques, vous pouvez également utiliser une approche basée sur la connexion pour échanger des messages.

-
- -

Mettons à jour notre exemple pour montrer comment envoyer un message à partir du script en arrière-plan.

- -

D'abord, éditez "background.js" pour qu'il contienne ces contenus:

- -
browser.contextMenus.create({
-  id: "eat-page",
-  title: "Eat this page"
-});
-
-function messageTab(tabs) {
-  browser.tabs.sendMessage(tabs[0].id, {
-    replacement: "Message from the add-on!"
-  });
-}
-
-browser.contextMenus.onClicked.addListener(function(info, tab) {
-  if (info.menuItemId == "eat-page") {
-    browser.tabs.executeScript({
-      file: "page-eater.js"
-    });
-
-    var querying = browser.tabs.query({
-      active: true,
-      currentWindow: true
-    });
-    querying.then(messageTab);
-  }
-});
-
- -

Maintenant, après avoir injecté "page-eater.js", nous utilisons tabs.query() pour obtenir l'onglet actuellement actif, puis utilisez tabs.sendMessage() pour envoyer un message aux scripts de contenu chargés dans cet onglet. Le message comporte la charge utile {remplacement: "Message from the add-on!"}.

- -

Ensuite, mettez à jour "page-eater.js" comme ceci :

- -
function eatPage(request, sender, sendResponse) {
-  document.body.textContent = "";
-
-  var header = document.createElement('h1');
-  header.textContent = request.replacement;
-  document.body.appendChild(header);
-}
-
-browser.runtime.onMessage.addListener(eatPage);
-
- -

Maintenant, au lieu de simplement d'afficher la page tout de suite, le script de contenu écoute un message en utilisant runtime.onMessage. Quand un message arrive, le script de contenu exécute essentiellement le même code que précédemment, sauf que le texte de remplacement est retiré de request.replacement.

- -

Si nous voulions envoyer des messages du script de contenu à la page d'arrière-plan, la configuration serait inverse de cet exemple, sauf que nous utiliserions runtime.sendMessage() dans le script de contenu.

- -
-

Note : Ces exemples injectent JavaScript; Vous pouvez également injecter CSS par programme en utilisant la fonction tabs.insertCSS().

-
- -

Apprendre plus

- - diff --git a/files/fr/mozilla/add-ons/webextensions/modify_a_web_page/index.md b/files/fr/mozilla/add-ons/webextensions/modify_a_web_page/index.md new file mode 100644 index 0000000000..18587b3b34 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/modify_a_web_page/index.md @@ -0,0 +1,245 @@ +--- +title: Modifier une page web +slug: Mozilla/Add-ons/WebExtensions/Modify_a_web_page +tags: + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Modify_a_web_page +--- +
{{AddonSidebar}}
+ +

L'un des cas d'utilisation les plus courants pour un complément de navigateur est de modifier une page Web. Par exemple, une extension pourrait vouloir modifier le style appliqué à une page, cacher des nœuds DOM particuliers ou injecter des nœuds DOM supplémentaires dans la page.

+ +

Il existe deux façons de le faire avec WebExtensions :

+ + + +

Quoi qu'il en soit, ces scripts sont appelés scripts de contenu, et sont différents des autres scripts qui forment un WebExtension :

+ + + +

Dans cet article, nous examinerons les deux méthodes de chargement d'un script.

+ +

Modification des pages qui correspondent à un modèle d'URL

+ +

Tout d'abord, créez un nouveau répertoire intitulé "modify-page". Dans ce répertoire, créez un fichier appelé "manifest.json", avec le contenu suivant :

+ +
{
+
+  "manifest_version": 2,
+  "name": "modify-page",
+  "version": "1.0",
+
+  "content_scripts": [
+    {
+      "matches": ["https://developer.mozilla.org/*"],
+      "js": ["page-eater.js"]
+    }
+  ]
+
+}
+ +

La clé content_scripts  est la façon dont vous chargez les scripts dans des pages qui correspondent aux modèles d'URL. Dans ce cas, les instructions content_scripts demandent au navigateur de charger un script appelé  "page-eater.js" dans toutes les pages sous https://developer.mozilla.org/.

+ +
+

Note : Puisque la propriété "js" de content_scripts est un tableau, vous pouvez l'utiliser pour injecter plus d'un script dans des pages correspondantes. Si vous faites cela, les pages partagent la même portée, tout comme les scripts multiples chargés par une page, et ils sont chargés dans l'ordre dans lequel ils sont répertoriés dans le tableau.

+
+ +
+

Note : La clé content_scripts possède également une propriété "css" que vous pouvez utiliser pour injecter des feuilles de style CSS.

+
+ +

Ensuite, créez un fichier appelé "page-eater.js" dans le dossier "modify-page" et donnez-lui le contenu suivant :

+ +
document.body.textContent = "";
+
+var header = document.createElement('h1');
+header.textContent = "This page has been eaten";
+document.body.appendChild(header);
+ +

Maintenant installer la WebExtension, et visiter https://developer.mozilla.org/:

+ +

{{EmbedYouTube("lxf2Tkg6U1M")}}

+ +
+

Note : Cette vidéo montre le script de contenu fonctionnant dans addons.mozilla.org, les scripts de contenu sont actuellement bloqués pour ce site.

+
+ +

Modification des pages par programme

+ +

Que faire si vous voulez toujours consommer des pages, mais seulement lorsque l'utilisateur vous le demande? Mettons à jour cet exemple afin d'injecter le script de contenu lorsque l'utilisateur clique sur un élément de menu contextuel.

+ +

Tout d'abord, mettez à jour "manifest.json" pour qu'il contienne les contenus suivants:

+ +
{
+
+  "manifest_version": 2,
+  "name": "modify-page",
+  "version": "1.0",
+
+  "permissions": [
+    "activeTab",
+    "contextMenus"
+  ],
+
+  "background": {
+    "scripts": ["background.js"]
+  }
+
+}
+ +

Ici, nous avons supprimé la clé content_scripts et ajouté deux nouvelles clés:

+ + + +

Créons ce fichier, pour cela nous créons un fichier appelé "background.js" dans le dossier "modify-page", et donnez-lui le contenu suivant :

+ +
browser.contextMenus.create({
+  id: "eat-page",
+  title: "Eat this page"
+});
+
+browser.contextMenus.onClicked.addListener(function(info, tab) {
+  if (info.menuItemId == "eat-page") {
+    browser.tabs.executeScript({
+      file: "page-eater.js"
+    });
+  }
+});
+
+ +

Dans ce script, nous créons un élément de menu contextuel, lui donnant un identifiant et un titre précis (le texte à afficher dans le menu contextuel). Ensuite, nous mettons en place une écoute d'événements afin que l'utilisateur clique sur un élément de menu contextuel, nous vérifions si c'est notre élément de la page. Si c'est le cas, nous injectons "page-eater.js" dans l'onglet actuel à l'aide de l'API tabs.executeScript(). Cette API prend facultativement un ID de tabulation en tant qu'argument: nous avons omis l'ID de l'onglet, ce qui signifie que le script est injecté dans l'onglet actuellement actif.

+ +

A ce stade, l'extension devrait ressembler à ceci :

+ +
modify-page/
+    background.js
+    manifest.json
+    page-eater.js
+ +

Maintenant rechargeons la WebExtension, Ouvrez une page (n'importe quelle page, cette fois) activez le menu contextuel et sélectionnez "Eat this page":

+ +

{{EmbedYouTube("zX4Bcv8VctA")}}

+ +
+

Note : Bien que cette vidéo montre le script de contenu fonctionnant dans  addons.mozilla.org, les scripts de contenu sont actuellement bloqués pour ce site.

+
+ +

Messagerie

+ +

Les scripts de contenu et les scripts de fond ne peuvent pas accéder directement à l'état de l'autre.

+ +

Cependant, ils peuvent communiquer en envoyant des messages. Une extrémité met en place un message auditeur, et l'autre extrémité peut lui envoyer un message. Le tableau suivant résume les API impliquées de chaque côté:

+ + + + + + + + + + + + + + + + + + + +
Dans le script de contenuDans le script d'arrière plan
Envoyer un messagebrowser.runtime.sendMessage()browser.tabs.sendMessage()
Reçevoir un messagebrowser.runtime.onMessagebrowser.runtime.onMessage
+ +
+

Note : En ajoutant à cette méthode de communication, qui envoie des messages uniques, vous pouvez également utiliser une approche basée sur la connexion pour échanger des messages.

+
+ +

Mettons à jour notre exemple pour montrer comment envoyer un message à partir du script en arrière-plan.

+ +

D'abord, éditez "background.js" pour qu'il contienne ces contenus:

+ +
browser.contextMenus.create({
+  id: "eat-page",
+  title: "Eat this page"
+});
+
+function messageTab(tabs) {
+  browser.tabs.sendMessage(tabs[0].id, {
+    replacement: "Message from the add-on!"
+  });
+}
+
+browser.contextMenus.onClicked.addListener(function(info, tab) {
+  if (info.menuItemId == "eat-page") {
+    browser.tabs.executeScript({
+      file: "page-eater.js"
+    });
+
+    var querying = browser.tabs.query({
+      active: true,
+      currentWindow: true
+    });
+    querying.then(messageTab);
+  }
+});
+
+ +

Maintenant, après avoir injecté "page-eater.js", nous utilisons tabs.query() pour obtenir l'onglet actuellement actif, puis utilisez tabs.sendMessage() pour envoyer un message aux scripts de contenu chargés dans cet onglet. Le message comporte la charge utile {remplacement: "Message from the add-on!"}.

+ +

Ensuite, mettez à jour "page-eater.js" comme ceci :

+ +
function eatPage(request, sender, sendResponse) {
+  document.body.textContent = "";
+
+  var header = document.createElement('h1');
+  header.textContent = request.replacement;
+  document.body.appendChild(header);
+}
+
+browser.runtime.onMessage.addListener(eatPage);
+
+ +

Maintenant, au lieu de simplement d'afficher la page tout de suite, le script de contenu écoute un message en utilisant runtime.onMessage. Quand un message arrive, le script de contenu exécute essentiellement le même code que précédemment, sauf que le texte de remplacement est retiré de request.replacement.

+ +

Si nous voulions envoyer des messages du script de contenu à la page d'arrière-plan, la configuration serait inverse de cet exemple, sauf que nous utiliserions runtime.sendMessage() dans le script de contenu.

+ +
+

Note : Ces exemples injectent JavaScript; Vous pouvez également injecter CSS par programme en utilisant la fonction tabs.insertCSS().

+
+ +

Apprendre plus

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/native_manifests/index.html b/files/fr/mozilla/add-ons/webextensions/native_manifests/index.html deleted file mode 100644 index 7a1faf35a6..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/native_manifests/index.html +++ /dev/null @@ -1,310 +0,0 @@ ---- -title: manifests Natif -slug: Mozilla/Add-ons/WebExtensions/Native_manifests -tags: - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Native_manifests -original_slug: Mozilla/Add-ons/WebExtensions/manifests_native ---- -
{{AddonSidebar}}
- -

Les manifests natifs sont des fichiers JSON spécialement formatés qui sont provisionnés sur l'ordinateur de l'utilisateur par un autre moyen que le processus d'installation de l'extension. Par exemple, un manifest natif peut être fourni par un administrateur de périphérique ou par un programme d'installation d'application natif.

- -

Il existe trois types différents de manifest natif :

- - - - - - - - - - - - - - - - -
Les manifests de messagerie natifActivez une fonctionnalité appelée native messaging, dans laquelle une extension peut communiquer avec une application native installée sur l'appareil.
Manifest de gestion de stockageDéfinissez les données en lecture seule auxquelles une extension peut accéder à l'aide de l'API {{WebExtAPIRef("storage.managed")}}.
PKCS #11 manifestsActivez une extension pour utiliser l'API  {{WebExtAPIRef("pkcs11")}} afin d'énumérer les modules de sécurité PKCS #11 et installez-les dans Firefox.
- -

Pour tous les manifests natifs, vous devez arranger les choses afin que le navigateur puisse trouver le manifest. La section sur l'emplacement du manifest décrit ces règles.

- -

Les manifests de messagerie natif

- -

Le manifest de messagerie natif contient un seul objet JSON avec les propriétés suivantes :

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
nameString -

Nom de l'application native.

- -

Cela doit correspondre au nom passé dans  {{WebExtAPIRef("runtime.connectNative()")}} ou {{WebExtAPIRef("runtime.sendNativeMessage()")}} par l'extension.

- -

Sur OS X et Linux, il doit également correspondre au nom de fichier du manifest de messagerie natif (à l'exclusion de l'extension ".json").

- -

Sous Windows, il doit correspondre au nom de la clé de registre que vous créez, qui contient l'emplacement du manifest de messagerie natif.

- -

Le nom doit correspondre à l'expression régulière suivante : "^\w+(\.\w+)*$". Cela signifie qu'il ne peut contenir que des caractères alphanumériques (minuscules ou majuscules), des traits de soulignement et des points. Il ne peut pas commencer ou se terminer par un point, et un point ne peut pas être suivi d'un autre point.

-
descriptionStringDescription de l'application native.
pathString -

Chemin vers l'application native.

- -

Sous Windows, cela peut être relatif au manifest lui-même. Sur OS X et Linux, il doit être absolu.

-
typeString -

Décrit la méthode utilisée pour connecter l'extension à l'application.

- -

Actuellement, une seule valeur peut être donnée ici, "stdio", qui indique que les messages sont reçus par l'application en utilisant l'entrée standard (stdin) et envoyés en utilisant la sortie standard (stdout).

-
allowed_extensionsArray of String -

Un tableau de valeurs d'ID d'extensions. Chaque valeur représente une extension qui est autorisée à communiquer avec cette application native.

- -

Notez que cela signifie que vous voudrez probablement inclure la clé des browser_specific_settings dans le fichier manifest.json de votre extension, afin de pouvoir définir un identifiant explicite lors du développement..

-
- -

Par exemple, voici un manifest pour l'application native "ping_pong":

- -
{
-  "name": "ping_pong",
-  "description": "Example host for native messaging",
-  "path": "/path/to/native-messaging/app/ping_pong.py",
-  "type": "stdio",
-  "allowed_extensions": [ "ping_pong@example.org" ]
-}
- -

This allows the extension whose ID is "ping_pong@example.org" to connect, by passing the name "ping_pong" into the relevant {{WebExtAPIRef("runtime")}} API function. The application itself is at "/path/to/native-messaging/app/ping_pong.py".

- -

Manifest de gestion de stockage

- -

Le manifest de stockage géré contient un seul objet JSON avec les propriétés suivantes :

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
nameString -

ID de l'extension pouvant accéder à ce stockage, donné comme ID que vous avez spécifié dans la clé d'application de l'extension.

-
descriptionStringDescription lisible par l'homme, ignorée par Firefox
typeString -

Cela doit être "storage".

-
dataObject -

Un objet JSON pouvant contenir des valeurs JSON valides, y compris des chaînes, des nombres, des booléens, des tableaux ou des objets. This will become the data in the browser.storage.managed storage area.

-
- -

Par exemple :

- -
{
-  "name": "favourite-colour-examples@mozilla.org",
-  "description": "ignored",
-  "type": "storage",
-  "data":
-  {
-    "colour": "management thinks it should be blue!"
-  }
-}
- -

Etant donné ce manifest JSON, l'extension "favourite-colour-examples@mozilla.org" pourrait accéder aux données en utilisant un code comme celui-ci:

- -
var storageItem = browser.storage.managed.get('colour');
-storageItem.then((res) => {
-  console.log(`Managed colour is: ${res.colour}`);
-});
- -

PKCS #11 manifests

- -

Le manifest PKCS #11 est un fichier contenant un objet JSON avec les propriétés suivantes :

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameTypeDescription
nameString -

Nom du module PKCS #11.

- -

Cela doit correspondre au nom utilisé dans l'API pkcs11 .

- -

Sur OS X et Linux, il doit également correspondre au nom de fichier du manifest (à l'exclusion de l'extension).

- -

Sous Windows, il doit correspondre au nom de la clé de registre que vous créez, qui contient l'emplacement du manifest.

- -

Le nom doit correspondre à l'expression régulière suivante : "^\w+(\.\w+)*$". Cela signifie qu'il ne peut contenir que des caractères alphanumériques minuscules, des traits de soulignement et des points. Il ne peut pas commencer ou se terminer par un point, et un point ne peut pas être suivi d'un autre point.

-
descriptionString -

Description du module.

- -

Ceci est utilisé pour définir le nom convivial du module dans l'interface utilisateur du navigateur (par exemple, la boîte de dialogue "Security Devices" dans Firefox).

-
pathString -

Chemin d'accès au module.

- -

Sous Windows, cela peut être relatif au manifest lui-même. Sur OS X et Linux, il doit être absolu

-
typeStringCela doit être "pkcs11".
allowed_extensionsArray of String -

Un tableau de valeurs d'ID de l'extension. Chaque valeur représente une extension qui est autorisée à interagir avec le module.

- -

Notez que cela signifie que vous voudrez probablement inclure la clé des applications dans le fichier manifest.json de votre extension, afin de pouvoir définir un identifiant explicite lors du développement.

-
- -

Par exemple :

- -
{
-  "name": "my_module",
-  "description": "My test module",
-  "type": "pkcs11",
-  "path": "/path/to/libpkcs11testmodule.dylib",
-  "allowed_extensions": ["my-extension@mozilla.org"]
-}
- -

Compte tenu de ce manifest JSON, enregistré sous le nom ""my_module.json", l'extension "my-extension@mozilla.org" pourrait installer le module de sécurité dans "/path/to/libpkcs11testmodule.dylib" en utilisant le code suivant :

- -
browser.pkcs11.installModule("my_module");
- -

Emplacement du manifest

- -

Sous Linux et Mac OS X, vous devez stocker le manifest dans un endroit particulier. Sous Windows, vous devez créer une clé de registre qui pointe vers l'emplacement du manifest.

- -

Les règles détaillées sont les mêmes pour tous les types de manifest, sauf que l'avant-dernier composant du chemin identifie le type de manifest. Les exemples ci-dessous montrent la forme pour chacun des trois types différents. Dans tous les exemples, <name> est la valeur de la propriété name dans le manifest.

- -

Windows

- -

Pour une visibilité globale, créez une clé de registre avec le nom suivant :

- -
HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\NativeMessagingHosts\<name>
-HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\ManagedStorage\<name>
-HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\PKCS11Modules\<name>
- -

La clé doit avoir une seule valeur par défaut, qui est le chemin d'accès au manifest.

- -

A partir de Firefox 64, la vue registre 32 bits (Wow6432Node) sera d'abord vérifiée pour ces clés, puis la vue registre "native". Utilisez celui qui convient le mieux à votre application. 

- -

Pour Firefox 63 et les versions antérieures, cette clé ne doit pas être créée sous Wow6432Node, même si l'application est en 32 bits. Les versions précédentes du navigateur chercheront toujours la clé dans la vue "native" du registre, et non dans l'émulation 32 bits. Pour vous assurer que la clé est créée dans la vue "native", vous pouvez passer les indicateurs KEY_WOW64_64KEY ou KEY_WOW64_32KEY dans RegCreateKeyEx. Voir Accès à une autre vue de registre.

- -

Pour une visibilité par utilisateur, créez une clé de registre avec le nom suivant :

- -
HKEY_CURRENT_USER\SOFTWARE\Mozilla\NativeMessagingHosts\<name>
-HKEY_CURRENT_USER\SOFTWARE\Mozilla\ManagedStorage\<name>
-HKEY_CURRENT_USER\SOFTWARE\Mozilla\PKCS11Modules\<name>
- -

La clé doit avoir une seule valeur par défaut, qui est le chemin d'accès au manifest.

- -

Mac OS X

- -

Pour une visibilité globale, stockez le manifest dans :

- -
/Library/Application Support/Mozilla/NativeMessagingHosts/<name>.json
-/Library/Application Support/Mozilla/ManagedStorage/<name>.json
-/Library/Application Support/Mozilla/PKCS11Modules/<name>.json
- -

Pour la visibilité par utilisateur, stockez le manifest dans :

- -
~/Library/Application Support/Mozilla/NativeMessagingHosts/<name>.json
-~/Library/Application Support/Mozilla/ManagedStorage/<name>.json
-~/Library/Application Support/Mozilla/PKCS11Modules/<name>.json
-
- -

Linux

- -

Pour une visibilité globale, stockez le manifest dans :

- -
/usr/lib/mozilla/native-messaging-hosts/<name>.json
-/usr/lib/mozilla/managed-storage/<name>.json
-/usr/lib/mozilla/pkcs11-modules/<name>.json
-
- -

ou :

- -
/usr/lib64/mozilla/native-messaging-hosts/<name>.json
-/usr/lib64/mozilla/managed-storage/<name>.json
-/usr/lib64/mozilla/pkcs11-modules/<name>.json
- -

Pour la visibilité par utilisateur, stockez le manifest dans :

- -
~/.mozilla/native-messaging-hosts/<name>.json
-~/.mozilla/managed-storage/<name>.json
-~/.mozilla/pkcs11-modules/<name>.json
diff --git a/files/fr/mozilla/add-ons/webextensions/native_manifests/index.md b/files/fr/mozilla/add-ons/webextensions/native_manifests/index.md new file mode 100644 index 0000000000..7a1faf35a6 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/native_manifests/index.md @@ -0,0 +1,310 @@ +--- +title: manifests Natif +slug: Mozilla/Add-ons/WebExtensions/Native_manifests +tags: + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Native_manifests +original_slug: Mozilla/Add-ons/WebExtensions/manifests_native +--- +
{{AddonSidebar}}
+ +

Les manifests natifs sont des fichiers JSON spécialement formatés qui sont provisionnés sur l'ordinateur de l'utilisateur par un autre moyen que le processus d'installation de l'extension. Par exemple, un manifest natif peut être fourni par un administrateur de périphérique ou par un programme d'installation d'application natif.

+ +

Il existe trois types différents de manifest natif :

+ + + + + + + + + + + + + + + + +
Les manifests de messagerie natifActivez une fonctionnalité appelée native messaging, dans laquelle une extension peut communiquer avec une application native installée sur l'appareil.
Manifest de gestion de stockageDéfinissez les données en lecture seule auxquelles une extension peut accéder à l'aide de l'API {{WebExtAPIRef("storage.managed")}}.
PKCS #11 manifestsActivez une extension pour utiliser l'API  {{WebExtAPIRef("pkcs11")}} afin d'énumérer les modules de sécurité PKCS #11 et installez-les dans Firefox.
+ +

Pour tous les manifests natifs, vous devez arranger les choses afin que le navigateur puisse trouver le manifest. La section sur l'emplacement du manifest décrit ces règles.

+ +

Les manifests de messagerie natif

+ +

Le manifest de messagerie natif contient un seul objet JSON avec les propriétés suivantes :

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
nameString +

Nom de l'application native.

+ +

Cela doit correspondre au nom passé dans  {{WebExtAPIRef("runtime.connectNative()")}} ou {{WebExtAPIRef("runtime.sendNativeMessage()")}} par l'extension.

+ +

Sur OS X et Linux, il doit également correspondre au nom de fichier du manifest de messagerie natif (à l'exclusion de l'extension ".json").

+ +

Sous Windows, il doit correspondre au nom de la clé de registre que vous créez, qui contient l'emplacement du manifest de messagerie natif.

+ +

Le nom doit correspondre à l'expression régulière suivante : "^\w+(\.\w+)*$". Cela signifie qu'il ne peut contenir que des caractères alphanumériques (minuscules ou majuscules), des traits de soulignement et des points. Il ne peut pas commencer ou se terminer par un point, et un point ne peut pas être suivi d'un autre point.

+
descriptionStringDescription de l'application native.
pathString +

Chemin vers l'application native.

+ +

Sous Windows, cela peut être relatif au manifest lui-même. Sur OS X et Linux, il doit être absolu.

+
typeString +

Décrit la méthode utilisée pour connecter l'extension à l'application.

+ +

Actuellement, une seule valeur peut être donnée ici, "stdio", qui indique que les messages sont reçus par l'application en utilisant l'entrée standard (stdin) et envoyés en utilisant la sortie standard (stdout).

+
allowed_extensionsArray of String +

Un tableau de valeurs d'ID d'extensions. Chaque valeur représente une extension qui est autorisée à communiquer avec cette application native.

+ +

Notez que cela signifie que vous voudrez probablement inclure la clé des browser_specific_settings dans le fichier manifest.json de votre extension, afin de pouvoir définir un identifiant explicite lors du développement..

+
+ +

Par exemple, voici un manifest pour l'application native "ping_pong":

+ +
{
+  "name": "ping_pong",
+  "description": "Example host for native messaging",
+  "path": "/path/to/native-messaging/app/ping_pong.py",
+  "type": "stdio",
+  "allowed_extensions": [ "ping_pong@example.org" ]
+}
+ +

This allows the extension whose ID is "ping_pong@example.org" to connect, by passing the name "ping_pong" into the relevant {{WebExtAPIRef("runtime")}} API function. The application itself is at "/path/to/native-messaging/app/ping_pong.py".

+ +

Manifest de gestion de stockage

+ +

Le manifest de stockage géré contient un seul objet JSON avec les propriétés suivantes :

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
nameString +

ID de l'extension pouvant accéder à ce stockage, donné comme ID que vous avez spécifié dans la clé d'application de l'extension.

+
descriptionStringDescription lisible par l'homme, ignorée par Firefox
typeString +

Cela doit être "storage".

+
dataObject +

Un objet JSON pouvant contenir des valeurs JSON valides, y compris des chaînes, des nombres, des booléens, des tableaux ou des objets. This will become the data in the browser.storage.managed storage area.

+
+ +

Par exemple :

+ +
{
+  "name": "favourite-colour-examples@mozilla.org",
+  "description": "ignored",
+  "type": "storage",
+  "data":
+  {
+    "colour": "management thinks it should be blue!"
+  }
+}
+ +

Etant donné ce manifest JSON, l'extension "favourite-colour-examples@mozilla.org" pourrait accéder aux données en utilisant un code comme celui-ci:

+ +
var storageItem = browser.storage.managed.get('colour');
+storageItem.then((res) => {
+  console.log(`Managed colour is: ${res.colour}`);
+});
+ +

PKCS #11 manifests

+ +

Le manifest PKCS #11 est un fichier contenant un objet JSON avec les propriétés suivantes :

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameTypeDescription
nameString +

Nom du module PKCS #11.

+ +

Cela doit correspondre au nom utilisé dans l'API pkcs11 .

+ +

Sur OS X et Linux, il doit également correspondre au nom de fichier du manifest (à l'exclusion de l'extension).

+ +

Sous Windows, il doit correspondre au nom de la clé de registre que vous créez, qui contient l'emplacement du manifest.

+ +

Le nom doit correspondre à l'expression régulière suivante : "^\w+(\.\w+)*$". Cela signifie qu'il ne peut contenir que des caractères alphanumériques minuscules, des traits de soulignement et des points. Il ne peut pas commencer ou se terminer par un point, et un point ne peut pas être suivi d'un autre point.

+
descriptionString +

Description du module.

+ +

Ceci est utilisé pour définir le nom convivial du module dans l'interface utilisateur du navigateur (par exemple, la boîte de dialogue "Security Devices" dans Firefox).

+
pathString +

Chemin d'accès au module.

+ +

Sous Windows, cela peut être relatif au manifest lui-même. Sur OS X et Linux, il doit être absolu

+
typeStringCela doit être "pkcs11".
allowed_extensionsArray of String +

Un tableau de valeurs d'ID de l'extension. Chaque valeur représente une extension qui est autorisée à interagir avec le module.

+ +

Notez que cela signifie que vous voudrez probablement inclure la clé des applications dans le fichier manifest.json de votre extension, afin de pouvoir définir un identifiant explicite lors du développement.

+
+ +

Par exemple :

+ +
{
+  "name": "my_module",
+  "description": "My test module",
+  "type": "pkcs11",
+  "path": "/path/to/libpkcs11testmodule.dylib",
+  "allowed_extensions": ["my-extension@mozilla.org"]
+}
+ +

Compte tenu de ce manifest JSON, enregistré sous le nom ""my_module.json", l'extension "my-extension@mozilla.org" pourrait installer le module de sécurité dans "/path/to/libpkcs11testmodule.dylib" en utilisant le code suivant :

+ +
browser.pkcs11.installModule("my_module");
+ +

Emplacement du manifest

+ +

Sous Linux et Mac OS X, vous devez stocker le manifest dans un endroit particulier. Sous Windows, vous devez créer une clé de registre qui pointe vers l'emplacement du manifest.

+ +

Les règles détaillées sont les mêmes pour tous les types de manifest, sauf que l'avant-dernier composant du chemin identifie le type de manifest. Les exemples ci-dessous montrent la forme pour chacun des trois types différents. Dans tous les exemples, <name> est la valeur de la propriété name dans le manifest.

+ +

Windows

+ +

Pour une visibilité globale, créez une clé de registre avec le nom suivant :

+ +
HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\NativeMessagingHosts\<name>
+HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\ManagedStorage\<name>
+HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\PKCS11Modules\<name>
+ +

La clé doit avoir une seule valeur par défaut, qui est le chemin d'accès au manifest.

+ +

A partir de Firefox 64, la vue registre 32 bits (Wow6432Node) sera d'abord vérifiée pour ces clés, puis la vue registre "native". Utilisez celui qui convient le mieux à votre application. 

+ +

Pour Firefox 63 et les versions antérieures, cette clé ne doit pas être créée sous Wow6432Node, même si l'application est en 32 bits. Les versions précédentes du navigateur chercheront toujours la clé dans la vue "native" du registre, et non dans l'émulation 32 bits. Pour vous assurer que la clé est créée dans la vue "native", vous pouvez passer les indicateurs KEY_WOW64_64KEY ou KEY_WOW64_32KEY dans RegCreateKeyEx. Voir Accès à une autre vue de registre.

+ +

Pour une visibilité par utilisateur, créez une clé de registre avec le nom suivant :

+ +
HKEY_CURRENT_USER\SOFTWARE\Mozilla\NativeMessagingHosts\<name>
+HKEY_CURRENT_USER\SOFTWARE\Mozilla\ManagedStorage\<name>
+HKEY_CURRENT_USER\SOFTWARE\Mozilla\PKCS11Modules\<name>
+ +

La clé doit avoir une seule valeur par défaut, qui est le chemin d'accès au manifest.

+ +

Mac OS X

+ +

Pour une visibilité globale, stockez le manifest dans :

+ +
/Library/Application Support/Mozilla/NativeMessagingHosts/<name>.json
+/Library/Application Support/Mozilla/ManagedStorage/<name>.json
+/Library/Application Support/Mozilla/PKCS11Modules/<name>.json
+ +

Pour la visibilité par utilisateur, stockez le manifest dans :

+ +
~/Library/Application Support/Mozilla/NativeMessagingHosts/<name>.json
+~/Library/Application Support/Mozilla/ManagedStorage/<name>.json
+~/Library/Application Support/Mozilla/PKCS11Modules/<name>.json
+
+ +

Linux

+ +

Pour une visibilité globale, stockez le manifest dans :

+ +
/usr/lib/mozilla/native-messaging-hosts/<name>.json
+/usr/lib/mozilla/managed-storage/<name>.json
+/usr/lib/mozilla/pkcs11-modules/<name>.json
+
+ +

ou :

+ +
/usr/lib64/mozilla/native-messaging-hosts/<name>.json
+/usr/lib64/mozilla/managed-storage/<name>.json
+/usr/lib64/mozilla/pkcs11-modules/<name>.json
+ +

Pour la visibilité par utilisateur, stockez le manifest dans :

+ +
~/.mozilla/native-messaging-hosts/<name>.json
+~/.mozilla/managed-storage/<name>.json
+~/.mozilla/pkcs11-modules/<name>.json
diff --git a/files/fr/mozilla/add-ons/webextensions/native_messaging/index.html b/files/fr/mozilla/add-ons/webextensions/native_messaging/index.html deleted file mode 100644 index 74b019aa0a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/native_messaging/index.html +++ /dev/null @@ -1,369 +0,0 @@ ---- -title: Native messaging -slug: Mozilla/Add-ons/WebExtensions/Native_messaging -tags: - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Native_messaging ---- -
{{AddonSidebar}}
- -

Native messaging permet à une extension d'échanger des messages avec une application native installée sur l'ordinateur de l'utilisateur. Ceci permet que des applications natives puissent fournir un service à des extensions sans avoir besoin d'être atteignables via internet. Un exemple typique est le gestionnaire de mots de passe : l'application native s'occupe du stockage et du chiffrement des mots de passe et communique avec l'extension afin de remplir les formulaires web. Native messaging permet aussi aux extensions d'accéder à des ressources qui ne sont pas accessibles via les API WebExtension, par exemple le matériel hardware particulier.

- -

L'application native n'est pas installée ou gérée par le navigateur : elle est installée à l'aide du système d'installation du système d'exploitation sous‐jacent. En plus de l'application native elle‐même, vous devrez fournir un fichier JSON appelé « manifest hôte » (host manifest) ou « manifest d'application » (app manifest) et l'installer dans un emplacement défini sur l'ordinateur de l'utilisateur. Le fichier manifest de l'application décrit comment le navigateur peut se connecter à l'application native.

- -

L'extension doit demander l'autorisation « nativeMessaging » dans son fichier manifest.json. À l'inverse, l'application native doit accorder l'autorisation à l'extension en incluant son ID dans le champ « allowed_extensions » (extensions autorisées) du manifest de l'application.

- -

Par la suite, l'extension pourra échanger des messages en JSON avec l'application native en utilisant une série de fonctions de l'API {{WebExtAPIRef("runtime")}}. Du côté de l'application native, les messages seront reçus en utilisant l'entrée standard (stdin, standard input) et envoyés en utilisant la sortie standard (stdout, standard output).

- -

- -

Le support de native messaging dans les extensions est généralement compatible avec Chrome, avec deux grandes différences :

- - - -

Il y a un exemple complet (en anglais) dans le répertoire « native‐messaging » du dépôt « webextensions‐examples » sur GitHub. La plus grande partie du code de cet article est repris de cet exemple.

- -

Mise en œuvre

- -

Le manifest de l'extension (Extension manifest)

- -

Si vous souhaitez que votre extension puisse communiquer avec une application native, alors :

- - - -

Voici un exemple de fichier « manifest.json » :

- -
{
-
-  "description": "Native messaging example extension",
-  "manifest_version": 2,
-  "name": "Native messaging example",
-  "version": "1.0",
-  "icons": {
-    "48": "icons/message.svg"
-  },
-
-  "browser_specific_settings": {
-    "gecko": {
-      "id": "ping_pong@example.org",
-      "strict_min_version": "50.0"
-    }
-  },
-
-  "background": {
-    "scripts": ["background.js"]
-  },
-
-  "browser_action": {
-    "default_icon": "icons/message.svg"
-  },
-
-  "permissions": ["nativeMessaging"]
-
-}
- -

Le manifest de l'application (App manifest)

- -

Le manifest de l'application décrit au navigateur la manière avec laquelle il peut se connecter à l'application native.

- -

Le fichier manifest de l'application doit être installé avec l'application native. C'est-à-dire que le navigateur lit et valide les fichiers de manifeste des applications mais ne les installe ni ne les gère. Ainsi, le modèle de sécurité pour savoir quand et comment ces fichiers sont installés et mis à jour ressemble beaucoup plus à celui des applications natives que celui des extensions utilisant les API WebExtension.

- -

Pour plus de détails sur la syntaxe et l'emplacement du manifeste des applications natives, voir manifest natifs.

- -

Par exemple, voici un manifeste pour l'application native "ping_pong" :

- -
{
-  "name": "ping_pong",
-  "description": "Example host for native messaging",
-  "path": "/path/to/native-messaging/app/ping_pong.py",
-  "type": "stdio",
-  "allowed_extensions": [ "ping_pong@example.org" ]
-}
- -

Ceci autorise l'application dont l'ID est « ping_pong@example.org » à se connecter, en passant le nom « ping_pong » comme paramètre à la fonction de l'API {{WebExtAPIRef("runtime")}} concernée. L'application, elle‐même se trouve dans le fichier « /path/to/native‐messaging/app/ping_pong.py ».

- -
-

Note : Pour Windows dans l'exemple ci‐dessus, l'application native est un script Python. Il peut être compliqué d'amener Windows à faire fonctionner correctement des scripts Python, une méthode alternative est de fournir un fichier .bat, et de l'indiquer dans le manifest :

- -
{
-  "name": "ping_pong",
-  "description": "Example host for native messaging",
-  "path": "c:\\path\\to\\native-messaging\\app\\ping_pong_win.bat",
-  "type": "stdio",
-  "allowed_extensions": [ "ping_pong@example.org" ]
-}
- -

Le fichier batch invoquera alors le script Python :

- -
@echo off
-
-python -u "c:\\path\\to\\native-messaging\\app\\ping_pong.py"
-
- -

Opérations d'échange des messages

- -

Ayant appliqué la configuration de ci‐dessus, une extension peut échanger des messages JSON avec une application native.

- -

Du côté de l'extension

- -

La messagerie native ne peut pas être utilisée directement dans les scripts de contenu ; vous devrez le faire indirect via des scripts d'arrière plan.

- -

Il y a deux modèles à utiliser ici : la messagerie basée sur la connexion et la messagerie sans connexion.

- -

Messagerie basée sur une connexion

- -

Avec cette manière de faire, vous appelez la fonction {{WebExtAPIRef("runtime.connectNative()")}}, en lui passant comme paramètre le nom de l'application (la valeur de la propriété "name" du manifest de l'application). Ceci lance l'application si elle n'est pas encore démarrée et renverra un objet {{WebExtAPIRef("runtime.Port")}} à l'extension.

- -

L'application native passe deux arguments lorsqu'elle démarre :

- - - -
- -

Note : Chrome gère différemment les arguments passés :

- - -
- -

L'aplication continue de fonctionner jusqu'à ce que l'extension invoque Port.disconnect() ou jusqu'à ce que la page connectée soit fermée.

- -

Pour envoyer des messages en utilisant Port, utilisez sa fonction postMessage(), en passant le message JSON à envoyer. Pour écouter les messages en utilisant Port, ajouter un écouteur (listener) en utilisant sa fonction onMessage.addListener().

- -

Voici un exemple de script « background » qui établit une connection avec l'application « ping_pong », qui écoute à l'attente de messages de celle‐ci et qui lui envoie un message « ping » à chaque fois que l'utilisateur clique sur l'action du navigateur (browser action) :

- -
/*
-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) => {
-  console.log("Received: " + response);
-});
-
-/*
-On a click on the browser action, send the app a message.
-*/
-browser.browserAction.onClicked.addListener(() => {
-  console.log("Sending:  ping");
-  port.postMessage("ping");
-});
- -

Messagerie sans connexion

- -

Avec cette manière de faire, vous invoquez la fonction {{WebExtAPIRef("runtime.sendNativeMessage()")}}, en lui passant comme arguments :

- - - -

Une nouvelle instance de l'application sera créée pour chaque message. L'application native passe deux arguments lorsqu'elle démarre :

- - - -

Le premier message envoyé par l'application est traité comme une réponse à l'invocation de la fonction sendNativeMessage(), et sera passé dans le callback.

- -

Voici l'exemple précédent réécrit en utilisant runtime.sendNativeMessage():

- -
function onResponse(response) {
-  console.log("Received " + response);
-}
-
-function onError(error) {
-  console.log(`Error: ${error}`);
-}
-
-/*
-On a click on the browser action, send the app a message.
-*/
-browser.browserAction.onClicked.addListener(() => {
-  console.log("Sending:  ping");
-  var sending = browser.runtime.sendNativeMessage(
-    "ping_pong",
-    "ping");
-  sending.then(onResponse, onError);
-});
-
- -

Du côté de l'application

- -

Du côté de l'application, vous utilisez l'entrée standard (standard input) pour recevoir les messages, et la sortie standard (standard output) pour les envoyer.

- -

Chaque message est sérialisé sous forme de JSON, est encodé en UTF‐8 et est précédé d'une valeur 32 bits qui contient la longueur du message dans l'ordre des octets natifs.

- -

La taille maximum d'un seul message envoyé par l'application est de 1MB. La taille maximum d'un message envoyé vers l'application est de 4GB.

- -

Voici un exemple écrit en Python. Il écoute les messages de l'extension. Notez que le fichier doit être exécutable sous Linux. Si le message est "ping", il répond par un message "pong". C'est la version Python 2 :

- -
#!/usr/bin/python -u
-
-# Note that running python with the `-u` flag is required on Windows,
-# in order to ensure that stdin and stdout are opened in binary, rather
-# than text, mode.
-
-import json
-import sys
-import struct
-
-
-# Read a message from stdin and decode it.
-def get_message():
-    raw_length = sys.stdin.read(4)
-    if not raw_length:
-        sys.exit(0)
-    message_length = struct.unpack('=I', raw_length)[0]
-    message = sys.stdin.read(message_length)
-    return json.loads(message)
-
-
-# Encode a message for transmission, given its content.
-def encode_message(message_content):
-    encoded_content = json.dumps(message_content)
-    encoded_length = struct.pack('=I', len(encoded_content))
-    return {'length': encoded_length, 'content': encoded_content}
-
-
-# Send an encoded message to stdout.
-def send_message(encoded_message):
-    sys.stdout.write(encoded_message['length'])
-    sys.stdout.write(encoded_message['content'])
-    sys.stdout.flush()
-
-
-while True:
-    message = get_message()
-    if message == "ping":
-        send_message(encode_message("pong"))
- -

En Python 3, les données binaires reçues doivent être décodées en une chaîne. Le contenu à renvoyer à l'addon doit être encodé en données binaires à l'aide d'une structure :

- -
#!/usr/bin/python -u
-
-# Note that running python with the `-u` flag is required on Windows,
-# in order to ensure that stdin and stdout are opened in binary, rather
-# than text, mode.
-
-import json
-import sys
-import struct
-
-
-# Read a message from stdin and decode it.
-def get_message():
-    raw_length = sys.stdin.buffer.read(4)
-
-    if not raw_length:
-        sys.exit(0)
-    message_length = struct.unpack('=I', raw_length)[0]
-    message = sys.stdin.buffer.read(message_length).decode("utf-8")
-    return json.loads(message)
-
-
-# Encode a message for transmission, given its content.
-def encode_message(message_content):
-    encoded_content = json.dumps(message_content).encode("utf-8")
-    encoded_length = struct.pack('=I', len(encoded_content))
-    # use struct.pack("10s", bytes), to pack a string of the length of 10 characters
-    return {'length': encoded_length, 'content': struct.pack(str(len(encoded_content))+"s",encoded_content)}
-
-
-# Send an encoded message to stdout.
-def send_message(encoded_message):
-    sys.stdout.buffer.write(encoded_message['length'])
-    sys.stdout.buffer.write(encoded_message['content'])
-    sys.stdout.buffer.flush()
-
-
-while True:
-    message = get_message()
-    if message == "ping":
-        send_message(encode_message("pong"))
- -

Fermeture de l'application native

- -

Si vous vous êtes connecté à l'application native en utilisant runtime.connectNative(), alors elle continuera de fonctionner jusqu'à ce que l'extension appelle Port.disconnect() ou que la page qui s'y est connectée soit fermée. Si vous avez démarré l'application native en utilisant runtime.sendNativeMessage(), alors elle sera fermée après qu'elle aura reçu le message et envoyé une réponse.

- -

Pour fermer l'application native :

- - - -

Dépannage

- -

Si quelque chose se passe mal, vérifier dans la console du navigateur. Si l'application native renvoit quelque‐chose vers stderr (strandard error), le navigateur le renverra vers la console du navigateur. Donc si vous avez réussi à lancer l'application native, vous verrez toutes les messages d'erreurs qu'elle émet.

- -

Si vous n'avez pas réussi à démarrer l'application, vous devriez voir un message d'erreur vous donnant un indice sur le problème.

- -
"No such native application <name>"
- - - -
"Error: Invalid application <name>"
- - - -
"'python' is not recognized as an internal or external command, ..."
- - - -
"File at path <path> does not exist, or is not executable"
- - - -
"This extension does not have permission to use native application <name>"
- - - -
"TypeError: browser.runtime.connectNative is not a function"
- - - -
"[object Object] NativeMessaging.jsm:218"
- - - -

Incompatibilités avec Chrome

- -

Il existe un certain nombre de différences entre les navigateurs qui affectent la messagerie native dans les extensions web, notamment les arguments transmis à l'app native, l'emplacement du fichier manifeste, etc. Ces différences sont abordées dans Incompatibilités Chrome > Messagerie native.

diff --git a/files/fr/mozilla/add-ons/webextensions/native_messaging/index.md b/files/fr/mozilla/add-ons/webextensions/native_messaging/index.md new file mode 100644 index 0000000000..74b019aa0a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/native_messaging/index.md @@ -0,0 +1,369 @@ +--- +title: Native messaging +slug: Mozilla/Add-ons/WebExtensions/Native_messaging +tags: + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Native_messaging +--- +
{{AddonSidebar}}
+ +

Native messaging permet à une extension d'échanger des messages avec une application native installée sur l'ordinateur de l'utilisateur. Ceci permet que des applications natives puissent fournir un service à des extensions sans avoir besoin d'être atteignables via internet. Un exemple typique est le gestionnaire de mots de passe : l'application native s'occupe du stockage et du chiffrement des mots de passe et communique avec l'extension afin de remplir les formulaires web. Native messaging permet aussi aux extensions d'accéder à des ressources qui ne sont pas accessibles via les API WebExtension, par exemple le matériel hardware particulier.

+ +

L'application native n'est pas installée ou gérée par le navigateur : elle est installée à l'aide du système d'installation du système d'exploitation sous‐jacent. En plus de l'application native elle‐même, vous devrez fournir un fichier JSON appelé « manifest hôte » (host manifest) ou « manifest d'application » (app manifest) et l'installer dans un emplacement défini sur l'ordinateur de l'utilisateur. Le fichier manifest de l'application décrit comment le navigateur peut se connecter à l'application native.

+ +

L'extension doit demander l'autorisation « nativeMessaging » dans son fichier manifest.json. À l'inverse, l'application native doit accorder l'autorisation à l'extension en incluant son ID dans le champ « allowed_extensions » (extensions autorisées) du manifest de l'application.

+ +

Par la suite, l'extension pourra échanger des messages en JSON avec l'application native en utilisant une série de fonctions de l'API {{WebExtAPIRef("runtime")}}. Du côté de l'application native, les messages seront reçus en utilisant l'entrée standard (stdin, standard input) et envoyés en utilisant la sortie standard (stdout, standard output).

+ +

+ +

Le support de native messaging dans les extensions est généralement compatible avec Chrome, avec deux grandes différences :

+ + + +

Il y a un exemple complet (en anglais) dans le répertoire « native‐messaging » du dépôt « webextensions‐examples » sur GitHub. La plus grande partie du code de cet article est repris de cet exemple.

+ +

Mise en œuvre

+ +

Le manifest de l'extension (Extension manifest)

+ +

Si vous souhaitez que votre extension puisse communiquer avec une application native, alors :

+ + + +

Voici un exemple de fichier « manifest.json » :

+ +
{
+
+  "description": "Native messaging example extension",
+  "manifest_version": 2,
+  "name": "Native messaging example",
+  "version": "1.0",
+  "icons": {
+    "48": "icons/message.svg"
+  },
+
+  "browser_specific_settings": {
+    "gecko": {
+      "id": "ping_pong@example.org",
+      "strict_min_version": "50.0"
+    }
+  },
+
+  "background": {
+    "scripts": ["background.js"]
+  },
+
+  "browser_action": {
+    "default_icon": "icons/message.svg"
+  },
+
+  "permissions": ["nativeMessaging"]
+
+}
+ +

Le manifest de l'application (App manifest)

+ +

Le manifest de l'application décrit au navigateur la manière avec laquelle il peut se connecter à l'application native.

+ +

Le fichier manifest de l'application doit être installé avec l'application native. C'est-à-dire que le navigateur lit et valide les fichiers de manifeste des applications mais ne les installe ni ne les gère. Ainsi, le modèle de sécurité pour savoir quand et comment ces fichiers sont installés et mis à jour ressemble beaucoup plus à celui des applications natives que celui des extensions utilisant les API WebExtension.

+ +

Pour plus de détails sur la syntaxe et l'emplacement du manifeste des applications natives, voir manifest natifs.

+ +

Par exemple, voici un manifeste pour l'application native "ping_pong" :

+ +
{
+  "name": "ping_pong",
+  "description": "Example host for native messaging",
+  "path": "/path/to/native-messaging/app/ping_pong.py",
+  "type": "stdio",
+  "allowed_extensions": [ "ping_pong@example.org" ]
+}
+ +

Ceci autorise l'application dont l'ID est « ping_pong@example.org » à se connecter, en passant le nom « ping_pong » comme paramètre à la fonction de l'API {{WebExtAPIRef("runtime")}} concernée. L'application, elle‐même se trouve dans le fichier « /path/to/native‐messaging/app/ping_pong.py ».

+ +
+

Note : Pour Windows dans l'exemple ci‐dessus, l'application native est un script Python. Il peut être compliqué d'amener Windows à faire fonctionner correctement des scripts Python, une méthode alternative est de fournir un fichier .bat, et de l'indiquer dans le manifest :

+ +
{
+  "name": "ping_pong",
+  "description": "Example host for native messaging",
+  "path": "c:\\path\\to\\native-messaging\\app\\ping_pong_win.bat",
+  "type": "stdio",
+  "allowed_extensions": [ "ping_pong@example.org" ]
+}
+ +

Le fichier batch invoquera alors le script Python :

+ +
@echo off
+
+python -u "c:\\path\\to\\native-messaging\\app\\ping_pong.py"
+
+ +

Opérations d'échange des messages

+ +

Ayant appliqué la configuration de ci‐dessus, une extension peut échanger des messages JSON avec une application native.

+ +

Du côté de l'extension

+ +

La messagerie native ne peut pas être utilisée directement dans les scripts de contenu ; vous devrez le faire indirect via des scripts d'arrière plan.

+ +

Il y a deux modèles à utiliser ici : la messagerie basée sur la connexion et la messagerie sans connexion.

+ +

Messagerie basée sur une connexion

+ +

Avec cette manière de faire, vous appelez la fonction {{WebExtAPIRef("runtime.connectNative()")}}, en lui passant comme paramètre le nom de l'application (la valeur de la propriété "name" du manifest de l'application). Ceci lance l'application si elle n'est pas encore démarrée et renverra un objet {{WebExtAPIRef("runtime.Port")}} à l'extension.

+ +

L'application native passe deux arguments lorsqu'elle démarre :

+ + + +
+ +

Note : Chrome gère différemment les arguments passés :

+ + +
+ +

L'aplication continue de fonctionner jusqu'à ce que l'extension invoque Port.disconnect() ou jusqu'à ce que la page connectée soit fermée.

+ +

Pour envoyer des messages en utilisant Port, utilisez sa fonction postMessage(), en passant le message JSON à envoyer. Pour écouter les messages en utilisant Port, ajouter un écouteur (listener) en utilisant sa fonction onMessage.addListener().

+ +

Voici un exemple de script « background » qui établit une connection avec l'application « ping_pong », qui écoute à l'attente de messages de celle‐ci et qui lui envoie un message « ping » à chaque fois que l'utilisateur clique sur l'action du navigateur (browser action) :

+ +
/*
+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) => {
+  console.log("Received: " + response);
+});
+
+/*
+On a click on the browser action, send the app a message.
+*/
+browser.browserAction.onClicked.addListener(() => {
+  console.log("Sending:  ping");
+  port.postMessage("ping");
+});
+ +

Messagerie sans connexion

+ +

Avec cette manière de faire, vous invoquez la fonction {{WebExtAPIRef("runtime.sendNativeMessage()")}}, en lui passant comme arguments :

+ + + +

Une nouvelle instance de l'application sera créée pour chaque message. L'application native passe deux arguments lorsqu'elle démarre :

+ + + +

Le premier message envoyé par l'application est traité comme une réponse à l'invocation de la fonction sendNativeMessage(), et sera passé dans le callback.

+ +

Voici l'exemple précédent réécrit en utilisant runtime.sendNativeMessage():

+ +
function onResponse(response) {
+  console.log("Received " + response);
+}
+
+function onError(error) {
+  console.log(`Error: ${error}`);
+}
+
+/*
+On a click on the browser action, send the app a message.
+*/
+browser.browserAction.onClicked.addListener(() => {
+  console.log("Sending:  ping");
+  var sending = browser.runtime.sendNativeMessage(
+    "ping_pong",
+    "ping");
+  sending.then(onResponse, onError);
+});
+
+ +

Du côté de l'application

+ +

Du côté de l'application, vous utilisez l'entrée standard (standard input) pour recevoir les messages, et la sortie standard (standard output) pour les envoyer.

+ +

Chaque message est sérialisé sous forme de JSON, est encodé en UTF‐8 et est précédé d'une valeur 32 bits qui contient la longueur du message dans l'ordre des octets natifs.

+ +

La taille maximum d'un seul message envoyé par l'application est de 1MB. La taille maximum d'un message envoyé vers l'application est de 4GB.

+ +

Voici un exemple écrit en Python. Il écoute les messages de l'extension. Notez que le fichier doit être exécutable sous Linux. Si le message est "ping", il répond par un message "pong". C'est la version Python 2 :

+ +
#!/usr/bin/python -u
+
+# Note that running python with the `-u` flag is required on Windows,
+# in order to ensure that stdin and stdout are opened in binary, rather
+# than text, mode.
+
+import json
+import sys
+import struct
+
+
+# Read a message from stdin and decode it.
+def get_message():
+    raw_length = sys.stdin.read(4)
+    if not raw_length:
+        sys.exit(0)
+    message_length = struct.unpack('=I', raw_length)[0]
+    message = sys.stdin.read(message_length)
+    return json.loads(message)
+
+
+# Encode a message for transmission, given its content.
+def encode_message(message_content):
+    encoded_content = json.dumps(message_content)
+    encoded_length = struct.pack('=I', len(encoded_content))
+    return {'length': encoded_length, 'content': encoded_content}
+
+
+# Send an encoded message to stdout.
+def send_message(encoded_message):
+    sys.stdout.write(encoded_message['length'])
+    sys.stdout.write(encoded_message['content'])
+    sys.stdout.flush()
+
+
+while True:
+    message = get_message()
+    if message == "ping":
+        send_message(encode_message("pong"))
+ +

En Python 3, les données binaires reçues doivent être décodées en une chaîne. Le contenu à renvoyer à l'addon doit être encodé en données binaires à l'aide d'une structure :

+ +
#!/usr/bin/python -u
+
+# Note that running python with the `-u` flag is required on Windows,
+# in order to ensure that stdin and stdout are opened in binary, rather
+# than text, mode.
+
+import json
+import sys
+import struct
+
+
+# Read a message from stdin and decode it.
+def get_message():
+    raw_length = sys.stdin.buffer.read(4)
+
+    if not raw_length:
+        sys.exit(0)
+    message_length = struct.unpack('=I', raw_length)[0]
+    message = sys.stdin.buffer.read(message_length).decode("utf-8")
+    return json.loads(message)
+
+
+# Encode a message for transmission, given its content.
+def encode_message(message_content):
+    encoded_content = json.dumps(message_content).encode("utf-8")
+    encoded_length = struct.pack('=I', len(encoded_content))
+    # use struct.pack("10s", bytes), to pack a string of the length of 10 characters
+    return {'length': encoded_length, 'content': struct.pack(str(len(encoded_content))+"s",encoded_content)}
+
+
+# Send an encoded message to stdout.
+def send_message(encoded_message):
+    sys.stdout.buffer.write(encoded_message['length'])
+    sys.stdout.buffer.write(encoded_message['content'])
+    sys.stdout.buffer.flush()
+
+
+while True:
+    message = get_message()
+    if message == "ping":
+        send_message(encode_message("pong"))
+ +

Fermeture de l'application native

+ +

Si vous vous êtes connecté à l'application native en utilisant runtime.connectNative(), alors elle continuera de fonctionner jusqu'à ce que l'extension appelle Port.disconnect() ou que la page qui s'y est connectée soit fermée. Si vous avez démarré l'application native en utilisant runtime.sendNativeMessage(), alors elle sera fermée après qu'elle aura reçu le message et envoyé une réponse.

+ +

Pour fermer l'application native :

+ + + +

Dépannage

+ +

Si quelque chose se passe mal, vérifier dans la console du navigateur. Si l'application native renvoit quelque‐chose vers stderr (strandard error), le navigateur le renverra vers la console du navigateur. Donc si vous avez réussi à lancer l'application native, vous verrez toutes les messages d'erreurs qu'elle émet.

+ +

Si vous n'avez pas réussi à démarrer l'application, vous devriez voir un message d'erreur vous donnant un indice sur le problème.

+ +
"No such native application <name>"
+ + + +
"Error: Invalid application <name>"
+ + + +
"'python' is not recognized as an internal or external command, ..."
+ + + +
"File at path <path> does not exist, or is not executable"
+ + + +
"This extension does not have permission to use native application <name>"
+ + + +
"TypeError: browser.runtime.connectNative is not a function"
+ + + +
"[object Object] NativeMessaging.jsm:218"
+ + + +

Incompatibilités avec Chrome

+ +

Il existe un certain nombre de différences entre les navigateurs qui affectent la messagerie native dans les extensions web, notamment les arguments transmis à l'app native, l'emplacement du fichier manifeste, etc. Ces différences sont abordées dans Incompatibilités Chrome > Messagerie native.

diff --git a/files/fr/mozilla/add-ons/webextensions/prerequisites/index.html b/files/fr/mozilla/add-ons/webextensions/prerequisites/index.html deleted file mode 100644 index bee9530e13..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/prerequisites/index.html +++ /dev/null @@ -1,11 +0,0 @@ ---- -title: Prerequisites -slug: Mozilla/Add-ons/WebExtensions/Prerequisites -tags: - - Draft - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Prerequisites ---- -
{{AddonSidebar}}
- -

Tout ce dont vous avez besoin pour Firefox 45 ou supérieur. Voir votre première extension pour commencer.

diff --git a/files/fr/mozilla/add-ons/webextensions/prerequisites/index.md b/files/fr/mozilla/add-ons/webextensions/prerequisites/index.md new file mode 100644 index 0000000000..bee9530e13 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/prerequisites/index.md @@ -0,0 +1,11 @@ +--- +title: Prerequisites +slug: Mozilla/Add-ons/WebExtensions/Prerequisites +tags: + - Draft + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Prerequisites +--- +
{{AddonSidebar}}
+ +

Tout ce dont vous avez besoin pour Firefox 45 ou supérieur. Voir votre première extension pour commencer.

diff --git a/files/fr/mozilla/add-ons/webextensions/safely_inserting_external_content_into_a_page/index.html b/files/fr/mozilla/add-ons/webextensions/safely_inserting_external_content_into_a_page/index.html deleted file mode 100644 index 4ad4bfb174..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/safely_inserting_external_content_into_a_page/index.html +++ /dev/null @@ -1,104 +0,0 @@ ---- -title: Insérer en toute sécurité du contenu externe dans une page -slug: Mozilla/Add-ons/WebExtensions/Safely_inserting_external_content_into_a_page -tags: - - Add-ons - - Comment - - Débutant - - Extensions - - How-to - - Sécurité - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Safely_inserting_external_content_into_a_page -original_slug: >- - Mozilla/Add-ons/WebExtensions/inserer_en_toute_securite_du_contenu_externe_dans_une_page ---- -

{{AddonSidebar}}

- -

Il y a des moments où vous pourriez vouloir ou devez inclure du contenu d'une source externe dans votre extension. Cependant, il existe un risque que des scripts malveillants soient intégrés à la source, soit par le développeur de la source, soit par une tierce partie malveillante.

- -

Prenez un lecteur RSS à titre d'exemple. Vous ne savez pas quels flux RSS votre extension va ouvrir et n'ont aucun contrôle sur le contenu de ces flux RSS. Ainsi, il est possible que l'utilisateur puisse s'abonner à un flux où, par exemple, le titre d'un élément de fil inclut un script. Cela pourrait être quelque chose d'aussi simple que d'inclure du code JavaScript dans les balises <script></script>. Si vous deviez extraire le titre, supposer qu'il s'agissait d'un texte brut et l'ajouter au DOM d'une page créée par votre extension, votre script a maintenant un script inconnu dans son navigateur. Par conséquent, il faut prendre soin d'éviter d'évaluer du texte arbitraire au format HTML.

- -

Vous devez également vous souvenir que les extensions ont des contextes privilégiés, par exemple dans les scripts d'arrière-plan et les scripts de contenu. Dans le pire des cas, un script incorporé peut s'exécuter dans l'un de ces contextes, une situation connue sous le nom d'escalade de privilèges. Cette situation peut laisser le navigateur d'un utilisateur ouvert à une attaque à distance en permettant au site Web qui a injecté le code d'accéder à des données utilisateur critiques, telles que des mots de passe, l'historique du navigateur ou le comportement de navigation.

- -

Cet article examine comment travailler en toute sécurité avec des données distantes et l'ajouter à un DOM.

- -

Travailler avec des chaînes arbitraires

- -

Lorsque vous travaillez avec des chaînes, il existe quelques options recommandées pour les ajouter en toute sécurité à une page : les méthodes de création de nœuds DOM standard ou jQuery.

- -

Méthodes de création de noeud DOM

- -

Une approche légère pour insérer des chaînes dans une page consiste à utiliser les méthodes de manipulation DOM natives : document.createElement, Element.setAttribute, et Node.textContent. L'approche sécurisée consiste à créer les nœuds séparément et à affecter leur contenu à l'aide de textContent :

- -
var data = JSON.parse(responseText);
-var div = document.createElement("div");
-div.className = data.className;
-div.textContent = "Your favorite color is now " + data.color;
-addonElement.appendChild(div);
- -

Cette approche est sûre car l'utilisation de .textContent échappe automatiquement à tout code HTML distant dans data.color.

- -

Cependant, attention, vous pouvez utiliser des méthodes natives qui ne sont pas sécurisées. Prenez le code suivant :

- -
var data = JSON.parse(responseText);
-addonElement.innerHTML = "<div class='" + data.className + "'>" +
-                         "Your favorite color is now " + data.color +
-                         "</div>";
- -

Ici, le contenu de data.className ou de data.color peut contenir du HTML qui peut fermer le tag plus tôt, insérer du contenu HTML arbitraire, puis ouvrir une autre balise.

- -

jQuery

- -

Lors de l'utilisation de jQuery, des fonctions telles que attr() et text() échappent au contenu lorsqu'il est ajouté à un DOM. Ainsi, l'exemple de "couleur préférée" ci-dessus, implémenté dans jQuery, ressemblerait à ceci:

- -
var node = $("</div>");
-node.addClass(data.className);
-node.text("Your favorite color is now " + data.color); 
- -

Travailler avec du contenu HTML

- -

Lorsque vous travaillez avec du contenu de source externe dont vous savez qu'il s'agit du code HTML, il est essentiel de nettoyer le code HTML avant de l'ajouter à une page. La meilleure pratique pour désinfecter le code HTML consiste à utiliser une bibliothèque de nettoyage HTML ou un moteur de modèle avec des fonctionnalités de nettoyage HTML. Dans cette section, nous examinons certains outils appropriés et comment les utiliser.

- -

Désinfection HTML

- -

Une bibliothèque de nettoyage HTML désactive tout ce qui pourrait conduire à l'exécution de scripts à partir du HTML, de sorte que vous pouvez injecter en toute sécurité des ensembles complets de nœuds HTML à partir d'une source distante dans votre DOM. DOMPurify, qui a été examiné par divers experts en sécurité, est une bibliothèque appropriée pour cette tâche dans les extensions.

- -

Pour l'utilisation en production, DOMPurify cest disponible en version minifiée : purify.min.js. Vous pouvez utiliser ce script de la manière qui convient le mieux à votre extension. Par exemple, vous pouvez l'ajouter en tant que script de contenu :

- -
"content_scripts": [
-  {
-    "matches" : ["<all_urls>"],
-    "js": ["purify.min.js", "myinjectionscript.js"]
-  }
-]
- -

Ensuite, dans myinjectionscript.js, vous pouvez lire le code HTML externe, le désinfecter et l'ajouter au DOM d'une page :

- -
var elem = document.createElement("div");
-var cleanHTML = DOMPurify.sanitize(externalHTML);
-elem.innerHTML = cleanHTML;
- -

Vous pouvez utiliser n'importe quelle méthode pour ajouter le HTML aseptisé à votre DOM, par exemple la fonction .html() de jQuery’s. Souvenez-vous cependant que le drapeau SAFE_FOR_JQUERY doit être utilisé dans ce cas :

- -
var elem = $("<div/>");
-var cleanHTML = DOMPurify.sanitize(externalHTML, { SAFE_FOR_JQUERY: true });
-elem.html(cleanHTML);
- -

Moteur de modèle

- -

Un autre modèle courant consiste à créer un modèle HTML local pour une page et à utiliser des valeurs distantes pour remplir les blancs. Bien que cette approche soit généralement acceptable, il faut éviter d'utiliser des constructions qui permettraient l'insertion de code exécutable. Cela peut se produire lorsque le moteur de création de modèles utilise des constructions qui insèrent du code HTML brut dans le document. Si la variable utilisée pour insérer le code HTML brut est une source distante, elle est soumise au même risque de sécurité mentionné dans l'introduction.

- -

Par exemple, lorsque vous utilisez des modèles moustache, vous devez utiliser la double moustache, \{{variable}}, qui échappe à tout code HTML. L'utilisation de la triple moustache, \{\{{variable}}}, doit être évitée car cela injecte une chaîne HTML brute et pourrait ajouter du code exécutable à votre modèle. Handlebars fonctionne d'une manière similaire, avec des variables dans le double guidon, \{{variable}}, étant échappé. Considérant que, les variables dans le guidon triple sont laissées crues et doivent être évitées. De même, si vous créez une aide Handlebars à l'aide de  Handlebars.SafeString utilisez Handlebars.escapeExpression() pour échapper tous les paramètres dynamiques transmis à l'assistant. C'est une exigence car la variable résultante de Handlebars.SafeString est considérée comme sûre et elle n'est pas échappée lorsqu'elle est insérée avec des guidons doubles.

- -

Il existe des concepts similaires dans d'autres systèmes de modélisation qui doivent être abordés avec le même niveau de soin.

- -

Lecture supplémentaire

- -

Pour plus d'informations sur ce sujet, consultez les articles suivants :

- - diff --git a/files/fr/mozilla/add-ons/webextensions/safely_inserting_external_content_into_a_page/index.md b/files/fr/mozilla/add-ons/webextensions/safely_inserting_external_content_into_a_page/index.md new file mode 100644 index 0000000000..4ad4bfb174 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/safely_inserting_external_content_into_a_page/index.md @@ -0,0 +1,104 @@ +--- +title: Insérer en toute sécurité du contenu externe dans une page +slug: Mozilla/Add-ons/WebExtensions/Safely_inserting_external_content_into_a_page +tags: + - Add-ons + - Comment + - Débutant + - Extensions + - How-to + - Sécurité + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Safely_inserting_external_content_into_a_page +original_slug: >- + Mozilla/Add-ons/WebExtensions/inserer_en_toute_securite_du_contenu_externe_dans_une_page +--- +

{{AddonSidebar}}

+ +

Il y a des moments où vous pourriez vouloir ou devez inclure du contenu d'une source externe dans votre extension. Cependant, il existe un risque que des scripts malveillants soient intégrés à la source, soit par le développeur de la source, soit par une tierce partie malveillante.

+ +

Prenez un lecteur RSS à titre d'exemple. Vous ne savez pas quels flux RSS votre extension va ouvrir et n'ont aucun contrôle sur le contenu de ces flux RSS. Ainsi, il est possible que l'utilisateur puisse s'abonner à un flux où, par exemple, le titre d'un élément de fil inclut un script. Cela pourrait être quelque chose d'aussi simple que d'inclure du code JavaScript dans les balises <script></script>. Si vous deviez extraire le titre, supposer qu'il s'agissait d'un texte brut et l'ajouter au DOM d'une page créée par votre extension, votre script a maintenant un script inconnu dans son navigateur. Par conséquent, il faut prendre soin d'éviter d'évaluer du texte arbitraire au format HTML.

+ +

Vous devez également vous souvenir que les extensions ont des contextes privilégiés, par exemple dans les scripts d'arrière-plan et les scripts de contenu. Dans le pire des cas, un script incorporé peut s'exécuter dans l'un de ces contextes, une situation connue sous le nom d'escalade de privilèges. Cette situation peut laisser le navigateur d'un utilisateur ouvert à une attaque à distance en permettant au site Web qui a injecté le code d'accéder à des données utilisateur critiques, telles que des mots de passe, l'historique du navigateur ou le comportement de navigation.

+ +

Cet article examine comment travailler en toute sécurité avec des données distantes et l'ajouter à un DOM.

+ +

Travailler avec des chaînes arbitraires

+ +

Lorsque vous travaillez avec des chaînes, il existe quelques options recommandées pour les ajouter en toute sécurité à une page : les méthodes de création de nœuds DOM standard ou jQuery.

+ +

Méthodes de création de noeud DOM

+ +

Une approche légère pour insérer des chaînes dans une page consiste à utiliser les méthodes de manipulation DOM natives : document.createElement, Element.setAttribute, et Node.textContent. L'approche sécurisée consiste à créer les nœuds séparément et à affecter leur contenu à l'aide de textContent :

+ +
var data = JSON.parse(responseText);
+var div = document.createElement("div");
+div.className = data.className;
+div.textContent = "Your favorite color is now " + data.color;
+addonElement.appendChild(div);
+ +

Cette approche est sûre car l'utilisation de .textContent échappe automatiquement à tout code HTML distant dans data.color.

+ +

Cependant, attention, vous pouvez utiliser des méthodes natives qui ne sont pas sécurisées. Prenez le code suivant :

+ +
var data = JSON.parse(responseText);
+addonElement.innerHTML = "<div class='" + data.className + "'>" +
+                         "Your favorite color is now " + data.color +
+                         "</div>";
+ +

Ici, le contenu de data.className ou de data.color peut contenir du HTML qui peut fermer le tag plus tôt, insérer du contenu HTML arbitraire, puis ouvrir une autre balise.

+ +

jQuery

+ +

Lors de l'utilisation de jQuery, des fonctions telles que attr() et text() échappent au contenu lorsqu'il est ajouté à un DOM. Ainsi, l'exemple de "couleur préférée" ci-dessus, implémenté dans jQuery, ressemblerait à ceci:

+ +
var node = $("</div>");
+node.addClass(data.className);
+node.text("Your favorite color is now " + data.color); 
+ +

Travailler avec du contenu HTML

+ +

Lorsque vous travaillez avec du contenu de source externe dont vous savez qu'il s'agit du code HTML, il est essentiel de nettoyer le code HTML avant de l'ajouter à une page. La meilleure pratique pour désinfecter le code HTML consiste à utiliser une bibliothèque de nettoyage HTML ou un moteur de modèle avec des fonctionnalités de nettoyage HTML. Dans cette section, nous examinons certains outils appropriés et comment les utiliser.

+ +

Désinfection HTML

+ +

Une bibliothèque de nettoyage HTML désactive tout ce qui pourrait conduire à l'exécution de scripts à partir du HTML, de sorte que vous pouvez injecter en toute sécurité des ensembles complets de nœuds HTML à partir d'une source distante dans votre DOM. DOMPurify, qui a été examiné par divers experts en sécurité, est une bibliothèque appropriée pour cette tâche dans les extensions.

+ +

Pour l'utilisation en production, DOMPurify cest disponible en version minifiée : purify.min.js. Vous pouvez utiliser ce script de la manière qui convient le mieux à votre extension. Par exemple, vous pouvez l'ajouter en tant que script de contenu :

+ +
"content_scripts": [
+  {
+    "matches" : ["<all_urls>"],
+    "js": ["purify.min.js", "myinjectionscript.js"]
+  }
+]
+ +

Ensuite, dans myinjectionscript.js, vous pouvez lire le code HTML externe, le désinfecter et l'ajouter au DOM d'une page :

+ +
var elem = document.createElement("div");
+var cleanHTML = DOMPurify.sanitize(externalHTML);
+elem.innerHTML = cleanHTML;
+ +

Vous pouvez utiliser n'importe quelle méthode pour ajouter le HTML aseptisé à votre DOM, par exemple la fonction .html() de jQuery’s. Souvenez-vous cependant que le drapeau SAFE_FOR_JQUERY doit être utilisé dans ce cas :

+ +
var elem = $("<div/>");
+var cleanHTML = DOMPurify.sanitize(externalHTML, { SAFE_FOR_JQUERY: true });
+elem.html(cleanHTML);
+ +

Moteur de modèle

+ +

Un autre modèle courant consiste à créer un modèle HTML local pour une page et à utiliser des valeurs distantes pour remplir les blancs. Bien que cette approche soit généralement acceptable, il faut éviter d'utiliser des constructions qui permettraient l'insertion de code exécutable. Cela peut se produire lorsque le moteur de création de modèles utilise des constructions qui insèrent du code HTML brut dans le document. Si la variable utilisée pour insérer le code HTML brut est une source distante, elle est soumise au même risque de sécurité mentionné dans l'introduction.

+ +

Par exemple, lorsque vous utilisez des modèles moustache, vous devez utiliser la double moustache, \{{variable}}, qui échappe à tout code HTML. L'utilisation de la triple moustache, \{\{{variable}}}, doit être évitée car cela injecte une chaîne HTML brute et pourrait ajouter du code exécutable à votre modèle. Handlebars fonctionne d'une manière similaire, avec des variables dans le double guidon, \{{variable}}, étant échappé. Considérant que, les variables dans le guidon triple sont laissées crues et doivent être évitées. De même, si vous créez une aide Handlebars à l'aide de  Handlebars.SafeString utilisez Handlebars.escapeExpression() pour échapper tous les paramètres dynamiques transmis à l'assistant. C'est une exigence car la variable résultante de Handlebars.SafeString est considérée comme sûre et elle n'est pas échappée lorsqu'elle est insérée avec des guidons doubles.

+ +

Il existe des concepts similaires dans d'autres systèmes de modélisation qui doivent être abordés avec le même niveau de soin.

+ +

Lecture supplémentaire

+ +

Pour plus d'informations sur ce sujet, consultez les articles suivants :

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/sharing_objects_with_page_scripts/index.html b/files/fr/mozilla/add-ons/webextensions/sharing_objects_with_page_scripts/index.html deleted file mode 100644 index 1200f3fb52..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/sharing_objects_with_page_scripts/index.html +++ /dev/null @@ -1,259 +0,0 @@ ---- -title: Partage d'objets avec des scripts de page -slug: Mozilla/Add-ons/WebExtensions/Sharing_objects_with_page_scripts -tags: - - Add-ons - - Extensions - - Firefox - - Guide - - Mozilla - - Non-standard - - WebExtensions - - XPCOM - - script de contenu - - scripts de page -translation_of: Mozilla/Add-ons/WebExtensions/Sharing_objects_with_page_scripts -original_slug: Mozilla/Add-ons/WebExtensions/partage_d_objets_avec_des_scripts_de_page ---- -
{{AddonSidebar}} -
-

Note : Les techniques décrites dans cette section sont uniquement disponibles dans Firefox, et seulement à partir de Firefox 49

-
- -
-

Attention : En tant que développeur d'extensions, vous devez considérer que les scripts s'exécutant sur des pages Web arbitraires sont des codes hostiles dont le but est de voler les informations personnelles de l'utilisateur, d'endommager leur ordinateur ou de les attaquer d'une autre manière.

- -

L'isolation entre les scripts de contenu et les scripts chargés par les pages Web a pour but de rendre plus difficile la tâche des pages Web hostiles.

- -

Puisque les techniques décrites dans cette section décompose cet isolement, elles sont intrinsèquement dangereuses et devraient être utilisées avec beaucoup de soin.

-
-
- -

Comme les notes du guide de scripts de contenu, les scripts de contenu ne voient pas les modifications apportées au DOM par des scripts chargés par des pages Web.Cela signifie que, par exemple, si une page Web charge une bibliothèque comme jQuery, les scripts de contenu ne pourront pas l'utiliser et devront charger leur propre copie. À l'inverse, les scripts chargés par les pages Web ne peuvent pas voir les modifications apportées par les scripts de contenu.

- -

Cependant, Firefox fournit des API qui permettent aux scripts de contenu de :

- - - -

Vision Xray dans Firefox

- -

Dans Firefox, une partie de l'isolation entre les scripts de contenu et les scripts de pages est implémentée en utilisant une fonction appelée "Vision Xray". Lorsqu'un script dans une portée plus privilégiée accède à un objet défini dans une portée moins privilégiée, il ne voit que la "version native" de l'objet. Toutes les propriétés expando sont invisibles et si des propriétés de l'objet ont été redéfinies, il voit l'implémentation d'origine et non la version redéfinie.

- -

Le but de cette fonctionnalité est de rendre le script moins privilégié plus difficile à confondre le script plus privilégié en redéfinissant les propriétés natives des objets.

- -

Par exemple, lorsqu'un script de contenu accède à la fenêtre de la page, il ne voit aucune propriété ajoutée au script de la page, et si le script de la page a redéfini les propriétés de la fenêtre, le script de contenu verra la version originale .

- -

Pour l'histoire complète sur la vision Xray, voir les articles sur Vision Xray et la securité des Scripts.

- -

Accès aux objets de script de page à partir de scripts de contenu

- -

Dans Firefox, les objets DOM dans les scripts de contenu obtiennent une propriété supplémentaire wrappedJSObject. C'est une version "déballée" de l'objet, qui inclut toutes les modifications apportées à cet objet par les scripts de page.

- -

Prenons un exemple simple. Supposons qu'une page Web charge un script:

- -
<!DOCTYPE html>
-<html>
-  <head>
-    <meta charset="UTF-8">
-  </head>
-  <body>
-    <script type="text/javascript" src="main.js"></script>
-  </body>
-</html>
- -

Le script ajoute une propriété expando à la fenêtre globale :

- -
// main.js
-
-var foo = "I'm defined in a page script!";
- -

La vision Xray signifie que si un script de contenu tente d'accéder à foo, il sera indéfini:

- -
// content-script.js
-
-console.log(window.foo); // undefined
- -

Dans Firefox, les scripts de contenu peuvent utiliser window.wrappedJSObject pour voir la propriété expando :

- -
// content-script.js
-
-console.log(window.wrappedJSObject.foo); // "I'm defined in a page script!"
- -

Notez qu'une fois que vous faites cela, vous ne pouvez plus compter sur les propriétés ou les fonctions de cet objet qui sont, ou font, ce que vous attendez. N'importe lequel d'entre eux, même les setters et les getters, aurait pu être redéfini par un code non fiable.

- -

Notez également que le déballage est transitif: lorsque vous utilisez wrappedJSObject, toutes les propriétés de l'objet déplié sont elles-mêmes dépliées (et donc peu fiables). C'est donc une bonne pratique, une fois que vous avez l'objet dont vous avez besoin, de le réemballer, ce que vous pouvez faire comme ceci:

- -
XPCNativeWrapper(window.wrappedJSObject.foo);
- -

voir le document vision Xray pour plus de détails à ce sujet.

- -

Partage d'objets de script de contenu avec des scripts de page

- -

Firefox fournit également des API permettant aux scripts de contenu de rendre les objets disponibles pour les scripts de page. Il y a plusieurs approches ici:

- - - -

exportFunction

- -

Étant donné une fonction définie dans le script de contenu, exportFunction() l'exporte vers la portée du script de page, afin que le script de page puisse l'appeler.

- -

Par exemple, considérons une extension qui a un script d'arrière-plan comme ceci :

- -
/*
-Execute content script in the active tab.
-*/
-function loadContentScript() {
-  browser.tabs.executeScript({
-    file: "/content_scripts/export.js"
-  });
-}
-
-/*
-Add loadContentScript() as a listener to clicks
-on the browser action.
-*/
-browser.browserAction.onClicked.addListener(loadContentScript);
-
-/*
-Show a notification when we get messages from
-the content script.
-*/
-browser.runtime.onMessage.addListener((message) => {
-  browser.notifications.create({
-    type: "basic",
-    title: "Message from the page",
-    message: message.content
-  });
-});
- -

Cela fait deux choses :

- - - -

Le script de contenu ressemble à ceci :

- -
/*
-Define a function in the content script's scope, then export it
-into the page script's scope.
-*/
-function notify(message) {
-  browser.runtime.sendMessage({content: "Function call: " + message});
-}
-
-exportFunction(notify, window, {defineAs:'notify'});
- -

Cela définit une fonction notify(), qui envoie simplement son argument au script d'arrière-plan. Il exporte ensuite la fonction vers la portée du script de page. Maintenant, le script de la page peut appeler cette fonction:

- -
window.notify("Message from the page script!");
- -

Pour l'histoire complète, voir Components.utils.exportFunction.

- -

cloneInto

- -

Étant donné un objet défini dans le script de contenu, cela crée un clone de l'objet dans la portée du script de page, rendant ainsi le clone accessible aux scripts de page. Par défaut, cela utilise l'agorithme clone structuré pour cloner l'objet, ce qui signifie que les fonctions de l'objet ne sont pas incluses dans le clone. Pour inclure des fonctions, passez l'option cloneFunctions.

- -

Par exemple, voici un script de contenu qui définit un objet contenant une fonction, puis le clone dans la portée du script de page :

- -
/*
-Create an object that contains functions in
-the content script's scope, then clone it
-into the page script's scope.
-
-Because the object contains functions,
-the cloneInto call must include
-the `cloneFunctions` option.
-*/
-var messenger = {
-  notify: function(message) {
-    browser.runtime.sendMessage({
-      content: "Object method call: " + message
-    });
-  }
-};
-
-window.wrappedJSObject.messenger = cloneInto(
-  messenger,
-  window,
-  {cloneFunctions: true});
- -

Maintenant les scripts de page vont voir une nouvelle propriété sur la fenêtre, messenger, qui a une fonction notify():

- -
window.messenger.notify("Message from the page script!");
- -

Pour l'histoire complète, voir Components.utils.cloneInto.

- -

Constructeurs du contexte de la page

- -

Sur l'objet fenêtre de xrayed, des constructeurs immaculés pour certains objets javascript intégrés tels que Object, Function ou Proxy et différentes classe DOM sont disponibles. XMLHttpRequest ne se comporte pas de cette manière, voir la section XHR and fetch pour plus de détails. Ils créeront des instances appartenant à la hiérarchie d'objets de la page global, puis retourneront un wrapper xray.

- -

Puisque les objets créés de cette manière appartiennent déjà à la page et que le script de contenu ne les renvoie pas à la page, il ne nécessitera pas de clonage ou d'exportation supplémentaire.

- -
/* javascript built-ins */
-
-const objA = new Object();
-const objB = new window.Object();
-
-console.log(
-  objA instanceof Object,                        // true
-  objB instanceof Object,                        // false
-  objA instanceof window.Object,                 // false
-  objB instanceof window.Object,                 // true
-  'wrappedJSObject' in objB                      // true; xrayed
-);
-
-objA.foo = "foo";
-objB.foo = "foo";                                // xray wrappers for plain javascript objects pass through property assignments
-objB.wrappedJSObject.bar = "bar";                // unwrapping before assignment does not rely on this special behavior
-
-window.wrappedJSObject.objA = objA;
-window.wrappedJSObject.objB = objB;              // automatically unwraps when passed to page context
-
-window.eval(`
-  console.log(objA instanceof Object);           // false
-  console.log(objB instanceof Object);           // true
-
-  console.log(objA.foo);                         // undefined
-  objA.baz = "baz";                              // Error: permission denied
-
-  console.log(objB.foo, objB.bar);               // "foo", "bar"
-  objB.baz = "baz";
-`);
-
-/* other APIs */
-
-const ev = new Event("click");
-
-console.log(
-  ev instanceof Event,                           // true
-  ev instanceof window.Event,                    // true; Event constructor is actually inherited from the xrayed window
-  'wrappedJSObject' in ev                        // true; is an xrayed object
-);
-
-ev.propA = "propA"                                // xray wrappers for native objects do not pass through assignments
-ev.propB = "wrapper";                             // define property on xray wrapper
-ev.wrappedJSObject.propB = "unwrapped";           // define same property on page object
-Reflect.defineProperty(ev.wrappedJSObject,        // privileged reflection can operate on less privileged objects
-  'propC', {
-     get: exportFunction(function() {             // getters must be exported like regular functions
-       return 'propC';
-     }
-  }
-);
-
-window.eval(`
-  document.addEventListener("click", (e) => {
-    console.log(e instanceof Event, e.propA, e.propB, e.propC);
-  });
-`);
-
-document.dispatchEvent(ev); // true, undefined, "unwrapped", "propC"
diff --git a/files/fr/mozilla/add-ons/webextensions/sharing_objects_with_page_scripts/index.md b/files/fr/mozilla/add-ons/webextensions/sharing_objects_with_page_scripts/index.md new file mode 100644 index 0000000000..1200f3fb52 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/sharing_objects_with_page_scripts/index.md @@ -0,0 +1,259 @@ +--- +title: Partage d'objets avec des scripts de page +slug: Mozilla/Add-ons/WebExtensions/Sharing_objects_with_page_scripts +tags: + - Add-ons + - Extensions + - Firefox + - Guide + - Mozilla + - Non-standard + - WebExtensions + - XPCOM + - script de contenu + - scripts de page +translation_of: Mozilla/Add-ons/WebExtensions/Sharing_objects_with_page_scripts +original_slug: Mozilla/Add-ons/WebExtensions/partage_d_objets_avec_des_scripts_de_page +--- +
{{AddonSidebar}} +
+

Note : Les techniques décrites dans cette section sont uniquement disponibles dans Firefox, et seulement à partir de Firefox 49

+
+ +
+

Attention : En tant que développeur d'extensions, vous devez considérer que les scripts s'exécutant sur des pages Web arbitraires sont des codes hostiles dont le but est de voler les informations personnelles de l'utilisateur, d'endommager leur ordinateur ou de les attaquer d'une autre manière.

+ +

L'isolation entre les scripts de contenu et les scripts chargés par les pages Web a pour but de rendre plus difficile la tâche des pages Web hostiles.

+ +

Puisque les techniques décrites dans cette section décompose cet isolement, elles sont intrinsèquement dangereuses et devraient être utilisées avec beaucoup de soin.

+
+
+ +

Comme les notes du guide de scripts de contenu, les scripts de contenu ne voient pas les modifications apportées au DOM par des scripts chargés par des pages Web.Cela signifie que, par exemple, si une page Web charge une bibliothèque comme jQuery, les scripts de contenu ne pourront pas l'utiliser et devront charger leur propre copie. À l'inverse, les scripts chargés par les pages Web ne peuvent pas voir les modifications apportées par les scripts de contenu.

+ +

Cependant, Firefox fournit des API qui permettent aux scripts de contenu de :

+ + + +

Vision Xray dans Firefox

+ +

Dans Firefox, une partie de l'isolation entre les scripts de contenu et les scripts de pages est implémentée en utilisant une fonction appelée "Vision Xray". Lorsqu'un script dans une portée plus privilégiée accède à un objet défini dans une portée moins privilégiée, il ne voit que la "version native" de l'objet. Toutes les propriétés expando sont invisibles et si des propriétés de l'objet ont été redéfinies, il voit l'implémentation d'origine et non la version redéfinie.

+ +

Le but de cette fonctionnalité est de rendre le script moins privilégié plus difficile à confondre le script plus privilégié en redéfinissant les propriétés natives des objets.

+ +

Par exemple, lorsqu'un script de contenu accède à la fenêtre de la page, il ne voit aucune propriété ajoutée au script de la page, et si le script de la page a redéfini les propriétés de la fenêtre, le script de contenu verra la version originale .

+ +

Pour l'histoire complète sur la vision Xray, voir les articles sur Vision Xray et la securité des Scripts.

+ +

Accès aux objets de script de page à partir de scripts de contenu

+ +

Dans Firefox, les objets DOM dans les scripts de contenu obtiennent une propriété supplémentaire wrappedJSObject. C'est une version "déballée" de l'objet, qui inclut toutes les modifications apportées à cet objet par les scripts de page.

+ +

Prenons un exemple simple. Supposons qu'une page Web charge un script:

+ +
<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="UTF-8">
+  </head>
+  <body>
+    <script type="text/javascript" src="main.js"></script>
+  </body>
+</html>
+ +

Le script ajoute une propriété expando à la fenêtre globale :

+ +
// main.js
+
+var foo = "I'm defined in a page script!";
+ +

La vision Xray signifie que si un script de contenu tente d'accéder à foo, il sera indéfini:

+ +
// content-script.js
+
+console.log(window.foo); // undefined
+ +

Dans Firefox, les scripts de contenu peuvent utiliser window.wrappedJSObject pour voir la propriété expando :

+ +
// content-script.js
+
+console.log(window.wrappedJSObject.foo); // "I'm defined in a page script!"
+ +

Notez qu'une fois que vous faites cela, vous ne pouvez plus compter sur les propriétés ou les fonctions de cet objet qui sont, ou font, ce que vous attendez. N'importe lequel d'entre eux, même les setters et les getters, aurait pu être redéfini par un code non fiable.

+ +

Notez également que le déballage est transitif: lorsque vous utilisez wrappedJSObject, toutes les propriétés de l'objet déplié sont elles-mêmes dépliées (et donc peu fiables). C'est donc une bonne pratique, une fois que vous avez l'objet dont vous avez besoin, de le réemballer, ce que vous pouvez faire comme ceci:

+ +
XPCNativeWrapper(window.wrappedJSObject.foo);
+ +

voir le document vision Xray pour plus de détails à ce sujet.

+ +

Partage d'objets de script de contenu avec des scripts de page

+ +

Firefox fournit également des API permettant aux scripts de contenu de rendre les objets disponibles pour les scripts de page. Il y a plusieurs approches ici:

+ + + +

exportFunction

+ +

Étant donné une fonction définie dans le script de contenu, exportFunction() l'exporte vers la portée du script de page, afin que le script de page puisse l'appeler.

+ +

Par exemple, considérons une extension qui a un script d'arrière-plan comme ceci :

+ +
/*
+Execute content script in the active tab.
+*/
+function loadContentScript() {
+  browser.tabs.executeScript({
+    file: "/content_scripts/export.js"
+  });
+}
+
+/*
+Add loadContentScript() as a listener to clicks
+on the browser action.
+*/
+browser.browserAction.onClicked.addListener(loadContentScript);
+
+/*
+Show a notification when we get messages from
+the content script.
+*/
+browser.runtime.onMessage.addListener((message) => {
+  browser.notifications.create({
+    type: "basic",
+    title: "Message from the page",
+    message: message.content
+  });
+});
+ +

Cela fait deux choses :

+ + + +

Le script de contenu ressemble à ceci :

+ +
/*
+Define a function in the content script's scope, then export it
+into the page script's scope.
+*/
+function notify(message) {
+  browser.runtime.sendMessage({content: "Function call: " + message});
+}
+
+exportFunction(notify, window, {defineAs:'notify'});
+ +

Cela définit une fonction notify(), qui envoie simplement son argument au script d'arrière-plan. Il exporte ensuite la fonction vers la portée du script de page. Maintenant, le script de la page peut appeler cette fonction:

+ +
window.notify("Message from the page script!");
+ +

Pour l'histoire complète, voir Components.utils.exportFunction.

+ +

cloneInto

+ +

Étant donné un objet défini dans le script de contenu, cela crée un clone de l'objet dans la portée du script de page, rendant ainsi le clone accessible aux scripts de page. Par défaut, cela utilise l'agorithme clone structuré pour cloner l'objet, ce qui signifie que les fonctions de l'objet ne sont pas incluses dans le clone. Pour inclure des fonctions, passez l'option cloneFunctions.

+ +

Par exemple, voici un script de contenu qui définit un objet contenant une fonction, puis le clone dans la portée du script de page :

+ +
/*
+Create an object that contains functions in
+the content script's scope, then clone it
+into the page script's scope.
+
+Because the object contains functions,
+the cloneInto call must include
+the `cloneFunctions` option.
+*/
+var messenger = {
+  notify: function(message) {
+    browser.runtime.sendMessage({
+      content: "Object method call: " + message
+    });
+  }
+};
+
+window.wrappedJSObject.messenger = cloneInto(
+  messenger,
+  window,
+  {cloneFunctions: true});
+ +

Maintenant les scripts de page vont voir une nouvelle propriété sur la fenêtre, messenger, qui a une fonction notify():

+ +
window.messenger.notify("Message from the page script!");
+ +

Pour l'histoire complète, voir Components.utils.cloneInto.

+ +

Constructeurs du contexte de la page

+ +

Sur l'objet fenêtre de xrayed, des constructeurs immaculés pour certains objets javascript intégrés tels que Object, Function ou Proxy et différentes classe DOM sont disponibles. XMLHttpRequest ne se comporte pas de cette manière, voir la section XHR and fetch pour plus de détails. Ils créeront des instances appartenant à la hiérarchie d'objets de la page global, puis retourneront un wrapper xray.

+ +

Puisque les objets créés de cette manière appartiennent déjà à la page et que le script de contenu ne les renvoie pas à la page, il ne nécessitera pas de clonage ou d'exportation supplémentaire.

+ +
/* javascript built-ins */
+
+const objA = new Object();
+const objB = new window.Object();
+
+console.log(
+  objA instanceof Object,                        // true
+  objB instanceof Object,                        // false
+  objA instanceof window.Object,                 // false
+  objB instanceof window.Object,                 // true
+  'wrappedJSObject' in objB                      // true; xrayed
+);
+
+objA.foo = "foo";
+objB.foo = "foo";                                // xray wrappers for plain javascript objects pass through property assignments
+objB.wrappedJSObject.bar = "bar";                // unwrapping before assignment does not rely on this special behavior
+
+window.wrappedJSObject.objA = objA;
+window.wrappedJSObject.objB = objB;              // automatically unwraps when passed to page context
+
+window.eval(`
+  console.log(objA instanceof Object);           // false
+  console.log(objB instanceof Object);           // true
+
+  console.log(objA.foo);                         // undefined
+  objA.baz = "baz";                              // Error: permission denied
+
+  console.log(objB.foo, objB.bar);               // "foo", "bar"
+  objB.baz = "baz";
+`);
+
+/* other APIs */
+
+const ev = new Event("click");
+
+console.log(
+  ev instanceof Event,                           // true
+  ev instanceof window.Event,                    // true; Event constructor is actually inherited from the xrayed window
+  'wrappedJSObject' in ev                        // true; is an xrayed object
+);
+
+ev.propA = "propA"                                // xray wrappers for native objects do not pass through assignments
+ev.propB = "wrapper";                             // define property on xray wrapper
+ev.wrappedJSObject.propB = "unwrapped";           // define same property on page object
+Reflect.defineProperty(ev.wrappedJSObject,        // privileged reflection can operate on less privileged objects
+  'propC', {
+     get: exportFunction(function() {             // getters must be exported like regular functions
+       return 'propC';
+     }
+  }
+);
+
+window.eval(`
+  document.addEventListener("click", (e) => {
+    console.log(e instanceof Event, e.propA, e.propB, e.propC);
+  });
+`);
+
+document.dispatchEvent(ev); // true, undefined, "unwrapped", "propC"
diff --git a/files/fr/mozilla/add-ons/webextensions/tips/index.html b/files/fr/mozilla/add-ons/webextensions/tips/index.html deleted file mode 100644 index e715db6a7a..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/tips/index.html +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: Trucs et astuces -slug: Mozilla/Add-ons/WebExtensions/Tips -tags: - - Astuces - - ECMAScript - - Trucs - - Trucs et Astuces - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Tips ---- -

{{AddonSidebar}}

- -

Cette page contient divers conseils et astuces qui devraient être utiles à beaucoup de personnes développant des extensions à l'aide des API WebExtension.

- -

Utilisation des fonctionnalités JavaScript avancées d'ECMAScript 2015 et 2016

- -

Firefox prend en charge de nombreuses fonctionnalités de ECMAScript 2015 hors de la boite. Cependant, plusieurs nouvelles fonctionnalités expérimentales ne sont pas disponibles sur le Web ou WebExtensions par défaut. Si vous souhaitez utiliser ces fonctionnalités, il est préférable de transférer votre code à l'aide d'un outil tel que Babel.

- -

Attention, tout ce qui se trouve en dessous de cette ligne est obsolète et a été retiré de Babel 6.

- -

Babel fournit des transformations pour la grande majorité des fonctionnalités ES2015 et les active par défaut. Puisque Firefox supporte déjà la plupart d'entre eux, il est préférable de configurer Babel pour les ignorer. Nous vous suggérons de créer un fichier .babelrc, ou une section babel dans le fichier package.json de votre projet contenant les éléments suivants :

- -
{
-  "env": {
-    "firefox": {
-      "sourceMaps": "inline",
-      "blacklist": [
-        "es5.properties.mutators",
-        "es6.arrowFunctions",
-        "es6.destructuring",
-        "es6.forOf",
-        "es6.parameters",
-        "es6.properties.computed",
-        "es6.properties.shorthand",
-        "es6.spec.symbols",
-        "es6.spread",
-        "es6.tailCall",
-        "es6.templateLiterals",
-        "es6.regex.sticky",
-        "es6.regex.unicode"
-      ]
-    }
-  }
-}
-
- -

Ensuite, pour compiler un script individuel, lancez simplement :

- -
BABEL_ENV=firefox babel <filename>
-
- -

Ou, pour compiler chaque fichier JavaScript sous le répertoire src et placer les fichiers compilés dans la compilation, en copiant les fichiers non-JavaScript dans le processus, lancez:

- -
BABEL_ENV=firefox babel -Dd compiled src
-
diff --git a/files/fr/mozilla/add-ons/webextensions/tips/index.md b/files/fr/mozilla/add-ons/webextensions/tips/index.md new file mode 100644 index 0000000000..e715db6a7a --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/tips/index.md @@ -0,0 +1,56 @@ +--- +title: Trucs et astuces +slug: Mozilla/Add-ons/WebExtensions/Tips +tags: + - Astuces + - ECMAScript + - Trucs + - Trucs et Astuces + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Tips +--- +

{{AddonSidebar}}

+ +

Cette page contient divers conseils et astuces qui devraient être utiles à beaucoup de personnes développant des extensions à l'aide des API WebExtension.

+ +

Utilisation des fonctionnalités JavaScript avancées d'ECMAScript 2015 et 2016

+ +

Firefox prend en charge de nombreuses fonctionnalités de ECMAScript 2015 hors de la boite. Cependant, plusieurs nouvelles fonctionnalités expérimentales ne sont pas disponibles sur le Web ou WebExtensions par défaut. Si vous souhaitez utiliser ces fonctionnalités, il est préférable de transférer votre code à l'aide d'un outil tel que Babel.

+ +

Attention, tout ce qui se trouve en dessous de cette ligne est obsolète et a été retiré de Babel 6.

+ +

Babel fournit des transformations pour la grande majorité des fonctionnalités ES2015 et les active par défaut. Puisque Firefox supporte déjà la plupart d'entre eux, il est préférable de configurer Babel pour les ignorer. Nous vous suggérons de créer un fichier .babelrc, ou une section babel dans le fichier package.json de votre projet contenant les éléments suivants :

+ +
{
+  "env": {
+    "firefox": {
+      "sourceMaps": "inline",
+      "blacklist": [
+        "es5.properties.mutators",
+        "es6.arrowFunctions",
+        "es6.destructuring",
+        "es6.forOf",
+        "es6.parameters",
+        "es6.properties.computed",
+        "es6.properties.shorthand",
+        "es6.spec.symbols",
+        "es6.spread",
+        "es6.tailCall",
+        "es6.templateLiterals",
+        "es6.regex.sticky",
+        "es6.regex.unicode"
+      ]
+    }
+  }
+}
+
+ +

Ensuite, pour compiler un script individuel, lancez simplement :

+ +
BABEL_ENV=firefox babel <filename>
+
+ +

Ou, pour compiler chaque fichier JavaScript sous le répertoire src et placer les fichiers compilés dans la compilation, en copiant les fichiers non-JavaScript dans le processus, lancez:

+ +
BABEL_ENV=firefox babel -Dd compiled src
+
diff --git a/files/fr/mozilla/add-ons/webextensions/user_actions/index.html b/files/fr/mozilla/add-ons/webextensions/user_actions/index.html deleted file mode 100644 index ddd8305bca..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_actions/index.html +++ /dev/null @@ -1,47 +0,0 @@ ---- -title: actions utilisateurs -slug: Mozilla/Add-ons/WebExtensions/User_actions -tags: - - Add-ons - - Guide - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/User_actions ---- -
{{AddonSidebar}}
- -

Certaines API WebExtension exécutent des fonctions qui sont généralement exécutées à la suite d'une action utilisateur. Par exemple:

- - - -

Pour suivre le principe de "pas de  surprises", des APIs comme celle-ci ne peuvent être appelées que de l'intérieur du gestionnaire pour une action de l'utilisateur. Les actions de l'utilisateur comprennent ce qui suit :

- - - -

Par exemple:

- -
function handleClick() {
-  browser.sidebarAction.open();
-}
-
-browser.browserAction.onClicked.addListener(handleClick);
- -

Notez que les actions de l'utilisateur dans les pages Web normales ne sont pas traitées comme des actions de l'utilisateur à cette fin. Par exemple, si un utilisateur clique sur un bouton dans une page Web normale et qu'un script de contenu a ajouté un gestionnaire de clic pour ce bouton et que ce gestionnaire envoie un message à la page d'arrière-plan de l'extension, alors le gestionnaire de message de page d'arrière-plan n'est pas considéré comme traitant une action utilisateur.

- -

De plus, si un gestionnaire d'entrée utilisateur attend une promise, alors son statut de gestionnaire d'entrée utilisateur est perdu. Par exemple :

- -
async function handleClick() {
-  let result = await someAsyncFunction();
-
-  // this will fail, because the handler lost its "user action handler" status
-  browser.sidebarAction.open();
-}
-
-browser.browserAction.onClicked.addListener(handleClick);
diff --git a/files/fr/mozilla/add-ons/webextensions/user_actions/index.md b/files/fr/mozilla/add-ons/webextensions/user_actions/index.md new file mode 100644 index 0000000000..ddd8305bca --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_actions/index.md @@ -0,0 +1,47 @@ +--- +title: actions utilisateurs +slug: Mozilla/Add-ons/WebExtensions/User_actions +tags: + - Add-ons + - Guide + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/User_actions +--- +
{{AddonSidebar}}
+ +

Certaines API WebExtension exécutent des fonctions qui sont généralement exécutées à la suite d'une action utilisateur. Par exemple:

+ + + +

Pour suivre le principe de "pas de  surprises", des APIs comme celle-ci ne peuvent être appelées que de l'intérieur du gestionnaire pour une action de l'utilisateur. Les actions de l'utilisateur comprennent ce qui suit :

+ + + +

Par exemple:

+ +
function handleClick() {
+  browser.sidebarAction.open();
+}
+
+browser.browserAction.onClicked.addListener(handleClick);
+ +

Notez que les actions de l'utilisateur dans les pages Web normales ne sont pas traitées comme des actions de l'utilisateur à cette fin. Par exemple, si un utilisateur clique sur un bouton dans une page Web normale et qu'un script de contenu a ajouté un gestionnaire de clic pour ce bouton et que ce gestionnaire envoie un message à la page d'arrière-plan de l'extension, alors le gestionnaire de message de page d'arrière-plan n'est pas considéré comme traitant une action utilisateur.

+ +

De plus, si un gestionnaire d'entrée utilisateur attend une promise, alors son statut de gestionnaire d'entrée utilisateur est perdu. Par exemple :

+ +
async function handleClick() {
+  let result = await someAsyncFunction();
+
+  // this will fail, because the handler lost its "user action handler" status
+  browser.sidebarAction.open();
+}
+
+browser.browserAction.onClicked.addListener(handleClick);
diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/browser_action/index.html b/files/fr/mozilla/add-ons/webextensions/user_interface/browser_action/index.html deleted file mode 100644 index 862dfee482..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_interface/browser_action/index.html +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: Bouton de la barre d'outils -slug: Mozilla/Add-ons/WebExtensions/user_interface/Browser_action -translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Browser_action ---- -
{{AddonSidebar}}
- -

Généralement appelé comme une action de navigateur, cette option d'interface utilisateur est un bouton ajouté à la barre d'outils du navigateur. Les utilisateurs cliquent sur le bouton pour interagir avec votre extension.
-

- -

Le bouton de la barre d'outils (action du navigateur) est très similaire au bouton de la barre d'adresse (action de la page). Pour connaître les différences et savoir quand utiliser quoi, voir les actions de page et les actions du navigateur.

- -

Spécification de l'action du navigateur

- -

Vous définissez les propriétés de l'action du navigateur à l'aide de la clé  browser_action dans manifest.json:

- -
"browser_action": {
-  "default_icon": {
-    "19": "button/geo-19.png",
-    "38": "button/geo-38.png"
-  },
-  "default_title": "Whereami?"
-}
- -

La seule clé obligatoire est default_icon.

- -

Il existe deux façons de spécifier une action du navigateur: avec ou sans popup. Si vous ne spécifiez pas de popup, lorsque l'utilisateur clique sur le bouton, un événement est envoyé à l'extension, que celle-ci attend pour utiliser  browserAction.onClicked :

- -
browser.browserAction.onClicked.addListener(handleClick);
- -

Si vous spécifiez une fenêtre contextuelle, l'événement de clic n'est pas envoyé : A la place, le popup s'affiche lorsque l'utilisateur clique sur le bouton. L'utilisateur peut interagir avec le popup et il se ferme automatiquement lorsque l'utilisateur clique à l'extérieur. Consulter l'article Popup pour plus de détails sur la création et la gestion des fenêtres pop-up.

- -

Notez que votre extension ne peut avoir qu'une seule action de navigateur.

- -

Vous pouvez modifier plusieurs propriétés d'action du navigateur de manière programmée à l'aide de l'API action du navigateur.

- -

Icônes

- -

Pour plus d'informations sur la création d'icônes à utiliser avec l'action de votre navigateur, voir Iconographie dans la documentation Photon Design System.

- -

Exemples

- -

Le dépôt webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilisent les actions du navigateur:

- - diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/browser_action/index.md b/files/fr/mozilla/add-ons/webextensions/user_interface/browser_action/index.md new file mode 100644 index 0000000000..862dfee482 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_interface/browser_action/index.md @@ -0,0 +1,48 @@ +--- +title: Bouton de la barre d'outils +slug: Mozilla/Add-ons/WebExtensions/user_interface/Browser_action +translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Browser_action +--- +
{{AddonSidebar}}
+ +

Généralement appelé comme une action de navigateur, cette option d'interface utilisateur est un bouton ajouté à la barre d'outils du navigateur. Les utilisateurs cliquent sur le bouton pour interagir avec votre extension.
+

+ +

Le bouton de la barre d'outils (action du navigateur) est très similaire au bouton de la barre d'adresse (action de la page). Pour connaître les différences et savoir quand utiliser quoi, voir les actions de page et les actions du navigateur.

+ +

Spécification de l'action du navigateur

+ +

Vous définissez les propriétés de l'action du navigateur à l'aide de la clé  browser_action dans manifest.json:

+ +
"browser_action": {
+  "default_icon": {
+    "19": "button/geo-19.png",
+    "38": "button/geo-38.png"
+  },
+  "default_title": "Whereami?"
+}
+ +

La seule clé obligatoire est default_icon.

+ +

Il existe deux façons de spécifier une action du navigateur: avec ou sans popup. Si vous ne spécifiez pas de popup, lorsque l'utilisateur clique sur le bouton, un événement est envoyé à l'extension, que celle-ci attend pour utiliser  browserAction.onClicked :

+ +
browser.browserAction.onClicked.addListener(handleClick);
+ +

Si vous spécifiez une fenêtre contextuelle, l'événement de clic n'est pas envoyé : A la place, le popup s'affiche lorsque l'utilisateur clique sur le bouton. L'utilisateur peut interagir avec le popup et il se ferme automatiquement lorsque l'utilisateur clique à l'extérieur. Consulter l'article Popup pour plus de détails sur la création et la gestion des fenêtres pop-up.

+ +

Notez que votre extension ne peut avoir qu'une seule action de navigateur.

+ +

Vous pouvez modifier plusieurs propriétés d'action du navigateur de manière programmée à l'aide de l'API action du navigateur.

+ +

Icônes

+ +

Pour plus d'informations sur la création d'icônes à utiliser avec l'action de votre navigateur, voir Iconographie dans la documentation Photon Design System.

+ +

Exemples

+ +

Le dépôt webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilisent les actions du navigateur:

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/browser_styles/index.html b/files/fr/mozilla/add-ons/webextensions/user_interface/browser_styles/index.html deleted file mode 100644 index 68f3bb2b82..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_interface/browser_styles/index.html +++ /dev/null @@ -1,459 +0,0 @@ ---- -title: Styles des navigateurs -slug: Mozilla/Add-ons/WebExtensions/user_interface/Browser_styles -translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Browser_styles ---- -
{{AddonSidebar}}
- -

Certains composants de l'interface utilisateur - les fenêtres contextuelles, fenêtres latérales, et les pages d'options du navigateur et de la page - sont spécifiés par votre extension de la même manière  :

- -
    -
  1. créer un fichier HTML définissant la structure de l'élément d'interface utilisateur
  2. -
  3. ajoutez une clé manifest.json (browser_action, page_action, sidebar_action, ou options_ui) pointant vers ce fichier HTML.
  4. -
- -

L'un des défis de cette approche est de styliser l'élément de telle sorte qu'il s'intègre au style du navigateur.
- Pour aider à cela, les clés manifest.json keys incluent une propriété optionnelle supplémentaire : browser_style.
- Si cela est inclus et défini sur true, votre document obtiendra une ou plusieurs feuilles de style supplémentaires qui le rendront cohérent avec l'interface utilisateur du navigateur et avec d'autres extensions utilisant la propriété browser_style.

- -

Lorsque vous envisagez d'utiliser le browser_style: true, vous devez tester votre extension avec différents thèmes (intégrés ou AMO) pour vous assurer que l'interface d'extension se comporte comme vous l'attendez..

- -
-

Attention : Quand browser_style: true est inclus dans le manifest de votre extension web, la sélection de texte dans l'interface utilisateur de votre extension est désactivée sauf dans les contrôles de saisie. Si cela pose un problème, incluez plutôt browser_style:false.

-
- -
-

Note : Google Chrome et Opera utilisent chrome_style au lieu de browser_style, donc si vous souhaitez les prendre en charge, vous devez ajouter les deux clés.

-
- -

Dans Firefox, la feuille de style peut être vue sur chrome://browser/content/extension.css. La feuille de style peut être vue sur chrome://browser/content/extension-mac.css est également incluse sur OS X.

- -

La plupart des styles sont automatiquement appliqués, mais certains éléments nécessitent que vous ajoutiez la classe  browser-style non standard pour obtenir leur style, comme indiqué dans le tableau ci-dessous :

- - - - - - - - - - - - - - - - - - - - - - - - - - -
ElementExemple
<button> -
-<button class="browser-style">Click me</button>{{non-standard_inline}}
-
-

<select>

-
-
-<select class="browser-style" name="select">
-  <option value="value1">Value 1</option>
-  <option value="value2" selected>Value 2</option>
-  <option value="value3">Value 3</option>
-</select>
-
<textarea> -
-<textarea class="browser-style">Write here</textarea>
-
Parent d'un <input> -
-<div class="browser-style">
-  <input type="radio" id="op1" name="choices" value="op1">
-  <label for="op1">Option 1</label>
-
-  <input type="radio" id="op2" name="choices" value="op2">
-  <label for="op2">Option 2</label>
-</div>
-
- -
-

Note : Voir le {{bug(1465256)}} pour la suppression de cette exigence inutile.

-
- -

Compatibilité du navigateur

- - - -

{{Compat("webextensions.browser_style")}}

- -

Composants du panneau Firefox

- -
-

Attention : Cette fonctionnalité est non standard et ne fonctionne que dans Firefox.

-
- -

La feuille de style chrome://browser/content/extension.css contient également les styles des composants du panneau Firefox.

- -

L'ancien guide de style de Firefox documente l'utilisation appropriée.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ElementExemple
Header -
-<header class="panel-section panel-section-header">
-  <div class="icon-section-header"><img src="image.svg"/></div>
-  <div class="text-section-header">Header</div>
-</header>
-
Footer -
-<footer class="panel-section panel-section-footer">
-  <button class="panel-section-footer-button">Cancel</button>
-  <div class="panel-section-footer-separator"></div>
-  <button class="panel-section-footer-button default">Confirm</button>
-</footer>
-
Tabs -
-<div class="panel-section panel-section-tabs">
-  <button class="panel-section-tabs-button selected">Tab</button>
-  <div class="panel-section-tabs-separator"></div>
-  <button class="panel-section-tabs-button">Tab</button>
-  <div class="panel-section-tabs-separator"></div>
-  <button class="panel-section-tabs-button">Tab</button>
-</div>
-
Form -
-<div class="panel-section panel-section-formElements">
-  <div class="panel-formElements-item">
-    <label for="name01">Label:</label>
-    <input type="text" value="Name" id="name01" />
-  </div>
-  <div class="panel-formElements-item">
-    <label for="picker01">Label:</label>
-    <select id="picker01">
-      <option value="value1" selected="true">Dropdown</option>
-      <option value="value2">List Item</option>
-      <option value="value3">List Item</option>
-    </select>
-  </div>
-  <div class="panel-formElements-item">
-    <label for="placeholder01">Label:</label>
-    <input type="text" placeholder="Placeholder" id="placeholder01" />
-    <button name="expander" class="expander"></button>
-  </div>
-</div>
-
Menu -
-<div class="panel-section panel-section-list">
-  <div class="panel-list-item">
-    <div class="icon"></div>
-    <div class="text">List Item</div>
-    <div class="text-shortcut">Ctrl-L</div>
-  </div>
-
-  <div class="panel-list-item">
-    <div class="icon"></div>
-    <div class="text">List Item</div>
-    <div class="text-shortcut"></div>
-  </div>
-
-  <div class="panel-section-separator"></div>
-
-  <div class="panel-list-item disabled">
-    <div class="icon"></div>
-    <div class="text">Disabled List Item</div>
-    <div class="text-shortcut"></div>
-  </div>
-
-  <div class="panel-section-separator"></div>
-
-  <div class="panel-list-item">
-    <div class="icon"></div>
-    <div class="text">List Item</div>
-    <div class="text-shortcut"></div>
-  </div>
-
-  <div class="panel-list-item">
-    <div class="icon"></div>
-    <div class="text">List Item</div>
-    <div class="text-shortcut"></div>
-  </div>
-</div>
-
- -

Exemple

- -

HTML

- -
<header class="panel-section panel-section-header">
-  <div class="icon-section-header"><!-- An image goes here. --></div>
-  <div class="text-section-header">Header</div>
-</header>
-
-<div class="panel-section panel-section-list">
-  <div class="panel-list-item">
-    <div class="icon"></div>
-    <div class="text">List Item</div>
-    <div class="text-shortcut">Ctrl-L</div>
-  </div>
-
-  <div class="panel-list-item">
-    <div class="icon"></div>
-    <div class="text">List Item</div>
-    <div class="text-shortcut"></div>
-  </div>
-
-  <div class="panel-section-separator"></div>
-
-  <div class="panel-list-item disabled">
-    <div class="icon"></div>
-    <div class="text">Disabled List Item</div>
-    <div class="text-shortcut"></div>
-  </div>
-
-  <div class="panel-section-separator"></div>
-
-  <div class="panel-list-item">
-    <div class="icon"></div>
-    <div class="text">List Item</div>
-    <div class="text-shortcut"></div>
-  </div>
-
-  <div class="panel-list-item">
-    <div class="icon"></div>
-    <div class="text">List Item</div>
-    <div class="text-shortcut"></div>
-  </div>
-</div>
-
-<footer class="panel-section panel-section-footer">
-  <button class="panel-section-footer-button">Cancel</button>
-  <div class="panel-section-footer-separator"></div>
-  <button class="panel-section-footer-button default">Confirm</button>
-</footer>
- - - -
/* Example specific – not part of chrome://browser/content/extension.css */
-body {
-  background: #fcfcfc;
-  background-clip: padding-box;
-  border: 1px solid rgba(24,26,27,.2);
-  box-shadow: 0 3px 5px rgba(24,26,27,.1),0 0 7px rgba(24,26,27,.1);
-  box-sizing: content-box;
-  margin: 2em auto .5em;
-  width: 384px;
-}
-
-html {
-  min-height: 100vh;
-}
-
-html > body {
-  margin: auto;
-}
-
-.icon-section-header {
-  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmlld0JveD0iMCAwIDMyIDMyIj48Y2lyY2xlIGZpbGw9IiMzNjM5NTkiIGN4PSIxNSIgY3k9IjE1IiByPSIxNSIvPjwvc3ZnPg==");
-}
- -

Resultat

- -

{{EmbedLiveSample("Exemple","640","360")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/browser_styles/index.md b/files/fr/mozilla/add-ons/webextensions/user_interface/browser_styles/index.md new file mode 100644 index 0000000000..68f3bb2b82 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_interface/browser_styles/index.md @@ -0,0 +1,459 @@ +--- +title: Styles des navigateurs +slug: Mozilla/Add-ons/WebExtensions/user_interface/Browser_styles +translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Browser_styles +--- +
{{AddonSidebar}}
+ +

Certains composants de l'interface utilisateur - les fenêtres contextuelles, fenêtres latérales, et les pages d'options du navigateur et de la page - sont spécifiés par votre extension de la même manière  :

+ +
    +
  1. créer un fichier HTML définissant la structure de l'élément d'interface utilisateur
  2. +
  3. ajoutez une clé manifest.json (browser_action, page_action, sidebar_action, ou options_ui) pointant vers ce fichier HTML.
  4. +
+ +

L'un des défis de cette approche est de styliser l'élément de telle sorte qu'il s'intègre au style du navigateur.
+ Pour aider à cela, les clés manifest.json keys incluent une propriété optionnelle supplémentaire : browser_style.
+ Si cela est inclus et défini sur true, votre document obtiendra une ou plusieurs feuilles de style supplémentaires qui le rendront cohérent avec l'interface utilisateur du navigateur et avec d'autres extensions utilisant la propriété browser_style.

+ +

Lorsque vous envisagez d'utiliser le browser_style: true, vous devez tester votre extension avec différents thèmes (intégrés ou AMO) pour vous assurer que l'interface d'extension se comporte comme vous l'attendez..

+ +
+

Attention : Quand browser_style: true est inclus dans le manifest de votre extension web, la sélection de texte dans l'interface utilisateur de votre extension est désactivée sauf dans les contrôles de saisie. Si cela pose un problème, incluez plutôt browser_style:false.

+
+ +
+

Note : Google Chrome et Opera utilisent chrome_style au lieu de browser_style, donc si vous souhaitez les prendre en charge, vous devez ajouter les deux clés.

+
+ +

Dans Firefox, la feuille de style peut être vue sur chrome://browser/content/extension.css. La feuille de style peut être vue sur chrome://browser/content/extension-mac.css est également incluse sur OS X.

+ +

La plupart des styles sont automatiquement appliqués, mais certains éléments nécessitent que vous ajoutiez la classe  browser-style non standard pour obtenir leur style, comme indiqué dans le tableau ci-dessous :

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
ElementExemple
<button> +
+<button class="browser-style">Click me</button>{{non-standard_inline}}
+
+

<select>

+
+
+<select class="browser-style" name="select">
+  <option value="value1">Value 1</option>
+  <option value="value2" selected>Value 2</option>
+  <option value="value3">Value 3</option>
+</select>
+
<textarea> +
+<textarea class="browser-style">Write here</textarea>
+
Parent d'un <input> +
+<div class="browser-style">
+  <input type="radio" id="op1" name="choices" value="op1">
+  <label for="op1">Option 1</label>
+
+  <input type="radio" id="op2" name="choices" value="op2">
+  <label for="op2">Option 2</label>
+</div>
+
+ +
+

Note : Voir le {{bug(1465256)}} pour la suppression de cette exigence inutile.

+
+ +

Compatibilité du navigateur

+ + + +

{{Compat("webextensions.browser_style")}}

+ +

Composants du panneau Firefox

+ +
+

Attention : Cette fonctionnalité est non standard et ne fonctionne que dans Firefox.

+
+ +

La feuille de style chrome://browser/content/extension.css contient également les styles des composants du panneau Firefox.

+ +

L'ancien guide de style de Firefox documente l'utilisation appropriée.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ElementExemple
Header +
+<header class="panel-section panel-section-header">
+  <div class="icon-section-header"><img src="image.svg"/></div>
+  <div class="text-section-header">Header</div>
+</header>
+
Footer +
+<footer class="panel-section panel-section-footer">
+  <button class="panel-section-footer-button">Cancel</button>
+  <div class="panel-section-footer-separator"></div>
+  <button class="panel-section-footer-button default">Confirm</button>
+</footer>
+
Tabs +
+<div class="panel-section panel-section-tabs">
+  <button class="panel-section-tabs-button selected">Tab</button>
+  <div class="panel-section-tabs-separator"></div>
+  <button class="panel-section-tabs-button">Tab</button>
+  <div class="panel-section-tabs-separator"></div>
+  <button class="panel-section-tabs-button">Tab</button>
+</div>
+
Form +
+<div class="panel-section panel-section-formElements">
+  <div class="panel-formElements-item">
+    <label for="name01">Label:</label>
+    <input type="text" value="Name" id="name01" />
+  </div>
+  <div class="panel-formElements-item">
+    <label for="picker01">Label:</label>
+    <select id="picker01">
+      <option value="value1" selected="true">Dropdown</option>
+      <option value="value2">List Item</option>
+      <option value="value3">List Item</option>
+    </select>
+  </div>
+  <div class="panel-formElements-item">
+    <label for="placeholder01">Label:</label>
+    <input type="text" placeholder="Placeholder" id="placeholder01" />
+    <button name="expander" class="expander"></button>
+  </div>
+</div>
+
Menu +
+<div class="panel-section panel-section-list">
+  <div class="panel-list-item">
+    <div class="icon"></div>
+    <div class="text">List Item</div>
+    <div class="text-shortcut">Ctrl-L</div>
+  </div>
+
+  <div class="panel-list-item">
+    <div class="icon"></div>
+    <div class="text">List Item</div>
+    <div class="text-shortcut"></div>
+  </div>
+
+  <div class="panel-section-separator"></div>
+
+  <div class="panel-list-item disabled">
+    <div class="icon"></div>
+    <div class="text">Disabled List Item</div>
+    <div class="text-shortcut"></div>
+  </div>
+
+  <div class="panel-section-separator"></div>
+
+  <div class="panel-list-item">
+    <div class="icon"></div>
+    <div class="text">List Item</div>
+    <div class="text-shortcut"></div>
+  </div>
+
+  <div class="panel-list-item">
+    <div class="icon"></div>
+    <div class="text">List Item</div>
+    <div class="text-shortcut"></div>
+  </div>
+</div>
+
+ +

Exemple

+ +

HTML

+ +
<header class="panel-section panel-section-header">
+  <div class="icon-section-header"><!-- An image goes here. --></div>
+  <div class="text-section-header">Header</div>
+</header>
+
+<div class="panel-section panel-section-list">
+  <div class="panel-list-item">
+    <div class="icon"></div>
+    <div class="text">List Item</div>
+    <div class="text-shortcut">Ctrl-L</div>
+  </div>
+
+  <div class="panel-list-item">
+    <div class="icon"></div>
+    <div class="text">List Item</div>
+    <div class="text-shortcut"></div>
+  </div>
+
+  <div class="panel-section-separator"></div>
+
+  <div class="panel-list-item disabled">
+    <div class="icon"></div>
+    <div class="text">Disabled List Item</div>
+    <div class="text-shortcut"></div>
+  </div>
+
+  <div class="panel-section-separator"></div>
+
+  <div class="panel-list-item">
+    <div class="icon"></div>
+    <div class="text">List Item</div>
+    <div class="text-shortcut"></div>
+  </div>
+
+  <div class="panel-list-item">
+    <div class="icon"></div>
+    <div class="text">List Item</div>
+    <div class="text-shortcut"></div>
+  </div>
+</div>
+
+<footer class="panel-section panel-section-footer">
+  <button class="panel-section-footer-button">Cancel</button>
+  <div class="panel-section-footer-separator"></div>
+  <button class="panel-section-footer-button default">Confirm</button>
+</footer>
+ + + +
/* Example specific – not part of chrome://browser/content/extension.css */
+body {
+  background: #fcfcfc;
+  background-clip: padding-box;
+  border: 1px solid rgba(24,26,27,.2);
+  box-shadow: 0 3px 5px rgba(24,26,27,.1),0 0 7px rgba(24,26,27,.1);
+  box-sizing: content-box;
+  margin: 2em auto .5em;
+  width: 384px;
+}
+
+html {
+  min-height: 100vh;
+}
+
+html > body {
+  margin: auto;
+}
+
+.icon-section-header {
+  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmlld0JveD0iMCAwIDMyIDMyIj48Y2lyY2xlIGZpbGw9IiMzNjM5NTkiIGN4PSIxNSIgY3k9IjE1IiByPSIxNSIvPjwvc3ZnPg==");
+}
+ +

Resultat

+ +

{{EmbedLiveSample("Exemple","640","360")}}

diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/context_menu_items/index.html b/files/fr/mozilla/add-ons/webextensions/user_interface/context_menu_items/index.html deleted file mode 100644 index 85fa7a82fc..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_interface/context_menu_items/index.html +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: Elements du menu contextuel -slug: Mozilla/Add-ons/WebExtensions/user_interface/Context_menu_items -tags: - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Context_menu_items -original_slug: Mozilla/Add-ons/WebExtensions/user_interface/elements_menu_contextuel ---- -
{{AddonSidebar}}
- -

Cette option d'interface utilisateur ajoute un ou plusieurs éléments à un menu contextuel du navigateur. Il s'agit du menu contextuel disponible lorsqu'un utilisateur clique avec le bouton droit de la souris sur une page Web. Les onglets peuvent aussi avoir des menus contextuels, disponibles via l' API browser.menus.

- -

- -

Vous utiliseriez cette option pour exposer les fonctions qui sont pertinentes à des contextes de navigateur ou de page Web spécifiques. Par exemple, vous pouvez afficher des fonctions pour ouvrir un éditeur graphique lorsque l'utilisateur clique sur une image ou offrir une fonction pour enregistrer le contenu d'une page lorsqu'une partie de celle-ci est sélectionnée. Vous pouvez ajouter des éléments de menu simples, des cases à cocher, des groupes de boutons radio et des séparateurs aux menus. Une fois qu'un élément de menu contextuel a été ajouté à l'aide de {{WebExtAPIRef("contextMenus.create")}}, il est affiché dans tous les onglets du navigateur, mais vous pouvez le masquer en le supprimant avec {{WebExtAPIRef("contextMenus.remove")}}.

- -

La liste complète des contextes pris en charge est disponible sur {{WebExtAPIRef("menus.ContextType")}} et inclut les contextes en dehors d'une page Web, tels que les signets dans l'interface du navigateur. Par exemple, l'extension "Open bookmark in Container Tab" ajoute un élément de menu qui permet à l'utilisateur d'ouvrir une URL de signet dans un nouvel onglet de conteneur :

- -

- -

Spécification des éléments du menu contextuel

- -

Vous gérez les éléments du menu contextuel par programmation, en utilisant l'API {{WebExtAPIRef("contextMenus")}}. Cependant, vous devez demander la permission contextMenus dans votre manifest.json pour pouvoir profiter de l'avantage de l'API.

- -
"permissions": ["contextMenus"]
-Vous pouvez ensuite ajouter (mettre à jour ou supprimer) les éléments du menu contextuel dans votre script de fond de l'extension. Pour créer un élément de menu, vous spécifiez un ID, son titre et les menus contextuels sur lesquels il doit apparaître: - -
browser.contextMenus.create({
-  id: "log-selection",
-  title: browser.i18n.getMessage("contextMenuItemSelectionLogger"),
-  contexts: ["selection"]
-}, onCreated);
- -

Votre extension attend les clics sur les éléments du menu. L'information passée sur l'élément a cliqué, le contexte où le clic s'est produit, et les détails de l'onglet où le clic a eu lieu, peuvent ensuite être utilisés pour appeler les fonctionnalités de l'extension appropriées.

- -
browser.contextMenus.onClicked.addListener(function(info, tab) {
-  switch (info.menuItemId) {
-    case "log-selection":
-      console.log(info.selectionText);
-      break;
-    ...
-  }
-})
- -

Icônes

- -

Pour plus de détails sur la création d'icônes à utiliser avec votre menu contextuel, voir  Iconography dans la documentation du Systeme de conception de Photon.

- -

Exemples

- -

Le depot webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilise les élements du menu contextuel :

- - \ No newline at end of file diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/context_menu_items/index.md b/files/fr/mozilla/add-ons/webextensions/user_interface/context_menu_items/index.md new file mode 100644 index 0000000000..85fa7a82fc --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_interface/context_menu_items/index.md @@ -0,0 +1,56 @@ +--- +title: Elements du menu contextuel +slug: Mozilla/Add-ons/WebExtensions/user_interface/Context_menu_items +tags: + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Context_menu_items +original_slug: Mozilla/Add-ons/WebExtensions/user_interface/elements_menu_contextuel +--- +
{{AddonSidebar}}
+ +

Cette option d'interface utilisateur ajoute un ou plusieurs éléments à un menu contextuel du navigateur. Il s'agit du menu contextuel disponible lorsqu'un utilisateur clique avec le bouton droit de la souris sur une page Web. Les onglets peuvent aussi avoir des menus contextuels, disponibles via l' API browser.menus.

+ +

+ +

Vous utiliseriez cette option pour exposer les fonctions qui sont pertinentes à des contextes de navigateur ou de page Web spécifiques. Par exemple, vous pouvez afficher des fonctions pour ouvrir un éditeur graphique lorsque l'utilisateur clique sur une image ou offrir une fonction pour enregistrer le contenu d'une page lorsqu'une partie de celle-ci est sélectionnée. Vous pouvez ajouter des éléments de menu simples, des cases à cocher, des groupes de boutons radio et des séparateurs aux menus. Une fois qu'un élément de menu contextuel a été ajouté à l'aide de {{WebExtAPIRef("contextMenus.create")}}, il est affiché dans tous les onglets du navigateur, mais vous pouvez le masquer en le supprimant avec {{WebExtAPIRef("contextMenus.remove")}}.

+ +

La liste complète des contextes pris en charge est disponible sur {{WebExtAPIRef("menus.ContextType")}} et inclut les contextes en dehors d'une page Web, tels que les signets dans l'interface du navigateur. Par exemple, l'extension "Open bookmark in Container Tab" ajoute un élément de menu qui permet à l'utilisateur d'ouvrir une URL de signet dans un nouvel onglet de conteneur :

+ +

+ +

Spécification des éléments du menu contextuel

+ +

Vous gérez les éléments du menu contextuel par programmation, en utilisant l'API {{WebExtAPIRef("contextMenus")}}. Cependant, vous devez demander la permission contextMenus dans votre manifest.json pour pouvoir profiter de l'avantage de l'API.

+ +
"permissions": ["contextMenus"]
+Vous pouvez ensuite ajouter (mettre à jour ou supprimer) les éléments du menu contextuel dans votre script de fond de l'extension. Pour créer un élément de menu, vous spécifiez un ID, son titre et les menus contextuels sur lesquels il doit apparaître: + +
browser.contextMenus.create({
+  id: "log-selection",
+  title: browser.i18n.getMessage("contextMenuItemSelectionLogger"),
+  contexts: ["selection"]
+}, onCreated);
+ +

Votre extension attend les clics sur les éléments du menu. L'information passée sur l'élément a cliqué, le contexte où le clic s'est produit, et les détails de l'onglet où le clic a eu lieu, peuvent ensuite être utilisés pour appeler les fonctionnalités de l'extension appropriées.

+ +
browser.contextMenus.onClicked.addListener(function(info, tab) {
+  switch (info.menuItemId) {
+    case "log-selection":
+      console.log(info.selectionText);
+      break;
+    ...
+  }
+})
+ +

Icônes

+ +

Pour plus de détails sur la création d'icônes à utiliser avec votre menu contextuel, voir  Iconography dans la documentation du Systeme de conception de Photon.

+ +

Exemples

+ +

Le depot webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilise les élements du menu contextuel :

+ + \ No newline at end of file diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/devtools_panels/index.html b/files/fr/mozilla/add-ons/webextensions/user_interface/devtools_panels/index.html deleted file mode 100644 index 3b2b241705..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_interface/devtools_panels/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -title: panneaux devtools -slug: Mozilla/Add-ons/WebExtensions/user_interface/devtools_panels -tags: - - Débutant - - Guide - - WebExtensions - - interface utilisateur -translation_of: Mozilla/Add-ons/WebExtensions/user_interface/devtools_panels -original_slug: Mozilla/Add-ons/WebExtensions/user_interface/panneaux_devtools ---- -
{{AddonSidebar}}
- -
-

Note : Cette fonctionnalité deviendra disponible dans Firefox 54.

-
- -

Lorsqu'une extension fournit des outils utiles aux développeurs, il est possible d'ajouter une interface utilisateur pour les outils de développement du navigateur en tant que nouveau panneau.

- -

- -

Spécification d'un panneau d'outils de développement

- -

Un panneau d'outils de développement est ajouté à l'aide de l'API devtools.panels, qui, à son tour, doit être exécutée à partir d'une page spéciale devtools.

- -

Ajoutez la page devtools en incluant la clé devtools_page dans l'extension manifest.json et fournissez l'emplacement du fichier de la page HTML dans l'extension :

- -
"devtools_page": "devtools-page.html"
- -

Dans la page des devtools, appelez un script qui ajoutera un panneau dans devtools:

- -
<body>
-  <script src="devtools.js"></script>
-</body>
- -

Dans le script, créez un panneau devtools en spécifiant le titre, l'icône et le fichier HTML du panneau qui fournit le contenu du panneau:

- -
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) => {
-  newPanel.onShown.addListener(handleShown);
-  newPanel.onHidden.addListener(handleHidden);
-});
- -

L'extension peut maintenant exécuter un code dans la fenêtre inspectée à l'aide de devtools.inspectedWindow.eval() ou en injectant un script de contenu via le script en arrière en passant un message. Vous pouvez trouver plus de détails sur la façon de procéder dans l'Extension des outils de développement.

- -

Conception du panneau de développement

- -

Pour plus de détails sur la façon de concevoir la page Web de votre panneau de développeurs pour qu'elle corresponde au style de Firefox, consultez la documentation Photon Design System.

- -

Icônes

- -

Pour plus de détails sur la création d'icônes à utiliser avec votre panneau d'outils de développement, voir Iconographie dans la documentation du Photon Design System.

- - - -

Exemples

- -

Le depot webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilisent les panneaux devtools:

- - diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/devtools_panels/index.md b/files/fr/mozilla/add-ons/webextensions/user_interface/devtools_panels/index.md new file mode 100644 index 0000000000..3b2b241705 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_interface/devtools_panels/index.md @@ -0,0 +1,75 @@ +--- +title: panneaux devtools +slug: Mozilla/Add-ons/WebExtensions/user_interface/devtools_panels +tags: + - Débutant + - Guide + - WebExtensions + - interface utilisateur +translation_of: Mozilla/Add-ons/WebExtensions/user_interface/devtools_panels +original_slug: Mozilla/Add-ons/WebExtensions/user_interface/panneaux_devtools +--- +
{{AddonSidebar}}
+ +
+

Note : Cette fonctionnalité deviendra disponible dans Firefox 54.

+
+ +

Lorsqu'une extension fournit des outils utiles aux développeurs, il est possible d'ajouter une interface utilisateur pour les outils de développement du navigateur en tant que nouveau panneau.

+ +

+ +

Spécification d'un panneau d'outils de développement

+ +

Un panneau d'outils de développement est ajouté à l'aide de l'API devtools.panels, qui, à son tour, doit être exécutée à partir d'une page spéciale devtools.

+ +

Ajoutez la page devtools en incluant la clé devtools_page dans l'extension manifest.json et fournissez l'emplacement du fichier de la page HTML dans l'extension :

+ +
"devtools_page": "devtools-page.html"
+ +

Dans la page des devtools, appelez un script qui ajoutera un panneau dans devtools:

+ +
<body>
+  <script src="devtools.js"></script>
+</body>
+ +

Dans le script, créez un panneau devtools en spécifiant le titre, l'icône et le fichier HTML du panneau qui fournit le contenu du panneau:

+ +
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) => {
+  newPanel.onShown.addListener(handleShown);
+  newPanel.onHidden.addListener(handleHidden);
+});
+ +

L'extension peut maintenant exécuter un code dans la fenêtre inspectée à l'aide de devtools.inspectedWindow.eval() ou en injectant un script de contenu via le script en arrière en passant un message. Vous pouvez trouver plus de détails sur la façon de procéder dans l'Extension des outils de développement.

+ +

Conception du panneau de développement

+ +

Pour plus de détails sur la façon de concevoir la page Web de votre panneau de développeurs pour qu'elle corresponde au style de Firefox, consultez la documentation Photon Design System.

+ +

Icônes

+ +

Pour plus de détails sur la création d'icônes à utiliser avec votre panneau d'outils de développement, voir Iconographie dans la documentation du Photon Design System.

+ + + +

Exemples

+ +

Le depot webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilisent les panneaux devtools:

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/extension_pages/index.html b/files/fr/mozilla/add-ons/webextensions/user_interface/extension_pages/index.html deleted file mode 100644 index 7ddf8b03fd..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_interface/extension_pages/index.html +++ /dev/null @@ -1,78 +0,0 @@ ---- -title: Extension pages -slug: Mozilla/Add-ons/WebExtensions/user_interface/Extension_pages -tags: - - Débutant - - User Interface - - WebExtensions - - interface utilisateur -translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Extension_pages -original_slug: Mozilla/Add-ons/WebExtensions/user_interface/pages_web_incluses ---- -
{{AddonSidebar()}}
- -

Vous pouvez inclure des pages HTML dans votre extension sous la forme de formulaires, d’aide ou tout autre contenu dont votre extension a besoin.

- -

- -

Ces pages ont également accès aux mêmes API JavaScript privilégiées qui sont disponibles pour les scripts d’arrière‐plan de votre extension, mais elles sont dans leur propre onglet, leur propre file d’attente d’événements JavaScript, leurs propres globales etc.

- -

Pensez à la page d'arrière-plan comme une « page cachée d’extension ».

- -

Spécification des pages d’extension

- -

Vous pouvez inclure des fichiers HTML - et les fichiers CSS ou JavaScript associés - dans votre extension. Les fichiers peuvent être inclus à la racine ou organisés dans des sous‐dossiers.***

- -
/my-extension
-    /manifest.json
-    /my-page.html
-    /my-page.js
- -

Affichage des pages d’extension

- -

Il existe deux options pour afficher des pages d'extension :  {{WebExtAPIRef("windows.create()")}} et {{WebExtAPIRef("tabs.create()")}}.

- -

À l’aide de windows.create(), vous pouvez ouvrir une page HTML intégrée dans un panneau détaché (une fenêtre sans l’interface utilisateur de la barre d’la barre de signet et similaire) pour créer une expérience utilisateur semblable à une boîte de dialogue :

- -
var createData = {
-  type: "detached_panel",
-  url: "panel.html",
-  width: 250,
-  height: 100
-};
-var creating = browser.windows.create(createData);
- -

Lorsque la fenêtre n'est plus nécessaire, elle peut être fermée par programme.

- -

Par exemple, après que l’utilisateur a cliqué sur un bouton, en passant l’ID de la fenêtre actuelle à {{WebExtAPIRef("windows.remove()")}} :

- -
document.getElementById("closeme").addEventListener("click", function(){
-  let winId = browser.windows.WINDOW_ID_CURRENT;
-  let removing = browser.windows.remove(winId);
-});
- -

Pages d’extension et historique

- -

Par défaut, les pages que vous ouvrez de cette manière seront stockées dans l’historique de l’utilisateur, comme les pages Web normales. Si vous ne voulez pas avoir ce comportement, utilisez {{WebExtAPIRef("history.deleteUrl()")}} pour supprimer l'enregistrement du navigateur :

- -
function onVisited(historyItem) {
-  if (historyItem.url == browser.extension.getURL(myPage)) {
-    browser.history.deleteUrl({url: historyItem.url});
-  }
-}
-
-browser.history.onVisited.addListener(onVisited);
- -

Pour utiliser l’API historique, vous devez demander la permission « history » dans votre fichier manifest.json.

- -

Conception des pages Web

- -

Pour plus de détails sur la façon de concevoir votre page Web pour correspondre au style de Firefox, voir la documentation sur le système de conception Photon et les styles de navigateur.

- -

Exemples

- -

Le dépôt webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilise une action de navigateur :

- - diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/extension_pages/index.md b/files/fr/mozilla/add-ons/webextensions/user_interface/extension_pages/index.md new file mode 100644 index 0000000000..7ddf8b03fd --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_interface/extension_pages/index.md @@ -0,0 +1,78 @@ +--- +title: Extension pages +slug: Mozilla/Add-ons/WebExtensions/user_interface/Extension_pages +tags: + - Débutant + - User Interface + - WebExtensions + - interface utilisateur +translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Extension_pages +original_slug: Mozilla/Add-ons/WebExtensions/user_interface/pages_web_incluses +--- +
{{AddonSidebar()}}
+ +

Vous pouvez inclure des pages HTML dans votre extension sous la forme de formulaires, d’aide ou tout autre contenu dont votre extension a besoin.

+ +

+ +

Ces pages ont également accès aux mêmes API JavaScript privilégiées qui sont disponibles pour les scripts d’arrière‐plan de votre extension, mais elles sont dans leur propre onglet, leur propre file d’attente d’événements JavaScript, leurs propres globales etc.

+ +

Pensez à la page d'arrière-plan comme une « page cachée d’extension ».

+ +

Spécification des pages d’extension

+ +

Vous pouvez inclure des fichiers HTML - et les fichiers CSS ou JavaScript associés - dans votre extension. Les fichiers peuvent être inclus à la racine ou organisés dans des sous‐dossiers.***

+ +
/my-extension
+    /manifest.json
+    /my-page.html
+    /my-page.js
+ +

Affichage des pages d’extension

+ +

Il existe deux options pour afficher des pages d'extension :  {{WebExtAPIRef("windows.create()")}} et {{WebExtAPIRef("tabs.create()")}}.

+ +

À l’aide de windows.create(), vous pouvez ouvrir une page HTML intégrée dans un panneau détaché (une fenêtre sans l’interface utilisateur de la barre d’la barre de signet et similaire) pour créer une expérience utilisateur semblable à une boîte de dialogue :

+ +
var createData = {
+  type: "detached_panel",
+  url: "panel.html",
+  width: 250,
+  height: 100
+};
+var creating = browser.windows.create(createData);
+ +

Lorsque la fenêtre n'est plus nécessaire, elle peut être fermée par programme.

+ +

Par exemple, après que l’utilisateur a cliqué sur un bouton, en passant l’ID de la fenêtre actuelle à {{WebExtAPIRef("windows.remove()")}} :

+ +
document.getElementById("closeme").addEventListener("click", function(){
+  let winId = browser.windows.WINDOW_ID_CURRENT;
+  let removing = browser.windows.remove(winId);
+});
+ +

Pages d’extension et historique

+ +

Par défaut, les pages que vous ouvrez de cette manière seront stockées dans l’historique de l’utilisateur, comme les pages Web normales. Si vous ne voulez pas avoir ce comportement, utilisez {{WebExtAPIRef("history.deleteUrl()")}} pour supprimer l'enregistrement du navigateur :

+ +
function onVisited(historyItem) {
+  if (historyItem.url == browser.extension.getURL(myPage)) {
+    browser.history.deleteUrl({url: historyItem.url});
+  }
+}
+
+browser.history.onVisited.addListener(onVisited);
+ +

Pour utiliser l’API historique, vous devez demander la permission « history » dans votre fichier manifest.json.

+ +

Conception des pages Web

+ +

Pour plus de détails sur la façon de concevoir votre page Web pour correspondre au style de Firefox, voir la documentation sur le système de conception Photon et les styles de navigateur.

+ +

Exemples

+ +

Le dépôt webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilise une action de navigateur :

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/index.html b/files/fr/mozilla/add-ons/webextensions/user_interface/index.html deleted file mode 100644 index a77c53928b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_interface/index.html +++ /dev/null @@ -1,115 +0,0 @@ ---- -title: Interface utilisateur -slug: Mozilla/Add-ons/WebExtensions/user_interface -tags: - - Landing - - User Interface - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/user_interface ---- -
{{AddonSidebar}}
- -

Les WebExtensions disposent de plusieurs options d'interface utilisateur afin que leur fonctionnalité puisse être mise à la disposition de l'utilisateur. Un résumé de ces options est fourni ci-dessous, avec une introduction plus détaillée à chaque option d'interface utilisateur dans cette section.

- -
-

Note : Pour en revenir des conseils sur l'utilisation de ces composants d'interface utilisateur afin de créer une expérience utilisateur générale dans votre extension, consultez l'article sur les bonnes pratiques de l'expérience utilisateur.

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
UI optionDescriptionExemple
Bouton de la barre d'outils (action du navigateur) -

Un bouton sur la barre d'outils du navigateur qui diffuse un événement sur l'add-on lorsqu'il est cliqué. Par défaut, le bouton est visible dans tous les onglets.

-
Bouton de la barre d'outils du navigateur avec un popup -

Un popup sur un bouton dans la barre d'outils du navigateur qui s'ouvre lorsque le bouton est cliqué. La fenêtre contextuelle est définie dans un document HTML qui gère l'interaction de l'utilisateur.

-
Bouton de la barre d'addresse (action page) -

Un bouton sur la barre d'adresse du navigateur qui distribue un événement à l'add-on lorsqu'il est cliqué. Par défaut, le bouton est caché dans tous les onglets.

-
Bouton de la barre d'addresse avec un popup -

Un popup sur un bouton dans la barre d'adresse du navigateur qui s'ouvre lorsque le bouton est cliqué. La fenêtre contextuelle est définie dans un document HTML qui gère l'interaction de l'utilisateur.

-
Elément du menu contextuel -

Les éléments de menu, les cases à cocher et les boutons radio sur un ou plusieurs des menus contextuels du navigateur. En outre, les menus peuvent être structurés en ajoutant des séparateurs. Lorsque les éléments du menu sont cliqués, un événement est envoyé à l'extension.

-
Barre latérale -

Un document HTML s'affiche à côté d'une page Web, avec l'option de contenu unique par page. La barre latérale s'ouvre lorsque l'extension est installée, puis obéit à la sélection de visibilité de la barre latérale de l'utilisateur. L'interaction de l'utilisateur dans la barre latérale est traitée par son document HTML.

-
page d'options -

Une page qui vous permet de définir les préférences pour votre WebExtension que vos utilisateurs peuvent modifier. L'utilisateur peut accéder à cette page dans le gestionnaire des extensions du navigateur.

-
Extension pages -

Utilisez les pages Web incluses dans votre WebExtension pour fournir des formulaires, de l'aide ou tout autre contenu requis, dans les fenêtres ou les onglets.

-
Notifications -

Notifications transitoires affichées à l'utilisateur par le mécanisme de notification du système d'exploitation sous-jacent. Déclenche un événement vers l'extension lorsque l'utilisateur clique sur une notification ou lorsque une notification se ferme (automatiquement ou à la demande de l'utilisateur).

-
Suggestions de la barre d'addresse -

Offrez des suggestions de barèmes d'adresses personnalisées lorsque l'utilisateur entre un mot-clé.

-
Panneaux d'outils de développement -

Un onglet avec un document HTML associé qui s'affiche dans les outils de développement du navigateur.

-
- -

Les guides pratiques suivants fournissent des conseils étape par étape pour créer certaines options d'interface utilisateur:

- - diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/index.md b/files/fr/mozilla/add-ons/webextensions/user_interface/index.md new file mode 100644 index 0000000000..a77c53928b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_interface/index.md @@ -0,0 +1,115 @@ +--- +title: Interface utilisateur +slug: Mozilla/Add-ons/WebExtensions/user_interface +tags: + - Landing + - User Interface + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/user_interface +--- +
{{AddonSidebar}}
+ +

Les WebExtensions disposent de plusieurs options d'interface utilisateur afin que leur fonctionnalité puisse être mise à la disposition de l'utilisateur. Un résumé de ces options est fourni ci-dessous, avec une introduction plus détaillée à chaque option d'interface utilisateur dans cette section.

+ +
+

Note : Pour en revenir des conseils sur l'utilisation de ces composants d'interface utilisateur afin de créer une expérience utilisateur générale dans votre extension, consultez l'article sur les bonnes pratiques de l'expérience utilisateur.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
UI optionDescriptionExemple
Bouton de la barre d'outils (action du navigateur) +

Un bouton sur la barre d'outils du navigateur qui diffuse un événement sur l'add-on lorsqu'il est cliqué. Par défaut, le bouton est visible dans tous les onglets.

+
Bouton de la barre d'outils du navigateur avec un popup +

Un popup sur un bouton dans la barre d'outils du navigateur qui s'ouvre lorsque le bouton est cliqué. La fenêtre contextuelle est définie dans un document HTML qui gère l'interaction de l'utilisateur.

+
Bouton de la barre d'addresse (action page) +

Un bouton sur la barre d'adresse du navigateur qui distribue un événement à l'add-on lorsqu'il est cliqué. Par défaut, le bouton est caché dans tous les onglets.

+
Bouton de la barre d'addresse avec un popup +

Un popup sur un bouton dans la barre d'adresse du navigateur qui s'ouvre lorsque le bouton est cliqué. La fenêtre contextuelle est définie dans un document HTML qui gère l'interaction de l'utilisateur.

+
Elément du menu contextuel +

Les éléments de menu, les cases à cocher et les boutons radio sur un ou plusieurs des menus contextuels du navigateur. En outre, les menus peuvent être structurés en ajoutant des séparateurs. Lorsque les éléments du menu sont cliqués, un événement est envoyé à l'extension.

+
Barre latérale +

Un document HTML s'affiche à côté d'une page Web, avec l'option de contenu unique par page. La barre latérale s'ouvre lorsque l'extension est installée, puis obéit à la sélection de visibilité de la barre latérale de l'utilisateur. L'interaction de l'utilisateur dans la barre latérale est traitée par son document HTML.

+
page d'options +

Une page qui vous permet de définir les préférences pour votre WebExtension que vos utilisateurs peuvent modifier. L'utilisateur peut accéder à cette page dans le gestionnaire des extensions du navigateur.

+
Extension pages +

Utilisez les pages Web incluses dans votre WebExtension pour fournir des formulaires, de l'aide ou tout autre contenu requis, dans les fenêtres ou les onglets.

+
Notifications +

Notifications transitoires affichées à l'utilisateur par le mécanisme de notification du système d'exploitation sous-jacent. Déclenche un événement vers l'extension lorsque l'utilisateur clique sur une notification ou lorsque une notification se ferme (automatiquement ou à la demande de l'utilisateur).

+
Suggestions de la barre d'addresse +

Offrez des suggestions de barèmes d'adresses personnalisées lorsque l'utilisateur entre un mot-clé.

+
Panneaux d'outils de développement +

Un onglet avec un document HTML associé qui s'affiche dans les outils de développement du navigateur.

+
+ +

Les guides pratiques suivants fournissent des conseils étape par étape pour créer certaines options d'interface utilisateur:

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/notifications/index.html b/files/fr/mozilla/add-ons/webextensions/user_interface/notifications/index.html deleted file mode 100644 index e0106d3b7d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_interface/notifications/index.html +++ /dev/null @@ -1,50 +0,0 @@ ---- -title: Notifications -slug: Mozilla/Add-ons/WebExtensions/user_interface/Notifications -tags: - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Notifications ---- -
{{AddonSidebar}}
- -

Les notifications vous permettent d'afficher des informations sur votre extension ou son contenu en utilisant le système d'exploitation sous-jacent.

- -

-Les notifications peuvent inclure un appel d'action pour l'utilisateur, et votre extension peut écouter l'utilisateur en cliquant sur la notification ou la fermeture de la notification. - -

Spécification des notifications

- -

Vous gérez les notifications en programmant, en utilisant l'API {{WebExtAPIRef("notifications")}}. Pour utiliser cette API, vous devez demander la permission de notification dans votre manifest.json :

- -
"permissions": ["notifications"]
- -

Vous utilisez ensuite {{WebExtAPIRef("notifications.create")}} pour créer vos notifications, comme dans cet exemple de notify-link-clicks-i18n :

- -
var title = browser.i18n.getMessage("notificationTitle");
-var content = browser.i18n.getMessage("notificationContent", message.url);
-browser.notifications.create({
-  "type": "basic",
-  "iconUrl": browser.extension.getURL("icons/link-48.png"),
-  "title": title,
-  "message": content
-});
- -

Ce code crée une notification avec un icône, un titre et un message.

- -

Si la notification inclut un appel à l'action, vous pouvez écouter l'utilisateur en cliquant sur la notification pour appeler la fonction pour gérer l'action:

- -
browser.notifications.onClicked.addListener(handleClick);
- -

Si vous émettez des appels à l'action par le biais de notifications, vous souhaitez également définir l'ID de notification facultatif, afin de déterminer quel appel à l'action a sélectionné.

- -

Icônes

- -

Pour plus d'informations sur la création d'icônes à utiliser avec votre notification, reportez-vous à la section Iconography dans la documentation Photon Design System.

- -

Exemples

- -

Le dépôt webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilise la création de notifications :

- - \ No newline at end of file diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/notifications/index.md b/files/fr/mozilla/add-ons/webextensions/user_interface/notifications/index.md new file mode 100644 index 0000000000..e0106d3b7d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_interface/notifications/index.md @@ -0,0 +1,50 @@ +--- +title: Notifications +slug: Mozilla/Add-ons/WebExtensions/user_interface/Notifications +tags: + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Notifications +--- +
{{AddonSidebar}}
+ +

Les notifications vous permettent d'afficher des informations sur votre extension ou son contenu en utilisant le système d'exploitation sous-jacent.

+ +

+Les notifications peuvent inclure un appel d'action pour l'utilisateur, et votre extension peut écouter l'utilisateur en cliquant sur la notification ou la fermeture de la notification. + +

Spécification des notifications

+ +

Vous gérez les notifications en programmant, en utilisant l'API {{WebExtAPIRef("notifications")}}. Pour utiliser cette API, vous devez demander la permission de notification dans votre manifest.json :

+ +
"permissions": ["notifications"]
+ +

Vous utilisez ensuite {{WebExtAPIRef("notifications.create")}} pour créer vos notifications, comme dans cet exemple de notify-link-clicks-i18n :

+ +
var title = browser.i18n.getMessage("notificationTitle");
+var content = browser.i18n.getMessage("notificationContent", message.url);
+browser.notifications.create({
+  "type": "basic",
+  "iconUrl": browser.extension.getURL("icons/link-48.png"),
+  "title": title,
+  "message": content
+});
+ +

Ce code crée une notification avec un icône, un titre et un message.

+ +

Si la notification inclut un appel à l'action, vous pouvez écouter l'utilisateur en cliquant sur la notification pour appeler la fonction pour gérer l'action:

+ +
browser.notifications.onClicked.addListener(handleClick);
+ +

Si vous émettez des appels à l'action par le biais de notifications, vous souhaitez également définir l'ID de notification facultatif, afin de déterminer quel appel à l'action a sélectionné.

+ +

Icônes

+ +

Pour plus d'informations sur la création d'icônes à utiliser avec votre notification, reportez-vous à la section Iconography dans la documentation Photon Design System.

+ +

Exemples

+ +

Le dépôt webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilise la création de notifications :

+ + \ No newline at end of file diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/omnibox/index.html b/files/fr/mozilla/add-ons/webextensions/user_interface/omnibox/index.html deleted file mode 100644 index 4419f2465b..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_interface/omnibox/index.html +++ /dev/null @@ -1,75 +0,0 @@ ---- -title: Suggestions de la barre d'adresse -slug: Mozilla/Add-ons/WebExtensions/user_interface/Omnibox -tags: - - User Interface - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Omnibox ---- -
{{AddonSidebar()}}
- -

En utilisant l'API {{WebExtAPIRef("omnibox")}}, WebExtensions peut personnaliser les suggestions proposées dans la liste déroulante de la barre d'adresse du navigateur lorsque l'utilisateur entre un mot-clé.

- -

- -

Cela permet à votre extension, par exemple, de rechercher une bibliothèque d'ebooks gratuits ou comme dans l'exemple ci-dessus, un dépôt d'exemples de code.

- -

Spécification de la personnalisation Omnibox

- -

Vous dites à votre extension qu'il va personnaliser les suggestions de la barre d'adresse en incluant la clé omnibox et la définition du mot-clé de déclenchement dans son fichier manifest.json :

- -
  "omnibox": { "keyword" : "cs" }
- -

Dans le fichier JavaScript d'arrière-plan extension, en utilisant {{WebExtAPIRef("omnibox.setDefaultSuggestion()")}}, vous pouvez éventuellement définir la première suggestion à afficher dans la liste déroulante de la barre d'adresse. Utilisez ceci pour donner un indice sur l'utilisation de la fonction :

- -
browser.omnibox.setDefaultSuggestion({
-  description: `Search the firefox codebase
-    (e.g. "hello world" | "path:omnibox.js onInputChanged")`
-});
- - -

Vous pouvez ensuite ajouter le code pour fournir le contenu personnalisé en écoutant  {{WebExtAPIRef("omnibox.onInputStarted")}}, qui est envoyé lorsque l'utilisateur a tapé le mot-clé et un espace, et  {{WebExtAPIRef("omnibox.onInputChanged")}}, qui est expédié chaque fois que l'utilisateur met à jour l'entrée de la barre d'adresse. Vous pouvez ensuite remplir les suggestions, dans ce cas, créer une recherche de https://searchfox.org/mozilla-central utilisant le terme entré par l'utilisateur :

- -
browser.omnibox.onInputChanged.addListener((text, addSuggestions) => {
-  let headers = new Headers({"Accept": "application/json"});
-  let init = {method: 'GET', headers};
-  let url = buildSearchURL(text);
-  let request = new Request(url, init);
-
-  fetch(request)
-    .then(createSuggestionsFromResponse)
-    .then(addSuggestions);
-});
- -

Si la WebExtension définit une suggestion par défaut en utilisant {{WebExtAPIRef("omnibox.setDefaultSuggestion()")}}, alors cela apparaîtra en premier dans la liste déroulante.

- - -

L'extension peut ensuite écouter l'utilisateur en cliquant sur l'une des suggestions, en utilisant {{WebExtAPIRef("omnibox.onInputEntered")}}. Si la suggestion par défaut est cliquée, le terme personnalisé de l'utilisateur est renvoyé, sinon la chaîne de la suggestion est renvoyée. En outre, les informations sur les préférences du navigateur de l'utilisateur pour la gestion des nouveaux liens sont transmises. Dans le code ci-dessous, le terme personnalisé de l'utilisateur est employé pour créer une recherche différente, l'URL suggérée est ouverte:

- -
browser.omnibox.onInputEntered.addListener((text, disposition) => {
-  let url = text;
-  if (!text.startsWith(SOURCE_URL)) {
-    // Update the url if the user clicks on the default suggestion.
-    url = `${SEARCH_URL}?q=${text}`;
-  }
-  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;
-  }
-});
- - -

Exemples

- -

Le depot webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilise la personnalisation de omnibox

- - \ No newline at end of file diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/omnibox/index.md b/files/fr/mozilla/add-ons/webextensions/user_interface/omnibox/index.md new file mode 100644 index 0000000000..4419f2465b --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_interface/omnibox/index.md @@ -0,0 +1,75 @@ +--- +title: Suggestions de la barre d'adresse +slug: Mozilla/Add-ons/WebExtensions/user_interface/Omnibox +tags: + - User Interface + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Omnibox +--- +
{{AddonSidebar()}}
+ +

En utilisant l'API {{WebExtAPIRef("omnibox")}}, WebExtensions peut personnaliser les suggestions proposées dans la liste déroulante de la barre d'adresse du navigateur lorsque l'utilisateur entre un mot-clé.

+ +

+ +

Cela permet à votre extension, par exemple, de rechercher une bibliothèque d'ebooks gratuits ou comme dans l'exemple ci-dessus, un dépôt d'exemples de code.

+ +

Spécification de la personnalisation Omnibox

+ +

Vous dites à votre extension qu'il va personnaliser les suggestions de la barre d'adresse en incluant la clé omnibox et la définition du mot-clé de déclenchement dans son fichier manifest.json :

+ +
  "omnibox": { "keyword" : "cs" }
+ +

Dans le fichier JavaScript d'arrière-plan extension, en utilisant {{WebExtAPIRef("omnibox.setDefaultSuggestion()")}}, vous pouvez éventuellement définir la première suggestion à afficher dans la liste déroulante de la barre d'adresse. Utilisez ceci pour donner un indice sur l'utilisation de la fonction :

+ +
browser.omnibox.setDefaultSuggestion({
+  description: `Search the firefox codebase
+    (e.g. "hello world" | "path:omnibox.js onInputChanged")`
+});
+ + +

Vous pouvez ensuite ajouter le code pour fournir le contenu personnalisé en écoutant  {{WebExtAPIRef("omnibox.onInputStarted")}}, qui est envoyé lorsque l'utilisateur a tapé le mot-clé et un espace, et  {{WebExtAPIRef("omnibox.onInputChanged")}}, qui est expédié chaque fois que l'utilisateur met à jour l'entrée de la barre d'adresse. Vous pouvez ensuite remplir les suggestions, dans ce cas, créer une recherche de https://searchfox.org/mozilla-central utilisant le terme entré par l'utilisateur :

+ +
browser.omnibox.onInputChanged.addListener((text, addSuggestions) => {
+  let headers = new Headers({"Accept": "application/json"});
+  let init = {method: 'GET', headers};
+  let url = buildSearchURL(text);
+  let request = new Request(url, init);
+
+  fetch(request)
+    .then(createSuggestionsFromResponse)
+    .then(addSuggestions);
+});
+ +

Si la WebExtension définit une suggestion par défaut en utilisant {{WebExtAPIRef("omnibox.setDefaultSuggestion()")}}, alors cela apparaîtra en premier dans la liste déroulante.

+ + +

L'extension peut ensuite écouter l'utilisateur en cliquant sur l'une des suggestions, en utilisant {{WebExtAPIRef("omnibox.onInputEntered")}}. Si la suggestion par défaut est cliquée, le terme personnalisé de l'utilisateur est renvoyé, sinon la chaîne de la suggestion est renvoyée. En outre, les informations sur les préférences du navigateur de l'utilisateur pour la gestion des nouveaux liens sont transmises. Dans le code ci-dessous, le terme personnalisé de l'utilisateur est employé pour créer une recherche différente, l'URL suggérée est ouverte:

+ +
browser.omnibox.onInputEntered.addListener((text, disposition) => {
+  let url = text;
+  if (!text.startsWith(SOURCE_URL)) {
+    // Update the url if the user clicks on the default suggestion.
+    url = `${SEARCH_URL}?q=${text}`;
+  }
+  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;
+  }
+});
+ + +

Exemples

+ +

Le depot webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilise la personnalisation de omnibox

+ + \ No newline at end of file diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/options_pages/index.html b/files/fr/mozilla/add-ons/webextensions/user_interface/options_pages/index.html deleted file mode 100644 index 6b38ccb5aa..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_interface/options_pages/index.html +++ /dev/null @@ -1,71 +0,0 @@ ---- -title: Options page -slug: Mozilla/Add-ons/WebExtensions/user_interface/Options_pages -tags: - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Options_pages ---- -
{{AddonSidebar}}
- -
-

Une page Option vous permet de définir des préférences pour votre WebExtension que vos utilisateurs peuvent modifier. Les utilisateurs peuvent accéder à la page d'options de l'extension à partir du gestionnaire des add-ons du navigateur:

- -

{{EmbedYouTube("eODy24csH5M")}}

- -

La façon dont les utilisateurs accèdent à la page et la manière dont elle est intégrée à l'interface utilisateur du navigateur varient d'un navigateur à l'autre.

- -

Vous pouvez ouvrir la page en programmant en appelant  runtime.openOptionsPage().

- -

Les pages d'options ont une politique de sécurité de contenu qui restreint les sources à partir de laquelle elles peuvent charger des ressources et interdit certaines pratiques dangereuses telles que l'utilisation eval(). Voir la politique de sécurité de contenu pour plus de détails.

- -

Spécification de la page d'options

- -

Pour créer une page d'options, écrivez un fichier HTML définissant la page. Cette page peut inclure des fichiers CSS et JavaScript, comme une page Web normale. Cette page, contine un exemple dans favourite-colour, comprend un fichier :

- -
<!DOCTYPE html>
-
-<html>
-  <head>
-    <meta charset="utf-8" />
-  </head>
-
-<body>
-  <form>
-      <label>Favourite colour</label>
-      <input type="text" id="colour" >
-      <button type="submit">Save</button>
-  </form>
-  <script src="options.js"></script>
-</body>
-
-</html>
- -

JavaScript en cours d'exécution dans la page peut utiliser toutes les APIs des WebExtension auxquelles l'extension a des permissions. En particulier, vous pouvez utiliser l'API storage pour conserver les préférences.

- -

Insérez les fichiers de la page dans votre extension.

- -

Vous devez également inclure une clé options_ui dans votre fichier manifest.json, en lui donnant l'URL de la page.

- -
"options_ui": {
-  "page": "options.html",
-  "browser_style": true
-},
- -
-

Note: Google Chrome et Opera utilisent chrome_style au lieu de browser_style, donc si vous souhaitez les prendre en charge, vous devez ajouter les deux clés.

-
- -

Voir la page options_ui pour les options de partage entre votre page d'options et les scripts d'arrière-plan ou de contenu.

- -

Options de conception de contenu

- -

Pour plus de détails sur la façon de concevoir le contenu de vos options en fonction du style de Firefox, voir le system de conception Photon et les styles de navigateur documentation.

- -

Exemples

- -

Le depot webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilisent les options de page :

- - -
diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/options_pages/index.md b/files/fr/mozilla/add-ons/webextensions/user_interface/options_pages/index.md new file mode 100644 index 0000000000..6b38ccb5aa --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_interface/options_pages/index.md @@ -0,0 +1,71 @@ +--- +title: Options page +slug: Mozilla/Add-ons/WebExtensions/user_interface/Options_pages +tags: + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Options_pages +--- +
{{AddonSidebar}}
+ +
+

Une page Option vous permet de définir des préférences pour votre WebExtension que vos utilisateurs peuvent modifier. Les utilisateurs peuvent accéder à la page d'options de l'extension à partir du gestionnaire des add-ons du navigateur:

+ +

{{EmbedYouTube("eODy24csH5M")}}

+ +

La façon dont les utilisateurs accèdent à la page et la manière dont elle est intégrée à l'interface utilisateur du navigateur varient d'un navigateur à l'autre.

+ +

Vous pouvez ouvrir la page en programmant en appelant  runtime.openOptionsPage().

+ +

Les pages d'options ont une politique de sécurité de contenu qui restreint les sources à partir de laquelle elles peuvent charger des ressources et interdit certaines pratiques dangereuses telles que l'utilisation eval(). Voir la politique de sécurité de contenu pour plus de détails.

+ +

Spécification de la page d'options

+ +

Pour créer une page d'options, écrivez un fichier HTML définissant la page. Cette page peut inclure des fichiers CSS et JavaScript, comme une page Web normale. Cette page, contine un exemple dans favourite-colour, comprend un fichier :

+ +
<!DOCTYPE html>
+
+<html>
+  <head>
+    <meta charset="utf-8" />
+  </head>
+
+<body>
+  <form>
+      <label>Favourite colour</label>
+      <input type="text" id="colour" >
+      <button type="submit">Save</button>
+  </form>
+  <script src="options.js"></script>
+</body>
+
+</html>
+ +

JavaScript en cours d'exécution dans la page peut utiliser toutes les APIs des WebExtension auxquelles l'extension a des permissions. En particulier, vous pouvez utiliser l'API storage pour conserver les préférences.

+ +

Insérez les fichiers de la page dans votre extension.

+ +

Vous devez également inclure une clé options_ui dans votre fichier manifest.json, en lui donnant l'URL de la page.

+ +
"options_ui": {
+  "page": "options.html",
+  "browser_style": true
+},
+ +
+

Note: Google Chrome et Opera utilisent chrome_style au lieu de browser_style, donc si vous souhaitez les prendre en charge, vous devez ajouter les deux clés.

+
+ +

Voir la page options_ui pour les options de partage entre votre page d'options et les scripts d'arrière-plan ou de contenu.

+ +

Options de conception de contenu

+ +

Pour plus de détails sur la façon de concevoir le contenu de vos options en fonction du style de Firefox, voir le system de conception Photon et les styles de navigateur documentation.

+ +

Exemples

+ +

Le depot webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilisent les options de page :

+ + +
diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/page_actions/index.html b/files/fr/mozilla/add-ons/webextensions/user_interface/page_actions/index.html deleted file mode 100644 index 843266e618..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_interface/page_actions/index.html +++ /dev/null @@ -1,109 +0,0 @@ ---- -title: Bouton de la barre d'adresse -slug: Mozilla/Add-ons/WebExtensions/user_interface/Page_actions -tags: - - AddresseBarButton - - Page Action - - User Interface - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Page_actions ---- -
{{AddonSidebar}}
- -

Généralement appelée action de page, cette option d'interface utilisateur est un bouton ajouté à la barre d'adresse du navigateur. Les utilisateurs cliquent sur le bouton pour interagir avec votre extension.

- -

- -

Actions de pages et actions du navigateur

- -

Le bouton de la barre d'adresse (ou action de la page) est très semblable au bouton de la barre d'outils (ou action du navigateur).

- -

Les différences sont :

- - - -

Utilisez une action de page lorsque l'action est liée à la page en cours, et une action navigateur lorsque l'action est liée au navigateur dans son ensemble ou à trop de pages. Par exemple :

- - - - - - - - - - - - - - - - - - - - - - - - -
TypeBookmarks actionContent actionTabs operation
page actionBookmark this pageReddit enhancementSend tab
browser actionShow all bookmarksEnable ad-blockingSync all open tabs
- - - -

Spécification de l'action de la page

- -

Vous définissez les propriétés de la clé de l'action de page dans le manifest.json:

- -
"page_action": {
-  "browser_style": true,
-  "default_icon": {
-    "19": "button/geo-19.png",
-    "38": "button/geo-38.png"
-  },
-  "default_title": "Whereami?",
-}
- -

La seule clé obligatoire est default_icon.

- -

Il y a deux façons de spécifier une action de page : avec ou sans popup.

- - - -

Notez que votre extension ne peut avoir qu'une seule page action.

- -

Vous pouvez modifier l'une des propriétés d'action de la page de manière programmée en utilisant l'API de la pageAction.

- -

Icônes

- -

Pour plus de détails sur la création d'icônes à utiliser avec l'action de votre page, voir   Iconography dans la documentation du Photon Design System.

- - - -

Exemples

- -

Le dépôt webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilisent la page action :

- - diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/page_actions/index.md b/files/fr/mozilla/add-ons/webextensions/user_interface/page_actions/index.md new file mode 100644 index 0000000000..843266e618 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_interface/page_actions/index.md @@ -0,0 +1,109 @@ +--- +title: Bouton de la barre d'adresse +slug: Mozilla/Add-ons/WebExtensions/user_interface/Page_actions +tags: + - AddresseBarButton + - Page Action + - User Interface + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Page_actions +--- +
{{AddonSidebar}}
+ +

Généralement appelée action de page, cette option d'interface utilisateur est un bouton ajouté à la barre d'adresse du navigateur. Les utilisateurs cliquent sur le bouton pour interagir avec votre extension.

+ +

+ +

Actions de pages et actions du navigateur

+ +

Le bouton de la barre d'adresse (ou action de la page) est très semblable au bouton de la barre d'outils (ou action du navigateur).

+ +

Les différences sont :

+ + + +

Utilisez une action de page lorsque l'action est liée à la page en cours, et une action navigateur lorsque l'action est liée au navigateur dans son ensemble ou à trop de pages. Par exemple :

+ + + + + + + + + + + + + + + + + + + + + + + + +
TypeBookmarks actionContent actionTabs operation
page actionBookmark this pageReddit enhancementSend tab
browser actionShow all bookmarksEnable ad-blockingSync all open tabs
+ + + +

Spécification de l'action de la page

+ +

Vous définissez les propriétés de la clé de l'action de page dans le manifest.json:

+ +
"page_action": {
+  "browser_style": true,
+  "default_icon": {
+    "19": "button/geo-19.png",
+    "38": "button/geo-38.png"
+  },
+  "default_title": "Whereami?",
+}
+ +

La seule clé obligatoire est default_icon.

+ +

Il y a deux façons de spécifier une action de page : avec ou sans popup.

+ + + +

Notez que votre extension ne peut avoir qu'une seule page action.

+ +

Vous pouvez modifier l'une des propriétés d'action de la page de manière programmée en utilisant l'API de la pageAction.

+ +

Icônes

+ +

Pour plus de détails sur la création d'icônes à utiliser avec l'action de votre page, voir   Iconography dans la documentation du Photon Design System.

+ + + +

Exemples

+ +

Le dépôt webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilisent la page action :

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/popups/index.html b/files/fr/mozilla/add-ons/webextensions/user_interface/popups/index.html deleted file mode 100644 index eca8a96e38..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_interface/popups/index.html +++ /dev/null @@ -1,62 +0,0 @@ ---- -title: Popups -slug: Mozilla/Add-ons/WebExtensions/user_interface/Popups -tags: - - WebExtensions - - interface utilisateur -translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Popups ---- -
{{AddonSidebar}}
- -
-

Une fenêtre contextuelle est une boîte de dialogue associée à un bouton de la barre d'outils ou à un bouton de la barre d'adresse. Cette page décrit les popups en général, leur spécification, leur débogage, leur redimensionnement et leur conception, ainsi que des exemples d'utilisation..

- -

- -

Lorsque l'utilisateur clique sur le bouton, la fenêtre contextuelle s'affiche. Lorsque l'utilisateur clique n'importe où en dehors de la fenêtre contextuelle, la fenêtre contextuelle est fermée. La fenêtre contextuelle peut être fermée par programmation en appelant window.close() à partir d'un script exécuté dans la fenêtre contextuelle. Cependant, vous ne pouvez pas ouvrir le menu contextuel à partir d'un JavaScript de le l'extension : il ne peut être ouvert qu'en réponse à une action de l'utilisateur.

- -

Vous pouvez définir un raccourci clavier qui ouvre la fenêtre contextuelle en utilisant les raccourcis "_execute_browser_action" et "_execute_page_action". Consultez la clé de commande de la documentation du manifest.json.

- -

Spécification d'une fenêtre contextuelle

- -

Le popup est spécifié comme un fichier HTML, qui peut inclure des fichiers CSS et JavaScript, comme le fait une page Web normale. Contrairement à une page normale, le JavaScript peut utiliser toutes les APIs WebExtension auxquelles l'extension possède des permissions.

- -

Le fichier HTML est inclus dans la WebExtension et spécifié en partie à la clé browser_action ou page_action par "default_popup" dans le manifest.json :

- -
  "browser_action": {
-    "default_icon": "icons/beasts-32.png",
-    "default_title": "Beastify",
-    "default_popup": "popup/choose_beast.html"
-  }
- -

Vous pouvez demander au navigateur d'inclure une feuille de style dans votre fenêtre contextuelle qui la rendra compatible avec l'interface utilisateur du navigateur. Pour ce faire, ajoutez "browser_style": true dans la clé browser_action ou page_action.

- -

Les popups ont une politique de sécurité de contenu qui restreint les sources à partir de laquelle ils peuvent charger des ressources et interdire certaines pratiques dangereuses telles que l'utilisation eval(). Voir la politique de sécurité du contenu  pour plus de détails à ce sujet.

- -

Déboguer des fenêtres pop-up

- -

Vous pouvez déboguer la balisage et le javaScript d'un popup en utilisant le débogueur de l'extension, mais vous devrez activer la fonction désactiver de la fonction d'occlusion automatique contextuelle pour éviter que les fenêtres contextuelles ne se cache lorsque vous cliquez à l'extérieur. En savoir plus sur le débogage des fenêtres pop-up.

- -

Redimensionnement contextuel

- -

Le redimensionnement automatique des fenêtres contextuelles correspond à leur contenu.
- L'algorithme pour cela peut être différent d'un navigateur à l'autre.

- -

Dans Firefox, la taille est calculée juste avant que le popup ne s'affiche, et au plus, 10 fois par seconde après les mutations DOM. Pour les documents de mode strict, la taille est calculée en fonction de la taille de l'élément <body>.

- -

Pour le mode quirks, c'est l'élément <html>. Firefox calcule la largeur préférée du contenu de cet élément, le renvoie à cette largeur, puis redimensionne de sorte qu'il n'y a pas de défilement vertical. Il atteindra une taille de 800x600 pixels au maximum si cela correspond à l'écran de l'utilisateur. (Avant Firefox 60, c'était seulement 680px.) . Si l'utilisateur déplace le bouton du complément dans le menu ou il apparaît dans le dépassement de la barre d'outils, la fenêtre apparaît dans le panneau du menu avec une largeur fixe.

- -

Dans Firefox Android 57, la popup s'ouvre comme une page web dans un nouvel onglet.

- -

Design de la popup

- -

Pour plus de détails sur la façon de concevoir la page Web de votre popup pour qu'elle corresponde au style de Firefox, voir la documentation de Photon Design System.

- -

Exemples

- -

Le dépôt webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilisent l'action du navigateur :

- - -
diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/popups/index.md b/files/fr/mozilla/add-ons/webextensions/user_interface/popups/index.md new file mode 100644 index 0000000000..eca8a96e38 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_interface/popups/index.md @@ -0,0 +1,62 @@ +--- +title: Popups +slug: Mozilla/Add-ons/WebExtensions/user_interface/Popups +tags: + - WebExtensions + - interface utilisateur +translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Popups +--- +
{{AddonSidebar}}
+ +
+

Une fenêtre contextuelle est une boîte de dialogue associée à un bouton de la barre d'outils ou à un bouton de la barre d'adresse. Cette page décrit les popups en général, leur spécification, leur débogage, leur redimensionnement et leur conception, ainsi que des exemples d'utilisation..

+ +

+ +

Lorsque l'utilisateur clique sur le bouton, la fenêtre contextuelle s'affiche. Lorsque l'utilisateur clique n'importe où en dehors de la fenêtre contextuelle, la fenêtre contextuelle est fermée. La fenêtre contextuelle peut être fermée par programmation en appelant window.close() à partir d'un script exécuté dans la fenêtre contextuelle. Cependant, vous ne pouvez pas ouvrir le menu contextuel à partir d'un JavaScript de le l'extension : il ne peut être ouvert qu'en réponse à une action de l'utilisateur.

+ +

Vous pouvez définir un raccourci clavier qui ouvre la fenêtre contextuelle en utilisant les raccourcis "_execute_browser_action" et "_execute_page_action". Consultez la clé de commande de la documentation du manifest.json.

+ +

Spécification d'une fenêtre contextuelle

+ +

Le popup est spécifié comme un fichier HTML, qui peut inclure des fichiers CSS et JavaScript, comme le fait une page Web normale. Contrairement à une page normale, le JavaScript peut utiliser toutes les APIs WebExtension auxquelles l'extension possède des permissions.

+ +

Le fichier HTML est inclus dans la WebExtension et spécifié en partie à la clé browser_action ou page_action par "default_popup" dans le manifest.json :

+ +
  "browser_action": {
+    "default_icon": "icons/beasts-32.png",
+    "default_title": "Beastify",
+    "default_popup": "popup/choose_beast.html"
+  }
+ +

Vous pouvez demander au navigateur d'inclure une feuille de style dans votre fenêtre contextuelle qui la rendra compatible avec l'interface utilisateur du navigateur. Pour ce faire, ajoutez "browser_style": true dans la clé browser_action ou page_action.

+ +

Les popups ont une politique de sécurité de contenu qui restreint les sources à partir de laquelle ils peuvent charger des ressources et interdire certaines pratiques dangereuses telles que l'utilisation eval(). Voir la politique de sécurité du contenu  pour plus de détails à ce sujet.

+ +

Déboguer des fenêtres pop-up

+ +

Vous pouvez déboguer la balisage et le javaScript d'un popup en utilisant le débogueur de l'extension, mais vous devrez activer la fonction désactiver de la fonction d'occlusion automatique contextuelle pour éviter que les fenêtres contextuelles ne se cache lorsque vous cliquez à l'extérieur. En savoir plus sur le débogage des fenêtres pop-up.

+ +

Redimensionnement contextuel

+ +

Le redimensionnement automatique des fenêtres contextuelles correspond à leur contenu.
+ L'algorithme pour cela peut être différent d'un navigateur à l'autre.

+ +

Dans Firefox, la taille est calculée juste avant que le popup ne s'affiche, et au plus, 10 fois par seconde après les mutations DOM. Pour les documents de mode strict, la taille est calculée en fonction de la taille de l'élément <body>.

+ +

Pour le mode quirks, c'est l'élément <html>. Firefox calcule la largeur préférée du contenu de cet élément, le renvoie à cette largeur, puis redimensionne de sorte qu'il n'y a pas de défilement vertical. Il atteindra une taille de 800x600 pixels au maximum si cela correspond à l'écran de l'utilisateur. (Avant Firefox 60, c'était seulement 680px.) . Si l'utilisateur déplace le bouton du complément dans le menu ou il apparaît dans le dépassement de la barre d'outils, la fenêtre apparaît dans le panneau du menu avec une largeur fixe.

+ +

Dans Firefox Android 57, la popup s'ouvre comme une page web dans un nouvel onglet.

+ +

Design de la popup

+ +

Pour plus de détails sur la façon de concevoir la page Web de votre popup pour qu'elle corresponde au style de Firefox, voir la documentation de Photon Design System.

+ +

Exemples

+ +

Le dépôt webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qui utilisent l'action du navigateur :

+ + +
diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/sidebars/index.html b/files/fr/mozilla/add-ons/webextensions/user_interface/sidebars/index.html deleted file mode 100644 index 11854f7eba..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/user_interface/sidebars/index.html +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: Barres laterales -slug: Mozilla/Add-ons/WebExtensions/user_interface/Sidebars -tags: - - WebExtensions - - barre latérale -translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Sidebars -original_slug: Mozilla/Add-ons/WebExtensions/user_interface/barres_laterales ---- -
{{AddonSidebar}}
- -

Une barre latérale est un volet qui s'affiche à gauche de la fenêtre du navigateur, à côté de la page Web. Cette page décrit les barres latérales, leur spécification, leur conception et des exemples d'utilisation.

- -

Le navigateur fournit une interface utilisateur (UI) qui permet à l'utilisateur de voir les barres latéraux actuellement disponibles et de sélectionner une barre latérale à afficher. Par exemple, Firefox a un menu "Affichage > Barre latérale". Une seule barre latérale peut être affichée à la fois, et cette barre latérale sera affichée pour tous les onglets et toutes les fenêtres du navigateur.

-Le navigateur peut inclure un certain nombre de barrières intégrées. Par exemple, Firefox inclut une barre latérale pour interagir avec les favoris: - -

En utilisant la clé sidebar_action du manifest.json, une extension peut ajouter sa propre barre latérale au navigateur. Il sera répertorié à côté des barrières intégrées, et l'utilisateur pourra l'ouvrir en utilisant le même mécanisme que pour les barres intégrés.

- -

Comme un popup d'action du navigateur, le contenu de la barre latérale est spécifié comme un document HTML. Lorsque l'utilisateur ouvre la barre latérale, son document de la barre latérale est chargé dans chaque fenêtre ouverte du navigateur. Chaque fenêtre possède sa propre instance du document. Lorsque de nouvelles fenêtres sont ouvertes, elles obtiennent également leurs propres documents de barre latérale.

- -

Un document pour un onglet particulier peut être défini en utilisant la fonction {{WebExtAPIRef("sidebarAction.setPanel()")}}. Une barre latérale peut comprendre quelle fenêtre elle appartient à l'utilisation de l'API  {{WebExtAPIRef("windows.getCurrent()")}} :

- -
// sidebar.js
-browser.windows.getCurrent({populate: true}).then((windowInfo) => {
-  myWindowId = windowInfo.id;
-});
- -

Ceci est utile si une barre latérale veut afficher différents contenus pour différentes fenêtres. Par exemple, regardez l'exemple "annotate-page".

- -

Les documents de la barre latérale ont accès au même priviléges que les API JavaScript d'arrière-plan et les scripts contextuels. Ils peuvent accéder directement à la page de fond en utilisant {{WebExtAPIRef("runtime.getBackgroundPage()")}}, et peuvent interagir avec des scripts de contenu ou des applications natives à l'aide d'API de messagerie comme {{WebExtAPIRef("tabs.sendMessage()")}} et  {{WebExtAPIRef("runtime.sendNativeMessage()")}}.

- -

Les documents de la barre latérale sont déchargés lorsque leur fenêtre de navigateur est fermée ou lorsque l'utilisateur ferme la barre latérale. Cela signifie que, contrairement aux pages de fond, les documents de la barre latérale ne restent pas chargés tout le temps, mais contrairement aux popups d'action du navigateur, ils restent chargés pendant que l'utilisateur interagit avec les pages Web.

- -

Lorsqu'une extension est installée comme une barre latérale, sa barre latérale s'ouvrira automatiquement. Ceci est destiné à aider l'utilisateur à comprendre que l'extension comprend une barre latérale. Notez qu'il n'est pas possible pour les add-ons d'ouvrir les barres latérales de façon programmée: les barrières latérales ne peuvent être ouvertes que par l'utilisateur.

- -

Spécification des barres latérales

- -

Pour spécifier une barre latérale, définissez le document par défaut avec la clé du manifest.json  sidebar_action, à côté d'un titre et d'une icône par défaut :

- -
"sidebar_action": {
-  "default_title": "My sidebar",
-  "default_panel": "sidebar.html",
-  "default_icon": "sidebar_icon.png"
-}
- -

Le titre, le panneau et l'icône peuvent être modifiés par programme en utilisant l'API {{WebExtAPIRef ("sidebarAction")}}.

- -

Le titre et l'icône sont affichés à l'utilisateur dans une interface utilisateur fournie par le navigateur pour lister les barres latérales, telles que "Affichage > Barre latérale" dans le menu Firefox.

- -

Concept de la barre latérale

- -

Pour plus de détails sur la façon de concevoir la page web d'une barre latérale pour qu'elle corresponde au style de Firefox, voir la documentation du Système de conception Photon.

- -

Exemple

- -

Le dépôt webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qu utilise une barre latérale:

- - diff --git a/files/fr/mozilla/add-ons/webextensions/user_interface/sidebars/index.md b/files/fr/mozilla/add-ons/webextensions/user_interface/sidebars/index.md new file mode 100644 index 0000000000..11854f7eba --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/user_interface/sidebars/index.md @@ -0,0 +1,60 @@ +--- +title: Barres laterales +slug: Mozilla/Add-ons/WebExtensions/user_interface/Sidebars +tags: + - WebExtensions + - barre latérale +translation_of: Mozilla/Add-ons/WebExtensions/user_interface/Sidebars +original_slug: Mozilla/Add-ons/WebExtensions/user_interface/barres_laterales +--- +
{{AddonSidebar}}
+ +

Une barre latérale est un volet qui s'affiche à gauche de la fenêtre du navigateur, à côté de la page Web. Cette page décrit les barres latérales, leur spécification, leur conception et des exemples d'utilisation.

+ +

Le navigateur fournit une interface utilisateur (UI) qui permet à l'utilisateur de voir les barres latéraux actuellement disponibles et de sélectionner une barre latérale à afficher. Par exemple, Firefox a un menu "Affichage > Barre latérale". Une seule barre latérale peut être affichée à la fois, et cette barre latérale sera affichée pour tous les onglets et toutes les fenêtres du navigateur.

+Le navigateur peut inclure un certain nombre de barrières intégrées. Par exemple, Firefox inclut une barre latérale pour interagir avec les favoris: + +

En utilisant la clé sidebar_action du manifest.json, une extension peut ajouter sa propre barre latérale au navigateur. Il sera répertorié à côté des barrières intégrées, et l'utilisateur pourra l'ouvrir en utilisant le même mécanisme que pour les barres intégrés.

+ +

Comme un popup d'action du navigateur, le contenu de la barre latérale est spécifié comme un document HTML. Lorsque l'utilisateur ouvre la barre latérale, son document de la barre latérale est chargé dans chaque fenêtre ouverte du navigateur. Chaque fenêtre possède sa propre instance du document. Lorsque de nouvelles fenêtres sont ouvertes, elles obtiennent également leurs propres documents de barre latérale.

+ +

Un document pour un onglet particulier peut être défini en utilisant la fonction {{WebExtAPIRef("sidebarAction.setPanel()")}}. Une barre latérale peut comprendre quelle fenêtre elle appartient à l'utilisation de l'API  {{WebExtAPIRef("windows.getCurrent()")}} :

+ +
// sidebar.js
+browser.windows.getCurrent({populate: true}).then((windowInfo) => {
+  myWindowId = windowInfo.id;
+});
+ +

Ceci est utile si une barre latérale veut afficher différents contenus pour différentes fenêtres. Par exemple, regardez l'exemple "annotate-page".

+ +

Les documents de la barre latérale ont accès au même priviléges que les API JavaScript d'arrière-plan et les scripts contextuels. Ils peuvent accéder directement à la page de fond en utilisant {{WebExtAPIRef("runtime.getBackgroundPage()")}}, et peuvent interagir avec des scripts de contenu ou des applications natives à l'aide d'API de messagerie comme {{WebExtAPIRef("tabs.sendMessage()")}} et  {{WebExtAPIRef("runtime.sendNativeMessage()")}}.

+ +

Les documents de la barre latérale sont déchargés lorsque leur fenêtre de navigateur est fermée ou lorsque l'utilisateur ferme la barre latérale. Cela signifie que, contrairement aux pages de fond, les documents de la barre latérale ne restent pas chargés tout le temps, mais contrairement aux popups d'action du navigateur, ils restent chargés pendant que l'utilisateur interagit avec les pages Web.

+ +

Lorsqu'une extension est installée comme une barre latérale, sa barre latérale s'ouvrira automatiquement. Ceci est destiné à aider l'utilisateur à comprendre que l'extension comprend une barre latérale. Notez qu'il n'est pas possible pour les add-ons d'ouvrir les barres latérales de façon programmée: les barrières latérales ne peuvent être ouvertes que par l'utilisateur.

+ +

Spécification des barres latérales

+ +

Pour spécifier une barre latérale, définissez le document par défaut avec la clé du manifest.json  sidebar_action, à côté d'un titre et d'une icône par défaut :

+ +
"sidebar_action": {
+  "default_title": "My sidebar",
+  "default_panel": "sidebar.html",
+  "default_icon": "sidebar_icon.png"
+}
+ +

Le titre, le panneau et l'icône peuvent être modifiés par programme en utilisant l'API {{WebExtAPIRef ("sidebarAction")}}.

+ +

Le titre et l'icône sont affichés à l'utilisateur dans une interface utilisateur fournie par le navigateur pour lister les barres latérales, telles que "Affichage > Barre latérale" dans le menu Firefox.

+ +

Concept de la barre latérale

+ +

Pour plus de détails sur la façon de concevoir la page web d'une barre latérale pour qu'elle corresponde au style de Firefox, voir la documentation du Système de conception Photon.

+ +

Exemple

+ +

Le dépôt webextensions-examples sur GitHub contient plusieurs exemples de WebExtensions qu utilise une barre latérale:

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/what_are_webextensions/index.html b/files/fr/mozilla/add-ons/webextensions/what_are_webextensions/index.html deleted file mode 100644 index 45dede25c1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/what_are_webextensions/index.html +++ /dev/null @@ -1,59 +0,0 @@ ---- -title: Qu'est-ce que les WebExtensions ? -slug: Mozilla/Add-ons/WebExtensions/What_are_WebExtensions -tags: - - Extensions - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/What_are_WebExtensions ---- -
{{AddonSidebar}}
- -

Une extension ajoute des fonctionnalités et des fonctions à un navigateur. Elle est créée en utilisant des technologies Web familière: HTML, CSS et JavaScript. Elle peut bénéficier des mêmes API Web que ce d'une page web où JavaScript est utilisée. Cependant, une extension a également accès à son propre ensemble d'API JavaScript. Cela signifie que vous pouvez faire beaucoup plus dans une extension que ce que vous pouvez faire dans une page Web. Voici quelques exemples de fonctionnalités d'extension possibles :

- -

Améliorer ou compléter un site web : Utiliser une extension pour ajouter de nouvelles fonctionnalités ou informations supplémentaires dans votre navigateur sur votre site Web. Permettre aux utilisateurs de collecter de l'information sur les pages qu'ils visitent pour améliorer le service que vous offrez.

- -

- -

Exemples: Amazon Assistant for Firefox, OneNote Web Clipper, and Grammarly for Firefox

- -

Laissez les utilisateurs montrer leur personnalité : Les extensions navigateur peuvent manipuler le contenu des pages web, par exemple en permettant aux utilisateurs d'ajouter leur logo ou leur image préférée en arrière-plan à chaque page qu'ils visitent.  Les extensions peuvent également permettre aux utilisateurs de mettre à jour l'apparence de l'interface utilisatrice Firefox, de la même manière que les add-ons de thème.

- -

- -

Exemples: MyWeb New Tab, Tabliss, et VivaldiFox

- -

Ajouter ou supprimer du contenu de pages web : vous pouvez aider les utilisateurs à bloquer les publicités intrusives sur les pages Web, à accéder à un guide de voyage chaque fois qu'un pays ou une ville est mentionné sur une page Web ou à reformater le contenu de la page. Avec la possibilité d'accéder et de mettre à jour le code HTML et CSS d'une page, vous pouvez aider les utilisateurs à voir le web comme ils le souhaitent.

- -

- -

Exemples : uBlock Origin, Reader, et Toolbox for Google Play Store™

- -

Ajout d'outils et de nouvelles fonctionnalités de navigation: Ajout de nouvelles fonctionnalités à un babillard ou générez des images de code QR à partir d'URLs, de liens hypertexte ou texte de page. Grâce aux options d'interface utilisatrice flexibles et à la puissance des APIs WebExtensions, vous pouvez facilement ajouter de nouvelles fonctionnalités à un navigateur. Vous pouvez aussi améliorer presque toutes les fonctionnalités d'un site web ou comment celles-ci sont utilisées même si ce n'est pas votre site Web.

- -

- -

Exemples: QR Code Image Generator, Swimlanes for Trello, et Tomato Clock

- -

Jeux : Offrir des jeux-vidéo traditionnels, avec des fonctionnalités de jeu hors ligne ou explorer de nouvelles possibilités de jeu. (Par exemple, en intégrant le jeu dans la navigation quotidienne.)

- -

- -

Exemples: Asteroids in Popup, Solitaire Card Game New Tab, et 2048 Prime.

- -

Ajouter des outils de développement : Il se peut que vous fournissez des outils de développement pour le Web dans le cadre de votre business. Il se pourrait que vous ayez développer des techniques efficaces de développement Web que vous désirez partager. Quelque soit votre situation, vous pouvez améliorer les outils de développement intégrés de Firefox en ajoutant un nouvel onglet à la barre d'outils du développeur.

- -

- -

Exemples: Web Developer, Web React Developer Tools, et aXe Developer Tools

- -

Les Extensions pour Firefox sont construites à l'aide d'APIs WebExtensions, un système multi-navigateur pour développer des extensions. De manière générale, L'API est compatible avec l' API d'extension de Google Chrome et Opera. Les extensions écrites pour ces navigateurs fonctionneraient dans la plupart des cas dans Firefox ou Microsoft Edge avec seulement quelques changements. L'API est également entièrement compatible avec Firefox multi-processus.

- -

Si vous avez des idées ou des questions, ou si vous avez besoin d'aide pour migrer un module complémentaire hérité vers les API WebExtensions, vous pouvez nous contacter via la  la mailing-liste dev-addons ou dans le room des add-ons sur Matrix.

- -

 Pour aller plus loin?

- - diff --git a/files/fr/mozilla/add-ons/webextensions/what_are_webextensions/index.md b/files/fr/mozilla/add-ons/webextensions/what_are_webextensions/index.md new file mode 100644 index 0000000000..45dede25c1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/what_are_webextensions/index.md @@ -0,0 +1,59 @@ +--- +title: Qu'est-ce que les WebExtensions ? +slug: Mozilla/Add-ons/WebExtensions/What_are_WebExtensions +tags: + - Extensions + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/What_are_WebExtensions +--- +
{{AddonSidebar}}
+ +

Une extension ajoute des fonctionnalités et des fonctions à un navigateur. Elle est créée en utilisant des technologies Web familière: HTML, CSS et JavaScript. Elle peut bénéficier des mêmes API Web que ce d'une page web où JavaScript est utilisée. Cependant, une extension a également accès à son propre ensemble d'API JavaScript. Cela signifie que vous pouvez faire beaucoup plus dans une extension que ce que vous pouvez faire dans une page Web. Voici quelques exemples de fonctionnalités d'extension possibles :

+ +

Améliorer ou compléter un site web : Utiliser une extension pour ajouter de nouvelles fonctionnalités ou informations supplémentaires dans votre navigateur sur votre site Web. Permettre aux utilisateurs de collecter de l'information sur les pages qu'ils visitent pour améliorer le service que vous offrez.

+ +

+ +

Exemples: Amazon Assistant for Firefox, OneNote Web Clipper, and Grammarly for Firefox

+ +

Laissez les utilisateurs montrer leur personnalité : Les extensions navigateur peuvent manipuler le contenu des pages web, par exemple en permettant aux utilisateurs d'ajouter leur logo ou leur image préférée en arrière-plan à chaque page qu'ils visitent.  Les extensions peuvent également permettre aux utilisateurs de mettre à jour l'apparence de l'interface utilisatrice Firefox, de la même manière que les add-ons de thème.

+ +

+ +

Exemples: MyWeb New Tab, Tabliss, et VivaldiFox

+ +

Ajouter ou supprimer du contenu de pages web : vous pouvez aider les utilisateurs à bloquer les publicités intrusives sur les pages Web, à accéder à un guide de voyage chaque fois qu'un pays ou une ville est mentionné sur une page Web ou à reformater le contenu de la page. Avec la possibilité d'accéder et de mettre à jour le code HTML et CSS d'une page, vous pouvez aider les utilisateurs à voir le web comme ils le souhaitent.

+ +

+ +

Exemples : uBlock Origin, Reader, et Toolbox for Google Play Store™

+ +

Ajout d'outils et de nouvelles fonctionnalités de navigation: Ajout de nouvelles fonctionnalités à un babillard ou générez des images de code QR à partir d'URLs, de liens hypertexte ou texte de page. Grâce aux options d'interface utilisatrice flexibles et à la puissance des APIs WebExtensions, vous pouvez facilement ajouter de nouvelles fonctionnalités à un navigateur. Vous pouvez aussi améliorer presque toutes les fonctionnalités d'un site web ou comment celles-ci sont utilisées même si ce n'est pas votre site Web.

+ +

+ +

Exemples: QR Code Image Generator, Swimlanes for Trello, et Tomato Clock

+ +

Jeux : Offrir des jeux-vidéo traditionnels, avec des fonctionnalités de jeu hors ligne ou explorer de nouvelles possibilités de jeu. (Par exemple, en intégrant le jeu dans la navigation quotidienne.)

+ +

+ +

Exemples: Asteroids in Popup, Solitaire Card Game New Tab, et 2048 Prime.

+ +

Ajouter des outils de développement : Il se peut que vous fournissez des outils de développement pour le Web dans le cadre de votre business. Il se pourrait que vous ayez développer des techniques efficaces de développement Web que vous désirez partager. Quelque soit votre situation, vous pouvez améliorer les outils de développement intégrés de Firefox en ajoutant un nouvel onglet à la barre d'outils du développeur.

+ +

+ +

Exemples: Web Developer, Web React Developer Tools, et aXe Developer Tools

+ +

Les Extensions pour Firefox sont construites à l'aide d'APIs WebExtensions, un système multi-navigateur pour développer des extensions. De manière générale, L'API est compatible avec l' API d'extension de Google Chrome et Opera. Les extensions écrites pour ces navigateurs fonctionneraient dans la plupart des cas dans Firefox ou Microsoft Edge avec seulement quelques changements. L'API est également entièrement compatible avec Firefox multi-processus.

+ +

Si vous avez des idées ou des questions, ou si vous avez besoin d'aide pour migrer un module complémentaire hérité vers les API WebExtensions, vous pouvez nous contacter via la  la mailing-liste dev-addons ou dans le room des add-ons sur Matrix.

+ +

 Pour aller plus loin?

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/what_next_/index.html b/files/fr/mozilla/add-ons/webextensions/what_next_/index.html deleted file mode 100644 index 88b5dbdb05..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/what_next_/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -title: Que faire ensuite ? -slug: Mozilla/Add-ons/WebExtensions/What_next_ -tags: - - Débutant - - Extensions - - WebExtension -translation_of: Mozilla/Add-ons/WebExtensions/What_next_ -original_slug: Mozilla/Add-ons/WebExtensions/que_faire_ensuite ---- -
{{AddonSidebar}}
- -

Vous serez maintenant prêt à commencer à transformer votre idée pour une extension de navigateur dans la réalité. Avant de commencer ce périple, ça vaut la peine d'être au courant de quelques choses  qui vous aides à en faire une.

- -

Vous pouvez trouver plus d'informations sur de nombreux sujets abordés sur cette page sur l'atelier d'extension, un site web dédié à vous aider à écrire, tester, publier et distribuer des extensions pour Firefox.

- -

Votre environnement de développement

- -

Vous n'avez pas besoin d'outils spéciaux de développement ou de création d'environnement pour créer des extensions de navigateur : il est tout à fait possible de créer de superbes extensions de navigateur avec un simple éditeur de texte. Cependant, vous avez peut-être développé pour le Web et avez un ensemble d'outils et un environnement que vous souhaitez réutiliser. Si vous le faites, vous devez être conscient de certaines choses.

- -

Si vous utilisez des outils de minimisation ou d'obscurcissement pour fournir votre code final, vous devez fournir votre code source au processus de révision AMO. De plus, les outils que vous utilisez — minification, obscurcissement et construction — doivent être open source (ou offrir une utilisation gratuite illimitée) et être disponible pour fonctionner sur l'ordinateur de l'utilisateur  (Windows, Mac, ou Linux). Malheureusement, nos réviseurs ne peuvent pas travailler avec des outils commerciaux ou basés sur le Web.

- -

En savoir plus sur les outils de développement sur l'atelier d'extensions

- -

Bibliothèques tierces

- -

Les bibliothèques tierces sont un excellent moyen d'ajouter rapidement des fonctionnalités ou fonctionnalités complexes aux extensions de votre navigateur. Lorsque vous soumettez une extension au processus de révision AMO, le processus considère également les bibliothèques tierces utilisées. Pour rationaliser la révision, assurez-vous de toujours télécharger des bibliothèques tierces à partir de leur site Web officiel ou référentiel, et si la bibliothèque est minifiée, fournissez un lien vers le code source. Veuillez noter que les bibliothèques tierces ne peuvent être modifiées d'aucune façon.

- -

En savoir plus sur la soumission du code source sur l'atelier d'extensions

- -

L'accord de distribution des modules complémentaires de   Firefox

- -

Les extensions de navigateur doivent être signées pour être installées dans les réalisations ou versions bêta de Firefox. La signature a lieu dans addons.mozilla.org (AMO) et est soumise aux termes et conditions du contrat de distribution de Firefox Add-on. L'objectif de l'accord est de garantir que les utilisateurs de Firefox aient accès à des modules complémentaires de qualité et bien supportés qui améliorent l'expérience de Firefox.

- -

Lire l'accord sur l'atelier d'extensions

- -

En savoir plus sur la signature de l'atelier extensions

- -

Le processus d'examen

- -

Lorsqu'une extension de navigateur est soumise à la signature, elle fait l'objet d'un examen automatisé. Il peut également faire l'objet d'un examen manuel lorsque l'examen automatisé détermine qu'un examen manuel est nécessaire. L'extension de votre navigateur ne sera pas signée tant qu'elle ne sera pas approuvée automatiquement et que sa signature sera révoquée si elle échoue à l'examen manuel. Le processus de révision suit un ensemble de directives strictes, il est donc facile de vérifier et d'éviter tout problème de révision probable.

- -

Consultez la politique de révision et les lignes directrices sur l'atelier d'extensions

- -

AMO a présenté des extensions de navigateur

- -

Si vous choisissez de lister l'extension de votre navigateur sur AMO, votre extension pourrait figurer sur le site Web d'AMO, dans le gestionnaire de modules complémentaires du navigateur Firefox ou ailleurs sur un site Web de Mozilla. Nous avons compilé une liste de directives sur la manière dont les extensions sont sélectionnées pour être mises en avant. En suivant ces directives, vous donnez à votre extension les meilleures chances d'être sélectionnée.

- -

En savoir plus sur la  façon de faire figurer vos modules complémentaires dans l'atelier d'extension

- -

Continuez votre expérience d'apprentissage

- -

Maintenant, vous savez ce qui nous attend, il est temps de plonger dans plus de détails sur le développement de l'extension du navigateur. Dans les sections suivantes, vous découvrirez :

- - - -

Vous voudrez également vous rendre à l'Atelier des extensions où vous trouverez tout ce que vous devez savoir sur la création d'extensions pour Firefox, notamment :

- - diff --git a/files/fr/mozilla/add-ons/webextensions/what_next_/index.md b/files/fr/mozilla/add-ons/webextensions/what_next_/index.md new file mode 100644 index 0000000000..88b5dbdb05 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/what_next_/index.md @@ -0,0 +1,73 @@ +--- +title: Que faire ensuite ? +slug: Mozilla/Add-ons/WebExtensions/What_next_ +tags: + - Débutant + - Extensions + - WebExtension +translation_of: Mozilla/Add-ons/WebExtensions/What_next_ +original_slug: Mozilla/Add-ons/WebExtensions/que_faire_ensuite +--- +
{{AddonSidebar}}
+ +

Vous serez maintenant prêt à commencer à transformer votre idée pour une extension de navigateur dans la réalité. Avant de commencer ce périple, ça vaut la peine d'être au courant de quelques choses  qui vous aides à en faire une.

+ +

Vous pouvez trouver plus d'informations sur de nombreux sujets abordés sur cette page sur l'atelier d'extension, un site web dédié à vous aider à écrire, tester, publier et distribuer des extensions pour Firefox.

+ +

Votre environnement de développement

+ +

Vous n'avez pas besoin d'outils spéciaux de développement ou de création d'environnement pour créer des extensions de navigateur : il est tout à fait possible de créer de superbes extensions de navigateur avec un simple éditeur de texte. Cependant, vous avez peut-être développé pour le Web et avez un ensemble d'outils et un environnement que vous souhaitez réutiliser. Si vous le faites, vous devez être conscient de certaines choses.

+ +

Si vous utilisez des outils de minimisation ou d'obscurcissement pour fournir votre code final, vous devez fournir votre code source au processus de révision AMO. De plus, les outils que vous utilisez — minification, obscurcissement et construction — doivent être open source (ou offrir une utilisation gratuite illimitée) et être disponible pour fonctionner sur l'ordinateur de l'utilisateur  (Windows, Mac, ou Linux). Malheureusement, nos réviseurs ne peuvent pas travailler avec des outils commerciaux ou basés sur le Web.

+ +

En savoir plus sur les outils de développement sur l'atelier d'extensions

+ +

Bibliothèques tierces

+ +

Les bibliothèques tierces sont un excellent moyen d'ajouter rapidement des fonctionnalités ou fonctionnalités complexes aux extensions de votre navigateur. Lorsque vous soumettez une extension au processus de révision AMO, le processus considère également les bibliothèques tierces utilisées. Pour rationaliser la révision, assurez-vous de toujours télécharger des bibliothèques tierces à partir de leur site Web officiel ou référentiel, et si la bibliothèque est minifiée, fournissez un lien vers le code source. Veuillez noter que les bibliothèques tierces ne peuvent être modifiées d'aucune façon.

+ +

En savoir plus sur la soumission du code source sur l'atelier d'extensions

+ +

L'accord de distribution des modules complémentaires de   Firefox

+ +

Les extensions de navigateur doivent être signées pour être installées dans les réalisations ou versions bêta de Firefox. La signature a lieu dans addons.mozilla.org (AMO) et est soumise aux termes et conditions du contrat de distribution de Firefox Add-on. L'objectif de l'accord est de garantir que les utilisateurs de Firefox aient accès à des modules complémentaires de qualité et bien supportés qui améliorent l'expérience de Firefox.

+ +

Lire l'accord sur l'atelier d'extensions

+ +

En savoir plus sur la signature de l'atelier extensions

+ +

Le processus d'examen

+ +

Lorsqu'une extension de navigateur est soumise à la signature, elle fait l'objet d'un examen automatisé. Il peut également faire l'objet d'un examen manuel lorsque l'examen automatisé détermine qu'un examen manuel est nécessaire. L'extension de votre navigateur ne sera pas signée tant qu'elle ne sera pas approuvée automatiquement et que sa signature sera révoquée si elle échoue à l'examen manuel. Le processus de révision suit un ensemble de directives strictes, il est donc facile de vérifier et d'éviter tout problème de révision probable.

+ +

Consultez la politique de révision et les lignes directrices sur l'atelier d'extensions

+ +

AMO a présenté des extensions de navigateur

+ +

Si vous choisissez de lister l'extension de votre navigateur sur AMO, votre extension pourrait figurer sur le site Web d'AMO, dans le gestionnaire de modules complémentaires du navigateur Firefox ou ailleurs sur un site Web de Mozilla. Nous avons compilé une liste de directives sur la manière dont les extensions sont sélectionnées pour être mises en avant. En suivant ces directives, vous donnez à votre extension les meilleures chances d'être sélectionnée.

+ +

En savoir plus sur la  façon de faire figurer vos modules complémentaires dans l'atelier d'extension

+ +

Continuez votre expérience d'apprentissage

+ +

Maintenant, vous savez ce qui nous attend, il est temps de plonger dans plus de détails sur le développement de l'extension du navigateur. Dans les sections suivantes, vous découvrirez :

+ + + +

Vous voudrez également vous rendre à l'Atelier des extensions où vous trouverez tout ce que vous devez savoir sur la création d'extensions pour Firefox, notamment :

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/work_with_contextual_identities/index.html b/files/fr/mozilla/add-ons/webextensions/work_with_contextual_identities/index.html deleted file mode 100644 index cc12ce18e7..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/work_with_contextual_identities/index.html +++ /dev/null @@ -1,170 +0,0 @@ ---- -title: Travailler avec des identités contextuelles -slug: Mozilla/Add-ons/WebExtensions/Work_with_contextual_identities -tags: - - Add-ons - - Comment - - Contextual identities - - Débutant - - Extensions - - Hox-to - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Work_with_contextual_identities -original_slug: Mozilla/Add-ons/WebExtensions/travailler_avec_des_identites_contextuelles ---- -

{{AddonSidebar}}

- -

Beaucoup de gens ont besoin ou veulent interagir avec le web en utilisant plusieurs personnages. Ils peuvent avoir des comptes pour le travail sur le Web et le courrier électronique personnel. Ils peuvent se déconnecter de leurs comptes de médias sociaux avant d'accéder aux achats en ligne, afin de s'assurer que les scripts de suivi sur les sites d'achat ne peuvent pas prendre en charge leur activité de médias sociaux. Pour répondre à ces exigences, les utilisateurs finissent souvent par utiliser une fenêtre de navigateur standard et privée ou deux navigateurs différents.

- -

Pour répondre à ce besoin, Firefox inclut une fonctionnalité connue sous le nom d'identités contextuelles, d'onglets de conteneurs ou de conteneurs de comptes. Cette fonctionnalité permet la création d'un conteneur de cookies pour chacune des identités que l'utilisateur souhaite utiliser dans son navigateur. Les onglets peuvent être associés à l'une de ces identités, en conservant les cookies distincts de ceux des autres identités dans le navigateur. Le résultat pratique est que, par exemple, un utilisateur peut avoir une identité personnelle et professionnelle. Ils peuvent ensuite utiliser l'identité personnelle dans un onglet, où ils se connectent à leur messagerie Web personnelle, et l'identité professionnelle dans un autre onglet, où ils se connectent à leur messagerie Web professionnelle.

- -

Pour plus d'informations sur cette fonctionnalité, voir :

- - - -

API pour travailler avec des identités contextuelles

- -

Pour utiliser les fonctionnalités d'identité contextuelle dans les extensions, vous utiliserez deux APIs :

- - - -

Permissions

- -

Pour utiliser l'API {{WebExtAPIRef("contextualIdentities")}} vous devez inclure la  permission "contextualIdentities" dans votre fichier manifest.json. Vous n'avez pas besoin de la permission "tabs" pour utiliser {{WebExtAPIRef("tabs.create")}} ; vous avez besoin de la permission "cookies" pour spécifier le conteneur de cookies que vous souhaitez utiliser.

- -

Exemple de procédure pas à pas

- -

L'exemple d'extension contextual-identities fournit un bouton de barre d'outils avec une fenêtre qui répertorie les identités dans le navigateur. Pour chaque identité, l'extension fournit des options permettant de créer un nouvel onglet en utilisant son conteneur de cookies ou de supprimer tous les onglets de l'identité.

- -

Voici une courte vidéo de l'extension en action :

- -

{{EmbedYouTube("SgLCS7_ppas")}}

- -

manifest.json

- -

Les principales caractéristiques du fichier manifest.json sont :

- - - -

context.html

- -

Une fenêtre contextuelle sur le bouton de la barre d'outils fournit l'interface utilisateur de l'extension. context.html implémente ce popup, mais c'est juste un shell dans lequel le script context.js écrit la liste des identités contextuelles et leurs options associées.

- -
  <body>
-    <div class="panel">
-      <div id="identity-list"></div>
-    </div>
-  <script src="context.js"></script>
-  </body>
- -

context.js

- -

Toutes les fonctionnalités de l'extension sont implémentées via context.js, qui est appelée chaque fois que la barre d'outils est affichée.

- -

Le script obtient d'abord le div 'identity-list' depuis context.html.

- -
var div = document.getElementById('identity-list');
- -

Il vérifie ensuite si la fonction d'identités contextuelles est activée dans le navigateur. Si ce n'est pas le cas, des informations sur la façon de l'activer sont ajoutées à la fenêtre contextuelle.

- -
if (browser.contextualIdentities === undefined) {
-  div.innerText = 'browser.contextualIdentities not available. Check that the privacy.userContext.enabled pref is set to true, and reload the add-on.';
-} else {
- -

Firefox s'installe avec la fonctionnalité d'identité contextuelle désactivée, elle est activée lorsqu'une extension utilisant l'API contextualIdentities est installée. Cependant, il est toujours possible pour l'utilisateur de désactiver la fonctionnalité, en utilisant une option sur la page des préférences (about:preferences), d'où la nécessité de la vérification.

- -

Le script utilise maintenant contextualIdentities.query pour déterminer s'il existe des identités contextuelles définies dans le navigateur. S'il n'y en a pas, un message est ajouté au popup et le script s'arrête.

- -
  browser.contextualIdentities.query({})
-    .then((identities) => {
-      if (!identities.length) {
-        div.innerText = 'No identities returned from the API.';
-        return;
-      }
- -

Si des identités contextuelles sont présentes — Firefox a quatre identités par défaut — le script parcourt chacune d'elles en ajoutant son nom, stylisé dans la couleur choisie, à l'élément <div>. La fonction createOptions() ajoute ensuite les options à “create” ou  “close all” à la <div> avant qu'elle ne soit ajoutée au popup.

- -
     for (let identity of identities) {
-       let row = document.createElement('div');
-       let span = document.createElement('span');
-       span.className = 'identity';
-       span.innerText = identity.name;
-       span.style = `color: ${identity.color}`;
-       console.log(identity);
-       row.appendChild(span);
-       createOptions(row, identity);
-       div.appendChild(row);
-     }
-  });
-}
-
-function createOptions(node, identity) {
-  for (let option of ['Create', 'Close All']) {
-    let a = document.createElement('a');
-    a.href = '#';
-    a.innerText = option;
-    a.dataset.action = option.toLowerCase().replace(' ', '-');
-    a.dataset.identity = identity.cookieStoreId;
-    a.addEventListener('click', eventHandler);
-    node.appendChild(a);
-  }
-}
- -

Le script attend maintenant que l'utilisateur sélectionne une option dans le popup.

- -
function eventHandler(event) {
- -

Si l'utilisateur clique sur l'option permettant de créer un onglet pour une identité, l'un d'entre eux est ouvert à l'aide de tabs.create en transmettant l'ID de cookie de l'identité.

- -
  if (event.target.dataset.action == 'create') {
-    browser.tabs.create({
-      url: 'about:blank',
-      cookieStoreId: event.target.dataset.identity
-    });
-  }
- -

Si l'utilisateur sélectionne l'option permettant de fermer tous les onglets pour l'identité, le script exécute une tabs.query pour tous les onglets qui utilisent le cookie store de l'identité. Le script passe ensuite cette liste d'onglets à tabs.remove.

- -
  if (event.target.dataset.action == 'close-all') {
-    browser.tabs.query({
-      cookieStoreId: event.target.dataset.identity
-    }).then((tabs) => {
-      browser.tabs.remove(tabs.map((i) => i.id));
-    });
-  }
-  event.preventDefault();
-}
- -

Apprendre encore plus

- -

Si vous voulez en savoir plus sur l'API contextualIdentities, consultez :

- - diff --git a/files/fr/mozilla/add-ons/webextensions/work_with_contextual_identities/index.md b/files/fr/mozilla/add-ons/webextensions/work_with_contextual_identities/index.md new file mode 100644 index 0000000000..cc12ce18e7 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/work_with_contextual_identities/index.md @@ -0,0 +1,170 @@ +--- +title: Travailler avec des identités contextuelles +slug: Mozilla/Add-ons/WebExtensions/Work_with_contextual_identities +tags: + - Add-ons + - Comment + - Contextual identities + - Débutant + - Extensions + - Hox-to + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Work_with_contextual_identities +original_slug: Mozilla/Add-ons/WebExtensions/travailler_avec_des_identites_contextuelles +--- +

{{AddonSidebar}}

+ +

Beaucoup de gens ont besoin ou veulent interagir avec le web en utilisant plusieurs personnages. Ils peuvent avoir des comptes pour le travail sur le Web et le courrier électronique personnel. Ils peuvent se déconnecter de leurs comptes de médias sociaux avant d'accéder aux achats en ligne, afin de s'assurer que les scripts de suivi sur les sites d'achat ne peuvent pas prendre en charge leur activité de médias sociaux. Pour répondre à ces exigences, les utilisateurs finissent souvent par utiliser une fenêtre de navigateur standard et privée ou deux navigateurs différents.

+ +

Pour répondre à ce besoin, Firefox inclut une fonctionnalité connue sous le nom d'identités contextuelles, d'onglets de conteneurs ou de conteneurs de comptes. Cette fonctionnalité permet la création d'un conteneur de cookies pour chacune des identités que l'utilisateur souhaite utiliser dans son navigateur. Les onglets peuvent être associés à l'une de ces identités, en conservant les cookies distincts de ceux des autres identités dans le navigateur. Le résultat pratique est que, par exemple, un utilisateur peut avoir une identité personnelle et professionnelle. Ils peuvent ensuite utiliser l'identité personnelle dans un onglet, où ils se connectent à leur messagerie Web personnelle, et l'identité professionnelle dans un autre onglet, où ils se connectent à leur messagerie Web professionnelle.

+ +

Pour plus d'informations sur cette fonctionnalité, voir :

+ + + +

API pour travailler avec des identités contextuelles

+ +

Pour utiliser les fonctionnalités d'identité contextuelle dans les extensions, vous utiliserez deux APIs :

+ + + +

Permissions

+ +

Pour utiliser l'API {{WebExtAPIRef("contextualIdentities")}} vous devez inclure la  permission "contextualIdentities" dans votre fichier manifest.json. Vous n'avez pas besoin de la permission "tabs" pour utiliser {{WebExtAPIRef("tabs.create")}} ; vous avez besoin de la permission "cookies" pour spécifier le conteneur de cookies que vous souhaitez utiliser.

+ +

Exemple de procédure pas à pas

+ +

L'exemple d'extension contextual-identities fournit un bouton de barre d'outils avec une fenêtre qui répertorie les identités dans le navigateur. Pour chaque identité, l'extension fournit des options permettant de créer un nouvel onglet en utilisant son conteneur de cookies ou de supprimer tous les onglets de l'identité.

+ +

Voici une courte vidéo de l'extension en action :

+ +

{{EmbedYouTube("SgLCS7_ppas")}}

+ +

manifest.json

+ +

Les principales caractéristiques du fichier manifest.json sont :

+ + + +

context.html

+ +

Une fenêtre contextuelle sur le bouton de la barre d'outils fournit l'interface utilisateur de l'extension. context.html implémente ce popup, mais c'est juste un shell dans lequel le script context.js écrit la liste des identités contextuelles et leurs options associées.

+ +
  <body>
+    <div class="panel">
+      <div id="identity-list"></div>
+    </div>
+  <script src="context.js"></script>
+  </body>
+ +

context.js

+ +

Toutes les fonctionnalités de l'extension sont implémentées via context.js, qui est appelée chaque fois que la barre d'outils est affichée.

+ +

Le script obtient d'abord le div 'identity-list' depuis context.html.

+ +
var div = document.getElementById('identity-list');
+ +

Il vérifie ensuite si la fonction d'identités contextuelles est activée dans le navigateur. Si ce n'est pas le cas, des informations sur la façon de l'activer sont ajoutées à la fenêtre contextuelle.

+ +
if (browser.contextualIdentities === undefined) {
+  div.innerText = 'browser.contextualIdentities not available. Check that the privacy.userContext.enabled pref is set to true, and reload the add-on.';
+} else {
+ +

Firefox s'installe avec la fonctionnalité d'identité contextuelle désactivée, elle est activée lorsqu'une extension utilisant l'API contextualIdentities est installée. Cependant, il est toujours possible pour l'utilisateur de désactiver la fonctionnalité, en utilisant une option sur la page des préférences (about:preferences), d'où la nécessité de la vérification.

+ +

Le script utilise maintenant contextualIdentities.query pour déterminer s'il existe des identités contextuelles définies dans le navigateur. S'il n'y en a pas, un message est ajouté au popup et le script s'arrête.

+ +
  browser.contextualIdentities.query({})
+    .then((identities) => {
+      if (!identities.length) {
+        div.innerText = 'No identities returned from the API.';
+        return;
+      }
+ +

Si des identités contextuelles sont présentes — Firefox a quatre identités par défaut — le script parcourt chacune d'elles en ajoutant son nom, stylisé dans la couleur choisie, à l'élément <div>. La fonction createOptions() ajoute ensuite les options à “create” ou  “close all” à la <div> avant qu'elle ne soit ajoutée au popup.

+ +
     for (let identity of identities) {
+       let row = document.createElement('div');
+       let span = document.createElement('span');
+       span.className = 'identity';
+       span.innerText = identity.name;
+       span.style = `color: ${identity.color}`;
+       console.log(identity);
+       row.appendChild(span);
+       createOptions(row, identity);
+       div.appendChild(row);
+     }
+  });
+}
+
+function createOptions(node, identity) {
+  for (let option of ['Create', 'Close All']) {
+    let a = document.createElement('a');
+    a.href = '#';
+    a.innerText = option;
+    a.dataset.action = option.toLowerCase().replace(' ', '-');
+    a.dataset.identity = identity.cookieStoreId;
+    a.addEventListener('click', eventHandler);
+    node.appendChild(a);
+  }
+}
+ +

Le script attend maintenant que l'utilisateur sélectionne une option dans le popup.

+ +
function eventHandler(event) {
+ +

Si l'utilisateur clique sur l'option permettant de créer un onglet pour une identité, l'un d'entre eux est ouvert à l'aide de tabs.create en transmettant l'ID de cookie de l'identité.

+ +
  if (event.target.dataset.action == 'create') {
+    browser.tabs.create({
+      url: 'about:blank',
+      cookieStoreId: event.target.dataset.identity
+    });
+  }
+ +

Si l'utilisateur sélectionne l'option permettant de fermer tous les onglets pour l'identité, le script exécute une tabs.query pour tous les onglets qui utilisent le cookie store de l'identité. Le script passe ensuite cette liste d'onglets à tabs.remove.

+ +
  if (event.target.dataset.action == 'close-all') {
+    browser.tabs.query({
+      cookieStoreId: event.target.dataset.identity
+    }).then((tabs) => {
+      browser.tabs.remove(tabs.map((i) => i.id));
+    });
+  }
+  event.preventDefault();
+}
+ +

Apprendre encore plus

+ +

Si vous voulez en savoir plus sur l'API contextualIdentities, consultez :

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/work_with_the_bookmarks_api/index.html b/files/fr/mozilla/add-ons/webextensions/work_with_the_bookmarks_api/index.html deleted file mode 100644 index 9351ed7476..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/work_with_the_bookmarks_api/index.html +++ /dev/null @@ -1,206 +0,0 @@ ---- -title: Travailler avec l'API Bookmarks -slug: Mozilla/Add-ons/WebExtensions/Work_with_the_Bookmarks_API -tags: - - Add-ons - - Bookmarks - - Comment - - Débutant - - Extensions - - How-to - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Work_with_the_Bookmarks_API ---- -

{{AddonSidebar}}

- -

Les signets permettent aux utilisateurs de collecter et d'organiser des listes de pages Web, afin qu'ils puissent facilement retrouver leurs favoris. Grâce à l'API Bookmarks, vos extensions peuvent manipuler les signets de la même manière que les utilisateurs.

- - - -

Permissions

- -

Pour utiliser l'API Bookmarks, vous devez demander la permission "bookmarks" dans le fichier manifest.json de votre extension

- -
"permissions": [
-  "bookmarks"
-],
- -

Caractéristiques

- -

L'API Bookmarks permet à votre extension de faire ce que les utilisateurs peuvent faire avec les signets et inclut des fonctions pour :

- - - -

Exemple de procédure pas à pas

- -

Pour comprendre comment utiliser l'API Bookmarks, jetons un coup d'œil à l'exemple  bookmark-it. Cet exemple ajoute une icône de barre d'outils  ({{WebExtAPIRef("browserAction")}}) lorsqu'on clique dessus, ajoute ou supprime la page en cours des signets. Si la page est mise en signet (ou supprimée des signets) d'une autre manière, l'icône est mise à jour pour montrer l'état du signet de la page.

- -

Cette vidéo montre l'extension en action :

- -

{{EmbedYouTube("hCDN0FotiFw")}}

- -

manifest.json

- -

Le manifest.json décrit l'extension :

- -
{
-  "manifest_version": 2,
-  "name": "Bookmark it!",
-  "version": "1.1",
-  "description": "A simple bookmark button",
-  "homepage_url": "https://github.com/mdn/webextensions-examples/tree/master/bookmark-it",
- - - -

Définit les icônes qui seront utilisées pour représenter l'extension, dans des endroits tels que le gestionnaire de modules complémentaires.

- - - -
  "icons": {
-    "48": "icons/bookmark-it.png",
-    "96": "icons/bookmark-it@2x.png"
-  },
- -

Demande des permissions. "bookmarks" est demandé pour permettre l'utilisation de l'API Bookmarks. Des "onglets" sont demandés afin que l'URL et le titre de l'onglet actif puissent être lus et utilisés pour créer ou rechercher le signet de la page. Le besoin de l'API Tabs pour accéder à ces détails signifie que vous ne pouvez pas utiliser l'API Bookmark sans l'API Tabs.

- -
  "permissions": [
-    "bookmarks",
-    "tabs"
-  ],
- -

Définit les détails du bouton de la barre d'outils de base. La plupart des fonctionnalités du bouton seront configurées dans le code une fois que le statut du signet de la page sera connu.

- -
  "browser_action": {
-    "default_icon": "icons/star-empty-38.png",
-    "default_title": "Bookmark it!"
-  },
- -

Définit le script d'arrière-plan qui ajoutera et supprimera le signet de la page et définira les caractéristiques du bouton de la barre d'outils.

- -
  "background": {
-    "scripts": ["background.js"]
-  }
-
-}
- -

background.js

- -

Comme pour tout script d'arrière-plan, background.jsest exécuté dès que l'extension est démarrée. Initialement, le script appelle updateActiveTab() qui commence par obtenir l'objet Tabs pour l'onglet en cours, en utilisant {{WebExtAPIRef("tabs.query")}}, et en passant l'objet à updatetab() avec ce code :

- -
  var gettingActiveTab = browser.tabs.query({active: true, currentWindow: true});
-  gettingActiveTab.then(updateTab);
- -

updatetab() passe d'abord l'URL de l'onglet actif à isSupportedProtocol():

- -
  function updateTab(tabs) {
-    if (tabs[0]) {
-      currentTab = tabs[0];
-      if (isSupportedProtocol(currentTab.url)) {
- -

isSupportedProtocol() determines if the URL displayed in the active tab is one that can be bookmarked. To extract the protocol from the tab’s URL, the extension takes advantage of the HTMLHyperlinkElementUtils by adding the tab’s URL to an <a> element and then getting the protocol using the protocol property.

- -
  function isSupportedProtocol(urlString) {
-    var supportedProtocols = ["https:", "http:", "ftp:", "file:"];
-    var url = document.createElement('a');
-    url.href = urlString;
-    return supportedProtocols.indexOf(url.protocol) != -1;
-  }
- -

Si le protocole est pris en charge par les signets, l'extension détermine si l'URL de l'onglet est déjà référencée et si c'est le cas, appelle updateIcon():

- -
      var searching = browser.bookmarks.search({url: currentTab.url});
-      searching.then((bookmarks) => {
-        currentBookmark = bookmarks[0];
-        updateIcon();
- -

updateIcon() définit l'icône et le titre du bouton de la barre d'outils, selon que l'URL est mise en signet ou non.

- -
function updateIcon() {
-  browser.browserAction.setIcon({
-    path: currentBookmark ? {
-      19: "icons/star-filled-19.png",
-      38: "icons/star-filled-38.png"
-    } : {
-      19: "icons/star-empty-19.png",
-      38: "icons/star-empty-38.png"
-    },
-    tabId: currentTab.id
-  });
-  browser.browserAction.setTitle({
-    // Screen readers can see the title
-    title: currentBookmark ? 'Unbookmark it!' : 'Bookmark it!',
-    tabId: currentTab.id
-  });
-}
- -

Avec le bouton de la barre d'outils initialisé, l'extension commence à écouter un clic sur le bouton de la barre d'outils, en appelant toggleBookmark() lorsque cela se produit.

- -
browser.browserAction.onClicked.addListener(toggleBookmark);
- -

toggleBookmark() utilise le résultat de la recherche effectuée par updateTabs(), qui recherche la présence de l'URL dans un signet, afin de déterminer s'il faut supprimer ou ajouter un signet pour l'URL actuelle.

- -
function toggleBookmark() {
-  if (currentBookmark) {
-    browser.bookmarks.remove(currentBookmark.id);
-  } else {
-    browser.bookmarks.create({title: currentTab.title, url: currentTab.url});
-  }
-}
- -

Pour mettre à jour l'icône de la barre d'outils, l'extension écoute la création ou la suppression des signets. Cette approche a l'avantage de capturer à la fois la mise à jour de signet effectuée par l'extension et toute mise à jour faite par l'utilisateur en dehors de l'extension.

- -
// listen for bookmarks being created
-browser.bookmarks.onCreated.addListener(updateActiveTab);
-
-// listen for bookmarks being removed
-browser.bookmarks.onRemoved.addListener(updateActiveTab);
- -

Enfin, l'extension est à l'écoute d'une modification apportée à l'URL de l'onglet actif, ou l'utilisateur passe à un autre onglet ou une autre fenêtre. Ces actions peuvent modifier l'URL affichée et donc l'état de l'icône de la barre d'outils de l'extension.

- -
// listen to tab URL changes
-browser.tabs.onUpdated.addListener(updateActiveTab);
-
-// listen to tab switching
-browser.tabs.onActivated.addListener(updateActiveTab);
-
-// listen for window switching
-browser.windows.onFocusChanged.addListener(updateActiveTab);
- -

Apprendre encore plus

- -

Si vous voulez en savoir plus, consultez la référence de l'API Bookmarks.

diff --git a/files/fr/mozilla/add-ons/webextensions/work_with_the_bookmarks_api/index.md b/files/fr/mozilla/add-ons/webextensions/work_with_the_bookmarks_api/index.md new file mode 100644 index 0000000000..9351ed7476 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/work_with_the_bookmarks_api/index.md @@ -0,0 +1,206 @@ +--- +title: Travailler avec l'API Bookmarks +slug: Mozilla/Add-ons/WebExtensions/Work_with_the_Bookmarks_API +tags: + - Add-ons + - Bookmarks + - Comment + - Débutant + - Extensions + - How-to + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Work_with_the_Bookmarks_API +--- +

{{AddonSidebar}}

+ +

Les signets permettent aux utilisateurs de collecter et d'organiser des listes de pages Web, afin qu'ils puissent facilement retrouver leurs favoris. Grâce à l'API Bookmarks, vos extensions peuvent manipuler les signets de la même manière que les utilisateurs.

+ + + +

Permissions

+ +

Pour utiliser l'API Bookmarks, vous devez demander la permission "bookmarks" dans le fichier manifest.json de votre extension

+ +
"permissions": [
+  "bookmarks"
+],
+ +

Caractéristiques

+ +

L'API Bookmarks permet à votre extension de faire ce que les utilisateurs peuvent faire avec les signets et inclut des fonctions pour :

+ + + +

Exemple de procédure pas à pas

+ +

Pour comprendre comment utiliser l'API Bookmarks, jetons un coup d'œil à l'exemple  bookmark-it. Cet exemple ajoute une icône de barre d'outils  ({{WebExtAPIRef("browserAction")}}) lorsqu'on clique dessus, ajoute ou supprime la page en cours des signets. Si la page est mise en signet (ou supprimée des signets) d'une autre manière, l'icône est mise à jour pour montrer l'état du signet de la page.

+ +

Cette vidéo montre l'extension en action :

+ +

{{EmbedYouTube("hCDN0FotiFw")}}

+ +

manifest.json

+ +

Le manifest.json décrit l'extension :

+ +
{
+  "manifest_version": 2,
+  "name": "Bookmark it!",
+  "version": "1.1",
+  "description": "A simple bookmark button",
+  "homepage_url": "https://github.com/mdn/webextensions-examples/tree/master/bookmark-it",
+ + + +

Définit les icônes qui seront utilisées pour représenter l'extension, dans des endroits tels que le gestionnaire de modules complémentaires.

+ + + +
  "icons": {
+    "48": "icons/bookmark-it.png",
+    "96": "icons/bookmark-it@2x.png"
+  },
+ +

Demande des permissions. "bookmarks" est demandé pour permettre l'utilisation de l'API Bookmarks. Des "onglets" sont demandés afin que l'URL et le titre de l'onglet actif puissent être lus et utilisés pour créer ou rechercher le signet de la page. Le besoin de l'API Tabs pour accéder à ces détails signifie que vous ne pouvez pas utiliser l'API Bookmark sans l'API Tabs.

+ +
  "permissions": [
+    "bookmarks",
+    "tabs"
+  ],
+ +

Définit les détails du bouton de la barre d'outils de base. La plupart des fonctionnalités du bouton seront configurées dans le code une fois que le statut du signet de la page sera connu.

+ +
  "browser_action": {
+    "default_icon": "icons/star-empty-38.png",
+    "default_title": "Bookmark it!"
+  },
+ +

Définit le script d'arrière-plan qui ajoutera et supprimera le signet de la page et définira les caractéristiques du bouton de la barre d'outils.

+ +
  "background": {
+    "scripts": ["background.js"]
+  }
+
+}
+ +

background.js

+ +

Comme pour tout script d'arrière-plan, background.jsest exécuté dès que l'extension est démarrée. Initialement, le script appelle updateActiveTab() qui commence par obtenir l'objet Tabs pour l'onglet en cours, en utilisant {{WebExtAPIRef("tabs.query")}}, et en passant l'objet à updatetab() avec ce code :

+ +
  var gettingActiveTab = browser.tabs.query({active: true, currentWindow: true});
+  gettingActiveTab.then(updateTab);
+ +

updatetab() passe d'abord l'URL de l'onglet actif à isSupportedProtocol():

+ +
  function updateTab(tabs) {
+    if (tabs[0]) {
+      currentTab = tabs[0];
+      if (isSupportedProtocol(currentTab.url)) {
+ +

isSupportedProtocol() determines if the URL displayed in the active tab is one that can be bookmarked. To extract the protocol from the tab’s URL, the extension takes advantage of the HTMLHyperlinkElementUtils by adding the tab’s URL to an <a> element and then getting the protocol using the protocol property.

+ +
  function isSupportedProtocol(urlString) {
+    var supportedProtocols = ["https:", "http:", "ftp:", "file:"];
+    var url = document.createElement('a');
+    url.href = urlString;
+    return supportedProtocols.indexOf(url.protocol) != -1;
+  }
+ +

Si le protocole est pris en charge par les signets, l'extension détermine si l'URL de l'onglet est déjà référencée et si c'est le cas, appelle updateIcon():

+ +
      var searching = browser.bookmarks.search({url: currentTab.url});
+      searching.then((bookmarks) => {
+        currentBookmark = bookmarks[0];
+        updateIcon();
+ +

updateIcon() définit l'icône et le titre du bouton de la barre d'outils, selon que l'URL est mise en signet ou non.

+ +
function updateIcon() {
+  browser.browserAction.setIcon({
+    path: currentBookmark ? {
+      19: "icons/star-filled-19.png",
+      38: "icons/star-filled-38.png"
+    } : {
+      19: "icons/star-empty-19.png",
+      38: "icons/star-empty-38.png"
+    },
+    tabId: currentTab.id
+  });
+  browser.browserAction.setTitle({
+    // Screen readers can see the title
+    title: currentBookmark ? 'Unbookmark it!' : 'Bookmark it!',
+    tabId: currentTab.id
+  });
+}
+ +

Avec le bouton de la barre d'outils initialisé, l'extension commence à écouter un clic sur le bouton de la barre d'outils, en appelant toggleBookmark() lorsque cela se produit.

+ +
browser.browserAction.onClicked.addListener(toggleBookmark);
+ +

toggleBookmark() utilise le résultat de la recherche effectuée par updateTabs(), qui recherche la présence de l'URL dans un signet, afin de déterminer s'il faut supprimer ou ajouter un signet pour l'URL actuelle.

+ +
function toggleBookmark() {
+  if (currentBookmark) {
+    browser.bookmarks.remove(currentBookmark.id);
+  } else {
+    browser.bookmarks.create({title: currentTab.title, url: currentTab.url});
+  }
+}
+ +

Pour mettre à jour l'icône de la barre d'outils, l'extension écoute la création ou la suppression des signets. Cette approche a l'avantage de capturer à la fois la mise à jour de signet effectuée par l'extension et toute mise à jour faite par l'utilisateur en dehors de l'extension.

+ +
// listen for bookmarks being created
+browser.bookmarks.onCreated.addListener(updateActiveTab);
+
+// listen for bookmarks being removed
+browser.bookmarks.onRemoved.addListener(updateActiveTab);
+ +

Enfin, l'extension est à l'écoute d'une modification apportée à l'URL de l'onglet actif, ou l'utilisateur passe à un autre onglet ou une autre fenêtre. Ces actions peuvent modifier l'URL affichée et donc l'état de l'icône de la barre d'outils de l'extension.

+ +
// listen to tab URL changes
+browser.tabs.onUpdated.addListener(updateActiveTab);
+
+// listen to tab switching
+browser.tabs.onActivated.addListener(updateActiveTab);
+
+// listen for window switching
+browser.windows.onFocusChanged.addListener(updateActiveTab);
+ +

Apprendre encore plus

+ +

Si vous voulez en savoir plus, consultez la référence de l'API Bookmarks.

diff --git a/files/fr/mozilla/add-ons/webextensions/work_with_the_cookies_api/index.html b/files/fr/mozilla/add-ons/webextensions/work_with_the_cookies_api/index.html deleted file mode 100644 index 5d2801393f..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/work_with_the_cookies_api/index.html +++ /dev/null @@ -1,255 +0,0 @@ ---- -title: Travailler avec l'API Cookies -slug: Mozilla/Add-ons/WebExtensions/Work_with_the_Cookies_API -tags: - - Add-ons - - Comment - - Cookies - - Débutant - - Extensions - - How-to - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Work_with_the_Cookies_API -original_slug: Mozilla/Add-ons/WebExtensions/travailler_avec_l_API_cookies ---- -

{{AddonSidebar}}

- -

Avec l'API Cookies, vos extensions ont accès à des fonctionnalités similaires à celles utilisées par les sites Web pour stocker et lire les cookies. Les fonctionnalités de l'API permettent aux extensions de stocker des informations site par site. Ainsi, comme nous le verrons dans l'exemple, vous pouvez stocker des détails sur le choix de la couleur de fond d'un site pour un utilisateur. Ensuite, lorsque l'utilisateur revient sur le site, votre extension peut utiliser la capacité de l'API pour obtenir des détails sur les cookies et les lire pour récupérer le choix de l'utilisateur et l'appliquer au site Web.

- -
-

Note : Le comportement des cookies peut être contrôlé à l'aide de la propriété {{WebExtAPIRef("privacy.websites")}} cookieConfig. Cette propriété contrôle si et comment les cookies sont acceptés ou si tous les cookies sont traités comme des cookies de session.

-
- -

Permissions

- -

Pour utiliser l'API Cookies, vous devez demander à la fois la permission "cookies" et les  permissions d'hôte pour les protocoles, domaines, ou sites web auxquels vous souhaitez accéder ou utiliser "<all_urls>" pour accéder à tous les protocoles et domaines. La façon dont vous définissez votre chaîne de permission d'hôte affecte la capacité de votre extension à lire, écrire et supprimer les cookies.

- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-

Chaine de permission hôte

-
-

Lecture

-
-

Ecriture/Effacer

-
-

Sécurisé

-
-

Non-sécurisé

-
-

Sécurisé

-
-

Non-sécurisé

-
-

"http://*.example.com/"

-
-

Non

-
-

Principaux et sous domaines, avec n'importe quel chemin

-
-

Principaux et sous domaines, avec n'importe quel chemin

-
-

Principaux et sous domaines, avec n'importe quel chemin

-
-

"https://www.example.com/"

-
-

www.example.com ou .example.com avec n'importe quel chemin, mais aucun sous domaine

-
-

www.example.com ou .example.com avec n'importe quel chemin, mais aucun sous domaine

-
-

www.example.com ou .example.com avec n'importe quel chemin, mais aucun sous domaine

-
-

www.example.com ou .example.com avec n'importe quel chemin, mais aucun sous domaine

-
-

"*://*.example.com/"

-
-

Principaux et sous domaines, avec n'importe quel chemin

-
-

Principaux et sous domaines, avec n'importe quel chemin

-
-

Principaux et sous domaines, avec n'importe quel chemin

-
-

Principaux et sous domaines, avec n'importe quel chemin

-
-

"<all_urls>"

-
-

Tout domaine avec un chemin

-
-

Tout domaine avec un chemin

-
-

Tout domaine avec un chemin

-
-

Tout domaine avec un chemin

-
-
- -

Banque de cookies

- -

Firefox fournit trois types de banque de cookies :

- - - -

Vous pouvez trouver les banques de cookies disponibles en utilisant {{WebExtAPIRef("cookies.getAllCookieStores")}}, qui renvoie un objet contenant l'ID de chaque cookie et une liste des ID des onglets utilisant chaque banque de cookies.

- -

Exemple de procédure pas à pas

- -

L'exemple d'extension cookie-bg-picker permet à l'utilisateur de choisir une couleur et une icône appliquées à l'arrière-plan des pages Web d'un site. Ces choix sont sauvegardés par site en utilisant {{WebExtAPIRef("cookies.set")}}. Lorsqu'une page du site est ouverte, {{WebExtAPIRef("cookies.get")}} lit tout choix précédent, et l'extension l'applique à la page Web. Une option de réinitialisation supprime l'icône d'arrière-plan et la couleur du site ainsi que le cookie, en utilisant {{WebExtAPIRef("cookies.remove")}}. Il utilise également {{WebExtAPIRef("cookies.onChanged")}} pour écouter les modifications apportées aux cookies, en envoyant les détails de la modification à la console.

- -

Cette vidéo montre l'extension en action :

- -

{{EmbedYouTube("_rlp3eYqEMA")}}

- -

Cet exemple utilise également les API Tabs et Runtime, mais nous ne discuterons de ces fonctionnalités qu'en passant.

- -

manifest.json

- -

The key feature of the manifest.json file relating to the use of the Cookies API is the permissions request:

- -
  "permissions": [
-      "tabs",
-      "cookies",
-      "<all_urls>"
-],
- -

Ici, l'extension demande l'autorisation d'utiliser l'API Cookies ("cookies") avec tous les sites Web ("<all_urls>"). Cela permet à l'extension d'enregistrer le choix de l'icône de couleur d'arrière-plan pour n'importe quel site Web.

- -

Scripts—bgpicker.js

- -

L'interface utilisateur de l'extension utilise un bouton de barre d'outils ({{WebExtAPIRef("browserAction")}}) implémenté avec bgpicker.html qui appelle bgpicker.js. Ensemble, ils permettent à l'utilisateur de sélectionner l'icône et d'entrer la couleur à appliquer en arrière-plan. Ils offrent également la possibilité d'effacer ces paramètres.

- -

bgpicker.js gère la sélection de l'icône ou l'entrée d'une couleur pour l'arrière-plan dans des fonctions séparées.

- -

Pour gérer les boutons d'icônes, le script rassemble d'abord tous les noms de classe utilisés pour les boutons dans le fichier HTML :

- -
var bgBtns = document.querySelectorAll('.bg-container button');
- -

Il boucle ensuite à travers tous les boutons en leur assignant leur image et en créant un écouteur onclick pour chaque bouton :

- -
for(var i = 0; i < bgBtns.length; i++) {
-  var imgName = bgBtns[i].getAttribute('class');
-  var bgImg = 'url(\'images/' + imgName + '.png\')';
-  bgBtns[i].style.backgroundImage = bgImg;
-
-  bgBtns[i].onclick = function(e) {
- -

Quand un bouton est cliqué, sa fonction d'écouteur correspondante obtient le nom de classe de bouton et ensuite le chemin d'icône qu'il passe au script de contenu de la page (updatebg.js) en utilisant un message. Le script de contenu applique ensuite l'icône à l'arrière-plan de la page Web. Pendant ce temps, bgpicker.js stocke les détails de l'icône appliquée à l'arrière-plan dans un cookie :

- -
    cookieVal.image = fullURL;
-    browser.cookies.set({
-    url: tabs[0].url,
-    name: "bgpicker",
-    value: JSON.stringify(cookieVal)
-  })
- -

Le paramètre de couleur est traité de la même manière, déclenché par un écouteur dans le champ de saisie de couleur. Lorsqu'une couleur est entrée, l'onglet actif est découvert et les détails de sélection de couleur envoyés, à l'aide d'un message, au script de contenu de la page à appliquer à l'arrière-plan de la page Web. Ensuite, la sélection de couleur est ajoutée au cookie :

- -
    cookieVal.color = currColor;
-    browser.cookies.set({
-    url: tabs[0].url,
-    name: "bgpicker",
-    value: JSON.stringify(cookieVal)
- -

Lorsque l'utilisateur clique sur le bouton de réinitialisation qui a été affecté à la réinitialisation de la variable :

- -
var reset = document.querySelector('.color-reset button');
- -

reset.onclick trouve d'abord l'onglet actif. Ensuite, en utilisant l'ID de l'onglet, il transmet un message au script de contenu de la page (updatebg.js) pour qu'il supprime l'icône et la couleur de la page. La fonction efface ensuite les valeurs de cookie (de sorte que les anciennes valeurs ne sont pas reportées et écrites sur un cookie créé pour une nouvelle icône ou sélection de couleur sur la même page) avant de supprimer le cookie :

- -
    cookieVal = { image : '',
-                  color : '' };
-    browser.cookies.remove({
-    url: tabs[0].url,
-    name: "bgpicker"
- -

Aussi, afin que vous puissiez voir ce qui se passe avec les cookies, le script rend compte de toutes les modifications apportées aux cookies dans la console :

- -
browser.cookies.onChanged.addListener((changeInfo) => {
-  console.log(`Cookie changed:\n
-    * Cookie: ${JSON.stringify(changeInfo.cookie)}\n
-    * Cause: ${changeInfo.cause}\n
-    * Removed: ${changeInfo.removed}`);
-  });
- -

Scripts—background.js

- -

Un script d'arrière-plan (background.js) permet à l'utilisateur de choisir une icône d'arrière-plan et une couleur pour le site Web dans une session antérieure. Le script est à l'écoute des changements dans l'onglet actif, que ce soit l'utilisateur qui passe d'un onglet à l'autre ou modifie l'URL de la page affichée dans l'onglet. Lorsque l'un de ces événements se produit, cookieUpdate() est appelée.  cookieUpdate() utilise à son tour getActiveTab() pour obtenir l'ID de l'onglet actif. La fonction peut ensuite vérifier si un cookie existe pour l'extension, en utilisant l'URL de l'onglet :

- -
    var gettingCookies = browser.cookies.get({
-      url: tabs[0].url,
-      name: "bgpicker"
-    });
- -

Si le cookie "bgpicker" existe pour le site Web, les détails de l'icône et de la couleur sélectionnés précédemment sont récupérés et transmis au script de contenu updatebg.js à l'aide de messages :

- -
    gettingCookies.then((cookie) => {
-      if (cookie) {
-        var cookieVal = JSON.parse(cookie.value);
-        browser.tabs.sendMessage(tabs[0].id, {image: cookieVal.image});
-        browser.tabs.sendMessage(tabs[0].id, {color: cookieVal.color});
-      }
-    });
- -

Autres caractéristiques

- -

En plus des API mentionnées jusqu'à présent, l'API Cookies propose également {{WebExtAPIRef("cookies.getAll")}}. Cette fonction prend l'objet details pour spécifier des filtres pour les cookies sélectionnés et retourne un tableau d'objets {{WebExtAPIRef("cookies.Cookie")}} qui correspondent aux critères de filtrage.

- -

Apprendre encore plus

- -

Si vous voulez en savoir plus sur l'API Cookies, consultez :

- - diff --git a/files/fr/mozilla/add-ons/webextensions/work_with_the_cookies_api/index.md b/files/fr/mozilla/add-ons/webextensions/work_with_the_cookies_api/index.md new file mode 100644 index 0000000000..5d2801393f --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/work_with_the_cookies_api/index.md @@ -0,0 +1,255 @@ +--- +title: Travailler avec l'API Cookies +slug: Mozilla/Add-ons/WebExtensions/Work_with_the_Cookies_API +tags: + - Add-ons + - Comment + - Cookies + - Débutant + - Extensions + - How-to + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Work_with_the_Cookies_API +original_slug: Mozilla/Add-ons/WebExtensions/travailler_avec_l_API_cookies +--- +

{{AddonSidebar}}

+ +

Avec l'API Cookies, vos extensions ont accès à des fonctionnalités similaires à celles utilisées par les sites Web pour stocker et lire les cookies. Les fonctionnalités de l'API permettent aux extensions de stocker des informations site par site. Ainsi, comme nous le verrons dans l'exemple, vous pouvez stocker des détails sur le choix de la couleur de fond d'un site pour un utilisateur. Ensuite, lorsque l'utilisateur revient sur le site, votre extension peut utiliser la capacité de l'API pour obtenir des détails sur les cookies et les lire pour récupérer le choix de l'utilisateur et l'appliquer au site Web.

+ +
+

Note : Le comportement des cookies peut être contrôlé à l'aide de la propriété {{WebExtAPIRef("privacy.websites")}} cookieConfig. Cette propriété contrôle si et comment les cookies sont acceptés ou si tous les cookies sont traités comme des cookies de session.

+
+ +

Permissions

+ +

Pour utiliser l'API Cookies, vous devez demander à la fois la permission "cookies" et les  permissions d'hôte pour les protocoles, domaines, ou sites web auxquels vous souhaitez accéder ou utiliser "<all_urls>" pour accéder à tous les protocoles et domaines. La façon dont vous définissez votre chaîne de permission d'hôte affecte la capacité de votre extension à lire, écrire et supprimer les cookies.

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

Chaine de permission hôte

+
+

Lecture

+
+

Ecriture/Effacer

+
+

Sécurisé

+
+

Non-sécurisé

+
+

Sécurisé

+
+

Non-sécurisé

+
+

"http://*.example.com/"

+
+

Non

+
+

Principaux et sous domaines, avec n'importe quel chemin

+
+

Principaux et sous domaines, avec n'importe quel chemin

+
+

Principaux et sous domaines, avec n'importe quel chemin

+
+

"https://www.example.com/"

+
+

www.example.com ou .example.com avec n'importe quel chemin, mais aucun sous domaine

+
+

www.example.com ou .example.com avec n'importe quel chemin, mais aucun sous domaine

+
+

www.example.com ou .example.com avec n'importe quel chemin, mais aucun sous domaine

+
+

www.example.com ou .example.com avec n'importe quel chemin, mais aucun sous domaine

+
+

"*://*.example.com/"

+
+

Principaux et sous domaines, avec n'importe quel chemin

+
+

Principaux et sous domaines, avec n'importe quel chemin

+
+

Principaux et sous domaines, avec n'importe quel chemin

+
+

Principaux et sous domaines, avec n'importe quel chemin

+
+

"<all_urls>"

+
+

Tout domaine avec un chemin

+
+

Tout domaine avec un chemin

+
+

Tout domaine avec un chemin

+
+

Tout domaine avec un chemin

+
+
+ +

Banque de cookies

+ +

Firefox fournit trois types de banque de cookies :

+ + + +

Vous pouvez trouver les banques de cookies disponibles en utilisant {{WebExtAPIRef("cookies.getAllCookieStores")}}, qui renvoie un objet contenant l'ID de chaque cookie et une liste des ID des onglets utilisant chaque banque de cookies.

+ +

Exemple de procédure pas à pas

+ +

L'exemple d'extension cookie-bg-picker permet à l'utilisateur de choisir une couleur et une icône appliquées à l'arrière-plan des pages Web d'un site. Ces choix sont sauvegardés par site en utilisant {{WebExtAPIRef("cookies.set")}}. Lorsqu'une page du site est ouverte, {{WebExtAPIRef("cookies.get")}} lit tout choix précédent, et l'extension l'applique à la page Web. Une option de réinitialisation supprime l'icône d'arrière-plan et la couleur du site ainsi que le cookie, en utilisant {{WebExtAPIRef("cookies.remove")}}. Il utilise également {{WebExtAPIRef("cookies.onChanged")}} pour écouter les modifications apportées aux cookies, en envoyant les détails de la modification à la console.

+ +

Cette vidéo montre l'extension en action :

+ +

{{EmbedYouTube("_rlp3eYqEMA")}}

+ +

Cet exemple utilise également les API Tabs et Runtime, mais nous ne discuterons de ces fonctionnalités qu'en passant.

+ +

manifest.json

+ +

The key feature of the manifest.json file relating to the use of the Cookies API is the permissions request:

+ +
  "permissions": [
+      "tabs",
+      "cookies",
+      "<all_urls>"
+],
+ +

Ici, l'extension demande l'autorisation d'utiliser l'API Cookies ("cookies") avec tous les sites Web ("<all_urls>"). Cela permet à l'extension d'enregistrer le choix de l'icône de couleur d'arrière-plan pour n'importe quel site Web.

+ +

Scripts—bgpicker.js

+ +

L'interface utilisateur de l'extension utilise un bouton de barre d'outils ({{WebExtAPIRef("browserAction")}}) implémenté avec bgpicker.html qui appelle bgpicker.js. Ensemble, ils permettent à l'utilisateur de sélectionner l'icône et d'entrer la couleur à appliquer en arrière-plan. Ils offrent également la possibilité d'effacer ces paramètres.

+ +

bgpicker.js gère la sélection de l'icône ou l'entrée d'une couleur pour l'arrière-plan dans des fonctions séparées.

+ +

Pour gérer les boutons d'icônes, le script rassemble d'abord tous les noms de classe utilisés pour les boutons dans le fichier HTML :

+ +
var bgBtns = document.querySelectorAll('.bg-container button');
+ +

Il boucle ensuite à travers tous les boutons en leur assignant leur image et en créant un écouteur onclick pour chaque bouton :

+ +
for(var i = 0; i < bgBtns.length; i++) {
+  var imgName = bgBtns[i].getAttribute('class');
+  var bgImg = 'url(\'images/' + imgName + '.png\')';
+  bgBtns[i].style.backgroundImage = bgImg;
+
+  bgBtns[i].onclick = function(e) {
+ +

Quand un bouton est cliqué, sa fonction d'écouteur correspondante obtient le nom de classe de bouton et ensuite le chemin d'icône qu'il passe au script de contenu de la page (updatebg.js) en utilisant un message. Le script de contenu applique ensuite l'icône à l'arrière-plan de la page Web. Pendant ce temps, bgpicker.js stocke les détails de l'icône appliquée à l'arrière-plan dans un cookie :

+ +
    cookieVal.image = fullURL;
+    browser.cookies.set({
+    url: tabs[0].url,
+    name: "bgpicker",
+    value: JSON.stringify(cookieVal)
+  })
+ +

Le paramètre de couleur est traité de la même manière, déclenché par un écouteur dans le champ de saisie de couleur. Lorsqu'une couleur est entrée, l'onglet actif est découvert et les détails de sélection de couleur envoyés, à l'aide d'un message, au script de contenu de la page à appliquer à l'arrière-plan de la page Web. Ensuite, la sélection de couleur est ajoutée au cookie :

+ +
    cookieVal.color = currColor;
+    browser.cookies.set({
+    url: tabs[0].url,
+    name: "bgpicker",
+    value: JSON.stringify(cookieVal)
+ +

Lorsque l'utilisateur clique sur le bouton de réinitialisation qui a été affecté à la réinitialisation de la variable :

+ +
var reset = document.querySelector('.color-reset button');
+ +

reset.onclick trouve d'abord l'onglet actif. Ensuite, en utilisant l'ID de l'onglet, il transmet un message au script de contenu de la page (updatebg.js) pour qu'il supprime l'icône et la couleur de la page. La fonction efface ensuite les valeurs de cookie (de sorte que les anciennes valeurs ne sont pas reportées et écrites sur un cookie créé pour une nouvelle icône ou sélection de couleur sur la même page) avant de supprimer le cookie :

+ +
    cookieVal = { image : '',
+                  color : '' };
+    browser.cookies.remove({
+    url: tabs[0].url,
+    name: "bgpicker"
+ +

Aussi, afin que vous puissiez voir ce qui se passe avec les cookies, le script rend compte de toutes les modifications apportées aux cookies dans la console :

+ +
browser.cookies.onChanged.addListener((changeInfo) => {
+  console.log(`Cookie changed:\n
+    * Cookie: ${JSON.stringify(changeInfo.cookie)}\n
+    * Cause: ${changeInfo.cause}\n
+    * Removed: ${changeInfo.removed}`);
+  });
+ +

Scripts—background.js

+ +

Un script d'arrière-plan (background.js) permet à l'utilisateur de choisir une icône d'arrière-plan et une couleur pour le site Web dans une session antérieure. Le script est à l'écoute des changements dans l'onglet actif, que ce soit l'utilisateur qui passe d'un onglet à l'autre ou modifie l'URL de la page affichée dans l'onglet. Lorsque l'un de ces événements se produit, cookieUpdate() est appelée.  cookieUpdate() utilise à son tour getActiveTab() pour obtenir l'ID de l'onglet actif. La fonction peut ensuite vérifier si un cookie existe pour l'extension, en utilisant l'URL de l'onglet :

+ +
    var gettingCookies = browser.cookies.get({
+      url: tabs[0].url,
+      name: "bgpicker"
+    });
+ +

Si le cookie "bgpicker" existe pour le site Web, les détails de l'icône et de la couleur sélectionnés précédemment sont récupérés et transmis au script de contenu updatebg.js à l'aide de messages :

+ +
    gettingCookies.then((cookie) => {
+      if (cookie) {
+        var cookieVal = JSON.parse(cookie.value);
+        browser.tabs.sendMessage(tabs[0].id, {image: cookieVal.image});
+        browser.tabs.sendMessage(tabs[0].id, {color: cookieVal.color});
+      }
+    });
+ +

Autres caractéristiques

+ +

En plus des API mentionnées jusqu'à présent, l'API Cookies propose également {{WebExtAPIRef("cookies.getAll")}}. Cette fonction prend l'objet details pour spécifier des filtres pour les cookies sélectionnés et retourne un tableau d'objets {{WebExtAPIRef("cookies.Cookie")}} qui correspondent aux critères de filtrage.

+ +

Apprendre encore plus

+ +

Si vous voulez en savoir plus sur l'API Cookies, consultez :

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/working_with_files/index.html b/files/fr/mozilla/add-ons/webextensions/working_with_files/index.html deleted file mode 100644 index 45133060d1..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/working_with_files/index.html +++ /dev/null @@ -1,160 +0,0 @@ ---- -title: Travailler avec des fichiers -slug: Mozilla/Add-ons/WebExtensions/Working_with_files -tags: - - Guide - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Working_with_files ---- -
{{AddonSidebar()}}
- -

Votre extension de navigateur peut avoir besoin de fichiers pour offrir des fonctionnalités complètes. Cet article examine les cinq mécanismes permettant de gérer les fichiers :

- - - -

Pour chacun de ces mécanismes, nous présentons leur utilisation avec des références à la documentation API pertinente, des guides et des exemples montrant comment utiliser l'API.

- -

Téléchargement de fichiers avec l'API de téléchargement

- -

Ce mécanisme vous permet d'obtenir un fichier depuis votre site Web (ou tout emplacement que vous pouvez définir comme URL) vers l'ordinateur de l'utilisateur. La clé est {{WebExtAPIRef("downloads.download()")}}, qui, dans sa forme la plus simple, accepte une URL et télécharge le fichier de cette URL vers le dossier de téléchargement par défaut de l'utilisateur :

- -
browser.downloads.download({ url : ‘https://example.org/image.png’ })
- -

Vous pouvez laisser l'utilisateur télécharger à un endroit de son choix en précisant le paramètresaveAs.

- -
-

Note : En utilisant URL.createObjectURL(), vous pouvez également télécharger des fichiers et des blobs définis dans votre JavaScript, y compris le contenu local extrait de IndexedDB.

-
- -

L'API de téléchargement fournit également des fonctionnalités pour annuler, mettre en pause, reprendre, effacer et supprimer les téléchargements, rechercher les fichiers téléchargés dans le gestionnaire de téléchargement, afficher les fichiers téléchargés dans le gestionnaire de fichiers de l'ordinateur, et ouvrir un fichier dans une application associée.

- -

Pour utiliser cette API, vous devez avoir les permissions API "downloads" spécifiées dans votre fichier manifest.json.

- -

Exemple : Latest download
- API référence : downloads API

- -

Ouverture de fichiers dans une extension avec un sélecteur de fichiers

- -

Si vous souhaitez travailler avec un fichier de l'ordinateur de l'utilisateur, une option est de permettre à l'utilisateur de sélectionner un fichier à l'aide du navigateur de fichiers de l'ordinateur. Créez une nouvelle page ou injectez un code dans une page existante pour utiliser le type file de l'élément input HTML pour offrir à l'utilisateur un sélecteur de fichiers. Une fois que l'utilisateur a sélectionné un ou des fichiers, le script associé à la page peut accéder au contenu du fichier à l'aide du DOM File API, de la même manière qu'une application web.

- -

Exemple : Imagify
- Guide : Using files from web applications
- API références : HTML input element | DOM File API

- -
-

Note : Si vous souhaitez accéder ou traiter tous les fichiers dans un dossier sélectionné, vous pouvez le faire en utilisant <input type="file" webkitdirectory="true"/>pour sélectionner le dossier et récupérer tous les fichiers qu'il contient.

-
- -

Ouverture de fichiers dans une extension avec glisser-déposer

- -

L'API Web Drag and Drop offre une alternative à l'utilisation d'un sélecteur de fichiers. Pour utiliser cette méthode, établissez une zone de stockage qui correspond à votre interface utilisateur, puis ajoutez les récepteurs pour les évènements dragenter (entrer), dragover (glisser), et drop  (déposer). Dans le gestionnaire de l'événement "déposer", votre code peut accéder à tout fichier déposé par l'utilisateur à partir de l'objet offert par la propriété dataTransfer en utilisant DataTransfer.files. Votre code peut alors accéder aux fichiers et les traiter en utilisant le DOM File API.

- -

Exemple : Imagify
- Guides : Using files from web applications | File drag and drop
- API référence : DOM File API

- -

Enregistrement de fichiers de données localement avec la bibliothèque de stockage de fichiers IndexedDB

- -

Si votre extension doit enregistrer des fichiers localement, idb-file-storage library fournit une simple enveloppe de IndexedDB API pour faciliter le stockage et la récupération des fichiers et des blobs .

- -

Sur Firefox, cette bibliothèque fournit également un " Promise-based API wrapper"   pour l'API IDBMutableFile non standard. (L'API IDBMutableFile permet aux extensions de créer et de maintenir un fichier objet de base de données IndexedDB qui fournit une API pour lire et modifier le contenu du fichier sans charger tout le fichier dans la mémoire.)

- -

Les principales caractéristiques de la bibliothèque sont les suivantes :

- - - -

L'exemple Store Collected Images illustre comment utiliser la plupart de ces fonctionnalités. (IDBMutableFile n'est pas inclus, mais vous pouvez trouver des exemples dans le idb-file-storage examples ainsi qu'un certain nombre d'autres exemples de la bibliothèque en action).

- -

L'exemple Store Collected Images permet aux utilisateurs d'ajouter des images à une collection en utilisant une option dans le menu contextuel de l'image. Les images sélectionnées sont collectées dans une fenêtre contextuelle et peuvent être enregistrées dans une collection nommée. Un bouton de la barre d'outils ({{WebExtAPIRef("browserAction")}}) ouvre la collection dans une page de navigation, sur laquelle l'utilisateur peut visualiser et supprimer des images enregistrées, avec une option de filtrage pour réduire les choix. Voir l'exemple en action.

- -

Le fonctionnement de la bibliothèque peut être compris en regardant image-store.js dans /utils/ :

- -

Création du stockage et enregistrement des images

- -
async function saveCollectedBlobs(collectionName, collectedBlobs) {
- const storedImages = await getFileStorage({name: "stored-images"});
-
- for (const item of collectedBlobs) {
-    await storedImages.put(`${collectionName}/${item.uuid}`, item.blob);
- }
-}
- -

saveCollectedBlobs est appelé lorsque l'utilisateur clique sur Enregistrer dans la fenêtre contextuelle et a fourni un nom pour la collection d'images. D'abord, getFileStorage crée s'il n'existe pas déjà, ou récupère l' IndexedDB de la base de données "images stockées" dans l'objet storedImages. storedImages.put ajoute chaque image collectée à la base de données, sous le nom de la collection, en utilisant l'identifiant unique du blob (le nom du fichier). Si l'image en stock est identique à celle existatnt déjà dans la base de données, elle est écrasée. Si vous voulez éviter cela, interrogez la base de données d'abord en utilisantimagesStore.list() avec un filtre pour le nom du fichier et, si la liste renvoie un fichier, ajoutez un suffixe approprié au nom de la nouvelle image pour stocker un élément distinct.

- -

Récupération des images stockées pour l'affichage

- -
export async function loadStoredImages(filter) {
- const imagesStore = await getFileStorage({name: "stored-images"});
- let listOptions = filter ? {includes: filter} : undefined;
- const imagesList = await imagesStore.list(listOptions);
- let storedImages = [];
- for (const storedName of imagesList) {
-    const blob = await imagesStore.get(storedName);
-    storedImages.push({storedName, blobUrl: URL.createObjectURL(blob)});
- }
- return storedImages;
-}
-
- -

loadStoredImages est appelé lorsque l'utilisateur clique sur la vue ou la recharge dans la page de navigation de la collection. getFileStorage ouvre la base de données "images stockées", puis imagesStore.listobtient une liste filtrée des images stockées. Cette liste est ensuite utilisée pour récupérer des images avec imagesStore.get et créer une liste retournée à l'interface utilisateur.

- -

Notez l'utilisation de URL.createObjectURL(blob) pour créer une URL qui fait référence au blob image. Cette URL est ensuite utilisée dans l'interface utilisateur (navigate-collection.jscollection.js) pour afficher l'image.

- -

Suppression d'images collectées

- -
async function removeStoredImages(storedImages) {
- const imagesStore = await getFileStorage({name: "stored-images"});
- for (const storedImage of storedImages) {
-    URL.revokeObjectURL(storedImage.blobUrl);
-    await imagesStore.remove(storedImage.storedName);
- }
-}
-
- -

removeStoredImages est appelé lorsque l'utilisateur clique sur "Delete" (supprimer) dans la page de navigation de la collection. À nouveau, getFileStorageouvre la base de données “stored-images”  et imagesStore.remove supprime chaque image à partir de la liste filtrée des images.

- -

Notez l'utilisation de URL.revokeObjectURL() pour révoquer explicitement l'URL du blob. Cela permet de libérer la mémoire allouée à l'URL. Si cela n'est pas fait, la mémoire n'est pas libérée jusqu'à ce que la page sur laquelle l'URL a été créée soit fermée. Si l'URL a été créée dans la page d'arrière-plan d'une extension, celle-ci n'est pas déchargée jusqu'à ce que l'extension soit désactivée, désinstallée ou rechargée, ce qui risque d'affecter inutilement les performances du navigateur. Si l'URL est créée dans la page d'une extension (nouvel onglet, fenêtre contextuelle ou barre latérale), la mémoire est libérée lorsque la page est fermée, mais il demeure de bonne pratique de révoquer l'URL lorsqu'elle n'est plus nécessaire.

- -

Une fois que l'URL du blob a été révoquée, toute tentative de la charger entraînera une erreur. Par exemple, si l'URL du blob était utilisée comme attribut SRC d'un IMG tag, l'image ne sera pas chargée et ne sera pas visible. Il est donc recommandé de supprimer les URL de blobs révoquées des éléments HTML générés après leur révocation.

- -

Exemple : Store Collected Images
- API Référence :  idb-file-storage library

- -
-

Note : Vous pouvez également utiliser l' IndexedDB API pour stocker des données de votre extension. Cela peut être utile lorsque vous devez stocker des données qui ne sont pas bien gérées par les paires de clés / valeurs simples offertes par le DOM Storage API.

-
- -

Traitement de fichiers dans une application locale

- -

Lorsque vous avez une application native ou que vous souhaitez offrir des fonctionnalités natives supplémentaires pour le traitement des fichiers, utilisez une messagerie pour transmettre un fichier à une application native pour traitement.

- -

Vous avez deux options :

- - - -

Pour ajouter le fichier ou le blob, vous souhaitez que l'application native utilise JSON.stringify().

- -

Pour utiliser cette méthode, l'extension doit demander la permission "nativeMessaging" dans son fichier manifest.json. Réciproquement, l'application native doit accorder l'autorisation à l'extension en incluant son ID dans le champ "allowed_extensions" de l'application "manifest".

- -

Exemple : Native Messaging (illustre simplement une messagerie)
- Guide : Native messaging
- API référence : runtime API

diff --git a/files/fr/mozilla/add-ons/webextensions/working_with_files/index.md b/files/fr/mozilla/add-ons/webextensions/working_with_files/index.md new file mode 100644 index 0000000000..45133060d1 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/working_with_files/index.md @@ -0,0 +1,160 @@ +--- +title: Travailler avec des fichiers +slug: Mozilla/Add-ons/WebExtensions/Working_with_files +tags: + - Guide + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Working_with_files +--- +
{{AddonSidebar()}}
+ +

Votre extension de navigateur peut avoir besoin de fichiers pour offrir des fonctionnalités complètes. Cet article examine les cinq mécanismes permettant de gérer les fichiers :

+ + + +

Pour chacun de ces mécanismes, nous présentons leur utilisation avec des références à la documentation API pertinente, des guides et des exemples montrant comment utiliser l'API.

+ +

Téléchargement de fichiers avec l'API de téléchargement

+ +

Ce mécanisme vous permet d'obtenir un fichier depuis votre site Web (ou tout emplacement que vous pouvez définir comme URL) vers l'ordinateur de l'utilisateur. La clé est {{WebExtAPIRef("downloads.download()")}}, qui, dans sa forme la plus simple, accepte une URL et télécharge le fichier de cette URL vers le dossier de téléchargement par défaut de l'utilisateur :

+ +
browser.downloads.download({ url : ‘https://example.org/image.png’ })
+ +

Vous pouvez laisser l'utilisateur télécharger à un endroit de son choix en précisant le paramètresaveAs.

+ +
+

Note : En utilisant URL.createObjectURL(), vous pouvez également télécharger des fichiers et des blobs définis dans votre JavaScript, y compris le contenu local extrait de IndexedDB.

+
+ +

L'API de téléchargement fournit également des fonctionnalités pour annuler, mettre en pause, reprendre, effacer et supprimer les téléchargements, rechercher les fichiers téléchargés dans le gestionnaire de téléchargement, afficher les fichiers téléchargés dans le gestionnaire de fichiers de l'ordinateur, et ouvrir un fichier dans une application associée.

+ +

Pour utiliser cette API, vous devez avoir les permissions API "downloads" spécifiées dans votre fichier manifest.json.

+ +

Exemple : Latest download
+ API référence : downloads API

+ +

Ouverture de fichiers dans une extension avec un sélecteur de fichiers

+ +

Si vous souhaitez travailler avec un fichier de l'ordinateur de l'utilisateur, une option est de permettre à l'utilisateur de sélectionner un fichier à l'aide du navigateur de fichiers de l'ordinateur. Créez une nouvelle page ou injectez un code dans une page existante pour utiliser le type file de l'élément input HTML pour offrir à l'utilisateur un sélecteur de fichiers. Une fois que l'utilisateur a sélectionné un ou des fichiers, le script associé à la page peut accéder au contenu du fichier à l'aide du DOM File API, de la même manière qu'une application web.

+ +

Exemple : Imagify
+ Guide : Using files from web applications
+ API références : HTML input element | DOM File API

+ +
+

Note : Si vous souhaitez accéder ou traiter tous les fichiers dans un dossier sélectionné, vous pouvez le faire en utilisant <input type="file" webkitdirectory="true"/>pour sélectionner le dossier et récupérer tous les fichiers qu'il contient.

+
+ +

Ouverture de fichiers dans une extension avec glisser-déposer

+ +

L'API Web Drag and Drop offre une alternative à l'utilisation d'un sélecteur de fichiers. Pour utiliser cette méthode, établissez une zone de stockage qui correspond à votre interface utilisateur, puis ajoutez les récepteurs pour les évènements dragenter (entrer), dragover (glisser), et drop  (déposer). Dans le gestionnaire de l'événement "déposer", votre code peut accéder à tout fichier déposé par l'utilisateur à partir de l'objet offert par la propriété dataTransfer en utilisant DataTransfer.files. Votre code peut alors accéder aux fichiers et les traiter en utilisant le DOM File API.

+ +

Exemple : Imagify
+ Guides : Using files from web applications | File drag and drop
+ API référence : DOM File API

+ +

Enregistrement de fichiers de données localement avec la bibliothèque de stockage de fichiers IndexedDB

+ +

Si votre extension doit enregistrer des fichiers localement, idb-file-storage library fournit une simple enveloppe de IndexedDB API pour faciliter le stockage et la récupération des fichiers et des blobs .

+ +

Sur Firefox, cette bibliothèque fournit également un " Promise-based API wrapper"   pour l'API IDBMutableFile non standard. (L'API IDBMutableFile permet aux extensions de créer et de maintenir un fichier objet de base de données IndexedDB qui fournit une API pour lire et modifier le contenu du fichier sans charger tout le fichier dans la mémoire.)

+ +

Les principales caractéristiques de la bibliothèque sont les suivantes :

+ + + +

L'exemple Store Collected Images illustre comment utiliser la plupart de ces fonctionnalités. (IDBMutableFile n'est pas inclus, mais vous pouvez trouver des exemples dans le idb-file-storage examples ainsi qu'un certain nombre d'autres exemples de la bibliothèque en action).

+ +

L'exemple Store Collected Images permet aux utilisateurs d'ajouter des images à une collection en utilisant une option dans le menu contextuel de l'image. Les images sélectionnées sont collectées dans une fenêtre contextuelle et peuvent être enregistrées dans une collection nommée. Un bouton de la barre d'outils ({{WebExtAPIRef("browserAction")}}) ouvre la collection dans une page de navigation, sur laquelle l'utilisateur peut visualiser et supprimer des images enregistrées, avec une option de filtrage pour réduire les choix. Voir l'exemple en action.

+ +

Le fonctionnement de la bibliothèque peut être compris en regardant image-store.js dans /utils/ :

+ +

Création du stockage et enregistrement des images

+ +
async function saveCollectedBlobs(collectionName, collectedBlobs) {
+ const storedImages = await getFileStorage({name: "stored-images"});
+
+ for (const item of collectedBlobs) {
+    await storedImages.put(`${collectionName}/${item.uuid}`, item.blob);
+ }
+}
+ +

saveCollectedBlobs est appelé lorsque l'utilisateur clique sur Enregistrer dans la fenêtre contextuelle et a fourni un nom pour la collection d'images. D'abord, getFileStorage crée s'il n'existe pas déjà, ou récupère l' IndexedDB de la base de données "images stockées" dans l'objet storedImages. storedImages.put ajoute chaque image collectée à la base de données, sous le nom de la collection, en utilisant l'identifiant unique du blob (le nom du fichier). Si l'image en stock est identique à celle existatnt déjà dans la base de données, elle est écrasée. Si vous voulez éviter cela, interrogez la base de données d'abord en utilisantimagesStore.list() avec un filtre pour le nom du fichier et, si la liste renvoie un fichier, ajoutez un suffixe approprié au nom de la nouvelle image pour stocker un élément distinct.

+ +

Récupération des images stockées pour l'affichage

+ +
export async function loadStoredImages(filter) {
+ const imagesStore = await getFileStorage({name: "stored-images"});
+ let listOptions = filter ? {includes: filter} : undefined;
+ const imagesList = await imagesStore.list(listOptions);
+ let storedImages = [];
+ for (const storedName of imagesList) {
+    const blob = await imagesStore.get(storedName);
+    storedImages.push({storedName, blobUrl: URL.createObjectURL(blob)});
+ }
+ return storedImages;
+}
+
+ +

loadStoredImages est appelé lorsque l'utilisateur clique sur la vue ou la recharge dans la page de navigation de la collection. getFileStorage ouvre la base de données "images stockées", puis imagesStore.listobtient une liste filtrée des images stockées. Cette liste est ensuite utilisée pour récupérer des images avec imagesStore.get et créer une liste retournée à l'interface utilisateur.

+ +

Notez l'utilisation de URL.createObjectURL(blob) pour créer une URL qui fait référence au blob image. Cette URL est ensuite utilisée dans l'interface utilisateur (navigate-collection.jscollection.js) pour afficher l'image.

+ +

Suppression d'images collectées

+ +
async function removeStoredImages(storedImages) {
+ const imagesStore = await getFileStorage({name: "stored-images"});
+ for (const storedImage of storedImages) {
+    URL.revokeObjectURL(storedImage.blobUrl);
+    await imagesStore.remove(storedImage.storedName);
+ }
+}
+
+ +

removeStoredImages est appelé lorsque l'utilisateur clique sur "Delete" (supprimer) dans la page de navigation de la collection. À nouveau, getFileStorageouvre la base de données “stored-images”  et imagesStore.remove supprime chaque image à partir de la liste filtrée des images.

+ +

Notez l'utilisation de URL.revokeObjectURL() pour révoquer explicitement l'URL du blob. Cela permet de libérer la mémoire allouée à l'URL. Si cela n'est pas fait, la mémoire n'est pas libérée jusqu'à ce que la page sur laquelle l'URL a été créée soit fermée. Si l'URL a été créée dans la page d'arrière-plan d'une extension, celle-ci n'est pas déchargée jusqu'à ce que l'extension soit désactivée, désinstallée ou rechargée, ce qui risque d'affecter inutilement les performances du navigateur. Si l'URL est créée dans la page d'une extension (nouvel onglet, fenêtre contextuelle ou barre latérale), la mémoire est libérée lorsque la page est fermée, mais il demeure de bonne pratique de révoquer l'URL lorsqu'elle n'est plus nécessaire.

+ +

Une fois que l'URL du blob a été révoquée, toute tentative de la charger entraînera une erreur. Par exemple, si l'URL du blob était utilisée comme attribut SRC d'un IMG tag, l'image ne sera pas chargée et ne sera pas visible. Il est donc recommandé de supprimer les URL de blobs révoquées des éléments HTML générés après leur révocation.

+ +

Exemple : Store Collected Images
+ API Référence :  idb-file-storage library

+ +
+

Note : Vous pouvez également utiliser l' IndexedDB API pour stocker des données de votre extension. Cela peut être utile lorsque vous devez stocker des données qui ne sont pas bien gérées par les paires de clés / valeurs simples offertes par le DOM Storage API.

+
+ +

Traitement de fichiers dans une application locale

+ +

Lorsque vous avez une application native ou que vous souhaitez offrir des fonctionnalités natives supplémentaires pour le traitement des fichiers, utilisez une messagerie pour transmettre un fichier à une application native pour traitement.

+ +

Vous avez deux options :

+ + + +

Pour ajouter le fichier ou le blob, vous souhaitez que l'application native utilise JSON.stringify().

+ +

Pour utiliser cette méthode, l'extension doit demander la permission "nativeMessaging" dans son fichier manifest.json. Réciproquement, l'application native doit accorder l'autorisation à l'extension en incluant son ID dans le champ "allowed_extensions" de l'application "manifest".

+ +

Exemple : Native Messaging (illustre simplement une messagerie)
+ Guide : Native messaging
+ API référence : runtime API

diff --git a/files/fr/mozilla/add-ons/webextensions/working_with_the_tabs_api/index.html b/files/fr/mozilla/add-ons/webextensions/working_with_the_tabs_api/index.html deleted file mode 100644 index 48d357b7ab..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/working_with_the_tabs_api/index.html +++ /dev/null @@ -1,629 +0,0 @@ ---- -title: Travailler avec l'API Tabs -slug: Mozilla/Add-ons/WebExtensions/Working_with_the_Tabs_API -tags: - - Add-ons - - Comment - - Débutant - - WebExtensions - - onglets - - tabs -translation_of: Mozilla/Add-ons/WebExtensions/Working_with_the_Tabs_API -original_slug: Mozilla/Add-ons/WebExtensions/Travailler_avec_l_API_Tabs ---- -

{{AddonSidebar}}

- -

Les onglets permettent à un utilisateur d'ouvrir plusieurs pages Web dans la fenêtre de son navigateur, puis de basculer entre ces pages Web. Grâce à l'API Tabs, vous pouvez utiliser et manipuler ces onglets pour créer des utilitaires qui offrent aux utilisateurs de nouvelles façons de travailler avec des onglets ou de fournir les fonctionnalités de votre extension.

- -

Dans cet article, nous allons regarder :

- - - -

Nous concluons ensuite en examinant d'autres fonctionnalités diverses offertes par l'API.

- -
-

Note : Certaines fonctionnalités de l'API d'onglet sont couvert ailleurs. Voici les méthodes que vous pouvez utiliser pour manipuler le contenu de l'onglet avec des scripts ({{WebExtAPIRef("tabs.connect")}}, {{WebExtAPIRef("tabs.sendMessage")}}, et  {{WebExtAPIRef("tabs.executeScript")}}). Si vous voulez plus d'informations sur ces méthodes, reportez-vous à l'article scripts de contenu et le guide pratique modifier une page web.

-
- -

Permissions et l'API Tabs

- -

Pour la majorité des fonctions de l'API Tabs, vous n'avez besoin d'aucune autorisation. Cependant, il y a certaines exceptions :

- - - -

Vous pouvez demander la permission "tabs" dans le fichier manifest.json de votre extension :

- -
"permissions": [
-  "<all_urls>",
-  "tabs"
-],
-
- -

Cette requête vous permet d'utiliser toutes les fonctionnalités de l'API Tabs sur tous les sites Web que vos utilisateurs visitent. Il existe également une autre méthode pour demander la permission d'utiliser {{WebExtAPIRef("tabs.executeScript")}} ou {{WebExtAPIRef("tabs.insertCSS")}} où vous n'avez pas besoin de la permission de l'hôte, sous la forme "activeTab". Cette permission fournit les mêmes droits que les  "onglets" avec <all_urls>, mais avec deux restrictions:

- - - -

L'avantage de cette approche est que l'utilisateur ne recevra pas d'avertissement d'autorisation indiquant que votre extension peut “Accéder à vos données pour tous les sites Web”. En effet, la permission <all_urls> permet à une extension d'exécuter des scripts dans n'importe quel onglet, à tout moment, alors que "activeTab" se limite à autoriser l'extension à effectuer une action demandée par l'utilisateur dans l'onglet en cours.

- -

En savoir plus sur les onglets et leurs propriétés

- -

Il y aura des occasions où vous voulez obtenir une liste de tous les onglets dans toutes les fenêtres du navigateur. D'autres fois, vous pourriez vouloir trouver un sous-ensemble d'onglets qui correspondent à certains critères spécifiques, tels que ceux ouverts à partir d'un onglet spécifique ou l'affichage des pages d'un domaine particulier. Et une fois que vous avez votre liste d'onglets, vous voudrez probablement en savoir plus sur leurs propriétés.

- -

C'est ici qu'intervient {{WebExtAPIRef("tabs.query")}}. Utilisé seul pour obtenir tous les onglets ou prendre l'objet queryInfo — pour spécifier des critères de requête tels que l'activation de l'onglet, dans la fenêtre en cours ou plus de 17 critères — {{WebExtAPIRef("tabs.query")}} renvoie un tableau d'objets {{WebExtAPIRef("tabs.Tab")}} objects contenant des informations sur les onglets.

- -

Lorsque vous souhaitez uniquement obtenir des informations sur l'onglet en cours, vous pouvez obtenir un objet {{WebExtAPIRef("tabs.Tab")}} pour cet onglet à l'aide de  {{WebExtAPIRef("tabs.getCurrent")}}. Si vous avez un ID d'onglet, vous pouvez obtenir son objet {{WebExtAPIRef("tabs.Tab")}} en utilisant {{WebExtAPIRef("tabs.get")}}.

- -

Par exemple

- -

Pour voir comment {{WebExtAPIRef("tabs.query")}} et {{WebExtAPIRef("tabs.Tab")}} sont utilisés, voyons comment l'exemple tabs-tabs-tabs ajoute la liste de  “passer aux onglets” à son popup bouton de barre d'outils.

- -

- -

manifest.json

- -

Voici le manifest.json:

- -
{
-  "browser_action": {
-    "browser_style": true,
-    "default_title": "Tabs, tabs, tabs",
-    "default_popup": "tabs.html"
-  },
-  "description": "A list of methods you can perform on a tab.",
-  "homepage_url": "https://github.com/mdn/webextensions-examples/tree/master/tabs-tabs-tabs",
-  "manifest_version": 2,
-  "name": "Tabs, tabs, tabs",
-  "permissions": [
-    "tabs"
-  ],
-  "version": "1.0"
-}
-
- -
-

Note :

- - -
- -

tabs.html

- -

tabs.html définit le contenu du popup de l'extension :

- -
<!DOCTYPE html>
-
-<html>
-
- <head>
-    <meta charset="utf-8">
-    <link rel="stylesheet" href="tabs.css"/>
- </head>
-
-<body>
-
- <div class="panel">
-    <div class="panel-section panel-section-header">
-     <div class="text-section-header">Tabs-tabs-tabs</div>
-    </div>
-
-    <a href="#" id="tabs-move-beginning">Move active tab to the beginning of the window</a><br>
-
-
-…
-
-Define the other menu items
-…
-
-    <div class="switch-tabs">
-
-     <p>Switch to tab</p>
-
-     <div id="tabs-list"></div>
-
-    </div>
- </div>
-
- <script src="tabs.js"></script>
-
-</body>
-
-</html>
-
- -

Ici, vous pouvez voir que, après la création des éléments de menu, un div vide avec la liste des onglets ID est configuré pour contenir la liste des onglets. Ensuite, tabs.js est appelée.

- -

Voici un résumé de ce qui précède :

- -
    -
  1. Les éléments de menu sont déclarés.  
  2. -
  3. Une div vide avec tabs-list est déclaré comme contenant la liste des onglets.
  4. -
  5. tabs.js est appelé.
  6. -
- -

tabs.js

- -

Dans tabs.js nous pouvons voir comment la liste des onglets est construite et ajoutée à la popup.

- -

Tout d'abord, un gestionnaire d'événements est ajouté pour exécuter listTabs() quand tabs.html est chargé :

- -

Création de la fenêtre contextuelle

- -

Tout d'abord, un gestionnaire d'événements est ajouté pour exécuter listTabs() quand tabs.html est chargé :

- -
document.addEventListener("DOMContentLoaded", listTabs);
- -

La première chose que fait listTabs() est d'appeler getCurrentWindowTabs(), où {{WebExtAPIRef("tabs.query")}} est utilisé pour obtenur un objet  {{WebExtAPIRef("tabs.Tab")}} pour le onglets dans la fenêtre courante :

- -
function getCurrentWindowTabs() {
-  return browser.tabs.query({currentWindow: true});
-}
-
- -

Maintenant, listTabs() est prêt à créer le contenu de la popup.

- -

Pour commencer :

- -
    -
  1. Récupérer les tabs-list div.
  2. -
  3. Créer un fragment de document (dans lequel la liste sera construite).
  4. -
  5. Mettre les compteurs.
  6. -
  7. Effacer le contenu de tabs-list div.
  8. -
- -
function listTabs() {
- getCurrentWindowTabs().then((tabs) => {
-    let tabsList = document.getElementById('tabs-list');
-    let currentTabs = document.createDocumentFragment();
-    let limit = 5;
-    let counter = 0;
-
-    tabsList.textContent = '';
-
- -

Ensuite, nous allons créer les liens pour chaque onglet :

- -
    -
  1. Boucle les 5 premiers éléments de l'objet {{WebExtAPIRef("tabs.Tab")}}.
  2. -
  3. Pour chaque poste, ajoutez un hyperlien vers le fragment de document. -
      -
    • L'étiquette du lien, c'est-à-dire son texte, est définie à l'aide du titre de l'onglet (ou de l'ID, s'il n'a pas de titre).
    • -
    • L'adresse du lien est définie à l'aide de l'ID de l'onglet.
    • -
    -
  4. -
- -
    for (let tab of tabs) {
-     if (!tab.active && counter <= limit) {
-        let tabLink = document.createElement('a');
-
-        tabLink.textContent = tab.title || tab.id;
-
-       tabLink.setAttribute('href', tab.id);
-        tabLink.classList.add('switch-tabs');
-        currentTabs.appendChild(tabLink);
-     }
-
-     counter += 1;
-
-    }
-
- -

Enfin, le fragment du document est écrit dans la div tabs-list :

- -
    tabsList.appendChild(currentTabs);
-  });
-}
-
- -

Travailler avec l'onglet actif

- -

Un autre exemple connexe est l'option d'information “Alert active tab”qui décharge toutes les propriétés de l'objet {{WebExtAPIRef("tabs.Tab")}} de l'onglet actif dans une alerte :

- -
 else if (e.target.id === "tabs-alertinfo") {
-   callOnActiveTab((tab) => {
-     let props = "";
-     for (let item in tab) {
-       props += `${ item } = ${ tab[item] } \n`;
-     }
-     alert(props);
-   });
- }
-
- -

callOnActiveTab() ftrouve l'objet de tabulation active en faisant une boucle sur les objets {{WebExtAPIRef("tabs.Tab")}} qui recherchent l'objet avec l'ensemble actif :

- -
document.addEventListener("click", function(e) {
- function callOnActiveTab(callback) {
-   getCurrentWindowTabs().then((tabs) => {
-     for (var tab of tabs) {
-       if (tab.active) {
-         callback(tab, tabs);
-       }
-     }
-   });
- }
-}
-
-
- -

Création, duplication, déplacement, mise à jour, rechargement et suppression des onglets

- -

Après avoir recueilli des informations sur les onglets, vous voudrez probablement faire quelque chose avec eux — soit pour offrir aux utilisateurs des fonctionnalités de manipulation et de gestion des onglets — soit pour implémenter des fonctionnalités dans votre extension. Les fonctions suivantes sont disponibles :

- - - -
-

Note :

- -

Ces fonctions nécessitent toutes l'ID (ou les ID) de l'onglet qu'elles manipulent :

- - - -

Alors que les fonctions suivantes agissent sur l'onglet actif (si aucun ID d'onglet n'est fourni) :

- - -
- -

Par exemple

- -

L'exemple tabs-tabs-tabs utilise toutes ces fonctionnalités sauf la mise à jour de l'URL d'un onglet. La façon dont ces API sont utilisées est similaire, nous allons donc regarder l'une des implémentations les plus impliquées, celle de l'option “Deplacer l'onglet actif vers le début de la liste des fenêtres”. Mais d'abord, voici une démonstration de la fonctionnalité en action :

- -

{{EmbedYouTube("-lJRzTIvhxo")}}

- -

manifest.json

- -

Aucune de ces fonctions ne nécessite de permission pour fonctionner, donc il n'y a aucune fonctionnalité dans le fichier manifest.json qui doit être mise en surbrillance.

- -

tabs.html

- -

tabs.html définit le “menu” affiché dans la fenêtre contextuelle, qui inclut l'option “Déplacer l'onglet actif au début de la liste des fenêtres”, wavec une série de balises <a> groupées par un séparateur visuel. Chaque élément de menu reçoit un ID, qui est utilisé dans tabs.js pour déterminer quel élément de menu est demandé.

- -
    <a href="#" id="tabs-move-beginning">Move active tab to the beginning of the window</a><br>
-    <a href="#" id="tabs-move-end">Move active tab to the end of the window</a><br>
-
-    <div class="panel-section-separator"></div>
-
-
-    <a href="#" id="tabs-duplicate">Duplicate active tab</a><br>
-
-    <a href="#" id="tabs-reload">Reload active tab</a><br>
-    <a href="#" id="tabs-alertinfo">Alert active tab info</a><br>
- -

tabs.js

- -

Pour implémenter le "menu" défini dans tabs.html, tabs.js inclut un écouteur pour les clics dans tabs.html

- -
document.addEventListener("click", function(e) {
- function callOnActiveTab(callback) {
-
-   getCurrentWindowTabs().then((tabs) => {
-     for (var tab of tabs) {
-       if (tab.active) {
-         callback(tab, tabs);
-       }
-     }
-   });
-}
-}
-
- -

Une série d'instructions if cherche alors à faire correspondre l'identifiant de l'élément cliqué. Cet extrait de code est pour l'option “Déplacer l'onglet actif au début de la liste des fenêtres” :

- -
 if (e.target.id === "tabs-move-beginning") {
-   callOnActiveTab((tab, tabs) => {
-     var index = 0;
-     if (!tab.pinned) {
-       index = firstUnpinnedTab(tabs);
-     }
-     console.log(`moving ${tab.id} to ${index}`)
-     browser.tabs.move([tab.id], {index});
-   });
- }
-
- -

Il est intéressant de noter l'utilisation de console.log. Cela vous permet de générer des informations sur la console du debugger, ce qui peut être utile lors de la résolution des problèmes rencontrés lors du développement.

- -

- -

Le code de déplacement appelle d'abord callOnActiveTab() qui à son tour appelle  getCurrentWindowTabs() pour obtenir un objet {{WebExtAPIRef("tabs.Tab")}} contenant les onglets de la fenêtre active. Il parcourt ensuite l'objet pour rechercher et renvoyer l'objet onglet actif :

- -
 function callOnActiveTab(callback) {
-   getCurrentWindowTabs().then((tabs) => {
-     for (var tab of tabs) {
-       if (tab.active) {
-         callback(tab, tabs);
-       }
-     }
-   });
- }
-
- -
Onglets épinglés
- -

Une caractéristique des onglets est que l'utilisateur peut épingler des onglets dans une fenêtre. Les onglets épinglés sont placés au début de la liste des onglets et ne peuvent pas être déplacés. Cela signifie que la première position vers laquelle un onglet peut se déplacer est la première position après les onglets épinglés. Ainsi, firstUnpinnedTab() est appelé pour trouver la position du premier onglet non goupillé en faisant une boucle dans l'objet tabs :

- -
function firstUnpinnedTab(tabs) {
- for (var tab of tabs) {
-   if (!tab.pinned) {
-     return tab.index;
-   }
- }
-}
-
- -

Nous avons maintenant tout ce qu'il faut pour déplacer l'onglet : l'objet onglet actif à partir duquel nous pouvons obtenir l'ID de l'onglet et la position à laquelle l'onglet doit être déplacé. Ainsi, nous pouvons mettre en œuvre le mouvement :

- -
     browser.tabs.move([tab.id], {index});
- -

Les fonctions restantes à dupliquer, recharger, créer et supprimer des onglets sont implémentées de manière similaire.

- -

Manipulation du niveau du zoom d'un onglet

- -

Le prochain ensemble de fonctions vous permet d'obtenir  ({{WebExtAPIRef("tabs.getZoom")}}) et de définir ({{WebExtAPIRef("tabs.setZoom")}}) le niveau de zoom dans un onglet. Vous pouvez également récupérer les paramètres de zoom  ({{WebExtAPIRef("tabs.getZoomSettings")}}) mais, au moment de l'écriture, la possibilité de définir les paramètres ({{WebExtAPIRef("tabs.setZoomSettings")}}) n'était pas disponible dans Firefox.

- -

Le niveau de zoom peut être compris entre 30% et 300% (représenté par des décimales de 0.3 à 3).

- -

Dans Firefox les paramètres de zoom par défaut sont :

- - - -

Par exemple

- -

L'exemple tabs-tabs-tabs comprend trois démonstrations de la fonction de zoom : zoom avant, zoom arrière, et réinitialisation du zoom. Voici la fonctionnalité en action :

- -

{{EmbedYouTube("RFr3oYBCg28")}}

- -

Jetons un coup d'oeil à la façon dont le zoom est implémenté.

- -

manifest.json

- -

Aucune des fonctions de zoom n'a besoin d'autorisations. Par conséquent, aucune fonction du fichier manifest.json ne doit être mise en surbrillance.

- -

tabs.html

- -

Nous avons déjà discuté comment le tabs.html définit les options pour cette extension, rien de nouveau ou unique n'est fait pour fournir les options de zoom.

- -

tabs.js

- -

tabs.js commence par définir plusieurs constantes utilisées dans le code du zoom :

- -
const ZOOM_INCREMENT = 0.2;
-const MAX_ZOOM = 3;
-const MIN_ZOOM = 0.3;
-const DEFAULT_ZOOM = 1;
-
- -

Il utilise ensuite le même écouteur que nous avons discuté précédemment afin qu'il puisse agir sur les clics dans tabs.html.

- -

Pour la fonction zoom, ceci s'exécute :

- -
 else if (e.target.id === "tabs-add-zoom") {
-   callOnActiveTab((tab) => {
-     var gettingZoom = browser.tabs.getZoom(tab.id);
-     gettingZoom.then((zoomFactor) => {
-       //the maximum zoomFactor is 3, it can't go higher
-       if (zoomFactor >= MAX_ZOOM) {
-         alert("Tab zoom factor is already at max!");
-       } else {
-         var newZoomFactor = zoomFactor + ZOOM_INCREMENT;
-         //if the newZoomFactor is set to higher than the max accepted
-         //it won't change, and will never alert that it's at maximum
-         newZoomFactor = newZoomFactor > MAX_ZOOM ? MAX_ZOOM : newZoomFactor;
-         browser.tabs.setZoom(tab.id, newZoomFactor);
-       }
-     });
-   });
- }
-
- -

Ce code utilise callOnActiveTab() pour obtenir les détails de l'onglet actif, puis  {{WebExtAPIRef("tabs.getZoom")}} obtient le facteur de zoom actuel de l'onglet. Le zoom actuel est comparé au maximum défini (MAX_ZOOM) et une alerte est émise si l'onglet est déjà au zoom maximum. Sinon, le niveau de zoom est incrémenté mais limité au zoom maximum, puis le zoom est défini avec {{WebExtAPIRef("tabs.getZoom")}}.

- -

Manipuler le CSS d'un onglet

- -

Une autre fonctionnalité importante offerte par l'API Tabs est la possibilité de manipuler le CSS dans un onglet — ajouter un nouveau CSS dans un onglet ({{WebExtAPIRef("tabs.insertCSS")}}) ou supprimer CSS d'un onglet  ({{WebExtAPIRef("tabs.removeCSS")}}).

- -

Cela peut être utile si vous voulez, par exemple, mettre en évidence certains éléments de la page ou modifier la disposition par défaut de la page (liste courte des cas d'utilisation).

- -

Par exemple

- -

L'exemple apply-css utilise ces fonctionnalités pour ajouter une bordure rouge à la page Web dans l'onglet actif. Voici la fonctionnalité en action:

- -

{{EmbedYouTube("bcK-GT2Dyhs")}}

- -

Voyons comment cela se passe.

- -

manifest.json

- -

Pour utiliser les fonctionnalités CSS dont vous avez besoin :

- - - -

Ce dernier est le plus utile, car il permet à une extension d'utiliser  {{WebExtAPIRef("tabs.insertCSS")}} et {{WebExtAPIRef("tabs.removeCSS")}} dans l'onglet actif lorsqu'il est exécuté depuis le navigateur de l'extension ou action de la page, menu contextuel ou un raccourci.

- -
{
-  "description": "Adds a page action to toggle applying CSS to pages.",
-
- "manifest_version": 2,
- "name": "apply-css",
- "version": "1.0",
- "homepage_url": "https://github.com/mdn/webextensions-examples/tree/master/apply-css",
-
- "background": {
-
-    "scripts": ["background.js"]
- },
-
- "page_action": {
-
-    "default_icon": "icons/off.svg",
-    "browser_style": true
- },
-
- "permissions": [
-    "activeTab",
-    "tabs"
- ]
-
-}
-
- -

Vous noterez que la permission "tabs" est ajoutée en plus de "activeTab". Cette permission supplémentaire est nécessaire pour permettre au script de l'extension d'accéder à l'URL de l'onglet, dont nous verrons l'importance dans un instant.

- -

Les autres caractéristiques principales du fichier manifeste sont la définition de:

- - - -

background.js

- -

Au démarrage, background.js définit un certain nombre de constantes à utiliser dans l'extension qui définissent le CSS à appliquer, des titres pour les “actions de page”, et une liste de protocoles dans lesquels l'extension fonctionnera :

- -
const CSS = "body { border: 20px solid red; }";
-const TITLE_APPLY = "Apply CSS";
-const TITLE_REMOVE = "Remove CSS";
-const APPLICABLE_PROTOCOLS = ["http:", "https:"];
-
- -

Lors du premier chargement, l'extension utilise {{WebExtAPIRef("tabs.query")}} pour obtenir une liste de tous les onglets de la fenêtre du navigateur en cours. Il parcourt ensuite les onglets appelant initializePageAction().

- -
var gettingAllTabs = browser.tabs.query({});
-
-gettingAllTabs.then((tabs) => {
- for (let tab of tabs) {
-   initializePageAction(tab);
- }
-});
-
- -

initializePageAction utilise protocolIsApplicable() pour déterminer si l'URL de l'onglet actif est celle à laquelle le CSS peut être appliqué :

- -
function protocolIsApplicable(url) {
- var anchor =  document.createElement('a');
- anchor.href = url;
- return APPLICABLE_PROTOCOLS.includes(anchor.protocol);
-}
-
- -

Ensuite, si l'exemple peut agir sur l'onglet, initializePageAction() définit l'icône  pageAction (barre de navigation) et le titre de l'onglet pour utiliser les versions ‘off’ avant de rendre la pageAction visible :

- -
function initializePageAction(tab) {
-
- if (protocolIsApplicable(tab.url)) {
-   browser.pageAction.setIcon({tabId: tab.id, path: "icons/off.svg"});
-   browser.pageAction.setTitle({tabId: tab.id, title: TITLE_APPLY});
-   browser.pageAction.show(tab.id);
- }
-}
-
- -

Maintenant, un écouteur sur geAction.onClicked attend que l'icône pageAction soit cliqué et appelle toggleCSS quand il l'est.

- -
browser.pageAction.onClicked.addListener(toggleCSS);
- -

toggleCSS() obtient le titre de la pageAction  puis prend l'action décrite :

- - - -
function toggleCSS(tab) {
-
-
- function gotTitle(title) {
-
-    if (title === TITLE_APPLY) {
-     browser.pageAction.setIcon({tabId: tab.id, path: "icons/on.svg"});
-     browser.pageAction.setTitle({tabId: tab.id, title: TITLE_REMOVE});
-     browser.tabs.insertCSS({code: CSS});
-    } else {
-     browser.pageAction.setIcon({tabId: tab.id, path: "icons/off.svg"});
-     browser.pageAction.setTitle({tabId: tab.id, title: TITLE_APPLY});
-     browser.tabs.removeCSS({code: CSS});
-    }
- }
-
- var gettingTitle = browser.pageAction.getTitle({tabId: tab.id});
-
- gettingTitle.then(gotTitle);
-}
-
- -

Enfin, pour s'assurer que pageAction est valide après chaque mise à jour de l'onglet, un écouteur sur {{WebExtAPIRef("tabs.onUpdated")}} appelle  initializePageAction() chaque fois que l'onglet est mis à jour pour vérifier que l'onglet utilise toujours un protocole auquel le CSS peut être appliqué.

- -
browser.tabs.onUpdated.addListener((id, changeInfo, tab) => {
-
- initializePageAction(tab);
-});
-
- -

Quelques autres capacités intéressantes

- -

Il existe deux autres fonctionnalités de l'API Tabs qui ne rentrent pas dans l'une des sections précédentes :

- - - -

Apprendre encore plus

- -

Si vous voulez en savoir plus sur l'API Tabs, consultez le :

- - diff --git a/files/fr/mozilla/add-ons/webextensions/working_with_the_tabs_api/index.md b/files/fr/mozilla/add-ons/webextensions/working_with_the_tabs_api/index.md new file mode 100644 index 0000000000..48d357b7ab --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/working_with_the_tabs_api/index.md @@ -0,0 +1,629 @@ +--- +title: Travailler avec l'API Tabs +slug: Mozilla/Add-ons/WebExtensions/Working_with_the_Tabs_API +tags: + - Add-ons + - Comment + - Débutant + - WebExtensions + - onglets + - tabs +translation_of: Mozilla/Add-ons/WebExtensions/Working_with_the_Tabs_API +original_slug: Mozilla/Add-ons/WebExtensions/Travailler_avec_l_API_Tabs +--- +

{{AddonSidebar}}

+ +

Les onglets permettent à un utilisateur d'ouvrir plusieurs pages Web dans la fenêtre de son navigateur, puis de basculer entre ces pages Web. Grâce à l'API Tabs, vous pouvez utiliser et manipuler ces onglets pour créer des utilitaires qui offrent aux utilisateurs de nouvelles façons de travailler avec des onglets ou de fournir les fonctionnalités de votre extension.

+ +

Dans cet article, nous allons regarder :

+ + + +

Nous concluons ensuite en examinant d'autres fonctionnalités diverses offertes par l'API.

+ +
+

Note : Certaines fonctionnalités de l'API d'onglet sont couvert ailleurs. Voici les méthodes que vous pouvez utiliser pour manipuler le contenu de l'onglet avec des scripts ({{WebExtAPIRef("tabs.connect")}}, {{WebExtAPIRef("tabs.sendMessage")}}, et  {{WebExtAPIRef("tabs.executeScript")}}). Si vous voulez plus d'informations sur ces méthodes, reportez-vous à l'article scripts de contenu et le guide pratique modifier une page web.

+
+ +

Permissions et l'API Tabs

+ +

Pour la majorité des fonctions de l'API Tabs, vous n'avez besoin d'aucune autorisation. Cependant, il y a certaines exceptions :

+ + + +

Vous pouvez demander la permission "tabs" dans le fichier manifest.json de votre extension :

+ +
"permissions": [
+  "<all_urls>",
+  "tabs"
+],
+
+ +

Cette requête vous permet d'utiliser toutes les fonctionnalités de l'API Tabs sur tous les sites Web que vos utilisateurs visitent. Il existe également une autre méthode pour demander la permission d'utiliser {{WebExtAPIRef("tabs.executeScript")}} ou {{WebExtAPIRef("tabs.insertCSS")}} où vous n'avez pas besoin de la permission de l'hôte, sous la forme "activeTab". Cette permission fournit les mêmes droits que les  "onglets" avec <all_urls>, mais avec deux restrictions:

+ + + +

L'avantage de cette approche est que l'utilisateur ne recevra pas d'avertissement d'autorisation indiquant que votre extension peut “Accéder à vos données pour tous les sites Web”. En effet, la permission <all_urls> permet à une extension d'exécuter des scripts dans n'importe quel onglet, à tout moment, alors que "activeTab" se limite à autoriser l'extension à effectuer une action demandée par l'utilisateur dans l'onglet en cours.

+ +

En savoir plus sur les onglets et leurs propriétés

+ +

Il y aura des occasions où vous voulez obtenir une liste de tous les onglets dans toutes les fenêtres du navigateur. D'autres fois, vous pourriez vouloir trouver un sous-ensemble d'onglets qui correspondent à certains critères spécifiques, tels que ceux ouverts à partir d'un onglet spécifique ou l'affichage des pages d'un domaine particulier. Et une fois que vous avez votre liste d'onglets, vous voudrez probablement en savoir plus sur leurs propriétés.

+ +

C'est ici qu'intervient {{WebExtAPIRef("tabs.query")}}. Utilisé seul pour obtenir tous les onglets ou prendre l'objet queryInfo — pour spécifier des critères de requête tels que l'activation de l'onglet, dans la fenêtre en cours ou plus de 17 critères — {{WebExtAPIRef("tabs.query")}} renvoie un tableau d'objets {{WebExtAPIRef("tabs.Tab")}} objects contenant des informations sur les onglets.

+ +

Lorsque vous souhaitez uniquement obtenir des informations sur l'onglet en cours, vous pouvez obtenir un objet {{WebExtAPIRef("tabs.Tab")}} pour cet onglet à l'aide de  {{WebExtAPIRef("tabs.getCurrent")}}. Si vous avez un ID d'onglet, vous pouvez obtenir son objet {{WebExtAPIRef("tabs.Tab")}} en utilisant {{WebExtAPIRef("tabs.get")}}.

+ +

Par exemple

+ +

Pour voir comment {{WebExtAPIRef("tabs.query")}} et {{WebExtAPIRef("tabs.Tab")}} sont utilisés, voyons comment l'exemple tabs-tabs-tabs ajoute la liste de  “passer aux onglets” à son popup bouton de barre d'outils.

+ +

+ +

manifest.json

+ +

Voici le manifest.json:

+ +
{
+  "browser_action": {
+    "browser_style": true,
+    "default_title": "Tabs, tabs, tabs",
+    "default_popup": "tabs.html"
+  },
+  "description": "A list of methods you can perform on a tab.",
+  "homepage_url": "https://github.com/mdn/webextensions-examples/tree/master/tabs-tabs-tabs",
+  "manifest_version": 2,
+  "name": "Tabs, tabs, tabs",
+  "permissions": [
+    "tabs"
+  ],
+  "version": "1.0"
+}
+
+ +
+

Note :

+ + +
+ +

tabs.html

+ +

tabs.html définit le contenu du popup de l'extension :

+ +
<!DOCTYPE html>
+
+<html>
+
+ <head>
+    <meta charset="utf-8">
+    <link rel="stylesheet" href="tabs.css"/>
+ </head>
+
+<body>
+
+ <div class="panel">
+    <div class="panel-section panel-section-header">
+     <div class="text-section-header">Tabs-tabs-tabs</div>
+    </div>
+
+    <a href="#" id="tabs-move-beginning">Move active tab to the beginning of the window</a><br>
+
+
+…
+
+Define the other menu items
+…
+
+    <div class="switch-tabs">
+
+     <p>Switch to tab</p>
+
+     <div id="tabs-list"></div>
+
+    </div>
+ </div>
+
+ <script src="tabs.js"></script>
+
+</body>
+
+</html>
+
+ +

Ici, vous pouvez voir que, après la création des éléments de menu, un div vide avec la liste des onglets ID est configuré pour contenir la liste des onglets. Ensuite, tabs.js est appelée.

+ +

Voici un résumé de ce qui précède :

+ +
    +
  1. Les éléments de menu sont déclarés.  
  2. +
  3. Une div vide avec tabs-list est déclaré comme contenant la liste des onglets.
  4. +
  5. tabs.js est appelé.
  6. +
+ +

tabs.js

+ +

Dans tabs.js nous pouvons voir comment la liste des onglets est construite et ajoutée à la popup.

+ +

Tout d'abord, un gestionnaire d'événements est ajouté pour exécuter listTabs() quand tabs.html est chargé :

+ +

Création de la fenêtre contextuelle

+ +

Tout d'abord, un gestionnaire d'événements est ajouté pour exécuter listTabs() quand tabs.html est chargé :

+ +
document.addEventListener("DOMContentLoaded", listTabs);
+ +

La première chose que fait listTabs() est d'appeler getCurrentWindowTabs(), où {{WebExtAPIRef("tabs.query")}} est utilisé pour obtenur un objet  {{WebExtAPIRef("tabs.Tab")}} pour le onglets dans la fenêtre courante :

+ +
function getCurrentWindowTabs() {
+  return browser.tabs.query({currentWindow: true});
+}
+
+ +

Maintenant, listTabs() est prêt à créer le contenu de la popup.

+ +

Pour commencer :

+ +
    +
  1. Récupérer les tabs-list div.
  2. +
  3. Créer un fragment de document (dans lequel la liste sera construite).
  4. +
  5. Mettre les compteurs.
  6. +
  7. Effacer le contenu de tabs-list div.
  8. +
+ +
function listTabs() {
+ getCurrentWindowTabs().then((tabs) => {
+    let tabsList = document.getElementById('tabs-list');
+    let currentTabs = document.createDocumentFragment();
+    let limit = 5;
+    let counter = 0;
+
+    tabsList.textContent = '';
+
+ +

Ensuite, nous allons créer les liens pour chaque onglet :

+ +
    +
  1. Boucle les 5 premiers éléments de l'objet {{WebExtAPIRef("tabs.Tab")}}.
  2. +
  3. Pour chaque poste, ajoutez un hyperlien vers le fragment de document. +
      +
    • L'étiquette du lien, c'est-à-dire son texte, est définie à l'aide du titre de l'onglet (ou de l'ID, s'il n'a pas de titre).
    • +
    • L'adresse du lien est définie à l'aide de l'ID de l'onglet.
    • +
    +
  4. +
+ +
    for (let tab of tabs) {
+     if (!tab.active && counter <= limit) {
+        let tabLink = document.createElement('a');
+
+        tabLink.textContent = tab.title || tab.id;
+
+       tabLink.setAttribute('href', tab.id);
+        tabLink.classList.add('switch-tabs');
+        currentTabs.appendChild(tabLink);
+     }
+
+     counter += 1;
+
+    }
+
+ +

Enfin, le fragment du document est écrit dans la div tabs-list :

+ +
    tabsList.appendChild(currentTabs);
+  });
+}
+
+ +

Travailler avec l'onglet actif

+ +

Un autre exemple connexe est l'option d'information “Alert active tab”qui décharge toutes les propriétés de l'objet {{WebExtAPIRef("tabs.Tab")}} de l'onglet actif dans une alerte :

+ +
 else if (e.target.id === "tabs-alertinfo") {
+   callOnActiveTab((tab) => {
+     let props = "";
+     for (let item in tab) {
+       props += `${ item } = ${ tab[item] } \n`;
+     }
+     alert(props);
+   });
+ }
+
+ +

callOnActiveTab() ftrouve l'objet de tabulation active en faisant une boucle sur les objets {{WebExtAPIRef("tabs.Tab")}} qui recherchent l'objet avec l'ensemble actif :

+ +
document.addEventListener("click", function(e) {
+ function callOnActiveTab(callback) {
+   getCurrentWindowTabs().then((tabs) => {
+     for (var tab of tabs) {
+       if (tab.active) {
+         callback(tab, tabs);
+       }
+     }
+   });
+ }
+}
+
+
+ +

Création, duplication, déplacement, mise à jour, rechargement et suppression des onglets

+ +

Après avoir recueilli des informations sur les onglets, vous voudrez probablement faire quelque chose avec eux — soit pour offrir aux utilisateurs des fonctionnalités de manipulation et de gestion des onglets — soit pour implémenter des fonctionnalités dans votre extension. Les fonctions suivantes sont disponibles :

+ + + +
+

Note :

+ +

Ces fonctions nécessitent toutes l'ID (ou les ID) de l'onglet qu'elles manipulent :

+ + + +

Alors que les fonctions suivantes agissent sur l'onglet actif (si aucun ID d'onglet n'est fourni) :

+ + +
+ +

Par exemple

+ +

L'exemple tabs-tabs-tabs utilise toutes ces fonctionnalités sauf la mise à jour de l'URL d'un onglet. La façon dont ces API sont utilisées est similaire, nous allons donc regarder l'une des implémentations les plus impliquées, celle de l'option “Deplacer l'onglet actif vers le début de la liste des fenêtres”. Mais d'abord, voici une démonstration de la fonctionnalité en action :

+ +

{{EmbedYouTube("-lJRzTIvhxo")}}

+ +

manifest.json

+ +

Aucune de ces fonctions ne nécessite de permission pour fonctionner, donc il n'y a aucune fonctionnalité dans le fichier manifest.json qui doit être mise en surbrillance.

+ +

tabs.html

+ +

tabs.html définit le “menu” affiché dans la fenêtre contextuelle, qui inclut l'option “Déplacer l'onglet actif au début de la liste des fenêtres”, wavec une série de balises <a> groupées par un séparateur visuel. Chaque élément de menu reçoit un ID, qui est utilisé dans tabs.js pour déterminer quel élément de menu est demandé.

+ +
    <a href="#" id="tabs-move-beginning">Move active tab to the beginning of the window</a><br>
+    <a href="#" id="tabs-move-end">Move active tab to the end of the window</a><br>
+
+    <div class="panel-section-separator"></div>
+
+
+    <a href="#" id="tabs-duplicate">Duplicate active tab</a><br>
+
+    <a href="#" id="tabs-reload">Reload active tab</a><br>
+    <a href="#" id="tabs-alertinfo">Alert active tab info</a><br>
+ +

tabs.js

+ +

Pour implémenter le "menu" défini dans tabs.html, tabs.js inclut un écouteur pour les clics dans tabs.html

+ +
document.addEventListener("click", function(e) {
+ function callOnActiveTab(callback) {
+
+   getCurrentWindowTabs().then((tabs) => {
+     for (var tab of tabs) {
+       if (tab.active) {
+         callback(tab, tabs);
+       }
+     }
+   });
+}
+}
+
+ +

Une série d'instructions if cherche alors à faire correspondre l'identifiant de l'élément cliqué. Cet extrait de code est pour l'option “Déplacer l'onglet actif au début de la liste des fenêtres” :

+ +
 if (e.target.id === "tabs-move-beginning") {
+   callOnActiveTab((tab, tabs) => {
+     var index = 0;
+     if (!tab.pinned) {
+       index = firstUnpinnedTab(tabs);
+     }
+     console.log(`moving ${tab.id} to ${index}`)
+     browser.tabs.move([tab.id], {index});
+   });
+ }
+
+ +

Il est intéressant de noter l'utilisation de console.log. Cela vous permet de générer des informations sur la console du debugger, ce qui peut être utile lors de la résolution des problèmes rencontrés lors du développement.

+ +

+ +

Le code de déplacement appelle d'abord callOnActiveTab() qui à son tour appelle  getCurrentWindowTabs() pour obtenir un objet {{WebExtAPIRef("tabs.Tab")}} contenant les onglets de la fenêtre active. Il parcourt ensuite l'objet pour rechercher et renvoyer l'objet onglet actif :

+ +
 function callOnActiveTab(callback) {
+   getCurrentWindowTabs().then((tabs) => {
+     for (var tab of tabs) {
+       if (tab.active) {
+         callback(tab, tabs);
+       }
+     }
+   });
+ }
+
+ +
Onglets épinglés
+ +

Une caractéristique des onglets est que l'utilisateur peut épingler des onglets dans une fenêtre. Les onglets épinglés sont placés au début de la liste des onglets et ne peuvent pas être déplacés. Cela signifie que la première position vers laquelle un onglet peut se déplacer est la première position après les onglets épinglés. Ainsi, firstUnpinnedTab() est appelé pour trouver la position du premier onglet non goupillé en faisant une boucle dans l'objet tabs :

+ +
function firstUnpinnedTab(tabs) {
+ for (var tab of tabs) {
+   if (!tab.pinned) {
+     return tab.index;
+   }
+ }
+}
+
+ +

Nous avons maintenant tout ce qu'il faut pour déplacer l'onglet : l'objet onglet actif à partir duquel nous pouvons obtenir l'ID de l'onglet et la position à laquelle l'onglet doit être déplacé. Ainsi, nous pouvons mettre en œuvre le mouvement :

+ +
     browser.tabs.move([tab.id], {index});
+ +

Les fonctions restantes à dupliquer, recharger, créer et supprimer des onglets sont implémentées de manière similaire.

+ +

Manipulation du niveau du zoom d'un onglet

+ +

Le prochain ensemble de fonctions vous permet d'obtenir  ({{WebExtAPIRef("tabs.getZoom")}}) et de définir ({{WebExtAPIRef("tabs.setZoom")}}) le niveau de zoom dans un onglet. Vous pouvez également récupérer les paramètres de zoom  ({{WebExtAPIRef("tabs.getZoomSettings")}}) mais, au moment de l'écriture, la possibilité de définir les paramètres ({{WebExtAPIRef("tabs.setZoomSettings")}}) n'était pas disponible dans Firefox.

+ +

Le niveau de zoom peut être compris entre 30% et 300% (représenté par des décimales de 0.3 à 3).

+ +

Dans Firefox les paramètres de zoom par défaut sont :

+ + + +

Par exemple

+ +

L'exemple tabs-tabs-tabs comprend trois démonstrations de la fonction de zoom : zoom avant, zoom arrière, et réinitialisation du zoom. Voici la fonctionnalité en action :

+ +

{{EmbedYouTube("RFr3oYBCg28")}}

+ +

Jetons un coup d'oeil à la façon dont le zoom est implémenté.

+ +

manifest.json

+ +

Aucune des fonctions de zoom n'a besoin d'autorisations. Par conséquent, aucune fonction du fichier manifest.json ne doit être mise en surbrillance.

+ +

tabs.html

+ +

Nous avons déjà discuté comment le tabs.html définit les options pour cette extension, rien de nouveau ou unique n'est fait pour fournir les options de zoom.

+ +

tabs.js

+ +

tabs.js commence par définir plusieurs constantes utilisées dans le code du zoom :

+ +
const ZOOM_INCREMENT = 0.2;
+const MAX_ZOOM = 3;
+const MIN_ZOOM = 0.3;
+const DEFAULT_ZOOM = 1;
+
+ +

Il utilise ensuite le même écouteur que nous avons discuté précédemment afin qu'il puisse agir sur les clics dans tabs.html.

+ +

Pour la fonction zoom, ceci s'exécute :

+ +
 else if (e.target.id === "tabs-add-zoom") {
+   callOnActiveTab((tab) => {
+     var gettingZoom = browser.tabs.getZoom(tab.id);
+     gettingZoom.then((zoomFactor) => {
+       //the maximum zoomFactor is 3, it can't go higher
+       if (zoomFactor >= MAX_ZOOM) {
+         alert("Tab zoom factor is already at max!");
+       } else {
+         var newZoomFactor = zoomFactor + ZOOM_INCREMENT;
+         //if the newZoomFactor is set to higher than the max accepted
+         //it won't change, and will never alert that it's at maximum
+         newZoomFactor = newZoomFactor > MAX_ZOOM ? MAX_ZOOM : newZoomFactor;
+         browser.tabs.setZoom(tab.id, newZoomFactor);
+       }
+     });
+   });
+ }
+
+ +

Ce code utilise callOnActiveTab() pour obtenir les détails de l'onglet actif, puis  {{WebExtAPIRef("tabs.getZoom")}} obtient le facteur de zoom actuel de l'onglet. Le zoom actuel est comparé au maximum défini (MAX_ZOOM) et une alerte est émise si l'onglet est déjà au zoom maximum. Sinon, le niveau de zoom est incrémenté mais limité au zoom maximum, puis le zoom est défini avec {{WebExtAPIRef("tabs.getZoom")}}.

+ +

Manipuler le CSS d'un onglet

+ +

Une autre fonctionnalité importante offerte par l'API Tabs est la possibilité de manipuler le CSS dans un onglet — ajouter un nouveau CSS dans un onglet ({{WebExtAPIRef("tabs.insertCSS")}}) ou supprimer CSS d'un onglet  ({{WebExtAPIRef("tabs.removeCSS")}}).

+ +

Cela peut être utile si vous voulez, par exemple, mettre en évidence certains éléments de la page ou modifier la disposition par défaut de la page (liste courte des cas d'utilisation).

+ +

Par exemple

+ +

L'exemple apply-css utilise ces fonctionnalités pour ajouter une bordure rouge à la page Web dans l'onglet actif. Voici la fonctionnalité en action:

+ +

{{EmbedYouTube("bcK-GT2Dyhs")}}

+ +

Voyons comment cela se passe.

+ +

manifest.json

+ +

Pour utiliser les fonctionnalités CSS dont vous avez besoin :

+ + + +

Ce dernier est le plus utile, car il permet à une extension d'utiliser  {{WebExtAPIRef("tabs.insertCSS")}} et {{WebExtAPIRef("tabs.removeCSS")}} dans l'onglet actif lorsqu'il est exécuté depuis le navigateur de l'extension ou action de la page, menu contextuel ou un raccourci.

+ +
{
+  "description": "Adds a page action to toggle applying CSS to pages.",
+
+ "manifest_version": 2,
+ "name": "apply-css",
+ "version": "1.0",
+ "homepage_url": "https://github.com/mdn/webextensions-examples/tree/master/apply-css",
+
+ "background": {
+
+    "scripts": ["background.js"]
+ },
+
+ "page_action": {
+
+    "default_icon": "icons/off.svg",
+    "browser_style": true
+ },
+
+ "permissions": [
+    "activeTab",
+    "tabs"
+ ]
+
+}
+
+ +

Vous noterez que la permission "tabs" est ajoutée en plus de "activeTab". Cette permission supplémentaire est nécessaire pour permettre au script de l'extension d'accéder à l'URL de l'onglet, dont nous verrons l'importance dans un instant.

+ +

Les autres caractéristiques principales du fichier manifeste sont la définition de:

+ + + +

background.js

+ +

Au démarrage, background.js définit un certain nombre de constantes à utiliser dans l'extension qui définissent le CSS à appliquer, des titres pour les “actions de page”, et une liste de protocoles dans lesquels l'extension fonctionnera :

+ +
const CSS = "body { border: 20px solid red; }";
+const TITLE_APPLY = "Apply CSS";
+const TITLE_REMOVE = "Remove CSS";
+const APPLICABLE_PROTOCOLS = ["http:", "https:"];
+
+ +

Lors du premier chargement, l'extension utilise {{WebExtAPIRef("tabs.query")}} pour obtenir une liste de tous les onglets de la fenêtre du navigateur en cours. Il parcourt ensuite les onglets appelant initializePageAction().

+ +
var gettingAllTabs = browser.tabs.query({});
+
+gettingAllTabs.then((tabs) => {
+ for (let tab of tabs) {
+   initializePageAction(tab);
+ }
+});
+
+ +

initializePageAction utilise protocolIsApplicable() pour déterminer si l'URL de l'onglet actif est celle à laquelle le CSS peut être appliqué :

+ +
function protocolIsApplicable(url) {
+ var anchor =  document.createElement('a');
+ anchor.href = url;
+ return APPLICABLE_PROTOCOLS.includes(anchor.protocol);
+}
+
+ +

Ensuite, si l'exemple peut agir sur l'onglet, initializePageAction() définit l'icône  pageAction (barre de navigation) et le titre de l'onglet pour utiliser les versions ‘off’ avant de rendre la pageAction visible :

+ +
function initializePageAction(tab) {
+
+ if (protocolIsApplicable(tab.url)) {
+   browser.pageAction.setIcon({tabId: tab.id, path: "icons/off.svg"});
+   browser.pageAction.setTitle({tabId: tab.id, title: TITLE_APPLY});
+   browser.pageAction.show(tab.id);
+ }
+}
+
+ +

Maintenant, un écouteur sur geAction.onClicked attend que l'icône pageAction soit cliqué et appelle toggleCSS quand il l'est.

+ +
browser.pageAction.onClicked.addListener(toggleCSS);
+ +

toggleCSS() obtient le titre de la pageAction  puis prend l'action décrite :

+ + + +
function toggleCSS(tab) {
+
+
+ function gotTitle(title) {
+
+    if (title === TITLE_APPLY) {
+     browser.pageAction.setIcon({tabId: tab.id, path: "icons/on.svg"});
+     browser.pageAction.setTitle({tabId: tab.id, title: TITLE_REMOVE});
+     browser.tabs.insertCSS({code: CSS});
+    } else {
+     browser.pageAction.setIcon({tabId: tab.id, path: "icons/off.svg"});
+     browser.pageAction.setTitle({tabId: tab.id, title: TITLE_APPLY});
+     browser.tabs.removeCSS({code: CSS});
+    }
+ }
+
+ var gettingTitle = browser.pageAction.getTitle({tabId: tab.id});
+
+ gettingTitle.then(gotTitle);
+}
+
+ +

Enfin, pour s'assurer que pageAction est valide après chaque mise à jour de l'onglet, un écouteur sur {{WebExtAPIRef("tabs.onUpdated")}} appelle  initializePageAction() chaque fois que l'onglet est mis à jour pour vérifier que l'onglet utilise toujours un protocole auquel le CSS peut être appliqué.

+ +
browser.tabs.onUpdated.addListener((id, changeInfo, tab) => {
+
+ initializePageAction(tab);
+});
+
+ +

Quelques autres capacités intéressantes

+ +

Il existe deux autres fonctionnalités de l'API Tabs qui ne rentrent pas dans l'une des sections précédentes :

+ + + +

Apprendre encore plus

+ +

Si vous voulez en savoir plus sur l'API Tabs, consultez le :

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/your_first_webextension/index.html b/files/fr/mozilla/add-ons/webextensions/your_first_webextension/index.html deleted file mode 100644 index f9d960c46d..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/your_first_webextension/index.html +++ /dev/null @@ -1,161 +0,0 @@ ---- -title: Votre première WebExtension -slug: Mozilla/Add-ons/WebExtensions/Your_first_WebExtension -tags: - - Add-ons - - Extensions - - Guide - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Your_first_WebExtension ---- -
{{AddonSidebar}}
- -
-

Note : Si vous connaissez déjà les concepts de base des extensions de navigateur, vous pouvez directement consulter afin de voir comment les fichiers d'extension sont assemblés. Ensuite, utilisez la documentation de référence pour commencer la construction de votre extension. Visitez l'atelier sur les extensions de Firefox pour en savoir plus sur le processus de test et de publication des WebExtensions pour Firefox.

-
- -

Cet article vous montre comment créer une extension Firefox, du début à la fin. L'extension ajoute une bordure de couleur rouge sur toutes les pages chargées depuis le site "mozilla.org" ou n'importe lequel de ses sous-domaines.

- -

Le code source de cet exemple est disponible sur GitHub : https://github.com/mdn/webextensions-examples/tree/master/borderify.

- -

Pour commencer, il vous faut Firefox (dans la version 45 ou avec une version supérieure).

- -

Écriture de l'extension

- -

Créez un nouveau répertoire et déplacez vous à l'intérieur. Par exemple, dans votre ligne de commande/terminal vous pourriez le faire comme ceci :

- -
mkdir borderify
-cd borderify
- -

manifest.json

- -

Créez un nouveau fichier nommé manifest.json directement dans le répertoire borderify et tapez-y le contenu suivant :

- -
{
-
-  "manifest_version": 2,
-  "name": "Borderify",
-  "version": "1.0",
-
-  "description": "Ajoute une bordure rouge pleine sur l'ensemble des pages web mozilla.org.",
-
-  "icons": {
-    "48": "icons/border-48.png"
-  },
-
-  "content_scripts": [
-    {
-      "matches": ["*://*.mozilla.org/*"],
-      "js": ["borderify.js"]
-    }
-  ]
-
-}
- - - -

La clé la plus intéressante ici est content_scripts, qui demande à Firefox de charger un script dans toutes les pages dont l'URL correspond à un motif de correspondance de domaines spécifique. Dans notre cas, nous demandons à Firefox de charger un script appelé borderify.js dans toutes les pages HTTP ou HTTPS du domaine "mozilla.org" et tous ses sous-domaines.

- - - -
-

Attention : Dans certaines situations, vous devez établir un identifiant pour votre extension. Si vous avez besoin d'établir un identifiant pour votre extension, incluez la clé browser_specific_settings dans manifest.json et définissez sa propriété gecko.id :

- -
"browser_specific_settings": {
-  "gecko": {
-    "id": "borderify@example.com"
-  }
-}
-
- -

icons/border-48.png

- -

Le module doit posséder une icône qui sera affichée dans le gestionnaire de modules du navigateur. Le fichier manifest.json utilisé ici fournit une icône icons/border-48.png.

- -

Créons le répertoire icons directement sous le répertoire borderify. Fournissez une icône nommée border-48.png. Vous pouvez utiliser celle-ci, qui est tirée du repértoire d'icônes Google Material Design, et est utilisable à condition de respecter les termes de la licence Creative Commons Attribution-ShareAlike.

- -

Si vous décidez de fournir votre propre icône, sa taille devra être de 48x48 pixels. Il est aussi possible de fournir une icône de 96x96 pixels, adaptée à l'affichage en haute résolution et, dans ce cas, elle devra être spécifiée par la propriété 96 de l'objet icon dans le fichier manifest.json :

- -
"icons": {
-  "48": "icons/border-48.png",
-  "96": "icons/border-96.png"
-}
- -

Une alternative est de fournir un fichier SVG qui sera automatiquement mis à la bonne échelle.

- - - -

borderify.js

- -

Enfin, créez un fichier nommé borderify.js directement dans le répertoire borderify et insérez-y ceci :

- -
document.body.style.border = "5px solid red";
- -

Ce script sera chargé dans chaque page où le domaine correspond au motif fourni par la clé content_scripts du manifeste. Ce script a un accès direct au document contrairement à des scripts chargés par la page elle-même.

- - - -

Essai

- -

D'abord, vérifiez de nouveau que les bons fichiers sont au bon endroit :

- -
borderify/
-    icons/
-        border-48.png
-    borderify.js
-    manifest.json
- -

Installation

- -

Dans Firefox : Ouvrez la page about:debugging, cliquez sur "Firefox" (dans les versions plus récentes de Firefox), cliquez sur « Chargez un module complémentaire temporaire… », puis sélectionnez n'importe quel fichier dans le répertoire de votre extension.

- -

{{EmbedYouTube("cer9EUKegG4")}}

- -

Le module complémentaire est dorénavant installé et persistera jusqu’à ce que vous redémarriez Firefox.

- -

Une autre alternative est d’exécuter l'extension depuis la ligne de commande à l'aide de l'outil web-ext.

- -

Test

- -

Rendez-vous sur une page web du domaine "mozilla.org". Vous devriez y voir une bordure rouge qui entoure la page :

- -

{{EmbedYouTube("rxBQl2Z9IBQ")}}

- -
-

Note : Toutefois, n'essayez pas ce module sur addons.mozilla.org ! Les scripts de contenu sont bloqués sur ce domaine.

-
- -

Expérimentez un peu en modifiant le contenu du script, en changeant par exemple la couleur de la bordure ou en altérant le contenu de la page. Puis sauvegardez le content script, rechargez les fichiers du module en cliquant sur le bouton « Recharger » dans about:debugging. Les changements sont immédiats :

- -

{{EmbedYouTube("NuajE60jfGY")}}

- - - -

Empaqueter et publier

- -

Afin que d'autres personnes puissent utiliser votre module, il vous faut l'empaqueter et le soumettre à la signature de Mozilla. Pour en apprendre plus, voir "Publier votre extension".

- -

Et ensuite ?

- -

Maintenant que vous avez eu une introduction au processus de développement d'une WebExtension pour Firefox, voici quelques suggestions pour la suite :

- - diff --git a/files/fr/mozilla/add-ons/webextensions/your_first_webextension/index.md b/files/fr/mozilla/add-ons/webextensions/your_first_webextension/index.md new file mode 100644 index 0000000000..f9d960c46d --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/your_first_webextension/index.md @@ -0,0 +1,161 @@ +--- +title: Votre première WebExtension +slug: Mozilla/Add-ons/WebExtensions/Your_first_WebExtension +tags: + - Add-ons + - Extensions + - Guide + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Your_first_WebExtension +--- +
{{AddonSidebar}}
+ +
+

Note : Si vous connaissez déjà les concepts de base des extensions de navigateur, vous pouvez directement consulter afin de voir comment les fichiers d'extension sont assemblés. Ensuite, utilisez la documentation de référence pour commencer la construction de votre extension. Visitez l'atelier sur les extensions de Firefox pour en savoir plus sur le processus de test et de publication des WebExtensions pour Firefox.

+
+ +

Cet article vous montre comment créer une extension Firefox, du début à la fin. L'extension ajoute une bordure de couleur rouge sur toutes les pages chargées depuis le site "mozilla.org" ou n'importe lequel de ses sous-domaines.

+ +

Le code source de cet exemple est disponible sur GitHub : https://github.com/mdn/webextensions-examples/tree/master/borderify.

+ +

Pour commencer, il vous faut Firefox (dans la version 45 ou avec une version supérieure).

+ +

Écriture de l'extension

+ +

Créez un nouveau répertoire et déplacez vous à l'intérieur. Par exemple, dans votre ligne de commande/terminal vous pourriez le faire comme ceci :

+ +
mkdir borderify
+cd borderify
+ +

manifest.json

+ +

Créez un nouveau fichier nommé manifest.json directement dans le répertoire borderify et tapez-y le contenu suivant :

+ +
{
+
+  "manifest_version": 2,
+  "name": "Borderify",
+  "version": "1.0",
+
+  "description": "Ajoute une bordure rouge pleine sur l'ensemble des pages web mozilla.org.",
+
+  "icons": {
+    "48": "icons/border-48.png"
+  },
+
+  "content_scripts": [
+    {
+      "matches": ["*://*.mozilla.org/*"],
+      "js": ["borderify.js"]
+    }
+  ]
+
+}
+ + + +

La clé la plus intéressante ici est content_scripts, qui demande à Firefox de charger un script dans toutes les pages dont l'URL correspond à un motif de correspondance de domaines spécifique. Dans notre cas, nous demandons à Firefox de charger un script appelé borderify.js dans toutes les pages HTTP ou HTTPS du domaine "mozilla.org" et tous ses sous-domaines.

+ + + +
+

Attention : Dans certaines situations, vous devez établir un identifiant pour votre extension. Si vous avez besoin d'établir un identifiant pour votre extension, incluez la clé browser_specific_settings dans manifest.json et définissez sa propriété gecko.id :

+ +
"browser_specific_settings": {
+  "gecko": {
+    "id": "borderify@example.com"
+  }
+}
+
+ +

icons/border-48.png

+ +

Le module doit posséder une icône qui sera affichée dans le gestionnaire de modules du navigateur. Le fichier manifest.json utilisé ici fournit une icône icons/border-48.png.

+ +

Créons le répertoire icons directement sous le répertoire borderify. Fournissez une icône nommée border-48.png. Vous pouvez utiliser celle-ci, qui est tirée du repértoire d'icônes Google Material Design, et est utilisable à condition de respecter les termes de la licence Creative Commons Attribution-ShareAlike.

+ +

Si vous décidez de fournir votre propre icône, sa taille devra être de 48x48 pixels. Il est aussi possible de fournir une icône de 96x96 pixels, adaptée à l'affichage en haute résolution et, dans ce cas, elle devra être spécifiée par la propriété 96 de l'objet icon dans le fichier manifest.json :

+ +
"icons": {
+  "48": "icons/border-48.png",
+  "96": "icons/border-96.png"
+}
+ +

Une alternative est de fournir un fichier SVG qui sera automatiquement mis à la bonne échelle.

+ + + +

borderify.js

+ +

Enfin, créez un fichier nommé borderify.js directement dans le répertoire borderify et insérez-y ceci :

+ +
document.body.style.border = "5px solid red";
+ +

Ce script sera chargé dans chaque page où le domaine correspond au motif fourni par la clé content_scripts du manifeste. Ce script a un accès direct au document contrairement à des scripts chargés par la page elle-même.

+ + + +

Essai

+ +

D'abord, vérifiez de nouveau que les bons fichiers sont au bon endroit :

+ +
borderify/
+    icons/
+        border-48.png
+    borderify.js
+    manifest.json
+ +

Installation

+ +

Dans Firefox : Ouvrez la page about:debugging, cliquez sur "Firefox" (dans les versions plus récentes de Firefox), cliquez sur « Chargez un module complémentaire temporaire… », puis sélectionnez n'importe quel fichier dans le répertoire de votre extension.

+ +

{{EmbedYouTube("cer9EUKegG4")}}

+ +

Le module complémentaire est dorénavant installé et persistera jusqu’à ce que vous redémarriez Firefox.

+ +

Une autre alternative est d’exécuter l'extension depuis la ligne de commande à l'aide de l'outil web-ext.

+ +

Test

+ +

Rendez-vous sur une page web du domaine "mozilla.org". Vous devriez y voir une bordure rouge qui entoure la page :

+ +

{{EmbedYouTube("rxBQl2Z9IBQ")}}

+ +
+

Note : Toutefois, n'essayez pas ce module sur addons.mozilla.org ! Les scripts de contenu sont bloqués sur ce domaine.

+
+ +

Expérimentez un peu en modifiant le contenu du script, en changeant par exemple la couleur de la bordure ou en altérant le contenu de la page. Puis sauvegardez le content script, rechargez les fichiers du module en cliquant sur le bouton « Recharger » dans about:debugging. Les changements sont immédiats :

+ +

{{EmbedYouTube("NuajE60jfGY")}}

+ + + +

Empaqueter et publier

+ +

Afin que d'autres personnes puissent utiliser votre module, il vous faut l'empaqueter et le soumettre à la signature de Mozilla. Pour en apprendre plus, voir "Publier votre extension".

+ +

Et ensuite ?

+ +

Maintenant que vous avez eu une introduction au processus de développement d'une WebExtension pour Firefox, voici quelques suggestions pour la suite :

+ + diff --git a/files/fr/mozilla/add-ons/webextensions/your_second_webextension/index.html b/files/fr/mozilla/add-ons/webextensions/your_second_webextension/index.html deleted file mode 100644 index 597a01e578..0000000000 --- a/files/fr/mozilla/add-ons/webextensions/your_second_webextension/index.html +++ /dev/null @@ -1,480 +0,0 @@ ---- -title: Votre deuxième WebExtension -slug: Mozilla/Add-ons/WebExtensions/Your_second_WebExtension -tags: - - WebExtensions -translation_of: Mozilla/Add-ons/WebExtensions/Your_second_WebExtension ---- -
{{AddonSidebar}}
- -

Si vous avez lu l'article votre première extension, vous avez déjà une idée de la manière d'écrire une extension. Dans cet article, nous allons écrire une extension légèrement plus complexe qui illustre un peu plus les API.

- -

L'extension ajoute un nouveau bouton à la barre d'outils Firefox. Lorsque l'utilisateur clique sur le bouton, nous affichons une fenêtre contextuelle qui leur permet de choisir un animal. Une fois l'animal choisi, l'extension remplace le contenu de la page actuelle par une image de l'animal choisi.

- -

Pour implémenter ce module, il nous faut :

- - - -

Voici une visualisation globale possible de la structure du module :

- -

- -

Il s'agit d'une extension simple mais qui démontre plusieurs concepts élémentaires de l'API des WebExtensions :

- - - -

Le code source complet du module est disponible sur GitHub.

- -

Afin de tester cette extension, vous aurez besoin de Firefox 45 ou d'une version ultérieure.

- -

Écrire l'extension

- -

Créez un nouveau répertoire et positionnez-vous dedans :

- -
-mkdir beastify
-cd beastify
-
- -

manifest.json

- -

Créez un nouveau fichier nommé "manifest.json" directement dans le répertoire "beastify" et saisissez-y le contenu suivant :

- -
-{
-
-  "manifest_version": 2,
-  "name": "Beastify",
-  "version": "1.0",
-
-  "description": "Ajoute une icône à la barre d'outil pour une action navigateur. Cliquez sur le bouton pour choisir une bête. Le contenu de l'onglet actif sera alors remplacé par une image de la bête choisie. Voir https://developer.mozilla.org/fr/Add-ons/WebExtensions/Examples#beastify",
-  "homepage_url": "https://github.com/mdn/webextensions-examples/tree/master/beastify",
-  "icons": {
-    "48": "icons/beasts-48.png"
-  },
-
-  "permissions": [
-    "activeTab"
-  ],
-
-  "browser_action": {
-    "default_icon": "icons/beasts-32.png",
-    "default_title": "Beastify",
-    "default_popup": "popup/choose_beast.html"
-  },
-
-  "web_accessible_resources": [
-    "beasts/frog.jpg",
-    "beasts/turtle.jpg",
-    "beasts/snake.jpg"
-  ]
-}
-
- - - -

Il est à noter que tous les chemins sont relatifs au fichier manifest.json.

- -

L'icône

- -

L'extension doit posséder une icône qui sera affichée dans le catalogue des extensions et dans la liste des extensions du navigateur (vous pouvez afficher le gestionnaire en ouvrant l'URL "about:addons"). Le fichier manifest.json a déclaré une icône pour la barre d'outils, "icons/beasts-48.png".

- -

Créez le répertoire "icons" et enregistrez-y une icône nommée "beasts-48.png". Vous pouvez utiliser une image de notre exemple, provenant du jeu d'icônes de Aha-Soft's Free Retina et utilisable selon les termes de sa licence.

- -

Si vous décidez de fournir votre propre icône, sa taille devra être de 48 pixels par 48 pixels. Il vous est aussi possible de fournir une icône de taille 96 pixels par 96 pixels, adaptée aux affichages haute résolution, et, devra dans ce cas, être spécifiée par la propriété 96 de l'objet icons du manifeste :

- -
-"icons": {
-  "48": "icons/beasts-48.png",
-  "96": "icons/beasts-96.png"
-}
- -

Le bouton de la barre d'outils

- -

Une icône est nécessaire pour le bouton de la barre d'outils et le manifeste déclare une icône "icons/beasts-32.png" pour la barre d'outils.

- -

Enregistrez une icône nommée "beasts-32.png" dans le répertoire "icons". Vous pouvez utiliser une image de notre exemple, provenant du jeu d'icône IconBeast Lite icon et utilisable selon les termes de sa licence.

- -

Si vous ne fournissez pas de popup, alors un évènement click est propagé au contexte de l'extension lorque l'utilisateur clique sur le bouton. Si une popup est fournie, l'évènement click n'est pas propagé, mais la popup fournie par l'extension s'ouvrira à la place. C'est ce que nous voulons faire ici, créons cette popup.

- -

La popup

- -

Le but de la popup est de permettre à l'utilisateur de choisir une des trois bêtes.

- -

Créez un nouveau répertoire nommé "popup" à la racine de l'extension. Ce sera l'emplacement du code de la popup. La popup sera constituée de trois fichiers :

- - - -
-mkdir popup
-cd popup
-touch choose_beast.html choose_beast.css choose_beast.js
-
- - -

choose_beast.html

- -

Voici le contenu du fichier HTML :

- -
-<!DOCTYPE html>
-
-<html>
-  <head>
-    <meta charset="utf-8">
-    <link rel="stylesheet" href="choose_beast.css"/>
-  </head>
-
-<body>
-  <div id="popup-content">
-    <div class="button beast">Grenouille</div>
-    <div class="button beast">Tortue</div>
-    <div class="button beast">Serpent</div>
-    <div class="button reset">Réinitialiser</div>
-  </div>
-  <div id="error-content" class="hidden">
-    <p>Cette page ne peut être transformée.</p>
-    <p>Veuillez essayer une autre page.</p>
-  </div>
-  <script src="choose_beast.js"></script>
-</body>
-
-</html>
-
- -

On a un élément <div> dont l'identifiant (id) vaut "popup-content" et qui contient un élément pour chaque choix d'animal. On a également un autre <div> avec l'identifiant "error-content" et une classe "hidden". Nous utiliserons cet élément au cas où il y ait un problème à l'initialisation de la popup.

- -

Il est à noter que le ficher CSS et le fichier JS sont inclus depuis ce fichier, tout comme une page web normale.

- -

choose_beast.css

- -

Le CSS fixe la taille de la popup, s'assure que les trois choix remplissent l'espace et les met en forme de façon élémentaire. C'est aussi le CSS qui masque les éléments avec class="hidden", cela signifie que l'élément <div> "error-content" sera masqué par défaut :

- -
-html, body {
-  width: 100px;
-}
-
-.hidden {
-  display: none;
-}
-
-.button {
-  margin: 3% auto;
-  padding: 4px;
-  text-align: center;
-  font-size: 1.5em;
-  cursor: pointer;
-}
-
-.beast:hover {
-  background-color: #CFF2F2;
-}
-
-.beast {
-  background-color: #E5F2F2;
-}
-
-.reset {
-  background-color: #FBFBC9;
-}
-
-.reset:hover {
-  background-color: #EAEA9D;
-}
-
- -

choose_beast.js

- -
-/**
- * On utilise CSS pour masquer tout ce qui se trouve sur la
- * page sauf les éléments avec la classe "beastify-image".
- */
-const hidePage = `body > :not(.beastify-image) {
-                    display: none;
-                  }`;
-
-/**
- * On écoute les clics sur les boutons et on envoie 
- * un message approprié au script de contenu dans la page
- */
-function listenForClicks() {
-  document.addEventListener("click", (e) => {
-
-    /**
-     * Selon le nom de la bête, on fournit l'URL vers 
-     * l'image correspondante.
-     */
-    function beastNameToURL(beastName) {
-      switch (beastName) {
-        case "Grenouille":
-          return browser.runtime.getURL("beasts/frog.jpg");
-        case "Serpent":
-          return browser.runtime.getURL("beasts/snake.jpg");
-        case "Tortue":
-          return browser.runtime.getURL("beasts/turtle.jpg");
-      }
-    }
-
-    /**
-     * On insère le CSS qui masque le contenu de la page
-     * dans l'onglet actif puis on récupère l'URL de la bête
-     * avant d'envoyer un message "beastify" au script de contenu
-     * dans l'onglet actif.
-     */
-    function beastify(tabs) {
-      browser.tabs.insertCSS({code: hidePage}).then(() => {
-        let url = beastNameToURL(e.target.textContent);
-        browser.tabs.sendMessage(tabs[0].id, {
-          command: "beastify",
-          beastURL: url
-        });
-      });
-    }
-
-    /**
-     * On retire le CSS qui masque le contenu de l'onglet actif
-     * et on envoie un message "reset" au script de contenu dans
-     * l'onglet actif.
-     */
-    function reset(tabs) {
-      browser.tabs.removeCSS({code: hidePage}).then(() => {
-        browser.tabs.sendMessage(tabs[0].id, {
-          command: "reset",
-        });
-      });
-    }
-
-    /**
-     * On affiche l'erreur dans la console.
-     */
-    function reportError(error) {
-      console.error(`Beastify impossible : ${error}`);
-    }
-
-    /**
-     * On obtient l'onglet actif et on appelle
-     * "beastify()" ou "reset()" lorsque c'est pertinent.
-     */
-    if (e.target.classList.contains("beast")) {
-      browser.tabs.query({active: true, currentWindow: true})
-        .then(beastify)
-        .catch(reportError);
-    }
-    else if (e.target.classList.contains("reset")) {
-      browser.tabs.query({active: true, currentWindow: true})
-        .then(reset)
-        .catch(reportError);
-    }
-  });
-}
-
-/**
- * Lors d'une erreur d'exécution du script, on affiche le
- * message d'erreur dans la popup et on masque l'interface
- * utilisateur normale.
- */
-function reportExecuteScriptError(error) {
-  document.querySelector("#popup-content").classList.add("hidden");
-  document.querySelector("#error-content").classList.remove("hidden");
-  console.error(`Erreur d'exécution du script de contenu beastify : ${error.message}`);
-}
-
-/**
- * When the popup loads, inject a content script into the active tab,
- * and add a click handler.
- * If we couldn't inject the script, handle the error.
- */
-browser.tabs.executeScript({file: "/content_scripts/beastify.js"})
-.then(listenForClicks)
-.catch(reportExecuteScriptError);
-
- -

Pour commencer, le script de la popup exécute un script de contenu dans l'onglet actif dès que la popup est chargée grâce à la méthode browser.tabs.executeScript(). Si l'exécution du script est réussie, le script de contenu sera chargé dans la page jusqu'à ce que l'onglet soit fermé ou que l'utilisateur navigue sur une autre page.

- -

On peut avoir des erreurs lors de l'appel à browser.tabs.executeScript() car il est impossible d'exécuter des scripts de contenu sur certaines pages. On ne peut, par exemple, pas en exécuter pour certaines pages privilégiées comme about:debugging ou sur des pages du domaine addons.mozilla.org. Si un tel échec se produit, reportExecuteScriptError() masquera l'élément avec "popup-content" et affichera celui avec "error-content" puis enregistrera une erreur dans la console.

- -

Si l'exécution du script de contenu réussit, la méthode listenForClicks() est appelée. Celle-ci permet d'écouter les clics sur la popup.

- - - -

La fonction beastify() fait trois choses :

- - - -

La fonction reset() annule la transformation de l'onglet courant en :

- - - -

Le script de contenu (content script)

- -

Créez un nouveau répertoire sous la racine du module nommé "content_scripts" et créez un nouveau fichier nommé "beastify.js", contenant :

- -
-(function() {
-  /**
-   * On vérifie et on initialise une variable globale
-   * permettant de s'assurer que le script ne fera rien
-   * s'il est injecté plusieurs fois sur la page.
-   */
-  if (window.hasRun) {
-    return;
-  }
-  window.hasRun = true;
-
-  /**
-   * Selon une URL fournie, on retire les éventuelles bêtes
-   * déjà ajoutées et on crée un élément img
-   * qui pointe vers l'image indiquée par l'URL et on insère
-   * le nœud dans le document.
-   */
-  function insertBeast(beastURL) {
-    removeExistingBeasts();
-    let beastImage = document.createElement("img");
-    beastImage.setAttribute("src", beastURL);
-    beastImage.style.height = "100vh";
-    beastImage.className = "beastify-image";
-    document.body.appendChild(beastImage);
-  }
-
-  /**
-   * On retire toute bête présente sur la page.
-   */
-  function removeExistingBeasts() {
-    let existingBeasts = document.querySelectorAll(".beastify-image");
-    for (let beast of existingBeasts) {
-      beast.remove();
-    }
-  }
-
-  /**
-   * On écoute les messages du script d'arrière-plan pour
-   * déclencher "insertBeast()" ou "removeExistingBeasts()".
-   */
-  browser.runtime.onMessage.addListener((message) => {
-    if (message.command === "beastify") {
-      insertBeast(message.beastURL);
-    } else if (message.command === "reset") {
-      removeExistingBeasts();
-    }
-  });
-})();
-
- -

La première chose que fait le script de contenu est de vérifier une variable globale window.hasRun : si elle est déjà définie, le script rend la main et sinon, il définit window.hasRun puis continue. On fait ceci pour éviter que la popup exécute un script de contenu à chaque fois que l'utilisateur ouvre la popup (y compris pour le même onglet) afin d'éviter d'avoir plusieurs instances du script dans le même onglet. Si un utilisateur ouvre plusieurs fois la popup, on doit s'assurer que c'est bien la première instance du script qui gère ce qui se passe.

- -

Après ça, on voit plus loin que le script de contenu utilise browser.runtime.onMessage. Cela permet de faire le lien avec le script de popup qui envoyait deux messages : "beastify" et "reset".

- - - -

Les bêtes

- -

Enfin, nous devons inclure les images d'animaux.

- -

Créez un nouveau répertoire nommé "beasts", et ajoutez-y les trois images, nommées de façon appropriée. Vous pouvez récupérer les images du dépôt GitHub, ou bien ci-après :

- -

- -

Test

- -

D'abord, vérifiez de nouveau que les bons fichiers sont au bon endroit :

- -
-beastify/
-
-  beasts/
-    frog.jpg
-    snake.jpg
-    turtle.jpg
-
-  content_scripts/
-    beastify.js
-
-  icons/
-    beasts-32.png
-    beasts-48.png
-
-  popup/
-    choose_beast.css
-    choose_beast.html
-    choose_beast.js
-
-  manifest.json
-
- -

A partir de Firefox version 45, il est possible d'installer les WebExtensions temporairement.

- -

Ouvrez "about:debugging" dans Firefox, cliquez sur "Charger un module complémentaire temporaire", et choisissez le fichier manifest.json. Vous devriez voir apparaitre l'icône du module dans la barre d'outils de Firefox :

- -

{{EmbedYouTube("sAM78GU4P34")}}

- -

Ouvrez une page web et cliquez sur l'icône, sélectionnez une bête et observez la page web se modifier :

- -

{{EmbedYouTube("YMQXyAQSiE8")}}

- -

Développement depuis la ligne de commande

- -

Il est possible d'automatiser l'installation temporaire de modules, étape par étape en utilisant l'outil web-ext tool. Essayez ainsi :

- -
-cd beastify
-web-ext run
-
- -

Et ensuite ?

- -

Maitenant que vous avez créé une WebExtension avancée pour Firefox, vous pouvez :

- - diff --git a/files/fr/mozilla/add-ons/webextensions/your_second_webextension/index.md b/files/fr/mozilla/add-ons/webextensions/your_second_webextension/index.md new file mode 100644 index 0000000000..597a01e578 --- /dev/null +++ b/files/fr/mozilla/add-ons/webextensions/your_second_webextension/index.md @@ -0,0 +1,480 @@ +--- +title: Votre deuxième WebExtension +slug: Mozilla/Add-ons/WebExtensions/Your_second_WebExtension +tags: + - WebExtensions +translation_of: Mozilla/Add-ons/WebExtensions/Your_second_WebExtension +--- +
{{AddonSidebar}}
+ +

Si vous avez lu l'article votre première extension, vous avez déjà une idée de la manière d'écrire une extension. Dans cet article, nous allons écrire une extension légèrement plus complexe qui illustre un peu plus les API.

+ +

L'extension ajoute un nouveau bouton à la barre d'outils Firefox. Lorsque l'utilisateur clique sur le bouton, nous affichons une fenêtre contextuelle qui leur permet de choisir un animal. Une fois l'animal choisi, l'extension remplace le contenu de la page actuelle par une image de l'animal choisi.

+ +

Pour implémenter ce module, il nous faut :

+ + + +

Voici une visualisation globale possible de la structure du module :

+ +

+ +

Il s'agit d'une extension simple mais qui démontre plusieurs concepts élémentaires de l'API des WebExtensions :

+ + + +

Le code source complet du module est disponible sur GitHub.

+ +

Afin de tester cette extension, vous aurez besoin de Firefox 45 ou d'une version ultérieure.

+ +

Écrire l'extension

+ +

Créez un nouveau répertoire et positionnez-vous dedans :

+ +
+mkdir beastify
+cd beastify
+
+ +

manifest.json

+ +

Créez un nouveau fichier nommé "manifest.json" directement dans le répertoire "beastify" et saisissez-y le contenu suivant :

+ +
+{
+
+  "manifest_version": 2,
+  "name": "Beastify",
+  "version": "1.0",
+
+  "description": "Ajoute une icône à la barre d'outil pour une action navigateur. Cliquez sur le bouton pour choisir une bête. Le contenu de l'onglet actif sera alors remplacé par une image de la bête choisie. Voir https://developer.mozilla.org/fr/Add-ons/WebExtensions/Examples#beastify",
+  "homepage_url": "https://github.com/mdn/webextensions-examples/tree/master/beastify",
+  "icons": {
+    "48": "icons/beasts-48.png"
+  },
+
+  "permissions": [
+    "activeTab"
+  ],
+
+  "browser_action": {
+    "default_icon": "icons/beasts-32.png",
+    "default_title": "Beastify",
+    "default_popup": "popup/choose_beast.html"
+  },
+
+  "web_accessible_resources": [
+    "beasts/frog.jpg",
+    "beasts/turtle.jpg",
+    "beasts/snake.jpg"
+  ]
+}
+
+ + + +

Il est à noter que tous les chemins sont relatifs au fichier manifest.json.

+ +

L'icône

+ +

L'extension doit posséder une icône qui sera affichée dans le catalogue des extensions et dans la liste des extensions du navigateur (vous pouvez afficher le gestionnaire en ouvrant l'URL "about:addons"). Le fichier manifest.json a déclaré une icône pour la barre d'outils, "icons/beasts-48.png".

+ +

Créez le répertoire "icons" et enregistrez-y une icône nommée "beasts-48.png". Vous pouvez utiliser une image de notre exemple, provenant du jeu d'icônes de Aha-Soft's Free Retina et utilisable selon les termes de sa licence.

+ +

Si vous décidez de fournir votre propre icône, sa taille devra être de 48 pixels par 48 pixels. Il vous est aussi possible de fournir une icône de taille 96 pixels par 96 pixels, adaptée aux affichages haute résolution, et, devra dans ce cas, être spécifiée par la propriété 96 de l'objet icons du manifeste :

+ +
+"icons": {
+  "48": "icons/beasts-48.png",
+  "96": "icons/beasts-96.png"
+}
+ +

Le bouton de la barre d'outils

+ +

Une icône est nécessaire pour le bouton de la barre d'outils et le manifeste déclare une icône "icons/beasts-32.png" pour la barre d'outils.

+ +

Enregistrez une icône nommée "beasts-32.png" dans le répertoire "icons". Vous pouvez utiliser une image de notre exemple, provenant du jeu d'icône IconBeast Lite icon et utilisable selon les termes de sa licence.

+ +

Si vous ne fournissez pas de popup, alors un évènement click est propagé au contexte de l'extension lorque l'utilisateur clique sur le bouton. Si une popup est fournie, l'évènement click n'est pas propagé, mais la popup fournie par l'extension s'ouvrira à la place. C'est ce que nous voulons faire ici, créons cette popup.

+ +

La popup

+ +

Le but de la popup est de permettre à l'utilisateur de choisir une des trois bêtes.

+ +

Créez un nouveau répertoire nommé "popup" à la racine de l'extension. Ce sera l'emplacement du code de la popup. La popup sera constituée de trois fichiers :

+ + + +
+mkdir popup
+cd popup
+touch choose_beast.html choose_beast.css choose_beast.js
+
+ + +

choose_beast.html

+ +

Voici le contenu du fichier HTML :

+ +
+<!DOCTYPE html>
+
+<html>
+  <head>
+    <meta charset="utf-8">
+    <link rel="stylesheet" href="choose_beast.css"/>
+  </head>
+
+<body>
+  <div id="popup-content">
+    <div class="button beast">Grenouille</div>
+    <div class="button beast">Tortue</div>
+    <div class="button beast">Serpent</div>
+    <div class="button reset">Réinitialiser</div>
+  </div>
+  <div id="error-content" class="hidden">
+    <p>Cette page ne peut être transformée.</p>
+    <p>Veuillez essayer une autre page.</p>
+  </div>
+  <script src="choose_beast.js"></script>
+</body>
+
+</html>
+
+ +

On a un élément <div> dont l'identifiant (id) vaut "popup-content" et qui contient un élément pour chaque choix d'animal. On a également un autre <div> avec l'identifiant "error-content" et une classe "hidden". Nous utiliserons cet élément au cas où il y ait un problème à l'initialisation de la popup.

+ +

Il est à noter que le ficher CSS et le fichier JS sont inclus depuis ce fichier, tout comme une page web normale.

+ +

choose_beast.css

+ +

Le CSS fixe la taille de la popup, s'assure que les trois choix remplissent l'espace et les met en forme de façon élémentaire. C'est aussi le CSS qui masque les éléments avec class="hidden", cela signifie que l'élément <div> "error-content" sera masqué par défaut :

+ +
+html, body {
+  width: 100px;
+}
+
+.hidden {
+  display: none;
+}
+
+.button {
+  margin: 3% auto;
+  padding: 4px;
+  text-align: center;
+  font-size: 1.5em;
+  cursor: pointer;
+}
+
+.beast:hover {
+  background-color: #CFF2F2;
+}
+
+.beast {
+  background-color: #E5F2F2;
+}
+
+.reset {
+  background-color: #FBFBC9;
+}
+
+.reset:hover {
+  background-color: #EAEA9D;
+}
+
+ +

choose_beast.js

+ +
+/**
+ * On utilise CSS pour masquer tout ce qui se trouve sur la
+ * page sauf les éléments avec la classe "beastify-image".
+ */
+const hidePage = `body > :not(.beastify-image) {
+                    display: none;
+                  }`;
+
+/**
+ * On écoute les clics sur les boutons et on envoie 
+ * un message approprié au script de contenu dans la page
+ */
+function listenForClicks() {
+  document.addEventListener("click", (e) => {
+
+    /**
+     * Selon le nom de la bête, on fournit l'URL vers 
+     * l'image correspondante.
+     */
+    function beastNameToURL(beastName) {
+      switch (beastName) {
+        case "Grenouille":
+          return browser.runtime.getURL("beasts/frog.jpg");
+        case "Serpent":
+          return browser.runtime.getURL("beasts/snake.jpg");
+        case "Tortue":
+          return browser.runtime.getURL("beasts/turtle.jpg");
+      }
+    }
+
+    /**
+     * On insère le CSS qui masque le contenu de la page
+     * dans l'onglet actif puis on récupère l'URL de la bête
+     * avant d'envoyer un message "beastify" au script de contenu
+     * dans l'onglet actif.
+     */
+    function beastify(tabs) {
+      browser.tabs.insertCSS({code: hidePage}).then(() => {
+        let url = beastNameToURL(e.target.textContent);
+        browser.tabs.sendMessage(tabs[0].id, {
+          command: "beastify",
+          beastURL: url
+        });
+      });
+    }
+
+    /**
+     * On retire le CSS qui masque le contenu de l'onglet actif
+     * et on envoie un message "reset" au script de contenu dans
+     * l'onglet actif.
+     */
+    function reset(tabs) {
+      browser.tabs.removeCSS({code: hidePage}).then(() => {
+        browser.tabs.sendMessage(tabs[0].id, {
+          command: "reset",
+        });
+      });
+    }
+
+    /**
+     * On affiche l'erreur dans la console.
+     */
+    function reportError(error) {
+      console.error(`Beastify impossible : ${error}`);
+    }
+
+    /**
+     * On obtient l'onglet actif et on appelle
+     * "beastify()" ou "reset()" lorsque c'est pertinent.
+     */
+    if (e.target.classList.contains("beast")) {
+      browser.tabs.query({active: true, currentWindow: true})
+        .then(beastify)
+        .catch(reportError);
+    }
+    else if (e.target.classList.contains("reset")) {
+      browser.tabs.query({active: true, currentWindow: true})
+        .then(reset)
+        .catch(reportError);
+    }
+  });
+}
+
+/**
+ * Lors d'une erreur d'exécution du script, on affiche le
+ * message d'erreur dans la popup et on masque l'interface
+ * utilisateur normale.
+ */
+function reportExecuteScriptError(error) {
+  document.querySelector("#popup-content").classList.add("hidden");
+  document.querySelector("#error-content").classList.remove("hidden");
+  console.error(`Erreur d'exécution du script de contenu beastify : ${error.message}`);
+}
+
+/**
+ * When the popup loads, inject a content script into the active tab,
+ * and add a click handler.
+ * If we couldn't inject the script, handle the error.
+ */
+browser.tabs.executeScript({file: "/content_scripts/beastify.js"})
+.then(listenForClicks)
+.catch(reportExecuteScriptError);
+
+ +

Pour commencer, le script de la popup exécute un script de contenu dans l'onglet actif dès que la popup est chargée grâce à la méthode browser.tabs.executeScript(). Si l'exécution du script est réussie, le script de contenu sera chargé dans la page jusqu'à ce que l'onglet soit fermé ou que l'utilisateur navigue sur une autre page.

+ +

On peut avoir des erreurs lors de l'appel à browser.tabs.executeScript() car il est impossible d'exécuter des scripts de contenu sur certaines pages. On ne peut, par exemple, pas en exécuter pour certaines pages privilégiées comme about:debugging ou sur des pages du domaine addons.mozilla.org. Si un tel échec se produit, reportExecuteScriptError() masquera l'élément avec "popup-content" et affichera celui avec "error-content" puis enregistrera une erreur dans la console.

+ +

Si l'exécution du script de contenu réussit, la méthode listenForClicks() est appelée. Celle-ci permet d'écouter les clics sur la popup.

+ + + +

La fonction beastify() fait trois choses :

+ + + +

La fonction reset() annule la transformation de l'onglet courant en :

+ + + +

Le script de contenu (content script)

+ +

Créez un nouveau répertoire sous la racine du module nommé "content_scripts" et créez un nouveau fichier nommé "beastify.js", contenant :

+ +
+(function() {
+  /**
+   * On vérifie et on initialise une variable globale
+   * permettant de s'assurer que le script ne fera rien
+   * s'il est injecté plusieurs fois sur la page.
+   */
+  if (window.hasRun) {
+    return;
+  }
+  window.hasRun = true;
+
+  /**
+   * Selon une URL fournie, on retire les éventuelles bêtes
+   * déjà ajoutées et on crée un élément img
+   * qui pointe vers l'image indiquée par l'URL et on insère
+   * le nœud dans le document.
+   */
+  function insertBeast(beastURL) {
+    removeExistingBeasts();
+    let beastImage = document.createElement("img");
+    beastImage.setAttribute("src", beastURL);
+    beastImage.style.height = "100vh";
+    beastImage.className = "beastify-image";
+    document.body.appendChild(beastImage);
+  }
+
+  /**
+   * On retire toute bête présente sur la page.
+   */
+  function removeExistingBeasts() {
+    let existingBeasts = document.querySelectorAll(".beastify-image");
+    for (let beast of existingBeasts) {
+      beast.remove();
+    }
+  }
+
+  /**
+   * On écoute les messages du script d'arrière-plan pour
+   * déclencher "insertBeast()" ou "removeExistingBeasts()".
+   */
+  browser.runtime.onMessage.addListener((message) => {
+    if (message.command === "beastify") {
+      insertBeast(message.beastURL);
+    } else if (message.command === "reset") {
+      removeExistingBeasts();
+    }
+  });
+})();
+
+ +

La première chose que fait le script de contenu est de vérifier une variable globale window.hasRun : si elle est déjà définie, le script rend la main et sinon, il définit window.hasRun puis continue. On fait ceci pour éviter que la popup exécute un script de contenu à chaque fois que l'utilisateur ouvre la popup (y compris pour le même onglet) afin d'éviter d'avoir plusieurs instances du script dans le même onglet. Si un utilisateur ouvre plusieurs fois la popup, on doit s'assurer que c'est bien la première instance du script qui gère ce qui se passe.

+ +

Après ça, on voit plus loin que le script de contenu utilise browser.runtime.onMessage. Cela permet de faire le lien avec le script de popup qui envoyait deux messages : "beastify" et "reset".

+ + + +

Les bêtes

+ +

Enfin, nous devons inclure les images d'animaux.

+ +

Créez un nouveau répertoire nommé "beasts", et ajoutez-y les trois images, nommées de façon appropriée. Vous pouvez récupérer les images du dépôt GitHub, ou bien ci-après :

+ +

+ +

Test

+ +

D'abord, vérifiez de nouveau que les bons fichiers sont au bon endroit :

+ +
+beastify/
+
+  beasts/
+    frog.jpg
+    snake.jpg
+    turtle.jpg
+
+  content_scripts/
+    beastify.js
+
+  icons/
+    beasts-32.png
+    beasts-48.png
+
+  popup/
+    choose_beast.css
+    choose_beast.html
+    choose_beast.js
+
+  manifest.json
+
+ +

A partir de Firefox version 45, il est possible d'installer les WebExtensions temporairement.

+ +

Ouvrez "about:debugging" dans Firefox, cliquez sur "Charger un module complémentaire temporaire", et choisissez le fichier manifest.json. Vous devriez voir apparaitre l'icône du module dans la barre d'outils de Firefox :

+ +

{{EmbedYouTube("sAM78GU4P34")}}

+ +

Ouvrez une page web et cliquez sur l'icône, sélectionnez une bête et observez la page web se modifier :

+ +

{{EmbedYouTube("YMQXyAQSiE8")}}

+ +

Développement depuis la ligne de commande

+ +

Il est possible d'automatiser l'installation temporaire de modules, étape par étape en utilisant l'outil web-ext tool. Essayez ainsi :

+ +
+cd beastify
+web-ext run
+
+ +

Et ensuite ?

+ +

Maitenant que vous avez créé une WebExtension avancée pour Firefox, vous pouvez :

+ + diff --git a/files/fr/mozilla/firefox/experimental_features/index.html b/files/fr/mozilla/firefox/experimental_features/index.html deleted file mode 100644 index 444f50ddd7..0000000000 --- a/files/fr/mozilla/firefox/experimental_features/index.html +++ /dev/null @@ -1,1743 +0,0 @@ ---- -title: Fonctionnalités expérimentales dans Firefox -slug: Mozilla/Firefox/Experimental_features -tags: - - Experimental - - Firefox - - Preferences - - features -translation_of: Mozilla/Firefox/Experimental_features ---- -
{{FirefoxSidebar}}
- -

Cette page détaille les fonctionnalités expérimentales ou partiellement implémentées présentes dans Firefox. Cela inclut les fonctionnalités concernées par les standards web très récents ou en cours de construction. Les informations de cette page permettent de savoir quelles versions contiennent ces fonctionnalités, si elles sont activées par défaut et la préférence qui peut être utilisée pour les activer ou les désactiver. Cela vous permet de tester les fonctionnalités avant leur sortie « générale ».

- -

Les nouvelles fonctionnalités sont d'abord introduites dans Firefox Nightly où elles sont activées par défaut la plupart du temps. Elles passent ensuite sur la version Firefox Developer Edition puis enfin dans la version finale (release). Lorsqu'une fonctionnalité est activée par défaut dans une version release, elle n'est plus considérée comme expérimentale et devrait être retiré de cette liste.

- -

Les fonctionnalités expérimentales peuvent être activées ou désactivées via l'éditeur de configuration Firefox (accessible en saisissant about:config dans la barre d'adresse de Firefox) en modifiant la ou les préférence(s) indiquées ci-après.

- -

HTML

- -

L'élément <dialog>

- -

L'élément HTML <dialog> et les API du DOM associées permettent de créer des boîtes de dialogue modales en HTML. L'implémentation actuelle manque de finesse mais permet les fonctionnalités de base. Voir le bug 840640 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly53Oui
Developer Edition53Non
Beta53Non
Release53Non
Nom de la préférencedom.dialog_element.enabled
- -

Attribut global inputmode

- -

L'implémentation de l'attribut global inputmode a été mise à jour afin de suivre la spécification WHATWG (le bug 1509527), mais d'autres changements sont encore nécessaires (par exemple, le rendre disponible pour le contenu contenteditable), voir le bug 1205133 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly75Oui
Developer Edition75Non
Beta75Non
Release75Non
Nom de la préférencedom.forms.inputmode
- -

Attribut inert

- -

La propriété HTMLElement.inert de HTMLElement est un booléen qui, lorsqu'il est présent, peut permettre au navigateur d'ignorer l'élément pour les technologies d'assistance, la recherche sur la page et la sélection de texte. Pour plus de détails sur cette fonctionnalité, voir le bug 1655722.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly81Non
Developer Edition81Non
Beta81Non
Release81Non
Nom de la préférencehtml5.inert.enabled
- -

Disposition pour les champs input de type search

- -

La mise en forme des éléments input type="search" a été mise à jour. Il y a désormais une icône qui apparaît après une saisie pour permettre d'effacer le champ. Ce comportement permet de rejoindre celui des autres navigateurs. Voir le bug 558594 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly81Non
Developer Edition81Non
Beta81Non
Release81Non
Nom de la préférencelayout.forms.input-type-search.enabled
- -

CSS

- -

Affichage des caractères de contrôle (rectangle avec valeur hexadécimale)

- -

Cette fonctionnalité affiche les caractères de contrôle (catégorie Unicode Cc) autres que tab (U+0009), saut de ligne (U+000A), saut de page (U+000C) et retour chariot (U+000D) sous la forme d'un rectangle avec leur valeur hexadécimale à l'intérieur lorsque ces caractères sont inattendus. Voir le bug 1099557 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly43Oui
Developer Edition43Non
Beta43Non
Release43Non
Nom de la préférencelayout.css.control-characters.enabled ou layout.css.control-characters.visible
- - -

Propriété initial-letter

- -

La propriété CSS initial-letter fait partie du module de spécification CSS3 Inline et permet d'indiquer l'élévation (entre autres) des lettres initiales. Voir le bug 1223880 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly50Non
Developer Edition50Non
Beta50Non
Release50Non
Nom de la préférencelayout.css.initial-letter.enabled
- -

Propriété aspect-ratio

- -

La propriété CSS aspect-ratio est décrite dans le module de spécification CSS4 Sizing et permet de créer des boîtes qui respectent des proportions (aspect ratio en anglais) données. Voir le bug 1639963 et le bug 1646096 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly81Oui
Developer Edition81Non
Beta81Non
Release81Non
Nom de la préférencelayout.css.aspect-ratio.enabled
- -

Descripteur size-adjust

- -

Le descripteur CSS @font-face/size-adjust est décrit dans le module de spécification CSS5 Fonts et définit un facteur de multiplication pour les contours des glyphes et les métriques associées à la police. Cela facilite l'harmonisation lorsqu'on utilise plusieurs polices qui sont affichées avec le même corps. Voir le bug 1698495 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly89Oui
Developer Edition89Non
Beta89Non
Release89Non
Nom de la préférencelayout.css.size-adjust.enabled
- -

Nombres seuls pour les proportions dans les requêtes média

- -

Il s'agit ici de la prise en charge permettant d'utiliser un seul nombre (number) pour exprimer le ratio lors de la définition d'une requête média. Voir le bug 1565562 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly70Non
Developer Edition70Non
Beta70Non
Release70Non
Nom de la préférencelayout.css.aspect-ratio-number.enabled
- -

Propriété backdrop-filter

- -

La propriété backdrop-filter permet d'appliquer des effets de filtre à la zone située derrière un élément. Voir le bug 1178765 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly70Non
Developer Edition70Non
Beta70Non
Release70Non
Nom de la préférencelayout.css.backdrop-filter.enabled
- -

Grilles : disposition en maçonnerie

- -

Cette fonctionnalité ajoute la prise en charge pour les dispositions « en maçonnerie » basées sur les grilles où un axe est organisé avec une disposition donnée et où l'autre suit une disposition de grille normale. Cela permet aux développeuses et développeurs de créer plus facilement des dispositions pour des galeries. Voir le bug 1607954 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly77Oui
Developer Edition77Non
Beta77Non
Release77Non
Nom de la préférencelayout.css.grid-template-masonry-value.enabled
- -

Caractéristique média prefers-contrast

- -

La caractéristique média prefers-contrast est utilisée afin de déterminer si une utilisatrice ou un utilisateur indiqué une préférence pour un contraste élevé ou non. Voir le bug 1506364 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly80Non
Developer Edition80Non
Beta80Non
Release80Non
Nom de la préférence -

layout.css.prefers-contrast.enabled

-
- -

Propriété math-style

- -

La propriété math-style indique si les équations MathML doivent être affichées avec une hauteur normale ou compacte. Voir le bug 1665975 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly83Non
Developer Edition83Non
Beta83Non
Release83Non
Nom de la préférencelayout.css.math-style.enabled
- -

JavaScript

- -

Méthode at() pour l'indexation relative

- -

La méthode at() qui permet d'utiliser une indexation relative a été ajoutée aux objets Array, String et TypedArray. L'utilisation d'un entier positif comme argument renverra l'élément situé à cet index tandis qu'un entier négatif permettra de récupérer un élément à partir de la fin du tableau ou de la chaîne. Ainsi 1 fournira le deuxième élément tandis que -1 renverra le dernier élément. Voir Array.prototype.at(), String.prototype.at() et TypedArray.prototype.at() pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly85Oui
Developer Edition85Non
Beta85Non
Release85Non
- -

Champs de classe privés

- -

Voir la page sur les champs de classe privés pour plus d'informations.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly81Non
Developer Edition81Non
Beta81Non
Release81Non
Noms des préférencesjavascript.options.experimental.private_fields
- javascript.options.experimental.private_methods
- -

Fonctionnalités des API Web

- -

Graphismes : Canvas, WebGL, WebGPU

- -

CanvasRenderingContext2D.createConicGradient()

- -

L'interface CanvasRenderingContext2D rattachée à l'API Canvas fournit désormais une méthode createConicGradient(). Celle-ci renvoie une valeur CanvasGradient à la façon des méthodes existantes pour les dégradés linéaires et radiaux mais pour les dégradés coniques. Voir le bug 1627014 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly86Non
Developer Edition86Non
Beta86Non
Release86Non
Nom de la préférencecanvas.createConicGradient.enabled
- -

Interface OffscreenCanvas

- -

L'interface OffscreenCanvas fournit un canevas dont le rendu est effectué en dehors de l'écran. Il est disponible dans les contextes de la fenêtre et des workers. Voir le bug 1390089 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly44Non
Developer Edition44Non
Beta44Non
Release44Non
Nom de la préférencegfx.offscreencanvas.enabled
- -

API Hit Regions

- -

Déterminer si les coordonnées de la souris sont situées dans une région donnée d'un canevas est un problème courant. L'API Hit Regions permet de définir une zone du canevas et fournit d'autres outils pour exposer le contenu interactif d'un canevas aux outils d'accessibilité.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly30Non
Developer Edition30Non
Beta30Non
Release30Non
Nom de la préférencecanvas.hitregions.enabled
- -

WebGPU API

- -

Cette nouvelle API fournit une prise en charge bas niveau pour les calculs et le rendu graphique en utilisant le GPU de l'appareil. La spécification est toujours en cours d'écriture. Voir le bug 1602129 pour l'état de l'implémentation pour cette API.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly73Non
Developer Edition73Non
Beta73Non
Release73Non
Nom de la préférencedom.webgpu.enabled
- -

API HTML DOM

- -

Méthode setSinkId() pour HTMLMediaElement

- -

HTMLMediaElement.setSinkId() permet de définir l'identifiant d'un « sink » d'un appareil de sortie audio sur un HTMLMediaElement ce qui permet de modifier l'endroit où l'audio sort. Voir le bug 934425 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly64Non
Developer Edition64Non
Beta64Non
Release64Non
Nom de la préférencemedia.setsinkid.enabled
- -

Propriétés audioTracks et videoTracks pour HTMLMediaElement

- -

Cette fonctionnalité ajoute les propriétés HTMLMediaElement.audioTracks et HTMLMediaElement.videoTracks aux éléments HTML qui sont des médias. Toutefois, comme Firefox ne prend actuellement pas en charge les pistes audio et vidéo multiples, les cas d'usage de ces propriétés ne fonctionnent pas et elles sont donc désactivées par défaut. Voir le bug 1057233 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly33Non
Developer Edition33Non
Beta33Non
Release33Non
Nom de la préférencemedia.track.enabled
- -

DOM

- -

ClipboardItem

- -

L'interface ClipboardItem, rattachée à l'API Clipboard API est désormais prise en charge et Clipboard.write() accepte une série d'éléments de presse-papier (ClipboardItem) plutôt que l'implémentation précédente avec des objets DataTransfer. Elle est disponible avec la préférence dom.events.asyncClipboard.clipboardItem qui était précédemment intitulée dom.events.asyncClipboard.dataTransfer. Voir le bug 1619947 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly87Non
Developer Edition87Non
Beta87Non
Release87Non
Nom de la préférencedom.events.asyncClipboard.clipboardItem
- -

API HTML Sanitizer

- -

L'API HTML Sanitizer permet aux développeuses et développeurs de prendre en entrée des chaînes de caractères HTML non sécurisées et de les nettoyer afin de pouvoir les insérer dans le DOM d'un document. Les éléments par défaut pour chaque propriété de configuration sont toujours en cours d'étude. Pour cette raison, le paramètre de configuration n'a pas été implémenté. Voir la documentation du constructeur pour plus d'informations et le bug 1673309 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly84Non
Developer Edition84Non
Beta84Non
Release84Non
Nom de la préférencedom.security.sanitizer.enabled
- -

Propriété autoplayPolicy pour Document

- -

La propriété autoplayPolicy, rattachée à document, renvoie une chaîne de caractères indiquant la façon dont le navigateur gère les requêtes pour la lecture automatique des médias (déclenchée avec l'utilisation de la propriété autoplay ou via le déclenchement de la lecture depuis du code JavaScript). La spécification de cette API est en cours d'écriture. La valeur de cette propriété évolue selon les actions de l'utilisateur, leurs préférences/configurations et de l'état du navigateur. Les valeurs possibles sont allowed (la lecture automatique est possible), allowed-muted (la lecture automatique est possible mais sans audio), et disallowed (la lecture automatique n'est pas possible). Voir le bug 1506289 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly66Non
Developer Edition66Non
Beta66Non
Release66Non
Nom de la préférencedom.media.autoplay.autoplay-policy-api
- -

Méthodes convertPointFromNode(), convertRectFromNode(), et convertQuadFromNode() pour GeometryUtils

- -

Les méthodes convertPointFromNode(), convertRectFromNode(), et convertQuadFromNode() effectuent la correspondance entre un point, un rectangle ou un quadrilatère donné et le Node depuis lequel ils sont appelés vers un autre nœud. Voir le bug 918189 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly31Oui
Developer Edition31Non
Beta31Non
Release31Non
Nom de la préférencelayout.css.getBoxQuads.enabled
- -

Méthode getBoxQuads() pour GeometryUtils

- -

La méthode getBoxQuads() pour GeometryUtils renvoie les boîtes CSS d'un objet Node relatif à un autre nœud ou à la zone d'affichage. Voir le bug 917755 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly31Oui
Developer Edition31Non
Beta31Non
Release31Non
Nom de la préférencelayout.css.convertFromNode.enable
- -

API Payment Request

- -

Gestion de la méthode de paiement principale

- -

L'API Payment Request permet de gérer les paiements au sein de contenu ou d'application web. En raison d'un bug lors des tests de l'interface utilisateur, il a été décidé de suspendre la sortie de cette API tant que des discussions sont en cours sur des changements potentiels à cette API. Le travail est en cours. Voir le bug 1318984 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly55Non
Developer Edition55Non
Beta55Non
Release55Non
Nom de la préférencedom.payments.request.enabled et dom.payments.request.supportedRegions
- -

API Basic Card

- -

Il s'agit d'étendre l'API Payment Request avec des dictionnaires définissant les structures de données qui décrivent les types de cartes de paiement et les réponses de paiement. Voir BasicCardRequest et BasicCardResponse.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly56Non
Developer Edition56Non
Beta56Non
Release56Non
Nom de la préférencedom.payments.request.enabled and
- dom.payments.request.supportedRegions
- -

API Visual Viewport

- -

L'API Visual Viewport (qu'on peut traduire en « zone d'affichage visuelle ») donne accès à des informations décrivant la position de la zone d'affichage visuelle relative au document et à la zone de contenu de la fenêtre. Elle contient également des évènements pour surveiller les évolutions. Voir le bug 1550390 pour plus de détails. Il n'est pas prévu de fournir cette API sur la version pour ordinateur de bureau, voir le bug 1551302 si besoin.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly63Non
Developer Edition63Non
Beta63Non
Release63À partir de Firefox 68, sur Android uniquement
Nom de la préférencedom.visualviewport.enabled
- -

Constructeur pour les feuilles de style

- -

Cette fonctionnalité ajoute un constructeur pour l'interface CSSStyleSheet et d'autres modifications permettant de créer de nouvelles feuilles de style sans avoir à ajouter la feuille au HTML. Cela permet de créer des feuilles de style réutilisables beaucoup plus facilement afin de les utiliser avec Shadow DOM. L'implémentation actuelle n'est pas encore terminée. Voir le bug 1520690 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly73Non
Developer Edition73Non
Beta73Non
Release73Non
Nom de la préférencelayout.css.constructable-stylesheets.enabled
- -

WebRTC et média

- -

Les fonctionnalités expérimentales qui suivent incluent celles relatives aux API suivantes WebRTC, Web Audio, Media Source Extensions, Encrypted Media Extensions, et Media Capture and Streams.

- -

Méthodes asynchrones pour l'ajout et le retrait sur SourceBuffer

- -

Cette fonctionnalité ajoute les méthodes appendBufferAsync() et removeAsync() qui fonctionnent avec des promesses et permettent d'ajouter et de retirer des tampons de source média à l'interface SourceBuffer. Voir le bug 1280613 et le bug 778617 pour plus d'informations.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly62Non
Developer Edition62Non
Beta62Non
Release62Non
Nom de la préférencemedia.mediasource.experimental.enabled
- - -

Prise en charge du format AVIF (AV1 Image File)

- -

Avec cette fonctionnalité, Firefox prend en charge le format AV1 Image File (AVIF). Il s'agit d'un format d'image tirant parti des algorithmes de compression vidéo AV1 pour réduire la taille des images. Voir le bug 1443863 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly77Non
Developer Edition77Non
Beta77Non
Release77Non
Nom de la préférenceimage.avif.enabled
- -

Prise en charge d'AV1 pour Firefox sur Android

- -

Cette fonctionnalité permet à Firefox sur Android d'utiliser le format AV1. Cette fonctionnalité est disponible pour les versions nightly pour Firefox sur Android à partir de la version 81. Elle est activée par défaut.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly81Oui
Developer Edition
Beta
Release
Nom de la préférence
- -

Sécurité et confidentialité

- -

Block plain text requests from Flash on encrypted pages

- -

Afin d'atténuer le risque d'attaque de l'homme du milieu (MitM) pour le contenu Flash sur les pages chiffrées, une préférence a été ajoutée afin de traiter OBJECT_SUBREQUEST comme du contenu actif. Voir le bug 1190623 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly59Non
Developer Edition59Non
Beta59Non
Release59Non
Nom de la préférencesecurity.mixed_content.block_object_subrequest
- -

Indication des pages non-sécurisées

- -

Les deux préférences suivantes permettent d'ajouter un libellé « Non-sécurisé » dans la barre d'adresse à côté de l'icône de cadenas lorsqu'une page est chargée de façon non-sécurisée (via HTTP plutôt qu'avec HTTPS). Voir le bug 1335970 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly60Non
Developer Edition60Non
Beta60Non
Release60Non
Nom de la préférencesecurity.insecure_connection_text.enabled pour la navigation en mode normale, security.insecure_connection_text.pbmode.enabled pour la navigation en mode privé
- -

Mise à niveau pour les médias chargés avec une sécurité mixte

- -

Lorsque la préférence correspondante est activée, Firefox passe les requêtes des contenus média HTTP en HTTPS pour les pages sécurisées. L'objectif est d'éviter des conditions de contenu mixte où du contenu serait chargé de façon sécurisée tandis qu'un autre contenu serait chargé de façon non-sécurisée. Si la bascule en HTTPS échoue (par exemple si l'hôte qui sert le média ne prend pas en charge HTTPS), le média n'est pas chargé. Voir le bug 1435733pour plus de détails.

- -

Cela modifie également l'avertissement de la console : si la mise à niveau réussit, un message indiquant que la requête a été mise à niveau est affiché plutôt qu'un avertissement.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly84Oui
Developer Edition60Non
Beta60Non
Release60Non
Nom de la préférencesecurity.mixed_content.upgrade_display_content
- - -

En-tête Feature-Policy

- -

Feature-Policy est un en-tête HTTP qui permet de choisir l'activation, la désactivation ou certaines des fonctionnalités et API dans le navigateur. Cet en-tête est similaire au CSP mais permet de contrôler des fonctionnalités plutôt que des traits liés à la sécurité.

- -
-

Note :

-

L'en-tête Feature-Policy a été renommé en Permissions-Policy dans la spécification. Cet article sera mis à jour afin de refléter ce changement.

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly65Non
Developer Edition65Non
Beta65Non
Release65Non
Nom de la préférencedom.security.featurePolicy.header.enabled
- -

Outils de développement

- -

Sélecteur pour le contexte d'exécution

- -

Cette fonctionnalité affiche un bouton sur la ligne de commande de la console qui permet de changer le contexte dans lequel l'expression saisie est exécutée. Voir le bug 1605154 et le bug 1605153 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly75Non
Developer Edition75Non
Beta75Non
Release75Non
Nom de la préférencedevtools.webconsole.input.context
- -

Prise en charge des gestes mobiles en vue adaptative

- -

Les gestes à la souris peuvent être utilisés pour simuler des gestes tactiles sur mobiles comme le défilement, le zoom en pinçant, l'appui long ou l'appui double. Voir le bug 1621781, le bug 1245183, et le bug 1401304 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly76[1]Oui
Developer Edition76[1]Oui
Beta76[1]Oui
Release76[1]Non
Nom de la préférencen/a
- -

[1] La prise en charge pour le geste de double toucher a été ajouté avec Firefox 76. Les autres gestes ont été ajoutés avec Firefox 79.

- -

Évènements émis par le serveur dans le moniteur réseau

- -

Cette fonctionnalité permet au moniteur réseau d'afficher des informations sur les évènements émis par le serveur. Voir le bug 1405706 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly80Oui
Developer Edition80Oui
Beta80Non
Release80Non
Nom de la préférencedevtools.netmonitor.features.serverSentEvents
- -

Bulles d'informations pour la compatibilité CSS des navigateurs

- -

La vue pour les règles CSS peut afficher des bulles d'informations pour la compatibilité des navigateurs pour les propriétés qui ont des problèmes connus. Pour plus d'informations, voir : Examiner et éditer le HTML > Avertissements de compatibilité navigateur.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly81Non
Developer Edition81Non
Beta81Non
Release81Non
Nom de la préférencedevtools.inspector.ruleview.inline-compatibility-warning.enabled
- -

Interface utilisateur (UI)

- -

Zoom (version bureau)

- -

Cette fonctionnalité permet, pour les ordinateurs de bureau, un zoom doux avec le geste de pincement sans qu'il y ait de redessin de l'écran, à la façon des appareils mobiles. Voir le bug 1245183 et le bug 1620055 pour plus de détails.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CanalAjouté dans la versionActivé par défaut
Nightly42Oui
Developer Edition42Non
Beta42Non
Release42Non
Nom de la préférenceapz.allow_zooming et pour Windows : apz.windows.use_direct_manipulation
- -

Voir aussi

- - diff --git a/files/fr/mozilla/firefox/experimental_features/index.md b/files/fr/mozilla/firefox/experimental_features/index.md new file mode 100644 index 0000000000..444f50ddd7 --- /dev/null +++ b/files/fr/mozilla/firefox/experimental_features/index.md @@ -0,0 +1,1743 @@ +--- +title: Fonctionnalités expérimentales dans Firefox +slug: Mozilla/Firefox/Experimental_features +tags: + - Experimental + - Firefox + - Preferences + - features +translation_of: Mozilla/Firefox/Experimental_features +--- +
{{FirefoxSidebar}}
+ +

Cette page détaille les fonctionnalités expérimentales ou partiellement implémentées présentes dans Firefox. Cela inclut les fonctionnalités concernées par les standards web très récents ou en cours de construction. Les informations de cette page permettent de savoir quelles versions contiennent ces fonctionnalités, si elles sont activées par défaut et la préférence qui peut être utilisée pour les activer ou les désactiver. Cela vous permet de tester les fonctionnalités avant leur sortie « générale ».

+ +

Les nouvelles fonctionnalités sont d'abord introduites dans Firefox Nightly où elles sont activées par défaut la plupart du temps. Elles passent ensuite sur la version Firefox Developer Edition puis enfin dans la version finale (release). Lorsqu'une fonctionnalité est activée par défaut dans une version release, elle n'est plus considérée comme expérimentale et devrait être retiré de cette liste.

+ +

Les fonctionnalités expérimentales peuvent être activées ou désactivées via l'éditeur de configuration Firefox (accessible en saisissant about:config dans la barre d'adresse de Firefox) en modifiant la ou les préférence(s) indiquées ci-après.

+ +

HTML

+ +

L'élément <dialog>

+ +

L'élément HTML <dialog> et les API du DOM associées permettent de créer des boîtes de dialogue modales en HTML. L'implémentation actuelle manque de finesse mais permet les fonctionnalités de base. Voir le bug 840640 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly53Oui
Developer Edition53Non
Beta53Non
Release53Non
Nom de la préférencedom.dialog_element.enabled
+ +

Attribut global inputmode

+ +

L'implémentation de l'attribut global inputmode a été mise à jour afin de suivre la spécification WHATWG (le bug 1509527), mais d'autres changements sont encore nécessaires (par exemple, le rendre disponible pour le contenu contenteditable), voir le bug 1205133 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly75Oui
Developer Edition75Non
Beta75Non
Release75Non
Nom de la préférencedom.forms.inputmode
+ +

Attribut inert

+ +

La propriété HTMLElement.inert de HTMLElement est un booléen qui, lorsqu'il est présent, peut permettre au navigateur d'ignorer l'élément pour les technologies d'assistance, la recherche sur la page et la sélection de texte. Pour plus de détails sur cette fonctionnalité, voir le bug 1655722.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly81Non
Developer Edition81Non
Beta81Non
Release81Non
Nom de la préférencehtml5.inert.enabled
+ +

Disposition pour les champs input de type search

+ +

La mise en forme des éléments input type="search" a été mise à jour. Il y a désormais une icône qui apparaît après une saisie pour permettre d'effacer le champ. Ce comportement permet de rejoindre celui des autres navigateurs. Voir le bug 558594 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly81Non
Developer Edition81Non
Beta81Non
Release81Non
Nom de la préférencelayout.forms.input-type-search.enabled
+ +

CSS

+ +

Affichage des caractères de contrôle (rectangle avec valeur hexadécimale)

+ +

Cette fonctionnalité affiche les caractères de contrôle (catégorie Unicode Cc) autres que tab (U+0009), saut de ligne (U+000A), saut de page (U+000C) et retour chariot (U+000D) sous la forme d'un rectangle avec leur valeur hexadécimale à l'intérieur lorsque ces caractères sont inattendus. Voir le bug 1099557 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly43Oui
Developer Edition43Non
Beta43Non
Release43Non
Nom de la préférencelayout.css.control-characters.enabled ou layout.css.control-characters.visible
+ + +

Propriété initial-letter

+ +

La propriété CSS initial-letter fait partie du module de spécification CSS3 Inline et permet d'indiquer l'élévation (entre autres) des lettres initiales. Voir le bug 1223880 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly50Non
Developer Edition50Non
Beta50Non
Release50Non
Nom de la préférencelayout.css.initial-letter.enabled
+ +

Propriété aspect-ratio

+ +

La propriété CSS aspect-ratio est décrite dans le module de spécification CSS4 Sizing et permet de créer des boîtes qui respectent des proportions (aspect ratio en anglais) données. Voir le bug 1639963 et le bug 1646096 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly81Oui
Developer Edition81Non
Beta81Non
Release81Non
Nom de la préférencelayout.css.aspect-ratio.enabled
+ +

Descripteur size-adjust

+ +

Le descripteur CSS @font-face/size-adjust est décrit dans le module de spécification CSS5 Fonts et définit un facteur de multiplication pour les contours des glyphes et les métriques associées à la police. Cela facilite l'harmonisation lorsqu'on utilise plusieurs polices qui sont affichées avec le même corps. Voir le bug 1698495 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly89Oui
Developer Edition89Non
Beta89Non
Release89Non
Nom de la préférencelayout.css.size-adjust.enabled
+ +

Nombres seuls pour les proportions dans les requêtes média

+ +

Il s'agit ici de la prise en charge permettant d'utiliser un seul nombre (number) pour exprimer le ratio lors de la définition d'une requête média. Voir le bug 1565562 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly70Non
Developer Edition70Non
Beta70Non
Release70Non
Nom de la préférencelayout.css.aspect-ratio-number.enabled
+ +

Propriété backdrop-filter

+ +

La propriété backdrop-filter permet d'appliquer des effets de filtre à la zone située derrière un élément. Voir le bug 1178765 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly70Non
Developer Edition70Non
Beta70Non
Release70Non
Nom de la préférencelayout.css.backdrop-filter.enabled
+ +

Grilles : disposition en maçonnerie

+ +

Cette fonctionnalité ajoute la prise en charge pour les dispositions « en maçonnerie » basées sur les grilles où un axe est organisé avec une disposition donnée et où l'autre suit une disposition de grille normale. Cela permet aux développeuses et développeurs de créer plus facilement des dispositions pour des galeries. Voir le bug 1607954 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly77Oui
Developer Edition77Non
Beta77Non
Release77Non
Nom de la préférencelayout.css.grid-template-masonry-value.enabled
+ +

Caractéristique média prefers-contrast

+ +

La caractéristique média prefers-contrast est utilisée afin de déterminer si une utilisatrice ou un utilisateur indiqué une préférence pour un contraste élevé ou non. Voir le bug 1506364 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly80Non
Developer Edition80Non
Beta80Non
Release80Non
Nom de la préférence +

layout.css.prefers-contrast.enabled

+
+ +

Propriété math-style

+ +

La propriété math-style indique si les équations MathML doivent être affichées avec une hauteur normale ou compacte. Voir le bug 1665975 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly83Non
Developer Edition83Non
Beta83Non
Release83Non
Nom de la préférencelayout.css.math-style.enabled
+ +

JavaScript

+ +

Méthode at() pour l'indexation relative

+ +

La méthode at() qui permet d'utiliser une indexation relative a été ajoutée aux objets Array, String et TypedArray. L'utilisation d'un entier positif comme argument renverra l'élément situé à cet index tandis qu'un entier négatif permettra de récupérer un élément à partir de la fin du tableau ou de la chaîne. Ainsi 1 fournira le deuxième élément tandis que -1 renverra le dernier élément. Voir Array.prototype.at(), String.prototype.at() et TypedArray.prototype.at() pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly85Oui
Developer Edition85Non
Beta85Non
Release85Non
+ +

Champs de classe privés

+ +

Voir la page sur les champs de classe privés pour plus d'informations.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly81Non
Developer Edition81Non
Beta81Non
Release81Non
Noms des préférencesjavascript.options.experimental.private_fields
+ javascript.options.experimental.private_methods
+ +

Fonctionnalités des API Web

+ +

Graphismes : Canvas, WebGL, WebGPU

+ +

CanvasRenderingContext2D.createConicGradient()

+ +

L'interface CanvasRenderingContext2D rattachée à l'API Canvas fournit désormais une méthode createConicGradient(). Celle-ci renvoie une valeur CanvasGradient à la façon des méthodes existantes pour les dégradés linéaires et radiaux mais pour les dégradés coniques. Voir le bug 1627014 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly86Non
Developer Edition86Non
Beta86Non
Release86Non
Nom de la préférencecanvas.createConicGradient.enabled
+ +

Interface OffscreenCanvas

+ +

L'interface OffscreenCanvas fournit un canevas dont le rendu est effectué en dehors de l'écran. Il est disponible dans les contextes de la fenêtre et des workers. Voir le bug 1390089 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly44Non
Developer Edition44Non
Beta44Non
Release44Non
Nom de la préférencegfx.offscreencanvas.enabled
+ +

API Hit Regions

+ +

Déterminer si les coordonnées de la souris sont situées dans une région donnée d'un canevas est un problème courant. L'API Hit Regions permet de définir une zone du canevas et fournit d'autres outils pour exposer le contenu interactif d'un canevas aux outils d'accessibilité.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly30Non
Developer Edition30Non
Beta30Non
Release30Non
Nom de la préférencecanvas.hitregions.enabled
+ +

WebGPU API

+ +

Cette nouvelle API fournit une prise en charge bas niveau pour les calculs et le rendu graphique en utilisant le GPU de l'appareil. La spécification est toujours en cours d'écriture. Voir le bug 1602129 pour l'état de l'implémentation pour cette API.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly73Non
Developer Edition73Non
Beta73Non
Release73Non
Nom de la préférencedom.webgpu.enabled
+ +

API HTML DOM

+ +

Méthode setSinkId() pour HTMLMediaElement

+ +

HTMLMediaElement.setSinkId() permet de définir l'identifiant d'un « sink » d'un appareil de sortie audio sur un HTMLMediaElement ce qui permet de modifier l'endroit où l'audio sort. Voir le bug 934425 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly64Non
Developer Edition64Non
Beta64Non
Release64Non
Nom de la préférencemedia.setsinkid.enabled
+ +

Propriétés audioTracks et videoTracks pour HTMLMediaElement

+ +

Cette fonctionnalité ajoute les propriétés HTMLMediaElement.audioTracks et HTMLMediaElement.videoTracks aux éléments HTML qui sont des médias. Toutefois, comme Firefox ne prend actuellement pas en charge les pistes audio et vidéo multiples, les cas d'usage de ces propriétés ne fonctionnent pas et elles sont donc désactivées par défaut. Voir le bug 1057233 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly33Non
Developer Edition33Non
Beta33Non
Release33Non
Nom de la préférencemedia.track.enabled
+ +

DOM

+ +

ClipboardItem

+ +

L'interface ClipboardItem, rattachée à l'API Clipboard API est désormais prise en charge et Clipboard.write() accepte une série d'éléments de presse-papier (ClipboardItem) plutôt que l'implémentation précédente avec des objets DataTransfer. Elle est disponible avec la préférence dom.events.asyncClipboard.clipboardItem qui était précédemment intitulée dom.events.asyncClipboard.dataTransfer. Voir le bug 1619947 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly87Non
Developer Edition87Non
Beta87Non
Release87Non
Nom de la préférencedom.events.asyncClipboard.clipboardItem
+ +

API HTML Sanitizer

+ +

L'API HTML Sanitizer permet aux développeuses et développeurs de prendre en entrée des chaînes de caractères HTML non sécurisées et de les nettoyer afin de pouvoir les insérer dans le DOM d'un document. Les éléments par défaut pour chaque propriété de configuration sont toujours en cours d'étude. Pour cette raison, le paramètre de configuration n'a pas été implémenté. Voir la documentation du constructeur pour plus d'informations et le bug 1673309 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly84Non
Developer Edition84Non
Beta84Non
Release84Non
Nom de la préférencedom.security.sanitizer.enabled
+ +

Propriété autoplayPolicy pour Document

+ +

La propriété autoplayPolicy, rattachée à document, renvoie une chaîne de caractères indiquant la façon dont le navigateur gère les requêtes pour la lecture automatique des médias (déclenchée avec l'utilisation de la propriété autoplay ou via le déclenchement de la lecture depuis du code JavaScript). La spécification de cette API est en cours d'écriture. La valeur de cette propriété évolue selon les actions de l'utilisateur, leurs préférences/configurations et de l'état du navigateur. Les valeurs possibles sont allowed (la lecture automatique est possible), allowed-muted (la lecture automatique est possible mais sans audio), et disallowed (la lecture automatique n'est pas possible). Voir le bug 1506289 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly66Non
Developer Edition66Non
Beta66Non
Release66Non
Nom de la préférencedom.media.autoplay.autoplay-policy-api
+ +

Méthodes convertPointFromNode(), convertRectFromNode(), et convertQuadFromNode() pour GeometryUtils

+ +

Les méthodes convertPointFromNode(), convertRectFromNode(), et convertQuadFromNode() effectuent la correspondance entre un point, un rectangle ou un quadrilatère donné et le Node depuis lequel ils sont appelés vers un autre nœud. Voir le bug 918189 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly31Oui
Developer Edition31Non
Beta31Non
Release31Non
Nom de la préférencelayout.css.getBoxQuads.enabled
+ +

Méthode getBoxQuads() pour GeometryUtils

+ +

La méthode getBoxQuads() pour GeometryUtils renvoie les boîtes CSS d'un objet Node relatif à un autre nœud ou à la zone d'affichage. Voir le bug 917755 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly31Oui
Developer Edition31Non
Beta31Non
Release31Non
Nom de la préférencelayout.css.convertFromNode.enable
+ +

API Payment Request

+ +

Gestion de la méthode de paiement principale

+ +

L'API Payment Request permet de gérer les paiements au sein de contenu ou d'application web. En raison d'un bug lors des tests de l'interface utilisateur, il a été décidé de suspendre la sortie de cette API tant que des discussions sont en cours sur des changements potentiels à cette API. Le travail est en cours. Voir le bug 1318984 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly55Non
Developer Edition55Non
Beta55Non
Release55Non
Nom de la préférencedom.payments.request.enabled et dom.payments.request.supportedRegions
+ +

API Basic Card

+ +

Il s'agit d'étendre l'API Payment Request avec des dictionnaires définissant les structures de données qui décrivent les types de cartes de paiement et les réponses de paiement. Voir BasicCardRequest et BasicCardResponse.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly56Non
Developer Edition56Non
Beta56Non
Release56Non
Nom de la préférencedom.payments.request.enabled and
+ dom.payments.request.supportedRegions
+ +

API Visual Viewport

+ +

L'API Visual Viewport (qu'on peut traduire en « zone d'affichage visuelle ») donne accès à des informations décrivant la position de la zone d'affichage visuelle relative au document et à la zone de contenu de la fenêtre. Elle contient également des évènements pour surveiller les évolutions. Voir le bug 1550390 pour plus de détails. Il n'est pas prévu de fournir cette API sur la version pour ordinateur de bureau, voir le bug 1551302 si besoin.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly63Non
Developer Edition63Non
Beta63Non
Release63À partir de Firefox 68, sur Android uniquement
Nom de la préférencedom.visualviewport.enabled
+ +

Constructeur pour les feuilles de style

+ +

Cette fonctionnalité ajoute un constructeur pour l'interface CSSStyleSheet et d'autres modifications permettant de créer de nouvelles feuilles de style sans avoir à ajouter la feuille au HTML. Cela permet de créer des feuilles de style réutilisables beaucoup plus facilement afin de les utiliser avec Shadow DOM. L'implémentation actuelle n'est pas encore terminée. Voir le bug 1520690 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly73Non
Developer Edition73Non
Beta73Non
Release73Non
Nom de la préférencelayout.css.constructable-stylesheets.enabled
+ +

WebRTC et média

+ +

Les fonctionnalités expérimentales qui suivent incluent celles relatives aux API suivantes WebRTC, Web Audio, Media Source Extensions, Encrypted Media Extensions, et Media Capture and Streams.

+ +

Méthodes asynchrones pour l'ajout et le retrait sur SourceBuffer

+ +

Cette fonctionnalité ajoute les méthodes appendBufferAsync() et removeAsync() qui fonctionnent avec des promesses et permettent d'ajouter et de retirer des tampons de source média à l'interface SourceBuffer. Voir le bug 1280613 et le bug 778617 pour plus d'informations.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly62Non
Developer Edition62Non
Beta62Non
Release62Non
Nom de la préférencemedia.mediasource.experimental.enabled
+ + +

Prise en charge du format AVIF (AV1 Image File)

+ +

Avec cette fonctionnalité, Firefox prend en charge le format AV1 Image File (AVIF). Il s'agit d'un format d'image tirant parti des algorithmes de compression vidéo AV1 pour réduire la taille des images. Voir le bug 1443863 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly77Non
Developer Edition77Non
Beta77Non
Release77Non
Nom de la préférenceimage.avif.enabled
+ +

Prise en charge d'AV1 pour Firefox sur Android

+ +

Cette fonctionnalité permet à Firefox sur Android d'utiliser le format AV1. Cette fonctionnalité est disponible pour les versions nightly pour Firefox sur Android à partir de la version 81. Elle est activée par défaut.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly81Oui
Developer Edition
Beta
Release
Nom de la préférence
+ +

Sécurité et confidentialité

+ +

Block plain text requests from Flash on encrypted pages

+ +

Afin d'atténuer le risque d'attaque de l'homme du milieu (MitM) pour le contenu Flash sur les pages chiffrées, une préférence a été ajoutée afin de traiter OBJECT_SUBREQUEST comme du contenu actif. Voir le bug 1190623 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly59Non
Developer Edition59Non
Beta59Non
Release59Non
Nom de la préférencesecurity.mixed_content.block_object_subrequest
+ +

Indication des pages non-sécurisées

+ +

Les deux préférences suivantes permettent d'ajouter un libellé « Non-sécurisé » dans la barre d'adresse à côté de l'icône de cadenas lorsqu'une page est chargée de façon non-sécurisée (via HTTP plutôt qu'avec HTTPS). Voir le bug 1335970 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly60Non
Developer Edition60Non
Beta60Non
Release60Non
Nom de la préférencesecurity.insecure_connection_text.enabled pour la navigation en mode normale, security.insecure_connection_text.pbmode.enabled pour la navigation en mode privé
+ +

Mise à niveau pour les médias chargés avec une sécurité mixte

+ +

Lorsque la préférence correspondante est activée, Firefox passe les requêtes des contenus média HTTP en HTTPS pour les pages sécurisées. L'objectif est d'éviter des conditions de contenu mixte où du contenu serait chargé de façon sécurisée tandis qu'un autre contenu serait chargé de façon non-sécurisée. Si la bascule en HTTPS échoue (par exemple si l'hôte qui sert le média ne prend pas en charge HTTPS), le média n'est pas chargé. Voir le bug 1435733pour plus de détails.

+ +

Cela modifie également l'avertissement de la console : si la mise à niveau réussit, un message indiquant que la requête a été mise à niveau est affiché plutôt qu'un avertissement.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly84Oui
Developer Edition60Non
Beta60Non
Release60Non
Nom de la préférencesecurity.mixed_content.upgrade_display_content
+ + +

En-tête Feature-Policy

+ +

Feature-Policy est un en-tête HTTP qui permet de choisir l'activation, la désactivation ou certaines des fonctionnalités et API dans le navigateur. Cet en-tête est similaire au CSP mais permet de contrôler des fonctionnalités plutôt que des traits liés à la sécurité.

+ +
+

Note :

+

L'en-tête Feature-Policy a été renommé en Permissions-Policy dans la spécification. Cet article sera mis à jour afin de refléter ce changement.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly65Non
Developer Edition65Non
Beta65Non
Release65Non
Nom de la préférencedom.security.featurePolicy.header.enabled
+ +

Outils de développement

+ +

Sélecteur pour le contexte d'exécution

+ +

Cette fonctionnalité affiche un bouton sur la ligne de commande de la console qui permet de changer le contexte dans lequel l'expression saisie est exécutée. Voir le bug 1605154 et le bug 1605153 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly75Non
Developer Edition75Non
Beta75Non
Release75Non
Nom de la préférencedevtools.webconsole.input.context
+ +

Prise en charge des gestes mobiles en vue adaptative

+ +

Les gestes à la souris peuvent être utilisés pour simuler des gestes tactiles sur mobiles comme le défilement, le zoom en pinçant, l'appui long ou l'appui double. Voir le bug 1621781, le bug 1245183, et le bug 1401304 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly76[1]Oui
Developer Edition76[1]Oui
Beta76[1]Oui
Release76[1]Non
Nom de la préférencen/a
+ +

[1] La prise en charge pour le geste de double toucher a été ajouté avec Firefox 76. Les autres gestes ont été ajoutés avec Firefox 79.

+ +

Évènements émis par le serveur dans le moniteur réseau

+ +

Cette fonctionnalité permet au moniteur réseau d'afficher des informations sur les évènements émis par le serveur. Voir le bug 1405706 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly80Oui
Developer Edition80Oui
Beta80Non
Release80Non
Nom de la préférencedevtools.netmonitor.features.serverSentEvents
+ +

Bulles d'informations pour la compatibilité CSS des navigateurs

+ +

La vue pour les règles CSS peut afficher des bulles d'informations pour la compatibilité des navigateurs pour les propriétés qui ont des problèmes connus. Pour plus d'informations, voir : Examiner et éditer le HTML > Avertissements de compatibilité navigateur.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly81Non
Developer Edition81Non
Beta81Non
Release81Non
Nom de la préférencedevtools.inspector.ruleview.inline-compatibility-warning.enabled
+ +

Interface utilisateur (UI)

+ +

Zoom (version bureau)

+ +

Cette fonctionnalité permet, pour les ordinateurs de bureau, un zoom doux avec le geste de pincement sans qu'il y ait de redessin de l'écran, à la façon des appareils mobiles. Voir le bug 1245183 et le bug 1620055 pour plus de détails.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CanalAjouté dans la versionActivé par défaut
Nightly42Oui
Developer Edition42Non
Beta42Non
Release42Non
Nom de la préférenceapz.allow_zooming et pour Windows : apz.windows.use_direct_manipulation
+ +

Voir aussi

+ + diff --git a/files/fr/mozilla/firefox/index.html b/files/fr/mozilla/firefox/index.html deleted file mode 100644 index 62a950603c..0000000000 --- a/files/fr/mozilla/firefox/index.html +++ /dev/null @@ -1,71 +0,0 @@ ---- -title: Firefox -slug: Mozilla/Firefox -tags: - - Firefox - - Landing - - Mozilla -translation_of: Mozilla/Firefox ---- -
{{FirefoxSidebar}}
- -

Firefox est le navigateur populaire de Mozilla, disponible sur de nombreuses plates-formes dont Windows, Mac OS et Linux pour les ordinateurs de bureau, ainsi que Android et iOS pour les appareils mobiles. Grâce à une large compatibilité, les dernières nouveautés en technologie web et des outils puissants pour développer, Firefox est idéal pour les développeurs web et les utilisateurs.

- -

Firefox est un projet libre et ouvert. Une grande partie du code source provient des contributions de notre très grande communauté de volontaires. Découvrez ici comment contribuer au projet Firefox et vous trouverez également des liens vers de la documentation sur la création de modules complémentaires pour Firefox, l'utilisation d'outils de développement dans Firefox et bien plus encore.

- -

Découvrez comment créer des modules complémentaires pour Firefox, comment développer et créer Firefox même, ainsi que son fonctionnement interne et celui de ses sous-projets.

- - - -

Éditions de Firefox

- -

Firefox est disponible sous cinq éditions différentes, l'une d’entre-elles est forcément adaptée pour vous !

- -

Firefox Nightly

- -

Chaque nuit, nous compilons Firefox à partir des dernières sources de mozilla-central. Ces compilations sont pour les développeurs Firefox ou tous ceux qui veulent essayer les dernières fonctionnalités pendant qu'elles sont encore en développement.

- -

Télécharger Firefox Nightly

- -

Firefox Developer Edition

- -

Une version de Firefox créée spécialement pour les développeurs. Elle est mise à jour toutes les six semaines avec les fonctionnalités suffisamment stables de la version Firefox Nightly. Nous ajoutons également des fonctionnalités spéciales pour les développeurs, seulement disponibles dans cette version de Firefox.

- -

En savoir plus sur Firefox Developer Edition.

- -

Firefox Developer Edition

- -

Firefox Beta

- -

Après six semaines passées dans la version Firefox Developer Edition, les fonctionnalités suffisamment stables rejoignent la nouvelle version de Firefox Beta. Les versions de Firefox Beta sont pour les passionnés souhaitant tester ce qui est destiné à devenir la prochaine version de Firefox.

- -

Télécharger Firefox Beta

- -

Firefox

- -

Essayé, testé et adopté par des millions de personnes à travers le monde. Après six semaines de stabilisation dans la version Beta, la version finale est fin prête à être distribuée à tous.

- -

Télécharger Firefox

- -

Firefox Extended Support Release (ESR)

- -

Firefox ESR est une édition avec un support à long terme. Très utile pour des organisations telles que des écoles, des universités, des entreprises ou autres qui ont besoin d'un support étendu pour des déploiements importants.

- -

En savoir plus sur Firefox Extended Support Release.

- -

Télécharger Firefox ESR

- -

Profils Firefox

- -

Si vous utilisez régulièrement plusieurs éditions de Firefox — ou simplement plusieurs configurations — vous devriez vous renseigner sur l'utilisation de plusieurs profils Firefox en activant le gestionnaire de profils de Firefox et les autres outils de gestion de profils.

diff --git a/files/fr/mozilla/firefox/index.md b/files/fr/mozilla/firefox/index.md new file mode 100644 index 0000000000..62a950603c --- /dev/null +++ b/files/fr/mozilla/firefox/index.md @@ -0,0 +1,71 @@ +--- +title: Firefox +slug: Mozilla/Firefox +tags: + - Firefox + - Landing + - Mozilla +translation_of: Mozilla/Firefox +--- +
{{FirefoxSidebar}}
+ +

Firefox est le navigateur populaire de Mozilla, disponible sur de nombreuses plates-formes dont Windows, Mac OS et Linux pour les ordinateurs de bureau, ainsi que Android et iOS pour les appareils mobiles. Grâce à une large compatibilité, les dernières nouveautés en technologie web et des outils puissants pour développer, Firefox est idéal pour les développeurs web et les utilisateurs.

+ +

Firefox est un projet libre et ouvert. Une grande partie du code source provient des contributions de notre très grande communauté de volontaires. Découvrez ici comment contribuer au projet Firefox et vous trouverez également des liens vers de la documentation sur la création de modules complémentaires pour Firefox, l'utilisation d'outils de développement dans Firefox et bien plus encore.

+ +

Découvrez comment créer des modules complémentaires pour Firefox, comment développer et créer Firefox même, ainsi que son fonctionnement interne et celui de ses sous-projets.

+ + + +

Éditions de Firefox

+ +

Firefox est disponible sous cinq éditions différentes, l'une d’entre-elles est forcément adaptée pour vous !

+ +

Firefox Nightly

+ +

Chaque nuit, nous compilons Firefox à partir des dernières sources de mozilla-central. Ces compilations sont pour les développeurs Firefox ou tous ceux qui veulent essayer les dernières fonctionnalités pendant qu'elles sont encore en développement.

+ +

Télécharger Firefox Nightly

+ +

Firefox Developer Edition

+ +

Une version de Firefox créée spécialement pour les développeurs. Elle est mise à jour toutes les six semaines avec les fonctionnalités suffisamment stables de la version Firefox Nightly. Nous ajoutons également des fonctionnalités spéciales pour les développeurs, seulement disponibles dans cette version de Firefox.

+ +

En savoir plus sur Firefox Developer Edition.

+ +

Firefox Developer Edition

+ +

Firefox Beta

+ +

Après six semaines passées dans la version Firefox Developer Edition, les fonctionnalités suffisamment stables rejoignent la nouvelle version de Firefox Beta. Les versions de Firefox Beta sont pour les passionnés souhaitant tester ce qui est destiné à devenir la prochaine version de Firefox.

+ +

Télécharger Firefox Beta

+ +

Firefox

+ +

Essayé, testé et adopté par des millions de personnes à travers le monde. Après six semaines de stabilisation dans la version Beta, la version finale est fin prête à être distribuée à tous.

+ +

Télécharger Firefox

+ +

Firefox Extended Support Release (ESR)

+ +

Firefox ESR est une édition avec un support à long terme. Très utile pour des organisations telles que des écoles, des universités, des entreprises ou autres qui ont besoin d'un support étendu pour des déploiements importants.

+ +

En savoir plus sur Firefox Extended Support Release.

+ +

Télécharger Firefox ESR

+ +

Profils Firefox

+ +

Si vous utilisez régulièrement plusieurs éditions de Firefox — ou simplement plusieurs configurations — vous devriez vous renseigner sur l'utilisation de plusieurs profils Firefox en activant le gestionnaire de profils de Firefox et les autres outils de gestion de profils.

diff --git a/files/fr/mozilla/firefox/releases/1.5/adapting_xul_applications_for_firefox_1.5/index.html b/files/fr/mozilla/firefox/releases/1.5/adapting_xul_applications_for_firefox_1.5/index.html deleted file mode 100644 index 534adb018d..0000000000 --- a/files/fr/mozilla/firefox/releases/1.5/adapting_xul_applications_for_firefox_1.5/index.html +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: Adaptation des applications XUL pour Firefox 1.5 -slug: Mozilla/Firefox/Releases/1.5/Adapting_XUL_Applications_for_Firefox_1.5 -tags: - - Extensions - - XUL -translation_of: Mozilla/Firefox/Releases/1.5/Adapting_XUL_Applications_for_Firefox_1.5 -original_slug: Adaptation_des_applications_XUL_pour_Firefox_1.5 ---- -
{{FirefoxSidebar}}

 

- -

Cette page contient une liste des modifications de Firefox 1.5 qui concernent les développeurs XUL.

- -

Modifications spécifiques

- - - -

Autres informations

- - - -

{{ languages( { "en": "en/Adapting_XUL_Applications_for_Firefox_1.5", "it": "it/Adattare_le_applicazioni_XUL_a_Firefox_1.5", "ja": "ja/Adapting_XUL_Applications_for_Firefox_1.5", "pl": "pl/Dostosowanie_aplikacji_XUL_do_Firefoksa_1.5" } ) }}

diff --git a/files/fr/mozilla/firefox/releases/1.5/adapting_xul_applications_for_firefox_1.5/index.md b/files/fr/mozilla/firefox/releases/1.5/adapting_xul_applications_for_firefox_1.5/index.md new file mode 100644 index 0000000000..534adb018d --- /dev/null +++ b/files/fr/mozilla/firefox/releases/1.5/adapting_xul_applications_for_firefox_1.5/index.md @@ -0,0 +1,34 @@ +--- +title: Adaptation des applications XUL pour Firefox 1.5 +slug: Mozilla/Firefox/Releases/1.5/Adapting_XUL_Applications_for_Firefox_1.5 +tags: + - Extensions + - XUL +translation_of: Mozilla/Firefox/Releases/1.5/Adapting_XUL_Applications_for_Firefox_1.5 +original_slug: Adaptation_des_applications_XUL_pour_Firefox_1.5 +--- +
{{FirefoxSidebar}}

 

+ +

Cette page contient une liste des modifications de Firefox 1.5 qui concernent les développeurs XUL.

+ +

Modifications spécifiques

+ + + +

Autres informations

+ + + +

{{ languages( { "en": "en/Adapting_XUL_Applications_for_Firefox_1.5", "it": "it/Adattare_le_applicazioni_XUL_a_Firefox_1.5", "ja": "ja/Adapting_XUL_Applications_for_Firefox_1.5", "pl": "pl/Dostosowanie_aplikacji_XUL_do_Firefoksa_1.5" } ) }}

diff --git a/files/fr/mozilla/firefox/releases/1.5/index.html b/files/fr/mozilla/firefox/releases/1.5/index.html deleted file mode 100644 index 932b09029d..0000000000 --- a/files/fr/mozilla/firefox/releases/1.5/index.html +++ /dev/null @@ -1,126 +0,0 @@ ---- -title: Firefox 1.5 pour les développeurs -slug: Mozilla/Firefox/Releases/1.5 -tags: - - Firefox - - Firefox 1.5 -translation_of: Mozilla/Firefox/Releases/1.5 -original_slug: Mozilla/Firefox/Versions/1.5 ---- -
{{FirefoxSidebar}}

Firefox 1.5, basé sur le moteur Gecko 1.8, améliore son support des standards déjà de premier ordre et fournit de nouvelles opportunités de créer la prochaine génération d'applications Web. Firefox 1.5 propose un support amélioré de CSS2 et CSS3, des API pour des graphiques 2D scriptables et programmables grâce à SVG 1.1 et <canvas>, les évènements XForms et XML, ainsi que de nombreuses améliorations du DHTML, du JavaScript et du DOM.

- -

Outils pour développeurs

- -

Plusieurs outils et extensions sont disponibles pour aider les développeurs à travailler avec Firefox 1.5.

- - - -

Note : Certaines extensions ne sont pas encore supportées par Firefox 1.5 et seront automatiquement désactivées.

- -

Fonctionnalités

- -

Voici certaines des nouvelles fonctionnalités de Firefox 1.5 :

- -

Site Web et développeurs d'applications

- -
-
Introduction à SVG dans HTML
-
Apprenez à utiliser le SVG dans des pages XHTML et comment JavaScript et CSS sont utilisés pour manipuler une image comme vous le feriez avec le XHTML dans un script. Voir également SVG dans Firefox pour connaître l'état et les problèmes connus de l'implémentation du SVG dans la version 1.5.
-
- -
-
Dessiner avec canvas
-
Apprenez à utiliser la nouvelle balise <canvas> et comment dessiner des graphiques et d'autres objets dans Firefox.
-
- -
-
Colonnes CSS3
-
Apprenez à utiliser le nouveau support de mise en page multi-colonnes automatiques comme proposé par CSS3.
-
- -
-
Utilisation du cache de Firefox 1.5
-
Découvrez bfcache et comment il accélère la navigation en arrière et en avant.
-
- -

XUL et développeurs d'extension

- -
-
Construire une extension
-
Ce tutoriel vous guidera par étape dans la création d'une extension très simple pour Firefox. Consultez également un autre tutoriel sur la base de connaissance de MozillaZine qui montre comment il est encore plus simple de créer une nouvelle extension avec les nouvelles fonctionnalités du gestionnaire d'extensions dans 1.5.
-
- -
-
XPCNativeWrapper
-
XPCNativeWrapper est un moyen pour empaqueter un objet afin qu'il puisse accéder à des privilèges chrome. Il peut être utilisé dans toutes les versions de Firefox bien que son comportement soit sensiblement différent au lancement de Firefox 1.5 (Gecko 1.8).
-
- -
-
Système de préférences
-
Apprenez à utiliser les nouveaux composants graphiques qui vous permettront de créer des fenêtres d'options plus facilement en utilisant moins de code JavaScript.
-
- -
-
Caractères internationaux dans du JavaScript XUL
-
Les fichiers JavaScript XUL peuvent maintenant contenir des caractères non-ASCII.
-
- -
-
Modifications de l'API Tree
-
Les interfaces pour accéder aux éléments XUL <tree> ont été modifiées.
-
- -
-
Modifications XUL pour Firefox 1.5
-
Résumé des modifications du XUL. Consultez également Adaptation des applications XUL pour Firefox 1.5.
-
- -

Nouvelles fonctionnalités pour l'utilisateur

- -

Utilisation courante

- - - -

Sécurité et vie privée

- - - -

Support des standards Web ouverts

- -

Le support des standards Web de Firefox garde une longueur d'avance avec des implémentations fonctionnelles et multiplateformes pour :

- - - -

Firefox 1.5 supporte un bon nombre de protocoles de transport de données (HTTP, FTP, SSL, TLS et d'autres), les caractères multi-langages (Unicode), plusieurs formats graphiques (GIF, JPEG, PNG, SVG et d'autres) et la dernière version du langage de script le plus populaire au monde, JavaScript 1.6.

- -

Changements depuis Firefox 1.0

- -

De nombreux changements ont été introduits dans Firefox depuis sa première sortie le 9 novembre 2004. Firefox a progressé avec beaucoup de nouvelles fonctions et de corrections de bogues. Une liste détaillée des modifications est disponible sur squarefree.com.

diff --git a/files/fr/mozilla/firefox/releases/1.5/index.md b/files/fr/mozilla/firefox/releases/1.5/index.md new file mode 100644 index 0000000000..932b09029d --- /dev/null +++ b/files/fr/mozilla/firefox/releases/1.5/index.md @@ -0,0 +1,126 @@ +--- +title: Firefox 1.5 pour les développeurs +slug: Mozilla/Firefox/Releases/1.5 +tags: + - Firefox + - Firefox 1.5 +translation_of: Mozilla/Firefox/Releases/1.5 +original_slug: Mozilla/Firefox/Versions/1.5 +--- +
{{FirefoxSidebar}}

Firefox 1.5, basé sur le moteur Gecko 1.8, améliore son support des standards déjà de premier ordre et fournit de nouvelles opportunités de créer la prochaine génération d'applications Web. Firefox 1.5 propose un support amélioré de CSS2 et CSS3, des API pour des graphiques 2D scriptables et programmables grâce à SVG 1.1 et <canvas>, les évènements XForms et XML, ainsi que de nombreuses améliorations du DHTML, du JavaScript et du DOM.

+ +

Outils pour développeurs

+ +

Plusieurs outils et extensions sont disponibles pour aider les développeurs à travailler avec Firefox 1.5.

+ + + +

Note : Certaines extensions ne sont pas encore supportées par Firefox 1.5 et seront automatiquement désactivées.

+ +

Fonctionnalités

+ +

Voici certaines des nouvelles fonctionnalités de Firefox 1.5 :

+ +

Site Web et développeurs d'applications

+ +
+
Introduction à SVG dans HTML
+
Apprenez à utiliser le SVG dans des pages XHTML et comment JavaScript et CSS sont utilisés pour manipuler une image comme vous le feriez avec le XHTML dans un script. Voir également SVG dans Firefox pour connaître l'état et les problèmes connus de l'implémentation du SVG dans la version 1.5.
+
+ +
+
Dessiner avec canvas
+
Apprenez à utiliser la nouvelle balise <canvas> et comment dessiner des graphiques et d'autres objets dans Firefox.
+
+ +
+
Colonnes CSS3
+
Apprenez à utiliser le nouveau support de mise en page multi-colonnes automatiques comme proposé par CSS3.
+
+ +
+
Utilisation du cache de Firefox 1.5
+
Découvrez bfcache et comment il accélère la navigation en arrière et en avant.
+
+ +

XUL et développeurs d'extension

+ +
+
Construire une extension
+
Ce tutoriel vous guidera par étape dans la création d'une extension très simple pour Firefox. Consultez également un autre tutoriel sur la base de connaissance de MozillaZine qui montre comment il est encore plus simple de créer une nouvelle extension avec les nouvelles fonctionnalités du gestionnaire d'extensions dans 1.5.
+
+ +
+
XPCNativeWrapper
+
XPCNativeWrapper est un moyen pour empaqueter un objet afin qu'il puisse accéder à des privilèges chrome. Il peut être utilisé dans toutes les versions de Firefox bien que son comportement soit sensiblement différent au lancement de Firefox 1.5 (Gecko 1.8).
+
+ +
+
Système de préférences
+
Apprenez à utiliser les nouveaux composants graphiques qui vous permettront de créer des fenêtres d'options plus facilement en utilisant moins de code JavaScript.
+
+ +
+
Caractères internationaux dans du JavaScript XUL
+
Les fichiers JavaScript XUL peuvent maintenant contenir des caractères non-ASCII.
+
+ +
+
Modifications de l'API Tree
+
Les interfaces pour accéder aux éléments XUL <tree> ont été modifiées.
+
+ +
+
Modifications XUL pour Firefox 1.5
+
Résumé des modifications du XUL. Consultez également Adaptation des applications XUL pour Firefox 1.5.
+
+ +

Nouvelles fonctionnalités pour l'utilisateur

+ +

Utilisation courante

+ + + +

Sécurité et vie privée

+ + + +

Support des standards Web ouverts

+ +

Le support des standards Web de Firefox garde une longueur d'avance avec des implémentations fonctionnelles et multiplateformes pour :

+ + + +

Firefox 1.5 supporte un bon nombre de protocoles de transport de données (HTTP, FTP, SSL, TLS et d'autres), les caractères multi-langages (Unicode), plusieurs formats graphiques (GIF, JPEG, PNG, SVG et d'autres) et la dernière version du langage de script le plus populaire au monde, JavaScript 1.6.

+ +

Changements depuis Firefox 1.0

+ +

De nombreux changements ont été introduits dans Firefox depuis sa première sortie le 9 novembre 2004. Firefox a progressé avec beaucoup de nouvelles fonctions et de corrections de bogues. Une liste détaillée des modifications est disponible sur squarefree.com.

diff --git a/files/fr/mozilla/firefox/releases/1.5/using_firefox_1.5_caching/index.html b/files/fr/mozilla/firefox/releases/1.5/using_firefox_1.5_caching/index.html deleted file mode 100644 index f4ea138b74..0000000000 --- a/files/fr/mozilla/firefox/releases/1.5/using_firefox_1.5_caching/index.html +++ /dev/null @@ -1,190 +0,0 @@ ---- -title: Utilisation du cache de Firefox 1.5 -slug: Mozilla/Firefox/Releases/1.5/Using_Firefox_1.5_caching -tags: - - DOM - - Développement_Web - - Extensions - - HTML - - JavaScript -translation_of: Mozilla/Firefox/Releases/1.5/Using_Firefox_1.5_caching -original_slug: Utilisation_du_cache_de_Firefox_1.5 ---- -
{{FirefoxSidebar}}

 

- -

Introduction

- -

Firefox 1.5 met en mémoire cache des pages Web entières, avec leurs états JavaScript, pour une même session de navigation. Revenir ou avancer entre des pages déjà visitées ne nécessite aucun chargement de page et les états JavaScript sont préservés. Cette fonctionnalité parfois appelée bfcache (pour « Back-Forward Cache ») rend la navigation très rapide. Ce cache est préservé en mémoire jusqu'à ce que l'utilisateur ferme le navigateur.

- -

Il existe des cas où Firefox ne met pas en cache les pages. Vous trouverez ci-dessous certaines raisons classiques de programmation faisant qu'une page n'est pas mise en cache :

- - - -

Cette nouvelle fonctionnalité de mise en cache modifie le comportement du chargement des pages, et les webmestres peuvent désirer :

- - - -

Le navigateur offre aux webmestres deux nouveaux évènements pour cela.

- -

Nouveaux évènements du navigateur

- -

Si vous utilisez ces nouveaux évènements, vos pages continueront à s'afficher correctement dans les autres navigateurs (nous avons testé des versions antérieures de Firefox, Internet Explorer, Opera et Safari), et elles utiliseront ces nouvelles fonctionnalités de mise en cache lors de leur chargement dans Firefox 1.5.

- -

Le comportement standard des pages Web est :

- -
    -
  1. L'utilisateur accède à une page.
  2. -
  3. Au cours du chargement de la page, les scripts contenus dans la page (inline) s'exécutent.
  4. -
  5. Dès que la page est chargée, le gestionnaire onload est invoqué.
  6. -
- -

Certaines pages comprennent une quatrième étape. Ce sont celles qui utilisent un gestionnaire unload se déclenchant lorsque l'utilisateur quitte la page pour en charger une autre. Si un gestionnaire unload est présent, la page ne sera pas mise en cache.

- -

Lorsqu'un utilisateur navigue vers une page mise en cache, les scripts en-ligne et le gestionnaire onload ne sont pas exécutés (étape 2 et 3) puisque dans la plupart des cas les effets de ces scripts ont été préservés.

- -

Si la page contient des scripts ou d'autres actions déclenchées au chargement qui doivent continuer à s'exécuter lorsque l'utilisateur affiche la page, ou si vous voulez savoir si un utilisateur a consulté une page en cache, utilisez le nouvel évènement pageshow.

- -

Si vous avez des actions devant s'exécuter lorsque l'utilisateur quitte une page, mais désirez profiter de la nouvelle fonctionnalité de mise en cache, donc sans pouvoir employer le gestionnaire unload, utilisez le nouvel évènement pagehide.

- -

L'évènement pageshow

- -

Cet évènement fonctionne comme l'évènement load, sauf qu'il se déclenche à chaque fois que la page est chargée (tandis que l'évènement load ne se déclenche pas avec Firefox 1.5 pour une page chargée depuis le cache). La première fois qu'une page se charge, l'évènement pageshow se déclenche juste après l'évènement load. L'évènement pageshow utilise une propriété booléenne persisted définie à false lors du chargement initial. Elle est définie à true s'il ne s'agit pas du chargement initial de la page (en d'autres termes, elle est définie à true pour une page chargée depuis le cache).

- -

Définissez tous vos scripts JavaScript que vous voulez voir exécutés à chaque fois qu'une page se charge grâce à l'évènement pageshow.

- -

Si vous appelez des fonctions JavaScript comme faisant partie de l'évènement pageshow, vous pouvez vous assurer qu'elles soient appelées lorsque la page est chargée dans d'autres navigateurs que Firefox 1.5 en appelant l'évènement pageshow depuis l'évènement load, comme indiqué dans l'exemple plus bas dans cet article.

- -

L'évènement pagehide

- -

Si vous désirez définir un comportement se produisant lorsque l'utilisateur quitte la page, mais ne voulez pas utiliser l'évènement unload (ce qui empêcherait la page d'être mise en cache), vous pouvez utiliser le nouvel évènement pagehide. Comme pageshow, l'évènement pagehide utilise une propriété booléenne appelée persisted. Cette propriété est définie à true si la page est mise en cache par le navigateur. Lorsque cette propriété est définie à false, le gestionnaire unload, s'il existe, se déclenche immédiatement après l'évènement pagehide.

- -

Firefox 1.5 essaie de simuler les évènements de chargement dans le même ordre de déroulement que lorsque la page est chargée initialement. Les cadres sont traités de la même façon que le document principal. Si la page contient des cadres, cela signifie que lorsque la page mise en cache est chargée :

- - - -

Exemple de code

- -

L'exemple ci-dessous illustre une page utilisant à la fois les évènements load et pageshow. La page se comporte de la façon suivante :

- - - - - - - -

Dans cet exemple :

- - - -
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-   "http://www.w3.org/TR/html4/loose.dtd">
-<HTML>
-<head>
-<title>Commande : Exemple de Firefox 1.5</title>
-<style type="text/css">
-body, p {
-	font-family: Verdana, sans-serif;
-	font-size: 12px;
-   	}
-</style>
-<script type="text/javascript">
-function onLoad() {
-	loadOnlyFirst();
-	onPageShow();
-}
-
-function onPageShow() {
-// calcule la date et l'heure courantes
-	var currentTime = new Date();
-	var year = currentTime.getFullYear();
-	var month = currentTime.getMonth()+1;
-	var day = currentTime.getDate();
-	var hour = currentTime.getHours();
-	var min = currentTime.getMinutes();
-	var sec = currentTime.getSeconds();
-	var mil = currentTime.getMilliseconds();
-	var displayTime = (day + "/" + month + "/" + year + " " +
-		hour + ":" + min + ":" + sec + ":" + mil);
-	document.getElementById("timefield").value = displayTime;
-}
-
-function loadOnlyFirst() {
-	document.zipForm.name.focus();
-}
-</script>
-</head>
-<body onload="onLoad();" onpageshow="if (event.persisted) onPageShow();">
-<h2>Commande</h2>
-
-<form name="zipForm" action="http://www.example.com/formresult.html" method="get">
-<label for="timefield">Date et heure :</label>
-<input type="text" id="timefield"><br>
-<label for="name">Nom :</label>
-<input type="text" id="name"><br>
-<label for="address">Adresse e-mail :</label>
-<input type="text" id="address"><br>
-<label for="order">Numéro de commande :</label>
-<input type="text" id="order"><br>
-<input type="submit" name="submit" value="Soumettre la requête">
-</form>
-</body>
-</html>
-
- -

En revanche, si la page ci-dessus n'avait pas écouté l'évènement pageshow et gérait tous les calculs au sein de l'évènement load (et était codée à la place comme dans l'exemple de code ci-dessous), la position du curseur et l'heure auraient été mis en cache par Firefox 1.5 lorsque l'utilisateur aurait quitté la page. Lors de son retour, ce seraient la date et l'heure mises en cache qui auraient été affichées.

- -
<script>
-function onLoad() {
-	loadOnlyFirst();
-
-// calcule la date et l'heure courante
-	var currentTime = new Date();
-	var year = currentTime.getFullYear();
-	var month = currentTime.getMonth()+1;
-	var day = currentTime.getDate();
-	var hour = currentTime.getHours();
-	var min = currentTime.getMinutes();
-	var sec = currentTime.getSeconds();
-	var mil = currentTime.getMilliseconds();
-	var displayTime = (day + "/" + month + "/" + year + " " +
-		hour + ":" + min + ":" + sec + ":" + mil);
-	document.getElementById("timefield").value = displayTime;
-}
-
-function loadOnlyFirst() {
-	document.zipForm.name.focus();
-}
-</script>
-</head>
-
-<body onload="onLoad();">
-
- -

Développement d'extensions pour Firefox

- -

Les extensions pour Firefox 1.5 doivent prendre en compte cette fonctionnalité de mise en cache. Si vous développez une extension pour Firefox et que vous désirez qu'elle soit compatible à la fois avec la 1.5 et les versions antérieures, assurez-vous qu'elle écoute l'évènement load pour les déclencheurs qui peuvent être mis en cache et écoute l'évènement pageshow pour les déclencheurs qui ne doivent pas être mis en cache.

- -

Par exemple, la Barre d'outils Google pour Firefox doit écouter l'évènement load pour la fonction de liens automatiques et l'évènement pageshow pour la fonction PageRank afin d'être compatible à la fois avec la version 1.5 et les versions antérieures.

diff --git a/files/fr/mozilla/firefox/releases/1.5/using_firefox_1.5_caching/index.md b/files/fr/mozilla/firefox/releases/1.5/using_firefox_1.5_caching/index.md new file mode 100644 index 0000000000..f4ea138b74 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/1.5/using_firefox_1.5_caching/index.md @@ -0,0 +1,190 @@ +--- +title: Utilisation du cache de Firefox 1.5 +slug: Mozilla/Firefox/Releases/1.5/Using_Firefox_1.5_caching +tags: + - DOM + - Développement_Web + - Extensions + - HTML + - JavaScript +translation_of: Mozilla/Firefox/Releases/1.5/Using_Firefox_1.5_caching +original_slug: Utilisation_du_cache_de_Firefox_1.5 +--- +
{{FirefoxSidebar}}

 

+ +

Introduction

+ +

Firefox 1.5 met en mémoire cache des pages Web entières, avec leurs états JavaScript, pour une même session de navigation. Revenir ou avancer entre des pages déjà visitées ne nécessite aucun chargement de page et les états JavaScript sont préservés. Cette fonctionnalité parfois appelée bfcache (pour « Back-Forward Cache ») rend la navigation très rapide. Ce cache est préservé en mémoire jusqu'à ce que l'utilisateur ferme le navigateur.

+ +

Il existe des cas où Firefox ne met pas en cache les pages. Vous trouverez ci-dessous certaines raisons classiques de programmation faisant qu'une page n'est pas mise en cache :

+ + + +

Cette nouvelle fonctionnalité de mise en cache modifie le comportement du chargement des pages, et les webmestres peuvent désirer :

+ + + +

Le navigateur offre aux webmestres deux nouveaux évènements pour cela.

+ +

Nouveaux évènements du navigateur

+ +

Si vous utilisez ces nouveaux évènements, vos pages continueront à s'afficher correctement dans les autres navigateurs (nous avons testé des versions antérieures de Firefox, Internet Explorer, Opera et Safari), et elles utiliseront ces nouvelles fonctionnalités de mise en cache lors de leur chargement dans Firefox 1.5.

+ +

Le comportement standard des pages Web est :

+ +
    +
  1. L'utilisateur accède à une page.
  2. +
  3. Au cours du chargement de la page, les scripts contenus dans la page (inline) s'exécutent.
  4. +
  5. Dès que la page est chargée, le gestionnaire onload est invoqué.
  6. +
+ +

Certaines pages comprennent une quatrième étape. Ce sont celles qui utilisent un gestionnaire unload se déclenchant lorsque l'utilisateur quitte la page pour en charger une autre. Si un gestionnaire unload est présent, la page ne sera pas mise en cache.

+ +

Lorsqu'un utilisateur navigue vers une page mise en cache, les scripts en-ligne et le gestionnaire onload ne sont pas exécutés (étape 2 et 3) puisque dans la plupart des cas les effets de ces scripts ont été préservés.

+ +

Si la page contient des scripts ou d'autres actions déclenchées au chargement qui doivent continuer à s'exécuter lorsque l'utilisateur affiche la page, ou si vous voulez savoir si un utilisateur a consulté une page en cache, utilisez le nouvel évènement pageshow.

+ +

Si vous avez des actions devant s'exécuter lorsque l'utilisateur quitte une page, mais désirez profiter de la nouvelle fonctionnalité de mise en cache, donc sans pouvoir employer le gestionnaire unload, utilisez le nouvel évènement pagehide.

+ +

L'évènement pageshow

+ +

Cet évènement fonctionne comme l'évènement load, sauf qu'il se déclenche à chaque fois que la page est chargée (tandis que l'évènement load ne se déclenche pas avec Firefox 1.5 pour une page chargée depuis le cache). La première fois qu'une page se charge, l'évènement pageshow se déclenche juste après l'évènement load. L'évènement pageshow utilise une propriété booléenne persisted définie à false lors du chargement initial. Elle est définie à true s'il ne s'agit pas du chargement initial de la page (en d'autres termes, elle est définie à true pour une page chargée depuis le cache).

+ +

Définissez tous vos scripts JavaScript que vous voulez voir exécutés à chaque fois qu'une page se charge grâce à l'évènement pageshow.

+ +

Si vous appelez des fonctions JavaScript comme faisant partie de l'évènement pageshow, vous pouvez vous assurer qu'elles soient appelées lorsque la page est chargée dans d'autres navigateurs que Firefox 1.5 en appelant l'évènement pageshow depuis l'évènement load, comme indiqué dans l'exemple plus bas dans cet article.

+ +

L'évènement pagehide

+ +

Si vous désirez définir un comportement se produisant lorsque l'utilisateur quitte la page, mais ne voulez pas utiliser l'évènement unload (ce qui empêcherait la page d'être mise en cache), vous pouvez utiliser le nouvel évènement pagehide. Comme pageshow, l'évènement pagehide utilise une propriété booléenne appelée persisted. Cette propriété est définie à true si la page est mise en cache par le navigateur. Lorsque cette propriété est définie à false, le gestionnaire unload, s'il existe, se déclenche immédiatement après l'évènement pagehide.

+ +

Firefox 1.5 essaie de simuler les évènements de chargement dans le même ordre de déroulement que lorsque la page est chargée initialement. Les cadres sont traités de la même façon que le document principal. Si la page contient des cadres, cela signifie que lorsque la page mise en cache est chargée :

+ + + +

Exemple de code

+ +

L'exemple ci-dessous illustre une page utilisant à la fois les évènements load et pageshow. La page se comporte de la façon suivante :

+ + + + + + + +

Dans cet exemple :

+ + + +
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+   "http://www.w3.org/TR/html4/loose.dtd">
+<HTML>
+<head>
+<title>Commande : Exemple de Firefox 1.5</title>
+<style type="text/css">
+body, p {
+	font-family: Verdana, sans-serif;
+	font-size: 12px;
+   	}
+</style>
+<script type="text/javascript">
+function onLoad() {
+	loadOnlyFirst();
+	onPageShow();
+}
+
+function onPageShow() {
+// calcule la date et l'heure courantes
+	var currentTime = new Date();
+	var year = currentTime.getFullYear();
+	var month = currentTime.getMonth()+1;
+	var day = currentTime.getDate();
+	var hour = currentTime.getHours();
+	var min = currentTime.getMinutes();
+	var sec = currentTime.getSeconds();
+	var mil = currentTime.getMilliseconds();
+	var displayTime = (day + "/" + month + "/" + year + " " +
+		hour + ":" + min + ":" + sec + ":" + mil);
+	document.getElementById("timefield").value = displayTime;
+}
+
+function loadOnlyFirst() {
+	document.zipForm.name.focus();
+}
+</script>
+</head>
+<body onload="onLoad();" onpageshow="if (event.persisted) onPageShow();">
+<h2>Commande</h2>
+
+<form name="zipForm" action="http://www.example.com/formresult.html" method="get">
+<label for="timefield">Date et heure :</label>
+<input type="text" id="timefield"><br>
+<label for="name">Nom :</label>
+<input type="text" id="name"><br>
+<label for="address">Adresse e-mail :</label>
+<input type="text" id="address"><br>
+<label for="order">Numéro de commande :</label>
+<input type="text" id="order"><br>
+<input type="submit" name="submit" value="Soumettre la requête">
+</form>
+</body>
+</html>
+
+ +

En revanche, si la page ci-dessus n'avait pas écouté l'évènement pageshow et gérait tous les calculs au sein de l'évènement load (et était codée à la place comme dans l'exemple de code ci-dessous), la position du curseur et l'heure auraient été mis en cache par Firefox 1.5 lorsque l'utilisateur aurait quitté la page. Lors de son retour, ce seraient la date et l'heure mises en cache qui auraient été affichées.

+ +
<script>
+function onLoad() {
+	loadOnlyFirst();
+
+// calcule la date et l'heure courante
+	var currentTime = new Date();
+	var year = currentTime.getFullYear();
+	var month = currentTime.getMonth()+1;
+	var day = currentTime.getDate();
+	var hour = currentTime.getHours();
+	var min = currentTime.getMinutes();
+	var sec = currentTime.getSeconds();
+	var mil = currentTime.getMilliseconds();
+	var displayTime = (day + "/" + month + "/" + year + " " +
+		hour + ":" + min + ":" + sec + ":" + mil);
+	document.getElementById("timefield").value = displayTime;
+}
+
+function loadOnlyFirst() {
+	document.zipForm.name.focus();
+}
+</script>
+</head>
+
+<body onload="onLoad();">
+
+ +

Développement d'extensions pour Firefox

+ +

Les extensions pour Firefox 1.5 doivent prendre en compte cette fonctionnalité de mise en cache. Si vous développez une extension pour Firefox et que vous désirez qu'elle soit compatible à la fois avec la 1.5 et les versions antérieures, assurez-vous qu'elle écoute l'évènement load pour les déclencheurs qui peuvent être mis en cache et écoute l'évènement pageshow pour les déclencheurs qui ne doivent pas être mis en cache.

+ +

Par exemple, la Barre d'outils Google pour Firefox doit écouter l'évènement load pour la fonction de liens automatiques et l'évènement pageshow pour la fonction PageRank afin d'être compatible à la fois avec la version 1.5 et les versions antérieures.

diff --git a/files/fr/mozilla/firefox/releases/11/index.html b/files/fr/mozilla/firefox/releases/11/index.html deleted file mode 100644 index 309a22960e..0000000000 --- a/files/fr/mozilla/firefox/releases/11/index.html +++ /dev/null @@ -1,145 +0,0 @@ ---- -title: Firefox 11 pour les développeurs -slug: Mozilla/Firefox/Releases/11 -tags: - - Firefox - - Firefox 11 -translation_of: Mozilla/Firefox/Releases/11 -original_slug: Mozilla/Firefox/Versions/11 ---- -
{{FirefoxSidebar}}

Firefox 11, basé sur Gecko 11.0, est sorti le 13 mars 2012. Cet article fournit des informations sur les nouvelles fonctionnalités et les principaux bugs corrigés, ainsi que des liens vers une documentation plus détaillée pour les développeurs web et d'extensions.

- -

Changements pour les développeurs Web

- -

HTML

- - - -

DOM

- - - -

CSS

- - - -

SVG

- - - -

WebSocket

- - - -

IndexedDB

- - - -

Réseau

- - - -

Outils de développement

- - - -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Module de code JavaScript

- -

NetUtil.jsm

- - - -

Nouveau module de code JavaScript

- -
-
source-editor.jsm
-
Offre un moyen pratique facile d'éditeur de code source que vous pouvez utiliser dans vos add-ons. C'est le même éditeur utilisé par l'Ardoise et les autres outils de développement intégrés dans Firefox.
-
- -

Changements dans les interfaces

- - - -

Interface supprimées

- -

Les interfaces suivantes ont été supprimées car elles n'étaient plus indispensables :

- - - -

Changement lié au thème

- - - -

Changement dans les préférences

- -
-
{{Pref("ui.tooltipDelay")}}
-
Définit le délai, en millisecondes, entre le moment où le curseur de la souris s'arrête et l'affichage d'une info-bulle.
-
- -

Changement dans le système de compilation

- - - -

Autre changement

- - - -

Voir également

- -

{{Firefox_for_developers('10')}}

diff --git a/files/fr/mozilla/firefox/releases/11/index.md b/files/fr/mozilla/firefox/releases/11/index.md new file mode 100644 index 0000000000..309a22960e --- /dev/null +++ b/files/fr/mozilla/firefox/releases/11/index.md @@ -0,0 +1,145 @@ +--- +title: Firefox 11 pour les développeurs +slug: Mozilla/Firefox/Releases/11 +tags: + - Firefox + - Firefox 11 +translation_of: Mozilla/Firefox/Releases/11 +original_slug: Mozilla/Firefox/Versions/11 +--- +
{{FirefoxSidebar}}

Firefox 11, basé sur Gecko 11.0, est sorti le 13 mars 2012. Cet article fournit des informations sur les nouvelles fonctionnalités et les principaux bugs corrigés, ainsi que des liens vers une documentation plus détaillée pour les développeurs web et d'extensions.

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

DOM

+ + + +

CSS

+ + + +

SVG

+ + + +

WebSocket

+ + + +

IndexedDB

+ + + +

Réseau

+ + + +

Outils de développement

+ + + +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Module de code JavaScript

+ +

NetUtil.jsm

+ + + +

Nouveau module de code JavaScript

+ +
+
source-editor.jsm
+
Offre un moyen pratique facile d'éditeur de code source que vous pouvez utiliser dans vos add-ons. C'est le même éditeur utilisé par l'Ardoise et les autres outils de développement intégrés dans Firefox.
+
+ +

Changements dans les interfaces

+ + + +

Interface supprimées

+ +

Les interfaces suivantes ont été supprimées car elles n'étaient plus indispensables :

+ + + +

Changement lié au thème

+ + + +

Changement dans les préférences

+ +
+
{{Pref("ui.tooltipDelay")}}
+
Définit le délai, en millisecondes, entre le moment où le curseur de la souris s'arrête et l'affichage d'une info-bulle.
+
+ +

Changement dans le système de compilation

+ + + +

Autre changement

+ + + +

Voir également

+ +

{{Firefox_for_developers('10')}}

diff --git a/files/fr/mozilla/firefox/releases/12/index.html b/files/fr/mozilla/firefox/releases/12/index.html deleted file mode 100644 index c8d113acc8..0000000000 --- a/files/fr/mozilla/firefox/releases/12/index.html +++ /dev/null @@ -1,163 +0,0 @@ ---- -title: Firefox 12 pour les développeurs -slug: Mozilla/Firefox/Releases/12 -tags: - - Firefox - - Firefox 12 -translation_of: Mozilla/Firefox/Releases/12 -original_slug: Mozilla/Firefox/Versions/12 ---- -
{{FirefoxSidebar}}
- -

Firefox 12, basé sur Gecko 12.0, est sorti le 24 avril 2012. Cette page résume les principaux changements dans Firefox 12 qui sont utiles aux développeurs.

- -

Changements pour les développeurs Web

- -

HTML

- - - -

CSS

- - - -

JavaScript

- - - -

DOM

- - - -

Nouvelles WebAPIs

- - - -

SVG

- - - -

MathML

- - - -

Réseau

- - - -

Outils de développement

- - - -

Mozilla travaille sur l'intégration des ses propres outils de développement Web qui complètent l'add-on populaire Firebug. Vous pouvez obtenir plus d'informations sur ces outils et également voir une liste de ressources externes à Firefox qui vous aideront dans le développement Web. La liste se trouve dans les outils de développement Web.

- -

Changements divers

- - - -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Modules de code JavaScript

- -

source-editor.jsm

- - - -

XUL

- - - -

XPCOM

- - - -

XPConnect

- - - -

Changements dans les interfaces

- - - -

SpiderMonkey

- - - -

Compilation

- - - -

Autres changements

- - - -

Voir également

- -

{{Firefox_for_developers('11')}}

diff --git a/files/fr/mozilla/firefox/releases/12/index.md b/files/fr/mozilla/firefox/releases/12/index.md new file mode 100644 index 0000000000..c8d113acc8 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/12/index.md @@ -0,0 +1,163 @@ +--- +title: Firefox 12 pour les développeurs +slug: Mozilla/Firefox/Releases/12 +tags: + - Firefox + - Firefox 12 +translation_of: Mozilla/Firefox/Releases/12 +original_slug: Mozilla/Firefox/Versions/12 +--- +
{{FirefoxSidebar}}
+ +

Firefox 12, basé sur Gecko 12.0, est sorti le 24 avril 2012. Cette page résume les principaux changements dans Firefox 12 qui sont utiles aux développeurs.

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

CSS

+ + + +

JavaScript

+ + + +

DOM

+ + + +

Nouvelles WebAPIs

+ + + +

SVG

+ + + +

MathML

+ + + +

Réseau

+ + + +

Outils de développement

+ + + +

Mozilla travaille sur l'intégration des ses propres outils de développement Web qui complètent l'add-on populaire Firebug. Vous pouvez obtenir plus d'informations sur ces outils et également voir une liste de ressources externes à Firefox qui vous aideront dans le développement Web. La liste se trouve dans les outils de développement Web.

+ +

Changements divers

+ + + +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Modules de code JavaScript

+ +

source-editor.jsm

+ + + +

XUL

+ + + +

XPCOM

+ + + +

XPConnect

+ + + +

Changements dans les interfaces

+ + + +

SpiderMonkey

+ + + +

Compilation

+ + + +

Autres changements

+ + + +

Voir également

+ +

{{Firefox_for_developers('11')}}

diff --git a/files/fr/mozilla/firefox/releases/13/index.html b/files/fr/mozilla/firefox/releases/13/index.html deleted file mode 100644 index 7c00544098..0000000000 --- a/files/fr/mozilla/firefox/releases/13/index.html +++ /dev/null @@ -1,146 +0,0 @@ ---- -title: Firefox 13 pour les développeurs -slug: Mozilla/Firefox/Releases/13 -tags: - - Firefox - - Firefox 13 -translation_of: Mozilla/Firefox/Releases/13 -original_slug: Mozilla/Firefox/Versions/13 ---- -
{{FirefoxSidebar}}

Firefox 13, basé sur Gecko 13.0, est sorti le 5 juin 2012. Cette page résume les principaux changements dans Firefox 13 qui sont utiles aux développeurs.

- -

Changements pour les développeurs Web

- -

HTML

- - - -

CSS

- - - -

JavaScript

- - - -

DOM

- - - -

UA string

- - - -

SVG

- - - -

WebGL

- - - -

MathML

- - - -

Réseau

- - - -

Outils de développement

- -

Amélioration de la vue 3D

- - - -

Améliorations du panneau de style

- - - -

Amélioration de l'Ardoise

- - - -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Note de compatibilité

- -

A partir de Firefox 13, Firefox pour Windows requiert au minimum Windows XP Service Pack 2, il ne pourra plus s'exécuter sur Windows 2000 ou les versions antérieures de Windows XP.

- -

Modules de code JavaScript

- -

source-editor.jsm

- - - -

ARIA

- - - -

Interfaces

- - - -

Voir également

- -

{{Firefox_for_developers('12')}}

diff --git a/files/fr/mozilla/firefox/releases/13/index.md b/files/fr/mozilla/firefox/releases/13/index.md new file mode 100644 index 0000000000..7c00544098 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/13/index.md @@ -0,0 +1,146 @@ +--- +title: Firefox 13 pour les développeurs +slug: Mozilla/Firefox/Releases/13 +tags: + - Firefox + - Firefox 13 +translation_of: Mozilla/Firefox/Releases/13 +original_slug: Mozilla/Firefox/Versions/13 +--- +
{{FirefoxSidebar}}

Firefox 13, basé sur Gecko 13.0, est sorti le 5 juin 2012. Cette page résume les principaux changements dans Firefox 13 qui sont utiles aux développeurs.

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

CSS

+ + + +

JavaScript

+ + + +

DOM

+ + + +

UA string

+ + + +

SVG

+ + + +

WebGL

+ + + +

MathML

+ + + +

Réseau

+ + + +

Outils de développement

+ +

Amélioration de la vue 3D

+ + + +

Améliorations du panneau de style

+ + + +

Amélioration de l'Ardoise

+ + + +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Note de compatibilité

+ +

A partir de Firefox 13, Firefox pour Windows requiert au minimum Windows XP Service Pack 2, il ne pourra plus s'exécuter sur Windows 2000 ou les versions antérieures de Windows XP.

+ +

Modules de code JavaScript

+ +

source-editor.jsm

+ + + +

ARIA

+ + + +

Interfaces

+ + + +

Voir également

+ +

{{Firefox_for_developers('12')}}

diff --git a/files/fr/mozilla/firefox/releases/15/index.html b/files/fr/mozilla/firefox/releases/15/index.html deleted file mode 100644 index c8126cd3a9..0000000000 --- a/files/fr/mozilla/firefox/releases/15/index.html +++ /dev/null @@ -1,115 +0,0 @@ ---- -title: Firefox 15 pour les développeurs -slug: Mozilla/Firefox/Releases/15 -tags: - - Firefox - - Firefox 15 -translation_of: Mozilla/Firefox/Releases/15 -original_slug: Mozilla/Firefox/Versions/15 ---- -
{{FirefoxSidebar}}

Firefox 15, basé sur Gecko 15.0, est sorti le 28 août 2012. Cette page résume les principaux changements dans Firefox 15 qui sont utiles aux développeurs.

- -

Changements pour les développeurs Web

- -

HTML

- - - -

CSS

- - - -

DOM

- - - -

JavaScript

- - - -

WebGL

- - - -

MathML

- - - -

Réseau

- - - -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Changements dans les interfaces

- -
-
{{interface("nsIDOMWindowUtils")}}
-
aModifiers de sendMouseEvent(), sendTouchEvent(), sendMouseEventToWindow(), sendMouseScrollEvent() et sendKeyEvent() supporte toutes les touches de modification qui sont supportées par KeyboardEvent.getModifierState(). Utiliser les valeurs MODIFIER_*. Et désormais le 5ème paramètre de sendKeyEvent() est changé d'un boolean vers un unsigned long. Pour la compatibilité ascendante, si l'appelant passe true ou false, le comportement n'est pas changé. Ce changement permet aux appelants d'indiquer l'emplacement de la touche.
-
{{interface("nsIBrowserHistory")}}
-
La méthode hidePage() n'a jamais été implémentée, et a été entièrement supprimée dans cette version. La méthode addPageWithDetails() a également été supprimée dans le cadre des travaux pour faire une API Places asynchrone ; à la place, utilisez plutôt {{ifmethod("mozIAsyncHistory", "updatePlaces")}}. De plus, l'attribut count a été retiré, il ne renvoyé pas un comptage réel à certain moment (à la place, il indiqué simplement si les entrées existées). Vous pouvez utiliser à la place {{ifattribute("nsINavHistoryService", "hasHistoryEntries")}}.
-
- -
-
{{interface("inIDOMUtils")}}
-
La méthode parseStyleSheet() permet d'ajouter et d'analyser des feuilles de style.
-
- -

Nouvelles interfaces

- -
-
{{interface("nsISpeculativeConnect")}}
-
Fournit un moyen de suggérer la couche réseau que vous allez être susceptibles de demander l'ouverture d'une connexion à un URI donné dans un futur proche. Cela permet à la couche réseau d'entamer le processus, qui a parfois une forte latence, d'ouvrir une nouvelle connexion réseau à l'avance.
-
- -

Interfaces supprimées

- -

Les interfaces suivantes ont été supprimées.

- - - -

Voir également

- -

{{Firefox_for_developers('14')}}

diff --git a/files/fr/mozilla/firefox/releases/15/index.md b/files/fr/mozilla/firefox/releases/15/index.md new file mode 100644 index 0000000000..c8126cd3a9 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/15/index.md @@ -0,0 +1,115 @@ +--- +title: Firefox 15 pour les développeurs +slug: Mozilla/Firefox/Releases/15 +tags: + - Firefox + - Firefox 15 +translation_of: Mozilla/Firefox/Releases/15 +original_slug: Mozilla/Firefox/Versions/15 +--- +
{{FirefoxSidebar}}

Firefox 15, basé sur Gecko 15.0, est sorti le 28 août 2012. Cette page résume les principaux changements dans Firefox 15 qui sont utiles aux développeurs.

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

CSS

+ + + +

DOM

+ + + +

JavaScript

+ + + +

WebGL

+ + + +

MathML

+ + + +

Réseau

+ + + +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Changements dans les interfaces

+ +
+
{{interface("nsIDOMWindowUtils")}}
+
aModifiers de sendMouseEvent(), sendTouchEvent(), sendMouseEventToWindow(), sendMouseScrollEvent() et sendKeyEvent() supporte toutes les touches de modification qui sont supportées par KeyboardEvent.getModifierState(). Utiliser les valeurs MODIFIER_*. Et désormais le 5ème paramètre de sendKeyEvent() est changé d'un boolean vers un unsigned long. Pour la compatibilité ascendante, si l'appelant passe true ou false, le comportement n'est pas changé. Ce changement permet aux appelants d'indiquer l'emplacement de la touche.
+
{{interface("nsIBrowserHistory")}}
+
La méthode hidePage() n'a jamais été implémentée, et a été entièrement supprimée dans cette version. La méthode addPageWithDetails() a également été supprimée dans le cadre des travaux pour faire une API Places asynchrone ; à la place, utilisez plutôt {{ifmethod("mozIAsyncHistory", "updatePlaces")}}. De plus, l'attribut count a été retiré, il ne renvoyé pas un comptage réel à certain moment (à la place, il indiqué simplement si les entrées existées). Vous pouvez utiliser à la place {{ifattribute("nsINavHistoryService", "hasHistoryEntries")}}.
+
+ +
+
{{interface("inIDOMUtils")}}
+
La méthode parseStyleSheet() permet d'ajouter et d'analyser des feuilles de style.
+
+ +

Nouvelles interfaces

+ +
+
{{interface("nsISpeculativeConnect")}}
+
Fournit un moyen de suggérer la couche réseau que vous allez être susceptibles de demander l'ouverture d'une connexion à un URI donné dans un futur proche. Cela permet à la couche réseau d'entamer le processus, qui a parfois une forte latence, d'ouvrir une nouvelle connexion réseau à l'avance.
+
+ +

Interfaces supprimées

+ +

Les interfaces suivantes ont été supprimées.

+ + + +

Voir également

+ +

{{Firefox_for_developers('14')}}

diff --git a/files/fr/mozilla/firefox/releases/16/index.html b/files/fr/mozilla/firefox/releases/16/index.html deleted file mode 100644 index 55638708a3..0000000000 --- a/files/fr/mozilla/firefox/releases/16/index.html +++ /dev/null @@ -1,89 +0,0 @@ ---- -title: Firefox 16 pour les développeurs -slug: Mozilla/Firefox/Releases/16 -tags: - - Firefox - - Firefox 16 -translation_of: Mozilla/Firefox/Releases/16 -original_slug: Mozilla/Firefox/Versions/16 ---- -
{{FirefoxSidebar}}

Firefox 16, basé sur Gecko 16.0, est sorti le 9 octobre 2012. Cette page résume les principaux changements dans Firefox 15 qui sont utiles aux développeurs.

- -

Changements pour les développeurs Web

- -

HTML

- - - -

CSS

- - - -

DOM

- - - -

JavaScript

- - - -

MathML

- - - -

Outils de développement

- - - -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Changements dans les interfaces

- -

{{interface("nsIPrivateDOMEvent")}} a été fusionné dans {{interface("nsIDOMEvent")}}. ({{bug("761613")}})

- -

Nouvelles interfaces

- -

Interfaces supprimées

- -

Les interfaces suivantes ont été supprimées.

- -

Voir également

- -

{{Firefox_for_developers('15')}}

diff --git a/files/fr/mozilla/firefox/releases/16/index.md b/files/fr/mozilla/firefox/releases/16/index.md new file mode 100644 index 0000000000..55638708a3 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/16/index.md @@ -0,0 +1,89 @@ +--- +title: Firefox 16 pour les développeurs +slug: Mozilla/Firefox/Releases/16 +tags: + - Firefox + - Firefox 16 +translation_of: Mozilla/Firefox/Releases/16 +original_slug: Mozilla/Firefox/Versions/16 +--- +
{{FirefoxSidebar}}

Firefox 16, basé sur Gecko 16.0, est sorti le 9 octobre 2012. Cette page résume les principaux changements dans Firefox 15 qui sont utiles aux développeurs.

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

CSS

+ + + +

DOM

+ + + +

JavaScript

+ + + +

MathML

+ + + +

Outils de développement

+ + + +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Changements dans les interfaces

+ +

{{interface("nsIPrivateDOMEvent")}} a été fusionné dans {{interface("nsIDOMEvent")}}. ({{bug("761613")}})

+ +

Nouvelles interfaces

+ +

Interfaces supprimées

+ +

Les interfaces suivantes ont été supprimées.

+ +

Voir également

+ +

{{Firefox_for_developers('15')}}

diff --git a/files/fr/mozilla/firefox/releases/17/index.html b/files/fr/mozilla/firefox/releases/17/index.html deleted file mode 100644 index 2b7f41ef93..0000000000 --- a/files/fr/mozilla/firefox/releases/17/index.html +++ /dev/null @@ -1,88 +0,0 @@ ---- -title: Firefox 17 pour les développeurs -slug: Mozilla/Firefox/Releases/17 -tags: - - Firefox - - Firefox 17 -translation_of: Mozilla/Firefox/Releases/17 -original_slug: Mozilla/Firefox/Versions/17 ---- -
{{FirefoxSidebar}}
- -

Firefox 17, basé sur Gecko 17.0, est sorti le 20 novembre 2012. Cette page résume les principaux changements dans Firefox 17 qui sont utiles aux développeurs.

- -

Changements pour les développeurs Web

- -

HTML

- - - -

CSS

- - - -

DOM

- - - - -

JavaScript

- - - -

MathML

- - - -

XUL

- - - -

Agent Utilisateur

- -

La partie de Gecko sur la chaine de l'agent utilisateur a changée. La date de compilation (qui n’avait pas été mise à jour depuis 2010) a été retirée, et c'est le numéro de version de Gecko qui a été mis en place. Donc Gecko/20100101 -> Gecko/17.0. Cela peut vous affecter si vous faites du reniflement.

- -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Changements dans les interfaces

- -
-
{{interface("nsIInputStream")}}
-
La méthode available() retourne une longueur de 64-bit au lieu de 32-bit. ({{bug(215450)}})
-
{{interface("nsIDOMWindowUtils")}}
-
La méthode sendMouseScrollEvent() a été remplacée par sendWheelEvent(). ({{bug(719320)}})
-
{{interface("nsIFilePicker")}}
-
La méthode open(), pour ouvrir la boîte de dialogue d'un fichier de façon asynchrone, a été ajoutée et la méthode show() a été dépréciée. ({{bug("731307")}})
-
{{interface("nsIScriptSecurityManager")}}
-
Les méthodes checkLoadURIStr() et checkLoadURI() ont été retirées. ({{bug(327244)}})
-
{{interface("nsIRefreshURI")}}
-
La méthode setupRefreshURIFromHeader() a un paramètre principal en plus.
-
- -

Voir également

- -

{{Firefox_for_developers('16')}}

diff --git a/files/fr/mozilla/firefox/releases/17/index.md b/files/fr/mozilla/firefox/releases/17/index.md new file mode 100644 index 0000000000..2b7f41ef93 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/17/index.md @@ -0,0 +1,88 @@ +--- +title: Firefox 17 pour les développeurs +slug: Mozilla/Firefox/Releases/17 +tags: + - Firefox + - Firefox 17 +translation_of: Mozilla/Firefox/Releases/17 +original_slug: Mozilla/Firefox/Versions/17 +--- +
{{FirefoxSidebar}}
+ +

Firefox 17, basé sur Gecko 17.0, est sorti le 20 novembre 2012. Cette page résume les principaux changements dans Firefox 17 qui sont utiles aux développeurs.

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

CSS

+ + + +

DOM

+ + + + +

JavaScript

+ + + +

MathML

+ + + +

XUL

+ + + +

Agent Utilisateur

+ +

La partie de Gecko sur la chaine de l'agent utilisateur a changée. La date de compilation (qui n’avait pas été mise à jour depuis 2010) a été retirée, et c'est le numéro de version de Gecko qui a été mis en place. Donc Gecko/20100101 -> Gecko/17.0. Cela peut vous affecter si vous faites du reniflement.

+ +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Changements dans les interfaces

+ +
+
{{interface("nsIInputStream")}}
+
La méthode available() retourne une longueur de 64-bit au lieu de 32-bit. ({{bug(215450)}})
+
{{interface("nsIDOMWindowUtils")}}
+
La méthode sendMouseScrollEvent() a été remplacée par sendWheelEvent(). ({{bug(719320)}})
+
{{interface("nsIFilePicker")}}
+
La méthode open(), pour ouvrir la boîte de dialogue d'un fichier de façon asynchrone, a été ajoutée et la méthode show() a été dépréciée. ({{bug("731307")}})
+
{{interface("nsIScriptSecurityManager")}}
+
Les méthodes checkLoadURIStr() et checkLoadURI() ont été retirées. ({{bug(327244)}})
+
{{interface("nsIRefreshURI")}}
+
La méthode setupRefreshURIFromHeader() a un paramètre principal en plus.
+
+ +

Voir également

+ +

{{Firefox_for_developers('16')}}

diff --git a/files/fr/mozilla/firefox/releases/18/index.html b/files/fr/mozilla/firefox/releases/18/index.html deleted file mode 100644 index b87273adc1..0000000000 --- a/files/fr/mozilla/firefox/releases/18/index.html +++ /dev/null @@ -1,93 +0,0 @@ ---- -title: Firefox 18 pour les développeurs -slug: Mozilla/Firefox/Releases/18 -tags: - - Firefox - - Firefox 18 -translation_of: Mozilla/Firefox/Releases/18 -original_slug: Mozilla/Firefox/Versions/18 ---- -
{{FirefoxSidebar}}

Firefox 18, basé sur Gecko 18.0, est sorti le 8 janvier 2013. Cette page résume les principaux changements dans Firefox 18 qui sont utiles aux développeurs.

- -

Changements pour les développeurs Web

- -

HTML

- - - -

CSS

- - - -

DOM

- - - -

JavaScript

- - - -

Réseau

- - - -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Changements dans les interfaces

- -
-
{{interface("nsIStreamListener")}}
-
Le 4ème paramètre (aOffset) de la méthode onDataAvailable() modifie unsigned long long. ({{bug("784912")}})
-
{{interface("nsIUploadChannel")}}
-
setUploadStream() supporte plus de 2 Go de content-length. ({{bug("790617")}})
-
{{interface("nsIEditor")}}
-
addEditorObserver() a été supprimé, utilisez setEditorObserver() à la place, removeEditorObserver() ne prend plus le paramètre {{interface("nsIEditorObserver")}}. ({{bug("785091")}})
-
{{interface("nsIHttpProtocolHandler")}}
-
Il n'y a plus de garantie que les observateurs http-on-modify-request soit appelés de manière synchrone au cours de nsIChannel.asyncOpen(). Pour les observateurs qui ont besoin d'être appelés pendant asyncOpen(), le nouvel observateur http-on-opening-request a été ajouté. {{bug("800799")}}
-
{{interface("nsIProtocolProxyService")}}
-
La méthode resolve a été retirée. Maintenant, seule la méthode asyncResolve peut être utilisée. Voir ({{bug("769764")}}).
-
- -

Interfaces supprimées

- -

Les interfaces suivantes ont été supprimées.

- - - -

Voir également

- - - -

Anciennes versions

- -

{{Firefox_for_developers('17')}}

diff --git a/files/fr/mozilla/firefox/releases/18/index.md b/files/fr/mozilla/firefox/releases/18/index.md new file mode 100644 index 0000000000..b87273adc1 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/18/index.md @@ -0,0 +1,93 @@ +--- +title: Firefox 18 pour les développeurs +slug: Mozilla/Firefox/Releases/18 +tags: + - Firefox + - Firefox 18 +translation_of: Mozilla/Firefox/Releases/18 +original_slug: Mozilla/Firefox/Versions/18 +--- +
{{FirefoxSidebar}}

Firefox 18, basé sur Gecko 18.0, est sorti le 8 janvier 2013. Cette page résume les principaux changements dans Firefox 18 qui sont utiles aux développeurs.

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

CSS

+ + + +

DOM

+ + + +

JavaScript

+ + + +

Réseau

+ + + +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Changements dans les interfaces

+ +
+
{{interface("nsIStreamListener")}}
+
Le 4ème paramètre (aOffset) de la méthode onDataAvailable() modifie unsigned long long. ({{bug("784912")}})
+
{{interface("nsIUploadChannel")}}
+
setUploadStream() supporte plus de 2 Go de content-length. ({{bug("790617")}})
+
{{interface("nsIEditor")}}
+
addEditorObserver() a été supprimé, utilisez setEditorObserver() à la place, removeEditorObserver() ne prend plus le paramètre {{interface("nsIEditorObserver")}}. ({{bug("785091")}})
+
{{interface("nsIHttpProtocolHandler")}}
+
Il n'y a plus de garantie que les observateurs http-on-modify-request soit appelés de manière synchrone au cours de nsIChannel.asyncOpen(). Pour les observateurs qui ont besoin d'être appelés pendant asyncOpen(), le nouvel observateur http-on-opening-request a été ajouté. {{bug("800799")}}
+
{{interface("nsIProtocolProxyService")}}
+
La méthode resolve a été retirée. Maintenant, seule la méthode asyncResolve peut être utilisée. Voir ({{bug("769764")}}).
+
+ +

Interfaces supprimées

+ +

Les interfaces suivantes ont été supprimées.

+ + + +

Voir également

+ + + +

Anciennes versions

+ +

{{Firefox_for_developers('17')}}

diff --git a/files/fr/mozilla/firefox/releases/19/index.html b/files/fr/mozilla/firefox/releases/19/index.html deleted file mode 100644 index 1b00d87cb4..0000000000 --- a/files/fr/mozilla/firefox/releases/19/index.html +++ /dev/null @@ -1,83 +0,0 @@ ---- -title: Firefox 19 pour les développeurs -slug: Mozilla/Firefox/Releases/19 -tags: - - Firefox - - Firefox 19 -translation_of: Mozilla/Firefox/Releases/19 -original_slug: Mozilla/Firefox/Versions/19 ---- -
{{FirefoxSidebar}}

{{ draft() }}

- -

Firefox 19, basé sur Gecko 19.0, est sorti le 19 février 2013. Cette page résume les principaux changements dans Firefox 19 qui sont utiles aux développeurs.

- -

Vous voulez aider à documenter Firefox 19 ? Regardez la liste des bugs qui ont besoin de rédaction et lancez-vous !

- -

Changements pour les développeurs web

- -

JavaScript

- - - -

CSS

- - - -

DOM

- - - -

XForms

- -

Le support des XForms a été retiré dans Firefox 19.

- -

Changements pour les développeurs d'add-ons et les développeurs Mozilla

- -
-

Note:  nsresult est maintenant fortement typé, c'est un changement majeur dans Firefox 19. Cela permet de détecter plus facilement les bugs causés par la mauvaise gestion des valeurs retournées mais peut empêcher des codes actuels de fonctionner si nsresult fait de mauvaises suppositions concernant ces valeurs.

-
- - - -

Changements dans les intefaces

- -
-
{{interface("nsIImgLoadingContent")}}
-
Le paramètre (aObserver) de la méthode addObserver() change de {{interface("imgIDecoderObserver")}} pour {{interface("imgINotificationObserver")}}. La méthode notify() de {{interface("imgINotificationObserver")}} n'est pas scriptable, vous devez donc utiliser createScriptedObserver() à partir de {{interface("imgITools")}}.
-
{{interface("nsIChannel")}}
-
La propriété contentLength a changée de long à int64_t
-
- -

A voir également

- - - -

Anciennes versions

- -

{{Firefox_for_developers('18')}}

diff --git a/files/fr/mozilla/firefox/releases/19/index.md b/files/fr/mozilla/firefox/releases/19/index.md new file mode 100644 index 0000000000..1b00d87cb4 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/19/index.md @@ -0,0 +1,83 @@ +--- +title: Firefox 19 pour les développeurs +slug: Mozilla/Firefox/Releases/19 +tags: + - Firefox + - Firefox 19 +translation_of: Mozilla/Firefox/Releases/19 +original_slug: Mozilla/Firefox/Versions/19 +--- +
{{FirefoxSidebar}}

{{ draft() }}

+ +

Firefox 19, basé sur Gecko 19.0, est sorti le 19 février 2013. Cette page résume les principaux changements dans Firefox 19 qui sont utiles aux développeurs.

+ +

Vous voulez aider à documenter Firefox 19 ? Regardez la liste des bugs qui ont besoin de rédaction et lancez-vous !

+ +

Changements pour les développeurs web

+ +

JavaScript

+ + + +

CSS

+ + + +

DOM

+ + + +

XForms

+ +

Le support des XForms a été retiré dans Firefox 19.

+ +

Changements pour les développeurs d'add-ons et les développeurs Mozilla

+ +
+

Note:  nsresult est maintenant fortement typé, c'est un changement majeur dans Firefox 19. Cela permet de détecter plus facilement les bugs causés par la mauvaise gestion des valeurs retournées mais peut empêcher des codes actuels de fonctionner si nsresult fait de mauvaises suppositions concernant ces valeurs.

+
+ + + +

Changements dans les intefaces

+ +
+
{{interface("nsIImgLoadingContent")}}
+
Le paramètre (aObserver) de la méthode addObserver() change de {{interface("imgIDecoderObserver")}} pour {{interface("imgINotificationObserver")}}. La méthode notify() de {{interface("imgINotificationObserver")}} n'est pas scriptable, vous devez donc utiliser createScriptedObserver() à partir de {{interface("imgITools")}}.
+
{{interface("nsIChannel")}}
+
La propriété contentLength a changée de long à int64_t
+
+ +

A voir également

+ + + +

Anciennes versions

+ +

{{Firefox_for_developers('18')}}

diff --git a/files/fr/mozilla/firefox/releases/2/index.html b/files/fr/mozilla/firefox/releases/2/index.html deleted file mode 100644 index a0e60c72db..0000000000 --- a/files/fr/mozilla/firefox/releases/2/index.html +++ /dev/null @@ -1,150 +0,0 @@ ---- -title: Firefox 2 pour les développeurs -slug: Mozilla/Firefox/Releases/2 -tags: - - Firefox - - Firefox 2 -translation_of: Mozilla/Firefox/Releases/2 -original_slug: Mozilla/Firefox/Versions/2 ---- -
{{FirefoxSidebar}}

''Une grande partie du contenu de cette page est juste là pour boucher les trous. Voyez la version anglaise de cette page pour savoir comment la compléter.''

- -

Nouvelles fonctionnalités pour les développeurs dans Firefox 2

- -

Firefox 2 propose un grand nombre de nouvelles fonctionnalités et de nouvelles possibilités. Cet article fournit des liens vers des articles couvrant les nouvelles fonctionnalités.

- -

Pour les développeurs Web et les développeurs d'applications

- -
-
Microrésumés
-
Les microrésumés sont de courtes compilations, régulièrement mises à jour, des plus importantes informations présentes sur des pages Web. Ils peuvent être fournis tant par les sites eux-mêmes que par des développeurs tiers. Lorsque les utilisateurs marquent des pages présentant des microrésumés, ils peuvent choisir d'afficher ceux-ci en lieu et place de titres statiques.
-
- -
-
Création d'un générateur de microrésumé
-
Un tutoriel sur la création d'un générateur de microrésumés.
-
- -
-
Référence grammaticale XML d'un microrésumé
-
Un guide de référence sur la grammaire XML utilisée pour la création de générateurs de microrésumés.
-
- -
-
Création de plugins MozSearch
-
Firefox 2 utilise MozSearch, un format de plugins de recherche basé sur OpenSearch.
-
- -
-
Création de plugins OpenSearch pour Firefox
-
Firefox 2 support le format de moteur de recherche OpenSearch.
-
- -
-
Gestion de suggestions dans les plugins de recherche
-
Comment permettre à votre plugin MozSearch de proposer des suggestions, qui apparaîtront dans une liste déroulante au fur et à mesure de la frappe dans la Barre de recherche.
-
- -
-
Nouveautés dans JavaScript 1.7
-
Firefox 2 fournit JavaScript 1.7, qui comprend de nouvelles fonctionnalités comme let, des assignations déstructurantes, des générateurs et itérateurs, et la définition de tableaux par compréhension.
-
- -
-
WHATWG Client-side session and persistent storage (ou DOM Storage)
-
Le stockage de session et le stockage persistant côté client permet aux applications Web de conserver des données structurées du côté du client.
-
- -
-
SVG dans Firefox
-
Firefox 2 améliore le support du SVG (Scalable Vector Graphics) en implémentant l'élément <textPath> et en ajoutant le support de quelques attributs non encore supportés.
-
- -
-
Contrôle du correcteur d'orthographe dans les formulaires HTML
-
Firefox 2 contient un correcteur d'orthographe des zones de texte et des champs de saisie. Cet article décrit comment écrire votre HTML pour activer et désactiver ce correcteur d'orthographe sur des éléments individuels de formulaires.
-
- -
-
La sécurité dans Firefox 2
-
Firefox 2 a modifié les protocoles de sécurité activés par défaut.
-
- -

Pour les développeurs XUL et les développeurs d'extensions

- -
-
Mise à jour des extensions pour Firefox 2
-
Comment migrer vos extensions existantes pour qu'elles fonctionnent avec Firefox 2.
-
- -
-
API de restauration de session
-
Ajout d'élément à enregistrer et à restaurer d'une session à l'autre dans Firefox.
-
- -
-
API d'accès au contenu de flux
-
API permettant aux développeurs d'accéder et de traiter des flux RSS et Atom.
-
- -
-
Support SAX
-
API de parcours XML basé sur les évènements.
-
- -
-
Ajout de moteurs de recherche depuis des pages Web
-
Un code JavaScript peut demander à Firefox d'installer un nouveau plugin de moteur de recherche, qui peut être fourni au format OpenSearch ou au format Sherlock.
-
- -
-
Utilisation du correcteur orthographique dans XUL
-
Explique comment vérifier l'orthographe de certains mots et comment obtenir une liste de suggestions de corrections depuis le code.
-
- -
-
Ajout de fournisseurs de données de protection anti-phishing
-
Il est possible d'améliorer la protection de Firefox contre le phishing (hameçonnage) en ajoutant des fournisseurs de données pour le système de navigation sécurisée.
-
- -
-
Storage
-
Firefox 2 propose mozStorage, une architecture de base de données basée sur sqlite.
-
- -
-
Changements dans les thèmes graphiques pour Firefox 2
-
Discussion autour des changements à apporter au thèmes graphiques existants pour qu'ils fonctionnent avec Firefox 2.
-
- -
-
Améliorations de Textbox (à partir de Firefox 2.0.0.1 uniquement)
-

L'élément <textbox> dispose à présent d'une méthode reset() pour réinitialiser la valeur de la boîte de texte à sa valeur par défaut. La propriété defaultValue peut être utilisée pour récupérer et modifier cette valeur par défaut ({{ Bug(312867) }}).

-

Support d'une propriété editor permettant d'obtenir l'interface interne nsIEditor pour le champ texte ({{ Bug(312867) }}).

-
- -

Nouvelles fonctionnalités pour les utilisateurs

- -

Firefox 2 offre une version améliorée de l'agréable interface utilisateur par rapport à ses versions précédentes, avec un niveau accru de sécurité pour rendre votre expérience de navigation encore plus sûre et plus pratique que jamais.

- -

Apparence et comportement

- - - -

Sécurité et vie privée

- - - -

Voir aussi

- -

{{Firefox_for_developers('1')}}

diff --git a/files/fr/mozilla/firefox/releases/2/index.md b/files/fr/mozilla/firefox/releases/2/index.md new file mode 100644 index 0000000000..a0e60c72db --- /dev/null +++ b/files/fr/mozilla/firefox/releases/2/index.md @@ -0,0 +1,150 @@ +--- +title: Firefox 2 pour les développeurs +slug: Mozilla/Firefox/Releases/2 +tags: + - Firefox + - Firefox 2 +translation_of: Mozilla/Firefox/Releases/2 +original_slug: Mozilla/Firefox/Versions/2 +--- +
{{FirefoxSidebar}}

''Une grande partie du contenu de cette page est juste là pour boucher les trous. Voyez la version anglaise de cette page pour savoir comment la compléter.''

+ +

Nouvelles fonctionnalités pour les développeurs dans Firefox 2

+ +

Firefox 2 propose un grand nombre de nouvelles fonctionnalités et de nouvelles possibilités. Cet article fournit des liens vers des articles couvrant les nouvelles fonctionnalités.

+ +

Pour les développeurs Web et les développeurs d'applications

+ +
+
Microrésumés
+
Les microrésumés sont de courtes compilations, régulièrement mises à jour, des plus importantes informations présentes sur des pages Web. Ils peuvent être fournis tant par les sites eux-mêmes que par des développeurs tiers. Lorsque les utilisateurs marquent des pages présentant des microrésumés, ils peuvent choisir d'afficher ceux-ci en lieu et place de titres statiques.
+
+ +
+
Création d'un générateur de microrésumé
+
Un tutoriel sur la création d'un générateur de microrésumés.
+
+ +
+
Référence grammaticale XML d'un microrésumé
+
Un guide de référence sur la grammaire XML utilisée pour la création de générateurs de microrésumés.
+
+ +
+
Création de plugins MozSearch
+
Firefox 2 utilise MozSearch, un format de plugins de recherche basé sur OpenSearch.
+
+ +
+
Création de plugins OpenSearch pour Firefox
+
Firefox 2 support le format de moteur de recherche OpenSearch.
+
+ +
+
Gestion de suggestions dans les plugins de recherche
+
Comment permettre à votre plugin MozSearch de proposer des suggestions, qui apparaîtront dans une liste déroulante au fur et à mesure de la frappe dans la Barre de recherche.
+
+ +
+
Nouveautés dans JavaScript 1.7
+
Firefox 2 fournit JavaScript 1.7, qui comprend de nouvelles fonctionnalités comme let, des assignations déstructurantes, des générateurs et itérateurs, et la définition de tableaux par compréhension.
+
+ +
+
WHATWG Client-side session and persistent storage (ou DOM Storage)
+
Le stockage de session et le stockage persistant côté client permet aux applications Web de conserver des données structurées du côté du client.
+
+ +
+
SVG dans Firefox
+
Firefox 2 améliore le support du SVG (Scalable Vector Graphics) en implémentant l'élément <textPath> et en ajoutant le support de quelques attributs non encore supportés.
+
+ +
+
Contrôle du correcteur d'orthographe dans les formulaires HTML
+
Firefox 2 contient un correcteur d'orthographe des zones de texte et des champs de saisie. Cet article décrit comment écrire votre HTML pour activer et désactiver ce correcteur d'orthographe sur des éléments individuels de formulaires.
+
+ +
+
La sécurité dans Firefox 2
+
Firefox 2 a modifié les protocoles de sécurité activés par défaut.
+
+ +

Pour les développeurs XUL et les développeurs d'extensions

+ +
+
Mise à jour des extensions pour Firefox 2
+
Comment migrer vos extensions existantes pour qu'elles fonctionnent avec Firefox 2.
+
+ +
+
API de restauration de session
+
Ajout d'élément à enregistrer et à restaurer d'une session à l'autre dans Firefox.
+
+ +
+
API d'accès au contenu de flux
+
API permettant aux développeurs d'accéder et de traiter des flux RSS et Atom.
+
+ +
+
Support SAX
+
API de parcours XML basé sur les évènements.
+
+ +
+
Ajout de moteurs de recherche depuis des pages Web
+
Un code JavaScript peut demander à Firefox d'installer un nouveau plugin de moteur de recherche, qui peut être fourni au format OpenSearch ou au format Sherlock.
+
+ +
+
Utilisation du correcteur orthographique dans XUL
+
Explique comment vérifier l'orthographe de certains mots et comment obtenir une liste de suggestions de corrections depuis le code.
+
+ +
+
Ajout de fournisseurs de données de protection anti-phishing
+
Il est possible d'améliorer la protection de Firefox contre le phishing (hameçonnage) en ajoutant des fournisseurs de données pour le système de navigation sécurisée.
+
+ +
+
Storage
+
Firefox 2 propose mozStorage, une architecture de base de données basée sur sqlite.
+
+ +
+
Changements dans les thèmes graphiques pour Firefox 2
+
Discussion autour des changements à apporter au thèmes graphiques existants pour qu'ils fonctionnent avec Firefox 2.
+
+ +
+
Améliorations de Textbox (à partir de Firefox 2.0.0.1 uniquement)
+

L'élément <textbox> dispose à présent d'une méthode reset() pour réinitialiser la valeur de la boîte de texte à sa valeur par défaut. La propriété defaultValue peut être utilisée pour récupérer et modifier cette valeur par défaut ({{ Bug(312867) }}).

+

Support d'une propriété editor permettant d'obtenir l'interface interne nsIEditor pour le champ texte ({{ Bug(312867) }}).

+
+ +

Nouvelles fonctionnalités pour les utilisateurs

+ +

Firefox 2 offre une version améliorée de l'agréable interface utilisateur par rapport à ses versions précédentes, avec un niveau accru de sécurité pour rendre votre expérience de navigation encore plus sûre et plus pratique que jamais.

+ +

Apparence et comportement

+ + + +

Sécurité et vie privée

+ + + +

Voir aussi

+ +

{{Firefox_for_developers('1')}}

diff --git a/files/fr/mozilla/firefox/releases/2/security_changes/index.html b/files/fr/mozilla/firefox/releases/2/security_changes/index.html deleted file mode 100644 index 35c2c7cf20..0000000000 --- a/files/fr/mozilla/firefox/releases/2/security_changes/index.html +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: La sécurité dans Firefox 2 -slug: Mozilla/Firefox/Releases/2/Security_changes -tags: - - Sécurité -translation_of: Mozilla/Firefox/Releases/2/Security_changes -original_slug: La_sécurité_dans_Firefox_2 ---- -
{{FirefoxSidebar}}

Cet article aborde les changements concernant la sécurité dans Firefox 2.

- -

Chiffrements faibles désactivés par défaut

- -

Firefox 2 désactive par défaut le support de SSLv2 et les suites de chiffrement faible (celles ayant des longueurs de clefs inférieures à 64 bits) en faveur de SSLv3. Ce choix améliore la sécurité.

- -

Les méthodes privilégiées de chiffrage sont TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA et TLS_RSA_WITH_3DES_EDE_CBC_SHA. Certains serveurs y font référence en tant que SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA et SSL_RSA_WITH_3DES_EDE_CBC_SHA.

- -

Si le support de SSLv2 doit être activé, vous devrez définir avec la valeur true la préférence utilisateur security.ssl2.* dans about:config.

- -

Nouvelles fonctionnalités

- - - -

Détermination du chiffrement disponible

- -

Comme toujours, vous pouvez vérifier le chiffrement supporté — celui qui a été activé ou désactivé — en cherchant « ssl » ou « tls » dans about:config.

- -
 
- -

{{ languages( { "en": "en/Security_in_Firefox_2", "pl": "pl/Bezpiecze\u0144stwo_w_Firefoksie_2", "zh-tw": "zh_tw/Firefox_2_\u7684\u5b89\u5168\u529f\u80fd" } ) }}

diff --git a/files/fr/mozilla/firefox/releases/2/security_changes/index.md b/files/fr/mozilla/firefox/releases/2/security_changes/index.md new file mode 100644 index 0000000000..35c2c7cf20 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/2/security_changes/index.md @@ -0,0 +1,33 @@ +--- +title: La sécurité dans Firefox 2 +slug: Mozilla/Firefox/Releases/2/Security_changes +tags: + - Sécurité +translation_of: Mozilla/Firefox/Releases/2/Security_changes +original_slug: La_sécurité_dans_Firefox_2 +--- +
{{FirefoxSidebar}}

Cet article aborde les changements concernant la sécurité dans Firefox 2.

+ +

Chiffrements faibles désactivés par défaut

+ +

Firefox 2 désactive par défaut le support de SSLv2 et les suites de chiffrement faible (celles ayant des longueurs de clefs inférieures à 64 bits) en faveur de SSLv3. Ce choix améliore la sécurité.

+ +

Les méthodes privilégiées de chiffrage sont TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA et TLS_RSA_WITH_3DES_EDE_CBC_SHA. Certains serveurs y font référence en tant que SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA et SSL_RSA_WITH_3DES_EDE_CBC_SHA.

+ +

Si le support de SSLv2 doit être activé, vous devrez définir avec la valeur true la préférence utilisateur security.ssl2.* dans about:config.

+ +

Nouvelles fonctionnalités

+ + + +

Détermination du chiffrement disponible

+ +

Comme toujours, vous pouvez vérifier le chiffrement supporté — celui qui a été activé ou désactivé — en cherchant « ssl » ou « tls » dans about:config.

+ +
 
+ +

{{ languages( { "en": "en/Security_in_Firefox_2", "pl": "pl/Bezpiecze\u0144stwo_w_Firefoksie_2", "zh-tw": "zh_tw/Firefox_2_\u7684\u5b89\u5168\u529f\u80fd" } ) }}

diff --git a/files/fr/mozilla/firefox/releases/2/updating_extensions/index.html b/files/fr/mozilla/firefox/releases/2/updating_extensions/index.html deleted file mode 100644 index b29b2fe6e6..0000000000 --- a/files/fr/mozilla/firefox/releases/2/updating_extensions/index.html +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: Mise à jour des extensions pour Firefox 2 -slug: Mozilla/Firefox/Releases/2/Updating_extensions -translation_of: Mozilla/Firefox/Releases/2/Updating_extensions -original_slug: Mise_à_jour_des_extensions_pour_Firefox_2 ---- -
{{FirefoxSidebar}}

 

- -

Cet article s'adresse aux développeurs qui souhaitent mettre à jour leur extension pour qu'elle fonctionne correctement avec Firefox 2.

- -

Étape 1 : Mise à jour du manifeste d'installation

- -

La première étape - pour de nombreuses extensions, la seule nécessaire - est de mettre à jour le fichier du manifeste d'installation, install.rdf, pour annoncer la compatibilité avec Firefox 2.

- -

Trouvez la ligne indiquant la plus récente version de Firefox compatible. Pour Firefox 1.5, elle serait :

- -
 <em:maxVersion>1.5.0.*</em:maxVersion>
-
- -

Et remplacez-la par celle-ci :

- -
 <em:maxVersion>2.0.0.*</em:maxVersion>
-
- -

Réinstallez ensuite votre extension.

- -

Étape 2 : Mise à jour des calques XUL

- -

Firefox 2 apporte des changements au thème par défaut, et certains éléments de l'interface utilisateur ont été modifiés ou déplacés. Cela peut affecter votre extension, selon les actions de vos calques XUL.

- -

Référez-vous à l'article Changements dans les thèmes graphiques pour Firefox 2 pour déterminer les modifications qui pourraient avoir un effet sur votre extension.

- -

Étape 3 : Test

- -

Assurez-vous de tester en profondeur votre extension sous Firefox 2 avant de la publier. Vous ne désirez sûrement pas que votre extension soit la cause d'un déferlement de rapports de bogues avec la toute dernière version de Firefox...

- -

Étape 4 : Publication

- -

Mettez à jour la description de votre extension sur http://addons.mozilla.org, pour vous assurez que les utilisateurs la retrouveront.

- -

De plus, si le manifeste d'installation contient une URL de mise à jour, vérifiez qu'elle est valide pour que Firefox puisse automatiquement trouver les nouvelles versions de votre extension. De cette manière, Firefox proposera de l'installer automatiquement au premier lancement de l'extension après le passage à Firefox 2.

- -


- Lien Interwiki

- -
 
- -

{{ languages( { "en": "en/Updating_extensions_for_Firefox_2", "ja": "ja/Updating_extensions_for_Firefox_2", "ko": "ko/Updating_extensions_for_Firefox_2", "pl": "pl/Aktualizacja_rozszerze\u0144_do_Firefoksa_2" } ) }}

diff --git a/files/fr/mozilla/firefox/releases/2/updating_extensions/index.md b/files/fr/mozilla/firefox/releases/2/updating_extensions/index.md new file mode 100644 index 0000000000..b29b2fe6e6 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/2/updating_extensions/index.md @@ -0,0 +1,48 @@ +--- +title: Mise à jour des extensions pour Firefox 2 +slug: Mozilla/Firefox/Releases/2/Updating_extensions +translation_of: Mozilla/Firefox/Releases/2/Updating_extensions +original_slug: Mise_à_jour_des_extensions_pour_Firefox_2 +--- +
{{FirefoxSidebar}}

 

+ +

Cet article s'adresse aux développeurs qui souhaitent mettre à jour leur extension pour qu'elle fonctionne correctement avec Firefox 2.

+ +

Étape 1 : Mise à jour du manifeste d'installation

+ +

La première étape - pour de nombreuses extensions, la seule nécessaire - est de mettre à jour le fichier du manifeste d'installation, install.rdf, pour annoncer la compatibilité avec Firefox 2.

+ +

Trouvez la ligne indiquant la plus récente version de Firefox compatible. Pour Firefox 1.5, elle serait :

+ +
 <em:maxVersion>1.5.0.*</em:maxVersion>
+
+ +

Et remplacez-la par celle-ci :

+ +
 <em:maxVersion>2.0.0.*</em:maxVersion>
+
+ +

Réinstallez ensuite votre extension.

+ +

Étape 2 : Mise à jour des calques XUL

+ +

Firefox 2 apporte des changements au thème par défaut, et certains éléments de l'interface utilisateur ont été modifiés ou déplacés. Cela peut affecter votre extension, selon les actions de vos calques XUL.

+ +

Référez-vous à l'article Changements dans les thèmes graphiques pour Firefox 2 pour déterminer les modifications qui pourraient avoir un effet sur votre extension.

+ +

Étape 3 : Test

+ +

Assurez-vous de tester en profondeur votre extension sous Firefox 2 avant de la publier. Vous ne désirez sûrement pas que votre extension soit la cause d'un déferlement de rapports de bogues avec la toute dernière version de Firefox...

+ +

Étape 4 : Publication

+ +

Mettez à jour la description de votre extension sur http://addons.mozilla.org, pour vous assurez que les utilisateurs la retrouveront.

+ +

De plus, si le manifeste d'installation contient une URL de mise à jour, vérifiez qu'elle est valide pour que Firefox puisse automatiquement trouver les nouvelles versions de votre extension. De cette manière, Firefox proposera de l'installer automatiquement au premier lancement de l'extension après le passage à Firefox 2.

+ +


+ Lien Interwiki

+ +
 
+ +

{{ languages( { "en": "en/Updating_extensions_for_Firefox_2", "ja": "ja/Updating_extensions_for_Firefox_2", "ko": "ko/Updating_extensions_for_Firefox_2", "pl": "pl/Aktualizacja_rozszerze\u0144_do_Firefoksa_2" } ) }}

diff --git a/files/fr/mozilla/firefox/releases/20/index.html b/files/fr/mozilla/firefox/releases/20/index.html deleted file mode 100644 index 64b9e26641..0000000000 --- a/files/fr/mozilla/firefox/releases/20/index.html +++ /dev/null @@ -1,76 +0,0 @@ ---- -title: Firefox 20 pour les développeurs -slug: Mozilla/Firefox/Releases/20 -tags: - - Firefox - - Firefox 20 -translation_of: Mozilla/Firefox/Releases/20 -original_slug: Mozilla/Firefox/Versions/20 ---- -
{{FirefoxSidebar}}

Firefox 20 est sorti le 2 avril 2013. Cette page résume les principaux changements dans Firefox 20 qui sont utiles aux développeurs.

- -

Changements pour les développeurs Web

- -

HTML

- - - -

JavaScript

- - - -

CSS

- - - -

DOM

- - - -

MathML

- - - -

Changements pour les add-ons et les développeurs Mozilla

- - - -

Voir également

- - - -

Anciennes versions

- -

{{Firefox_for_developers('19')}}

diff --git a/files/fr/mozilla/firefox/releases/20/index.md b/files/fr/mozilla/firefox/releases/20/index.md new file mode 100644 index 0000000000..64b9e26641 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/20/index.md @@ -0,0 +1,76 @@ +--- +title: Firefox 20 pour les développeurs +slug: Mozilla/Firefox/Releases/20 +tags: + - Firefox + - Firefox 20 +translation_of: Mozilla/Firefox/Releases/20 +original_slug: Mozilla/Firefox/Versions/20 +--- +
{{FirefoxSidebar}}

Firefox 20 est sorti le 2 avril 2013. Cette page résume les principaux changements dans Firefox 20 qui sont utiles aux développeurs.

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

JavaScript

+ + + +

CSS

+ + + +

DOM

+ + + +

MathML

+ + + +

Changements pour les add-ons et les développeurs Mozilla

+ + + +

Voir également

+ + + +

Anciennes versions

+ +

{{Firefox_for_developers('19')}}

diff --git a/files/fr/mozilla/firefox/releases/21/index.html b/files/fr/mozilla/firefox/releases/21/index.html deleted file mode 100644 index dd24a9e73e..0000000000 --- a/files/fr/mozilla/firefox/releases/21/index.html +++ /dev/null @@ -1,142 +0,0 @@ ---- -title: Firefox 21 pour les développeurs -slug: Mozilla/Firefox/Releases/21 -tags: - - Firefox - - Firefox 21 -translation_of: Mozilla/Firefox/Releases/21 -original_slug: Mozilla/Firefox/Versions/21 ---- -
{{FirefoxSidebar}}
- -

Firefox 21 est sorti le 14 mai 2013. Cette page résume les principaux changements dans Firefox 21 qui sont utiles aux développeurs, que vous soyez développeur web, développeur Firefox et Gecko, ou développeur d'add-ons.

- -

Changement pour les développeurs Web

- -

HTML

- - - -

JavaScript

- - - -

CSS

- - - -

DOM

- - - -

SVG

- - - -

Networking

- - - -

Worker

- - - -

Changement pour les add-ons et les développeurs Mozilla

- - - -

Voir également

- - - -

Anciennes versions

- -
{{Firefox_for_developers('20')}}
diff --git a/files/fr/mozilla/firefox/releases/21/index.md b/files/fr/mozilla/firefox/releases/21/index.md new file mode 100644 index 0000000000..dd24a9e73e --- /dev/null +++ b/files/fr/mozilla/firefox/releases/21/index.md @@ -0,0 +1,142 @@ +--- +title: Firefox 21 pour les développeurs +slug: Mozilla/Firefox/Releases/21 +tags: + - Firefox + - Firefox 21 +translation_of: Mozilla/Firefox/Releases/21 +original_slug: Mozilla/Firefox/Versions/21 +--- +
{{FirefoxSidebar}}
+ +

Firefox 21 est sorti le 14 mai 2013. Cette page résume les principaux changements dans Firefox 21 qui sont utiles aux développeurs, que vous soyez développeur web, développeur Firefox et Gecko, ou développeur d'add-ons.

+ +

Changement pour les développeurs Web

+ +

HTML

+ + + +

JavaScript

+ + + +

CSS

+ + + +

DOM

+ + + +

SVG

+ + + +

Networking

+ + + +

Worker

+ + + +

Changement pour les add-ons et les développeurs Mozilla

+ + + +

Voir également

+ + + +

Anciennes versions

+ +
{{Firefox_for_developers('20')}}
diff --git a/files/fr/mozilla/firefox/releases/22/index.html b/files/fr/mozilla/firefox/releases/22/index.html deleted file mode 100644 index c544e4fb2d..0000000000 --- a/files/fr/mozilla/firefox/releases/22/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -title: Firefox 22 pour les développeurs -slug: Mozilla/Firefox/Releases/22 -translation_of: Mozilla/Firefox/Releases/22 -original_slug: Mozilla/Firefox/Versions/22 ---- -
{{FirefoxSidebar}}

Vous voulez aider à documenter Firefox 22 ? Parcourez la liste des bugs qui ont besoin d'être documentés et lancez-vous !

- -

Changements pour les développeurs Web

- -

HTML

- - - -

JavaScript

- - - -

DOM

- - - -

CSS

- - - -

Changements pour les développeurs Mozilla et développeurs d'add-on

- - - -

Outils pour développeurs de Firefox

- - - -

A voir aussi

- - - -

Versions

- -
{{Firefox_for_developers('21')}}
diff --git a/files/fr/mozilla/firefox/releases/22/index.md b/files/fr/mozilla/firefox/releases/22/index.md new file mode 100644 index 0000000000..c544e4fb2d --- /dev/null +++ b/files/fr/mozilla/firefox/releases/22/index.md @@ -0,0 +1,73 @@ +--- +title: Firefox 22 pour les développeurs +slug: Mozilla/Firefox/Releases/22 +translation_of: Mozilla/Firefox/Releases/22 +original_slug: Mozilla/Firefox/Versions/22 +--- +
{{FirefoxSidebar}}

Vous voulez aider à documenter Firefox 22 ? Parcourez la liste des bugs qui ont besoin d'être documentés et lancez-vous !

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

JavaScript

+ + + +

DOM

+ + + +

CSS

+ + + +

Changements pour les développeurs Mozilla et développeurs d'add-on

+ + + +

Outils pour développeurs de Firefox

+ + + +

A voir aussi

+ + + +

Versions

+ +
{{Firefox_for_developers('21')}}
diff --git a/files/fr/mozilla/firefox/releases/23/index.html b/files/fr/mozilla/firefox/releases/23/index.html deleted file mode 100644 index c7bb72bd5a..0000000000 --- a/files/fr/mozilla/firefox/releases/23/index.html +++ /dev/null @@ -1,86 +0,0 @@ ---- -title: Firefox 23 pour les développeurs -slug: Mozilla/Firefox/Releases/23 -translation_of: Mozilla/Firefox/Releases/23 -original_slug: Mozilla/Firefox/Versions/23 ---- -
{{FirefoxSidebar}}
Changements pour les développeurs Web
- -

Sécurité

- - - -

Outils de développement

- - - -

HTML

- - - -

JavaScript

- - - -

DOM

- - - -

CSS

- - - -

MathML

- - - -

Changements pour les développeurs Mozilla et développeurs d'add-on

- -

Outils pour développeurs de Firefox

- -

Les add-ons qui ont recourt à chrome://browser/content/debugger.xul doivent désormais utiliser chrome://browser/content/devtools/debugger.xul. Vous pouvez ajouter des références à ces deux fichiers dans chrome.manifest pour la compatibilité.

- -

Voir aussi

- - - -

Anciennes versions

- -

{{Firefox_for_developers('22')}}

diff --git a/files/fr/mozilla/firefox/releases/23/index.md b/files/fr/mozilla/firefox/releases/23/index.md new file mode 100644 index 0000000000..c7bb72bd5a --- /dev/null +++ b/files/fr/mozilla/firefox/releases/23/index.md @@ -0,0 +1,86 @@ +--- +title: Firefox 23 pour les développeurs +slug: Mozilla/Firefox/Releases/23 +translation_of: Mozilla/Firefox/Releases/23 +original_slug: Mozilla/Firefox/Versions/23 +--- +
{{FirefoxSidebar}}
Changements pour les développeurs Web
+ +

Sécurité

+ + + +

Outils de développement

+ + + +

HTML

+ + + +

JavaScript

+ + + +

DOM

+ + + +

CSS

+ + + +

MathML

+ + + +

Changements pour les développeurs Mozilla et développeurs d'add-on

+ +

Outils pour développeurs de Firefox

+ +

Les add-ons qui ont recourt à chrome://browser/content/debugger.xul doivent désormais utiliser chrome://browser/content/devtools/debugger.xul. Vous pouvez ajouter des références à ces deux fichiers dans chrome.manifest pour la compatibilité.

+ +

Voir aussi

+ + + +

Anciennes versions

+ +

{{Firefox_for_developers('22')}}

diff --git a/files/fr/mozilla/firefox/releases/24/index.html b/files/fr/mozilla/firefox/releases/24/index.html deleted file mode 100644 index 85b7ac09db..0000000000 --- a/files/fr/mozilla/firefox/releases/24/index.html +++ /dev/null @@ -1,77 +0,0 @@ ---- -title: Firefox 24 pour les développeurs -slug: Mozilla/Firefox/Releases/24 -translation_of: Mozilla/Firefox/Releases/24 -original_slug: Mozilla/Firefox/Versions/24 ---- -
{{FirefoxSidebar}}

Changements pour les développeurs Web

- -

CSS

- - - -

HTML

- - - -

JavaScript

- - - -

DOM

- - - -

Outils de développement

- - - -

MathML

- - - -

Changements pour les développeurs Mozilla et développeurs d'add-on

- - - -

Voir aussi

- - - -

Anciennes versions

- -

{{Firefox_for_developers('23')}}

diff --git a/files/fr/mozilla/firefox/releases/24/index.md b/files/fr/mozilla/firefox/releases/24/index.md new file mode 100644 index 0000000000..85b7ac09db --- /dev/null +++ b/files/fr/mozilla/firefox/releases/24/index.md @@ -0,0 +1,77 @@ +--- +title: Firefox 24 pour les développeurs +slug: Mozilla/Firefox/Releases/24 +translation_of: Mozilla/Firefox/Releases/24 +original_slug: Mozilla/Firefox/Versions/24 +--- +
{{FirefoxSidebar}}

Changements pour les développeurs Web

+ +

CSS

+ + + +

HTML

+ + + +

JavaScript

+ + + +

DOM

+ + + +

Outils de développement

+ + + +

MathML

+ + + +

Changements pour les développeurs Mozilla et développeurs d'add-on

+ + + +

Voir aussi

+ + + +

Anciennes versions

+ +

{{Firefox_for_developers('23')}}

diff --git a/files/fr/mozilla/firefox/releases/25/index.html b/files/fr/mozilla/firefox/releases/25/index.html deleted file mode 100644 index bee8d20d68..0000000000 --- a/files/fr/mozilla/firefox/releases/25/index.html +++ /dev/null @@ -1,90 +0,0 @@ ---- -title: Firefox 25 for developers -slug: Mozilla/Firefox/Releases/25 -tags: - - Beginner - - Firefox - - Firefox 25 - - Guide - - TopicStub -translation_of: Mozilla/Firefox/Releases/25 ---- -
{{FirefoxSidebar}}
- -

Changements pour les développeurs Web

- -

Nouveau dans Firefox DevTools

- - - -

CSS

- - - -

HTML

- - - -

JavaScript

- -

L'implémentation d'EcmaScript 6 (Harmony) continue!

- - - -

Interfaces/APIs/DOM

- - - -

MathML

- -

Pas de changement.

- -

SVG

- -

Pas de changement.

- -

Voir aussi

- -

Versions plus anciennes

- -

{{Firefox_for_developers('24')}}

diff --git a/files/fr/mozilla/firefox/releases/25/index.md b/files/fr/mozilla/firefox/releases/25/index.md new file mode 100644 index 0000000000..bee8d20d68 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/25/index.md @@ -0,0 +1,90 @@ +--- +title: Firefox 25 for developers +slug: Mozilla/Firefox/Releases/25 +tags: + - Beginner + - Firefox + - Firefox 25 + - Guide + - TopicStub +translation_of: Mozilla/Firefox/Releases/25 +--- +
{{FirefoxSidebar}}
+ +

Changements pour les développeurs Web

+ +

Nouveau dans Firefox DevTools

+ + + +

CSS

+ + + +

HTML

+ + + +

JavaScript

+ +

L'implémentation d'EcmaScript 6 (Harmony) continue!

+ + + +

Interfaces/APIs/DOM

+ + + +

MathML

+ +

Pas de changement.

+ +

SVG

+ +

Pas de changement.

+ +

Voir aussi

+ +

Versions plus anciennes

+ +

{{Firefox_for_developers('24')}}

diff --git a/files/fr/mozilla/firefox/releases/26/index.html b/files/fr/mozilla/firefox/releases/26/index.html deleted file mode 100644 index d5a27bc369..0000000000 --- a/files/fr/mozilla/firefox/releases/26/index.html +++ /dev/null @@ -1,90 +0,0 @@ ---- -title: Firefox 26 for developers -slug: Mozilla/Firefox/Releases/26 -tags: - - Firefox - - TopicStub -translation_of: Mozilla/Firefox/Releases/26 ---- -
{{FirefoxSidebar}}
- -

Firefox 26 est sorti le 10 Décembre 2013. Cet article répertorie les modifications clés qui sont utiles non seulement pour les développeurs Web, mais également pour les développeurs Firefox et Gecko ainsi que pour les développeurs de modules complémentaires.

- -

Changements pour les développeurs Web

- -

CSS

- - - -

HTML

- - - -

JavaScript

- -

L'implémentation d'EcmaScript 6 se poursuit!

- - - -

Interfaces/APIs/DOM

- - - -

MathML

- - - -

SVG

- - - -

Outils de développement

- - - -

Voir aussi

- -

Versions plus anciennes

- -

{{Firefox_for_developers('25')}}

diff --git a/files/fr/mozilla/firefox/releases/26/index.md b/files/fr/mozilla/firefox/releases/26/index.md new file mode 100644 index 0000000000..d5a27bc369 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/26/index.md @@ -0,0 +1,90 @@ +--- +title: Firefox 26 for developers +slug: Mozilla/Firefox/Releases/26 +tags: + - Firefox + - TopicStub +translation_of: Mozilla/Firefox/Releases/26 +--- +
{{FirefoxSidebar}}
+ +

Firefox 26 est sorti le 10 Décembre 2013. Cet article répertorie les modifications clés qui sont utiles non seulement pour les développeurs Web, mais également pour les développeurs Firefox et Gecko ainsi que pour les développeurs de modules complémentaires.

+ +

Changements pour les développeurs Web

+ +

CSS

+ + + +

HTML

+ + + +

JavaScript

+ +

L'implémentation d'EcmaScript 6 se poursuit!

+ + + +

Interfaces/APIs/DOM

+ + + +

MathML

+ + + +

SVG

+ + + +

Outils de développement

+ + + +

Voir aussi

+ +

Versions plus anciennes

+ +

{{Firefox_for_developers('25')}}

diff --git a/files/fr/mozilla/firefox/releases/27/index.html b/files/fr/mozilla/firefox/releases/27/index.html deleted file mode 100644 index 2a8a073444..0000000000 --- a/files/fr/mozilla/firefox/releases/27/index.html +++ /dev/null @@ -1,112 +0,0 @@ ---- -title: Firefox 27 for developers -slug: Mozilla/Firefox/Releases/27 -tags: - - Firefox - - TopicStub -translation_of: Mozilla/Firefox/Releases/27 ---- -
{{FirefoxSidebar}}
- -

Firefox 27 est sorti le 4 Février 2014. Cet article répertorie les modofications clés qui sont utiles non seulement pour les développeurs Web, mais aussi pour les développeurs Firefox et Gecko ainsi que pour les développeurs d'add-on.

- -

Changements pour les développeurs Web

- -

Outils de développement

- - - -

Plus de détails dans cet article.

- -

CSS

- - - -

HTML

- - - -

JavaScript

- -

L'implémentation d'EcmaScript 6 (Harmony) se poursuit!

- - - -

Interfaces/APIs/DOM

- - - -

MathML

- -

Pas de changement.

- -

SVG

- - - -

Changements pour les développeurs d'addon et de Mozilla

- - - -

Sécurité

- - - -

Voir aussi

- - - -

Anciennes versions

- -

{{Firefox_for_developers('26')}}

diff --git a/files/fr/mozilla/firefox/releases/27/index.md b/files/fr/mozilla/firefox/releases/27/index.md new file mode 100644 index 0000000000..2a8a073444 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/27/index.md @@ -0,0 +1,112 @@ +--- +title: Firefox 27 for developers +slug: Mozilla/Firefox/Releases/27 +tags: + - Firefox + - TopicStub +translation_of: Mozilla/Firefox/Releases/27 +--- +
{{FirefoxSidebar}}
+ +

Firefox 27 est sorti le 4 Février 2014. Cet article répertorie les modofications clés qui sont utiles non seulement pour les développeurs Web, mais aussi pour les développeurs Firefox et Gecko ainsi que pour les développeurs d'add-on.

+ +

Changements pour les développeurs Web

+ +

Outils de développement

+ + + +

Plus de détails dans cet article.

+ +

CSS

+ + + +

HTML

+ + + +

JavaScript

+ +

L'implémentation d'EcmaScript 6 (Harmony) se poursuit!

+ + + +

Interfaces/APIs/DOM

+ + + +

MathML

+ +

Pas de changement.

+ +

SVG

+ + + +

Changements pour les développeurs d'addon et de Mozilla

+ + + +

Sécurité

+ + + +

Voir aussi

+ + + +

Anciennes versions

+ +

{{Firefox_for_developers('26')}}

diff --git a/files/fr/mozilla/firefox/releases/28/index.html b/files/fr/mozilla/firefox/releases/28/index.html deleted file mode 100644 index c9d8541326..0000000000 --- a/files/fr/mozilla/firefox/releases/28/index.html +++ /dev/null @@ -1,117 +0,0 @@ ---- -title: Firefox 28 for developers -slug: Mozilla/Firefox/Releases/28 -tags: - - Compatibility - - Firefox - - Mozilla - - TopicStub -translation_of: Mozilla/Firefox/Releases/28 ---- -
{{FirefoxSidebar}}
- -

Firefox 28 est sorti le 18 Mars 2014. Cet article répertorie les modifications clés qui sont utiles non seulement pour les développeurs Web, mais aussi pour les développeurs Firefox et Gecko ainsi que pour les développeurs d'add-ons.

- -

Changements pour les développeurs Web

- -

Outils de développement

- - - -

Plus de détails dans cet article.

- -

CSS

- - - -

HTML

- - - -

JavaScript

- - - -

Interfaces/APIs/DOM

- - - -

MathML

- - - -

SVG

- -

Pas de changement.

- -

Audio/Vidéo

- - - -

Réseau

- - - -

Changements pour les développeurs d'add-ons et de Mozilla

- - - -

Sécurité

- - - -

Voir aussi

- -

Anciennes versions

- -

{{Firefox_for_developers('27')}}

diff --git a/files/fr/mozilla/firefox/releases/28/index.md b/files/fr/mozilla/firefox/releases/28/index.md new file mode 100644 index 0000000000..c9d8541326 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/28/index.md @@ -0,0 +1,117 @@ +--- +title: Firefox 28 for developers +slug: Mozilla/Firefox/Releases/28 +tags: + - Compatibility + - Firefox + - Mozilla + - TopicStub +translation_of: Mozilla/Firefox/Releases/28 +--- +
{{FirefoxSidebar}}
+ +

Firefox 28 est sorti le 18 Mars 2014. Cet article répertorie les modifications clés qui sont utiles non seulement pour les développeurs Web, mais aussi pour les développeurs Firefox et Gecko ainsi que pour les développeurs d'add-ons.

+ +

Changements pour les développeurs Web

+ +

Outils de développement

+ + + +

Plus de détails dans cet article.

+ +

CSS

+ + + +

HTML

+ + + +

JavaScript

+ + + +

Interfaces/APIs/DOM

+ + + +

MathML

+ + + +

SVG

+ +

Pas de changement.

+ +

Audio/Vidéo

+ + + +

Réseau

+ + + +

Changements pour les développeurs d'add-ons et de Mozilla

+ + + +

Sécurité

+ + + +

Voir aussi

+ +

Anciennes versions

+ +

{{Firefox_for_developers('27')}}

diff --git a/files/fr/mozilla/firefox/releases/29/index.html b/files/fr/mozilla/firefox/releases/29/index.html deleted file mode 100644 index a57cfac0e6..0000000000 --- a/files/fr/mozilla/firefox/releases/29/index.html +++ /dev/null @@ -1,133 +0,0 @@ ---- -title: Firefox 29 pour les développeurs -slug: Mozilla/Firefox/Releases/29 -tags: - - TopicStub - - firefox developers - - firefox29 -translation_of: Mozilla/Firefox/Releases/29 ---- -
{{FirefoxSidebar}}
- -

Firefox 29 est sorti le 29 Avril, 2014. Cet article répertorie les modifications clés qui sont utiles non seulement pour les développeurs Web, mais aussi pour es développeurs Firefox et Gecko ainsi que pour les développeurs d'add-on.

- -

Changements pour les développeurs Web

- -

Outils de développement

- -

Les principaux changements comprennent:

- - - -

Consultez l'article du blog Mozilla Hacks pour plus de détails et d'autres changements mineurs.

- -

CSS

- - - -

HTML

- - - -

JavaScript

- - - -

Interfaces/APIs/DOM

- - - -

MathML

- -

Pas de changement.

- -

SVG

- -

Pas de changement.

- -

Sécurité

- - - -

Modifications pour les développeurs d'add-on et Mozilla

- - - -

Changements non-Australis à déterminer.

- -

Voir aussi

- -

Anciennes versions

- -

{{Firefox_for_developers('28')}}

diff --git a/files/fr/mozilla/firefox/releases/29/index.md b/files/fr/mozilla/firefox/releases/29/index.md new file mode 100644 index 0000000000..a57cfac0e6 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/29/index.md @@ -0,0 +1,133 @@ +--- +title: Firefox 29 pour les développeurs +slug: Mozilla/Firefox/Releases/29 +tags: + - TopicStub + - firefox developers + - firefox29 +translation_of: Mozilla/Firefox/Releases/29 +--- +
{{FirefoxSidebar}}
+ +

Firefox 29 est sorti le 29 Avril, 2014. Cet article répertorie les modifications clés qui sont utiles non seulement pour les développeurs Web, mais aussi pour es développeurs Firefox et Gecko ainsi que pour les développeurs d'add-on.

+ +

Changements pour les développeurs Web

+ +

Outils de développement

+ +

Les principaux changements comprennent:

+ + + +

Consultez l'article du blog Mozilla Hacks pour plus de détails et d'autres changements mineurs.

+ +

CSS

+ + + +

HTML

+ + + +

JavaScript

+ + + +

Interfaces/APIs/DOM

+ + + +

MathML

+ +

Pas de changement.

+ +

SVG

+ +

Pas de changement.

+ +

Sécurité

+ + + +

Modifications pour les développeurs d'add-on et Mozilla

+ + + +

Changements non-Australis à déterminer.

+ +

Voir aussi

+ +

Anciennes versions

+ +

{{Firefox_for_developers('28')}}

diff --git a/files/fr/mozilla/firefox/releases/3.5/index.html b/files/fr/mozilla/firefox/releases/3.5/index.html deleted file mode 100644 index a4902ad7f5..0000000000 --- a/files/fr/mozilla/firefox/releases/3.5/index.html +++ /dev/null @@ -1,234 +0,0 @@ ---- -title: Firefox 3.5 pour les développeurs -slug: Mozilla/Firefox/Releases/3.5 -tags: - - Firefox - - Firefox 3.5 -translation_of: Mozilla/Firefox/Releases/3.5 -original_slug: Mozilla/Firefox/Versions/3.5 ---- -
{{FirefoxSidebar}}

Firefox 3.5 introduit un certain nombre de nouvelles fonctionnalités, ainsi qu'une gestion améliorée d'une grande variété de standards du Web. Cet article en fournit une longue liste, avec des liens vers des articles décrivant les améliorations majeures.

- -

Nouvelles fonctionnalités pour les développeurs dans Firefox 3.5

- -

Pour les développeurs de sites et d'applications web

- -

HTML5

- -
-
Utilisation d'audio et video dans Firefox
-
Firefox 3.5 ajoute la gestion des éléments HTML5 audio et video.
-
Ressources hors ligne dans Firefox
-
Firefox 3.5 gère entièrement la spécification de ressources hors ligne d'HTML5.
-
Glisser et déposer
-
L'API de glisser/déposer d'HTML5 permet de gérer le glisser/déposer d'éléments à l'intérieur et entre des sites web. Elle fournit également une API plus simple pour les extensions et applications basées sur Mozilla.
-
- -

Nouvelles fonctionnalités CSS

- -
-
Gestion des polices téléchargeables
-
La nouvelle règle-@ @font-face permet aux pages web de fournir des polices téléchargeables, afin qu'elles puissent être affichées exactement telles que l'auteur de la page les attend.
-
Media queries
-
Firefox 3.5 gère les requêtes de médias, qui améliorent le traitement des feuilles de style destinées à des médias particuliers.
-
Mise à jour de {{ cssxref(":before") }} et {{ cssxref(":after") }} pour CSS 2.1
-
Les pseudo-éléments :before et :after ont été mis à jour pour respecter complètement CSS 2.1, avec l'ajout des propriétés position, float et list-style-*, ainsi que de certaines valeurs de display.
-
Unité de longueur ch
-
L'unité ch peut à présent être utilisée à tout endroit où peut être indiquée une unité de longueur. 1ch est la largeur du caractère « 0 » (zéro).
-
{{ cssxref("opacity") }}
-
L'extension à CSS -moz-opacity de Mozilla a été supprimée en faveur de la propriété standard opacity.
-
{{ cssxref("text-shadow") }}
-
La propriété text-shadow, qui permet à du contenu web de spécifier des effets d'ombres sur le texte et les décorations de texte est à présent gérée.
-
{{ cssxref("word-wrap") }}
-
Cette nouvelle propriété permet au contenu d'indiquer si oui ou non les lignes de texte peuvent être coupées au milieu d'un mot afin d'empêcher un débordement lorsqu'une chaîne normalement insécable est trop longue pour rentrer dans une seule ligne.
-
Valeur pre-line pour la propriété white-space
-
La propriété {{ cssxref("white-space") }} accepte à présent la valeur pre-line.
-
{{ cssxref("-moz-box-shadow") }}
-
{{ cssxref("-moz-border-image") }}
-
{{ cssxref("-moz-column-rule") }}
-
{{ cssxref("-moz-column-rule-width") }}
-
{{ cssxref("-moz-column-rule-style") }}
-
{{ cssxref("-moz-column-rule-color") }}
-
La gestion de ces extensions à CSS de Mozilla a été ajoutée dans Firefox 3.5.
-
La {{ cssxref("valeur_de_couleur#Extensions_spécifiques_à_Mozilla","-moz-nativehyperlinktext") }}
-
Cette nouvelle valeur de couleur représente la couleur de lien hypertexte par défaut de l'utilisateur du système.
-
La nouvelle propriété {{ cssxref("-moz-window-shadow") }} et la pseudo-classe {{ cssxref(":-moz-system-metric(mac-graphite-theme)") }}
-
Ces nouvelles fonctionnalités CSS ont été ajoutées pour faciliter la mise en place de thèmes.
-
Nouvelles valeurs pour {{ cssxref("-moz-appearance") }}
-
Les valeurs -moz-win-glass et -moz-mac-unified-toolbar ont été ajoutées à -moz-appearance.
-
Utilisation des transformations CSS
-
Firefox 3.5 gère les transformations CSS. Consultez {{ cssxref("-moz-transform") }} et {{ cssxref("-moz-transform-origin") }} pour plus de détails.
-
{{ cssxref(":nth-child") }}
-
{{ cssxref(":nth-last-child") }}
-
{{ cssxref(":nth-of-type") }}
-
{{ cssxref(":nth-last-of-type") }}
-
{{ cssxref(":first-of-type") }}
-
{{ cssxref(":last-of-type") }}
-
{{ cssxref(":only-of-type") }}
-
Ces sélecteurs sont nouvellement gérés dans Firefox 3.5
-
- -

Nouvelles fonctionnalités DOM

- -
-
localStorage
-
Firefox 3.5 ajoute la gestion de la propriété localStorage pour le stockage web, fournissant ainsi une manière pour les applications web de stocker des données localement sur l'ordinateur du client.
-
Utilisation de workers DOM
-
Firefox 3.5 gère les workers DOM afin de permettre une gestion multithreadée dans les applications web.
-
Utilisation de la géolocalisation
-
Firefox 3.5 gère l'API Geolocation, qui permet aux applications web d'obtenir des informations concernant l'emplacement actuel de l'utilisateur si cette information est fournie et activée dans le système.
-
Identification d'éléments DOM à l'aide de sélecteurs
-
L'API Selectors permet d'interroger un document afin d'identifier les éléments correspondant à une règle de sélection donnée.
-
Évènements de mouvement de souris
-
Firefox 3.5 gère les évènements de mouvements de souris dont les glissades sur un trackpad.
-
L'objet NodeIterator
-
L'objet NodeIterator permet de parcourir la liste de nœuds dans un sous-arbre DOM.
-
L'évènement MozAfterPaint
-
Ce nouvel évènement DOM est envoyé après les mises à jour de l'affichage dans les fenêtres.
-
L'évènement MozMousePixelScroll
-
Ce nouvel évènement DOM permet de détecter les évènements de défilement à la souris par pixels plutôt que par ligne.
-
- -

Nouvelles fonctionnalités JavaScript

- -
-
Nouveautés dans JavaScript 1.8.1
-
Un aperçu de tous les changements dans JavaScript 1.8.1.
-
Object.getPrototypeOf()
-
Cette nouvelle méthode renvoie le prototype d'un objet spécifié.
-
Utilisation de JSON dans Firefox
-
La gestion de JSON est à présent intégrée dans le DOM.
-
Nouvelles méthodes de nettoyage des espaces sur l'objet String
-
L'objet String dispose à présent des méthodes trim(), trimLeft() et trimRight().
-
- -

Réseau

- -
-
Contrôle d'accès entre sites pour HTTP
-
Dans Firefox 3.5, il devient possible pour les requêtes HTTP, notamment celles faites au travers d'XMLHttpRequest, de fonctionne entre différents domaines si le serveur le permet.
-
Évènements de progression pour XMLHttpRequest
-
Des évènements de progression sont à présent émis pour permettre aux extensions de surveiller l'état des requêtes.
-
Amélioration des appels XMLHttpRequest synchrones
-
Les timeouts DOM et les évènements d'entrée sont à présent supprimés pendant un appel XMLHttpRequest synchrone.
-
Contrôle du préchargement DNS
-
Firefox 3.5 permet le préchargement DNS, par lequel il effectue la résolution des noms de domaines à l'avance pour les liens présents dans la page courante, afin de gagner du temps lorsque l'on clique effectivement sur ces liens. Cet article explique comment adapter votre site pour désactiver le préchargement, ou contrôler le comportement de ce préchargement.
-
- -

Nouvelles fonctionnalités de Canvas

- -
-
API HTML5 text pour les éléments canvas
-
Les éléments canvas gèrent à présent l'API texte d'HTML5.
-
Effets d'ombres dans un canvas
-
Les effets d'ombrages sont à présent gérés dans canvas.
-
createImageData()
-
La méthode createImageData() de canvas est à présent gérée, ce qui permet à du code de créer spécifiquement un objet ImageData plutôt que demander que ce soit fait automatiquement. Les performances d'autres méthodes d'ImageData peuvent en être améliorées puisqu'elles n'ont pas à créer l'objet.
-
Attribut moz-opaque
-
L'attribut DOM moz-opaque a été ajouté, ce qui permet à canvas de savoir si oui ou non la transparence devra être prise en compte. Si le canvas sait qu'il n'y a pas de transparence, les performances de dessin peuvent être optimisées.
-
- -

Nouvelles fonctionnalités SVG

- -
-
Application d'effets SVG à du contenu HTML
-
Vous pouvez à présent appliquer des effets SVG à du contenu HTML et XHTML ; cet article explique comment.
-
- -

Autres nouvelles fonctionnalités

- -
-
Correction de couleurs ICC dans Firefox
-
Firefox 3.5 gère à présent la correction de couleurs ICC pour les images balisées.
-
L'attribut defer est géré sur les éléments script
-
Cet attribut indique au navigateur qu'il peut décider de continuer d'analyser et d'afficher la page sans attendre que le script ait terminé son exécution.
-
- -

Autres améliorations

- - - -

Pour les développeurs XUL et développeurs d'applications

- -

Si vous développez des extensions, vous devriez tout d'abord lire Mise à jour des extensions pour Firefox 3.5 qui fournit un aperçu pratique des changements qui pourraient affecter vos extensions.

- -

Nouveaux composants et nouvelles fonctionnalités

- -
-
Gestion du mode de navigation privée
-
Firefox 3.5 offre un mode de navigation privée, qui n'enregistre pas les activités de l'utilisateur. Les extensions peuvent gérer la navigation privée en suivant les conseils donnés dans cet article.
-
Changements liés à la sécurité dans Firefox 3.5
-
Cet article détaille les changements liés à la sécurité dans Firefox 3.5.
-
Changements dans les thèmes pour Firefox 3.5
-
Cet article détaille les changements liés aux thèmes dans Firefox 3.5.
-
Surveillance des points d'accès WiFi
-
Le code disposant des privilèges UniversalXPConnect peut à présent surveiller la liste des points d'accès disponibles, et obtenir des informations concernant leurs SSID, adresses MAC et force du signal. Ceci peut être utilisé couplé avec la géolocalisaiton pour fournir des services locaux basés sur la présence d'un WiFi.
-
- -

Changements et améliorations notables

- - - -

Nouvelles fonctionnalités pour les utilisateurs

- -

Interface

- -
-
Navigation en fonction de sa localisation
-
Si vous le désirez, vous pouvez permettre à Firefox 3.5 de partager des informations concernant votre localisation géographique avec des sites web. Firefox 3.5 peut utiliser des informations sur le réseau auquel votre machine est connectée pour partager votre localisation. Bien évidemment, votre permission sera demandée au préalable afin de préserver votre vie privée.
-
Gestion de la vidéo et de l'audio ouverts
-
Firefox 3.5 gère l'intégration de vidéos et d'extraits audio à l'aide du format ouvert Ogg, ainsi qu'au format WAV pour l'audio. Aucun plugin nécessaire, pas de messages d'erreurs incompréhensibles vous demandant d'installer quelque chose qui n'est en fait pas disponible sur votre plateforme.
-
Stockage local de données
-
Les applications web peuvent à présent utiliser les possibilités de stockage local pour conserver des données sur votre ordinateur. Cela peut servir pour conserver des préférences ou d'autres données plus complexes.
-
- -

Sécurité et vie privée

- -
-
Navigation privée
-
Besoin d'utiliser l'ordinateur de quelqu'un d'autre ? Activez la navigation privée et rien ne sera enregistré concernant votre session, ni cookies, ni historique, ni aucune autre information privée.
-
Meilleurs contrôles sur la vie privée
-
Le panneau de préférences Vie privée a été complètement revu pour disposer d'un meilleur contrôle sur vos informations privées. Les utilisateurs peuvent choisir de conserver ou d'effacer tout ce qui concerne l'historique, les cookies, les téléchargements et les informations de formulaire enregistrées. De plus, il est possible d'indiquer si l'historique et/ou les marque-pages doivent faire partie des suggestions automatiques de la Barre d'adresse, afin d'empêcher des adresses privées d'apparaître par inadvertance en saisissant des informations dans la Barre d'adresse.
-
- -

Performances

- -
-
Du JavaScript plus rapide
-
Le code JavaScript est exécuté nettement plus rapidement dans Firefox 3.5 grâce à son nouveau moteur TraceMonkey. Les applications web sont ainsi beaucoup plus rapides que dans Firefox 3.
-
Rendu plus rapide des pages
-
Le contenu web est affiché plus rapidement dans Firefox 3.5, grâce à des technologies telles que l'« analyse spéculative ». Vos utilisateurs n'ont pas besoin de savoir de quoi il s'agit, simplement que ça rend les choses plus rapides.
-
- -

Voir également

- -

{{Firefox_for_developers('3')}}

diff --git a/files/fr/mozilla/firefox/releases/3.5/index.md b/files/fr/mozilla/firefox/releases/3.5/index.md new file mode 100644 index 0000000000..a4902ad7f5 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/3.5/index.md @@ -0,0 +1,234 @@ +--- +title: Firefox 3.5 pour les développeurs +slug: Mozilla/Firefox/Releases/3.5 +tags: + - Firefox + - Firefox 3.5 +translation_of: Mozilla/Firefox/Releases/3.5 +original_slug: Mozilla/Firefox/Versions/3.5 +--- +
{{FirefoxSidebar}}

Firefox 3.5 introduit un certain nombre de nouvelles fonctionnalités, ainsi qu'une gestion améliorée d'une grande variété de standards du Web. Cet article en fournit une longue liste, avec des liens vers des articles décrivant les améliorations majeures.

+ +

Nouvelles fonctionnalités pour les développeurs dans Firefox 3.5

+ +

Pour les développeurs de sites et d'applications web

+ +

HTML5

+ +
+
Utilisation d'audio et video dans Firefox
+
Firefox 3.5 ajoute la gestion des éléments HTML5 audio et video.
+
Ressources hors ligne dans Firefox
+
Firefox 3.5 gère entièrement la spécification de ressources hors ligne d'HTML5.
+
Glisser et déposer
+
L'API de glisser/déposer d'HTML5 permet de gérer le glisser/déposer d'éléments à l'intérieur et entre des sites web. Elle fournit également une API plus simple pour les extensions et applications basées sur Mozilla.
+
+ +

Nouvelles fonctionnalités CSS

+ +
+
Gestion des polices téléchargeables
+
La nouvelle règle-@ @font-face permet aux pages web de fournir des polices téléchargeables, afin qu'elles puissent être affichées exactement telles que l'auteur de la page les attend.
+
Media queries
+
Firefox 3.5 gère les requêtes de médias, qui améliorent le traitement des feuilles de style destinées à des médias particuliers.
+
Mise à jour de {{ cssxref(":before") }} et {{ cssxref(":after") }} pour CSS 2.1
+
Les pseudo-éléments :before et :after ont été mis à jour pour respecter complètement CSS 2.1, avec l'ajout des propriétés position, float et list-style-*, ainsi que de certaines valeurs de display.
+
Unité de longueur ch
+
L'unité ch peut à présent être utilisée à tout endroit où peut être indiquée une unité de longueur. 1ch est la largeur du caractère « 0 » (zéro).
+
{{ cssxref("opacity") }}
+
L'extension à CSS -moz-opacity de Mozilla a été supprimée en faveur de la propriété standard opacity.
+
{{ cssxref("text-shadow") }}
+
La propriété text-shadow, qui permet à du contenu web de spécifier des effets d'ombres sur le texte et les décorations de texte est à présent gérée.
+
{{ cssxref("word-wrap") }}
+
Cette nouvelle propriété permet au contenu d'indiquer si oui ou non les lignes de texte peuvent être coupées au milieu d'un mot afin d'empêcher un débordement lorsqu'une chaîne normalement insécable est trop longue pour rentrer dans une seule ligne.
+
Valeur pre-line pour la propriété white-space
+
La propriété {{ cssxref("white-space") }} accepte à présent la valeur pre-line.
+
{{ cssxref("-moz-box-shadow") }}
+
{{ cssxref("-moz-border-image") }}
+
{{ cssxref("-moz-column-rule") }}
+
{{ cssxref("-moz-column-rule-width") }}
+
{{ cssxref("-moz-column-rule-style") }}
+
{{ cssxref("-moz-column-rule-color") }}
+
La gestion de ces extensions à CSS de Mozilla a été ajoutée dans Firefox 3.5.
+
La {{ cssxref("valeur_de_couleur#Extensions_spécifiques_à_Mozilla","-moz-nativehyperlinktext") }}
+
Cette nouvelle valeur de couleur représente la couleur de lien hypertexte par défaut de l'utilisateur du système.
+
La nouvelle propriété {{ cssxref("-moz-window-shadow") }} et la pseudo-classe {{ cssxref(":-moz-system-metric(mac-graphite-theme)") }}
+
Ces nouvelles fonctionnalités CSS ont été ajoutées pour faciliter la mise en place de thèmes.
+
Nouvelles valeurs pour {{ cssxref("-moz-appearance") }}
+
Les valeurs -moz-win-glass et -moz-mac-unified-toolbar ont été ajoutées à -moz-appearance.
+
Utilisation des transformations CSS
+
Firefox 3.5 gère les transformations CSS. Consultez {{ cssxref("-moz-transform") }} et {{ cssxref("-moz-transform-origin") }} pour plus de détails.
+
{{ cssxref(":nth-child") }}
+
{{ cssxref(":nth-last-child") }}
+
{{ cssxref(":nth-of-type") }}
+
{{ cssxref(":nth-last-of-type") }}
+
{{ cssxref(":first-of-type") }}
+
{{ cssxref(":last-of-type") }}
+
{{ cssxref(":only-of-type") }}
+
Ces sélecteurs sont nouvellement gérés dans Firefox 3.5
+
+ +

Nouvelles fonctionnalités DOM

+ +
+
localStorage
+
Firefox 3.5 ajoute la gestion de la propriété localStorage pour le stockage web, fournissant ainsi une manière pour les applications web de stocker des données localement sur l'ordinateur du client.
+
Utilisation de workers DOM
+
Firefox 3.5 gère les workers DOM afin de permettre une gestion multithreadée dans les applications web.
+
Utilisation de la géolocalisation
+
Firefox 3.5 gère l'API Geolocation, qui permet aux applications web d'obtenir des informations concernant l'emplacement actuel de l'utilisateur si cette information est fournie et activée dans le système.
+
Identification d'éléments DOM à l'aide de sélecteurs
+
L'API Selectors permet d'interroger un document afin d'identifier les éléments correspondant à une règle de sélection donnée.
+
Évènements de mouvement de souris
+
Firefox 3.5 gère les évènements de mouvements de souris dont les glissades sur un trackpad.
+
L'objet NodeIterator
+
L'objet NodeIterator permet de parcourir la liste de nœuds dans un sous-arbre DOM.
+
L'évènement MozAfterPaint
+
Ce nouvel évènement DOM est envoyé après les mises à jour de l'affichage dans les fenêtres.
+
L'évènement MozMousePixelScroll
+
Ce nouvel évènement DOM permet de détecter les évènements de défilement à la souris par pixels plutôt que par ligne.
+
+ +

Nouvelles fonctionnalités JavaScript

+ +
+
Nouveautés dans JavaScript 1.8.1
+
Un aperçu de tous les changements dans JavaScript 1.8.1.
+
Object.getPrototypeOf()
+
Cette nouvelle méthode renvoie le prototype d'un objet spécifié.
+
Utilisation de JSON dans Firefox
+
La gestion de JSON est à présent intégrée dans le DOM.
+
Nouvelles méthodes de nettoyage des espaces sur l'objet String
+
L'objet String dispose à présent des méthodes trim(), trimLeft() et trimRight().
+
+ +

Réseau

+ +
+
Contrôle d'accès entre sites pour HTTP
+
Dans Firefox 3.5, il devient possible pour les requêtes HTTP, notamment celles faites au travers d'XMLHttpRequest, de fonctionne entre différents domaines si le serveur le permet.
+
Évènements de progression pour XMLHttpRequest
+
Des évènements de progression sont à présent émis pour permettre aux extensions de surveiller l'état des requêtes.
+
Amélioration des appels XMLHttpRequest synchrones
+
Les timeouts DOM et les évènements d'entrée sont à présent supprimés pendant un appel XMLHttpRequest synchrone.
+
Contrôle du préchargement DNS
+
Firefox 3.5 permet le préchargement DNS, par lequel il effectue la résolution des noms de domaines à l'avance pour les liens présents dans la page courante, afin de gagner du temps lorsque l'on clique effectivement sur ces liens. Cet article explique comment adapter votre site pour désactiver le préchargement, ou contrôler le comportement de ce préchargement.
+
+ +

Nouvelles fonctionnalités de Canvas

+ +
+
API HTML5 text pour les éléments canvas
+
Les éléments canvas gèrent à présent l'API texte d'HTML5.
+
Effets d'ombres dans un canvas
+
Les effets d'ombrages sont à présent gérés dans canvas.
+
createImageData()
+
La méthode createImageData() de canvas est à présent gérée, ce qui permet à du code de créer spécifiquement un objet ImageData plutôt que demander que ce soit fait automatiquement. Les performances d'autres méthodes d'ImageData peuvent en être améliorées puisqu'elles n'ont pas à créer l'objet.
+
Attribut moz-opaque
+
L'attribut DOM moz-opaque a été ajouté, ce qui permet à canvas de savoir si oui ou non la transparence devra être prise en compte. Si le canvas sait qu'il n'y a pas de transparence, les performances de dessin peuvent être optimisées.
+
+ +

Nouvelles fonctionnalités SVG

+ +
+
Application d'effets SVG à du contenu HTML
+
Vous pouvez à présent appliquer des effets SVG à du contenu HTML et XHTML ; cet article explique comment.
+
+ +

Autres nouvelles fonctionnalités

+ +
+
Correction de couleurs ICC dans Firefox
+
Firefox 3.5 gère à présent la correction de couleurs ICC pour les images balisées.
+
L'attribut defer est géré sur les éléments script
+
Cet attribut indique au navigateur qu'il peut décider de continuer d'analyser et d'afficher la page sans attendre que le script ait terminé son exécution.
+
+ +

Autres améliorations

+ + + +

Pour les développeurs XUL et développeurs d'applications

+ +

Si vous développez des extensions, vous devriez tout d'abord lire Mise à jour des extensions pour Firefox 3.5 qui fournit un aperçu pratique des changements qui pourraient affecter vos extensions.

+ +

Nouveaux composants et nouvelles fonctionnalités

+ +
+
Gestion du mode de navigation privée
+
Firefox 3.5 offre un mode de navigation privée, qui n'enregistre pas les activités de l'utilisateur. Les extensions peuvent gérer la navigation privée en suivant les conseils donnés dans cet article.
+
Changements liés à la sécurité dans Firefox 3.5
+
Cet article détaille les changements liés à la sécurité dans Firefox 3.5.
+
Changements dans les thèmes pour Firefox 3.5
+
Cet article détaille les changements liés aux thèmes dans Firefox 3.5.
+
Surveillance des points d'accès WiFi
+
Le code disposant des privilèges UniversalXPConnect peut à présent surveiller la liste des points d'accès disponibles, et obtenir des informations concernant leurs SSID, adresses MAC et force du signal. Ceci peut être utilisé couplé avec la géolocalisaiton pour fournir des services locaux basés sur la présence d'un WiFi.
+
+ +

Changements et améliorations notables

+ + + +

Nouvelles fonctionnalités pour les utilisateurs

+ +

Interface

+ +
+
Navigation en fonction de sa localisation
+
Si vous le désirez, vous pouvez permettre à Firefox 3.5 de partager des informations concernant votre localisation géographique avec des sites web. Firefox 3.5 peut utiliser des informations sur le réseau auquel votre machine est connectée pour partager votre localisation. Bien évidemment, votre permission sera demandée au préalable afin de préserver votre vie privée.
+
Gestion de la vidéo et de l'audio ouverts
+
Firefox 3.5 gère l'intégration de vidéos et d'extraits audio à l'aide du format ouvert Ogg, ainsi qu'au format WAV pour l'audio. Aucun plugin nécessaire, pas de messages d'erreurs incompréhensibles vous demandant d'installer quelque chose qui n'est en fait pas disponible sur votre plateforme.
+
Stockage local de données
+
Les applications web peuvent à présent utiliser les possibilités de stockage local pour conserver des données sur votre ordinateur. Cela peut servir pour conserver des préférences ou d'autres données plus complexes.
+
+ +

Sécurité et vie privée

+ +
+
Navigation privée
+
Besoin d'utiliser l'ordinateur de quelqu'un d'autre ? Activez la navigation privée et rien ne sera enregistré concernant votre session, ni cookies, ni historique, ni aucune autre information privée.
+
Meilleurs contrôles sur la vie privée
+
Le panneau de préférences Vie privée a été complètement revu pour disposer d'un meilleur contrôle sur vos informations privées. Les utilisateurs peuvent choisir de conserver ou d'effacer tout ce qui concerne l'historique, les cookies, les téléchargements et les informations de formulaire enregistrées. De plus, il est possible d'indiquer si l'historique et/ou les marque-pages doivent faire partie des suggestions automatiques de la Barre d'adresse, afin d'empêcher des adresses privées d'apparaître par inadvertance en saisissant des informations dans la Barre d'adresse.
+
+ +

Performances

+ +
+
Du JavaScript plus rapide
+
Le code JavaScript est exécuté nettement plus rapidement dans Firefox 3.5 grâce à son nouveau moteur TraceMonkey. Les applications web sont ainsi beaucoup plus rapides que dans Firefox 3.
+
Rendu plus rapide des pages
+
Le contenu web est affiché plus rapidement dans Firefox 3.5, grâce à des technologies telles que l'« analyse spéculative ». Vos utilisateurs n'ont pas besoin de savoir de quoi il s'agit, simplement que ça rend les choses plus rapides.
+
+ +

Voir également

+ +

{{Firefox_for_developers('3')}}

diff --git a/files/fr/mozilla/firefox/releases/3.6/index.html b/files/fr/mozilla/firefox/releases/3.6/index.html deleted file mode 100644 index 10e68df146..0000000000 --- a/files/fr/mozilla/firefox/releases/3.6/index.html +++ /dev/null @@ -1,297 +0,0 @@ ---- -title: Firefox 3.6 pour les développeurs -slug: Mozilla/Firefox/Releases/3.6 -tags: - - Firefox - - Firefox 3.6 -translation_of: Mozilla/Firefox/Releases/3.6 -original_slug: Mozilla/Firefox/Versions/3.6 ---- -
-
    -
  1. - -

    Notes de versions pour développeurs

    -
      -
    1. Notes de versions pour développeurs
    2. -
    - -
  2. -
  3. - -

    Modules complémentaires

    -
      -
    1. WebExtensions
    2. -
    3. Thèmes
    4. -
    - -
  4. -
  5. - -

    Fonctionnement interne de Firefox

    -
      -
    1. Le projet Mozilla
    2. -
    3. Gecko
    4. -
    5. Mode « headless »
    6. -
    7. Modules de code Javascript
    8. -
    9. JS-ctypes
    10. -
    11. Le projet MathML
    12. -
    13. MFBT
    14. -
    15. Les projets Mozilla
    16. -
    17. Le système de préférences
    18. -
    19. Connexions WebIDL
    20. -
    21. XPCOM
    22. -
    23. XUL
    24. -
    - -
  6. -
  7. - -

    Développer et contribuer

    -
      -
    1. Instructions de compilation
    2. -
    3. Configuration des options de compilation
    4. -
    5. Fonctionnement de la compilation
    6. -
    7. Code source de Mozilla
    8. -
    9. Localisation
    10. -
    11. Mercurial
    12. -
    13. Assurance qualité
    14. -
    15. Utilisation de code Mozilla dans d'autres projets
    16. -
    - -
  8. -
-
-

Firefox 3.6 (nom de code Namoroka) est sorti le 21 janvier 2010 et est basé sur Gecko 1.9.2. Cette page fournit des liens vers des articles qui décrivent les nouvelles fonctionnalités de Firefox 3.6.

- -

Pour les développeurs de sites et d'applications Web

- -

CSS

- -
-
Utilisation de dégradés
-
Firefox 3.6 ajoute le support de -moz-linear-gradient et -moz-radial-gradient pour la propriété background.
-
Fonds multiples
-
La propriété background (ainsi que background-attachmentbackground-color, background-image, background-position et background-repeat) peuvent gérer des fonds multiples. Ceux-ci seront affichés par couches, les uns au dessus des autres.
-
Fonctionnalités de médias spécifiques à Mozilla
-
Des fonctionnalités de médias ont été ajoutées pour des mesures spécifiques à Mozilla, afin de pouvoir utiliser des media queries pour vérifier plus aisément la disponibilité de fonctionnalités comme un écran tactile.
-
Redimensionnement d'images de fond
-
La propriété background-size du brouillon CSS 3 Backgrounds and Borders est gérée sous le nom de -moz-background-size.
-
Support des polices WOFF
-
@font-face supporte désormais le format de polices Web téléchargeables WOFF
-
Evènements pointeurs
-
La propriété pointer-events si le contenu d'un élément peut être ou non la cible d'évènements pointeur avec la souris.
-
- -

Autres changements CSS

- - - -

HTML

- -
-
Utilisation de fichiers à partir d'applications Web
-
Le support de la nouvelle API de fichier HTML5 a été ajouté à Gecko, ce qui permet à des applications Web d'accéder à des fichiers locaux sélectionnés par l'utilisateur.
-
Support des affiches pour les vidéos HTML5
-
L'attribut poster est pris en charge pour l'élément <video>, ce qui permet au contenu de choisir une image à afficher tant que la vidéo n'a pas commencée.
-
Support de la propriété indeterminate pour les cases à cocher et boutons radio
-
Les éléments HTML <input> des types checkbox et radio supportent désormais la propriété indeterminate qui permet d'avoir un troisième état « indéterminé ».
-
Contrôle du lissage d'images dans canvas
-
La nouvelle propriété mozImageSmoothingEnabled peut être utilisée pour activer et désactiver le lissage lors d'un redimensionnement dans les éléments <canvas>.
-
Exécution d'un script asynchrone
-
En définissant l'attribut async sur un élément <script>, le script ne bloquera pas le chargement ou l'affichage du reste de la page. En revanche, le script s'exécutera dès qu'il sera téléchargé.
-
- -

JavaScript

- -

Gecko 1.9.2 introduit JavaScript 1.8.2, qui ajoute un certain nombre de fonctionnalités de langage de la norme ECMAScript 5 :

- - - -

DOM

- -
-
Terminaison des web workers par eux-mêmes
-
Les web workers prennent désormais en charge la méthode nsIWorkerScope.close(), qui leur permet de se terminer d'eux-mêmes.
-
Glisser-déposer de fichiers
-
L'objet DataTransfer fournit à présent aux observateurs de glisser-déposer une liste des fichiers glissés.
-
Vérification pour voir si un élément correspond à un sélecteur CSS
-
La nouvelle méthode element.mozMatchesSelector permet de déterminer si un élément correspond bien à un sélecteur CSS. Voir bug 518003.
-
Dispositf de détection de l'orientation
-
Le contenu peut à présent détecter l'orientation de l'appareil s'il dispose d'un accéléromètre, à l'aide de l'évènement MozOrientation. Firefox 3.6 gère notamment l'accéléromètre des ordinateurs portables Mac.
-
Détection des changements de largeur et hauteur d'un document
-
Le nouvel évènement MozScrollAreaChanged est déclenché lorsqu'une des propriétés scrollWidth ou scrollHeight d'un document change.
-
- - - -

XPath

- -
-
Gestion de la méthode XPath choose()
-
La méthode choose() est à présent gérée par notre implémentation de XPath.
-
- -

Pour les développeurs XUL et les développeurs d'extensions

- -

Si vous êtes un développeur d'extensions, vous devriez commencer par lire Updating extensions for Firefox 3.6, qui offre une vue d'ensemble sur les changements qui pourraient affecter vos extensions. Les développeurs de Plug-in devraient lire Updating plug-ins for Firefox 3.6.

- -

Nouvelles fonctionnalités

- -
-
Détection de l'orientation de l'appareil
-
Le contenu peut maintenant détecter l'orientation de l'appareil si il possède un accéléromètre, en utilisant l'évènement MozOrientation. Firefox 3.6 supporte l'accéléromètre des ordinateurs portables Mac.
-
Surveillance de l'activité HTTP
-
Vous pouvez maintenant surveiller en temps réel les données HTTP demandées et reçues.
-
Intégration à la Barre des tâches de Windows
-
Il est maintenant possible de personnaliser l'apparence des fenêtres dans la barre des tâches sous Windows 7 ou plus récent. C'est désactivé par défaut dans Firefox 3.6.
-
- -

Places

- - - -

Storage

- -
-
Tri des données locales avec l'API Storage
-
Gecko 1.9.2 ajoute plusieurs nouvelles méthodes pour offrir une collecte (tri) optimisée des résulats en utilisant les techniques de localisation.
-
Énumération des propriétés d'une requête
-
Vous pouvez maintenant utiliser for...in pour énumérer toutes les propriétés d'une déclaration.
-
mozIStorageStatement's getParameterIndex a changé de comportement entre Firefox 3.5 et 3.6.
-
Voir bug 528166 pour plus de détails.
-
Liaison asynchrone de plusieurs ensembles de paramètres pour exécution d'une requête.
-
Voir bug 490085 pour plus de détails.
-
- -

Préférences

- - - -

Thèmes

- -

Voir Updating themes for Firefox 3.6 pour la liste des changements liés aux thèmes.

- -
-
Thèmes légers
-
Firefox 3.6 supporte les thèmes légers ; ce sont des thèmes faciles à créer et qui sont simplement appliqué sur le fond de la fenêtre du navigateur, en haut (barre d'adresses et boutons) et en bas (barre d'état). Il s'agit d'une intégration de l'architecture de thèmes Personas dans Firefox.
-
- -

Divers

- - - -

Pours les développeurs de Firefox/Gecko

- -

Certains changements sont vraiment intéressant si vous travaillez sur le fonctionnement interne de Firefox.

- -

Interfaces fusionnées

- -

Les interfaces suivantes ont été fusionnées :

- - - -

Interfaces supprimées

- -

Les interfaces suivantes ont été entièrement supprimées car elles étaient inutilisées, non implémentées ou obsolètes :

- - - -

Interfaces déplacées

- -

Les interfaces suivantes ont été déplacées de leurs précédents fichiers IDL vers leurs nouveaux :

- - - -

Un grand nombre d'interfaces ont été déplacées. Voir Interfaces moved in Firefox 3.6 pour la liste complète.

- -

Autres changements dans les interfaces

- -

Les modifications suivantes ont été faites :

- - - -

Changements dans l'accessibilitée du code

- - - -

Voir également

- - diff --git a/files/fr/mozilla/firefox/releases/3.6/index.md b/files/fr/mozilla/firefox/releases/3.6/index.md new file mode 100644 index 0000000000..10e68df146 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/3.6/index.md @@ -0,0 +1,297 @@ +--- +title: Firefox 3.6 pour les développeurs +slug: Mozilla/Firefox/Releases/3.6 +tags: + - Firefox + - Firefox 3.6 +translation_of: Mozilla/Firefox/Releases/3.6 +original_slug: Mozilla/Firefox/Versions/3.6 +--- +
+
    +
  1. + +

    Notes de versions pour développeurs

    +
      +
    1. Notes de versions pour développeurs
    2. +
    + +
  2. +
  3. + +

    Modules complémentaires

    +
      +
    1. WebExtensions
    2. +
    3. Thèmes
    4. +
    + +
  4. +
  5. + +

    Fonctionnement interne de Firefox

    +
      +
    1. Le projet Mozilla
    2. +
    3. Gecko
    4. +
    5. Mode « headless »
    6. +
    7. Modules de code Javascript
    8. +
    9. JS-ctypes
    10. +
    11. Le projet MathML
    12. +
    13. MFBT
    14. +
    15. Les projets Mozilla
    16. +
    17. Le système de préférences
    18. +
    19. Connexions WebIDL
    20. +
    21. XPCOM
    22. +
    23. XUL
    24. +
    + +
  6. +
  7. + +

    Développer et contribuer

    +
      +
    1. Instructions de compilation
    2. +
    3. Configuration des options de compilation
    4. +
    5. Fonctionnement de la compilation
    6. +
    7. Code source de Mozilla
    8. +
    9. Localisation
    10. +
    11. Mercurial
    12. +
    13. Assurance qualité
    14. +
    15. Utilisation de code Mozilla dans d'autres projets
    16. +
    + +
  8. +
+
+

Firefox 3.6 (nom de code Namoroka) est sorti le 21 janvier 2010 et est basé sur Gecko 1.9.2. Cette page fournit des liens vers des articles qui décrivent les nouvelles fonctionnalités de Firefox 3.6.

+ +

Pour les développeurs de sites et d'applications Web

+ +

CSS

+ +
+
Utilisation de dégradés
+
Firefox 3.6 ajoute le support de -moz-linear-gradient et -moz-radial-gradient pour la propriété background.
+
Fonds multiples
+
La propriété background (ainsi que background-attachmentbackground-color, background-image, background-position et background-repeat) peuvent gérer des fonds multiples. Ceux-ci seront affichés par couches, les uns au dessus des autres.
+
Fonctionnalités de médias spécifiques à Mozilla
+
Des fonctionnalités de médias ont été ajoutées pour des mesures spécifiques à Mozilla, afin de pouvoir utiliser des media queries pour vérifier plus aisément la disponibilité de fonctionnalités comme un écran tactile.
+
Redimensionnement d'images de fond
+
La propriété background-size du brouillon CSS 3 Backgrounds and Borders est gérée sous le nom de -moz-background-size.
+
Support des polices WOFF
+
@font-face supporte désormais le format de polices Web téléchargeables WOFF
+
Evènements pointeurs
+
La propriété pointer-events si le contenu d'un élément peut être ou non la cible d'évènements pointeur avec la souris.
+
+ +

Autres changements CSS

+ + + +

HTML

+ +
+
Utilisation de fichiers à partir d'applications Web
+
Le support de la nouvelle API de fichier HTML5 a été ajouté à Gecko, ce qui permet à des applications Web d'accéder à des fichiers locaux sélectionnés par l'utilisateur.
+
Support des affiches pour les vidéos HTML5
+
L'attribut poster est pris en charge pour l'élément <video>, ce qui permet au contenu de choisir une image à afficher tant que la vidéo n'a pas commencée.
+
Support de la propriété indeterminate pour les cases à cocher et boutons radio
+
Les éléments HTML <input> des types checkbox et radio supportent désormais la propriété indeterminate qui permet d'avoir un troisième état « indéterminé ».
+
Contrôle du lissage d'images dans canvas
+
La nouvelle propriété mozImageSmoothingEnabled peut être utilisée pour activer et désactiver le lissage lors d'un redimensionnement dans les éléments <canvas>.
+
Exécution d'un script asynchrone
+
En définissant l'attribut async sur un élément <script>, le script ne bloquera pas le chargement ou l'affichage du reste de la page. En revanche, le script s'exécutera dès qu'il sera téléchargé.
+
+ +

JavaScript

+ +

Gecko 1.9.2 introduit JavaScript 1.8.2, qui ajoute un certain nombre de fonctionnalités de langage de la norme ECMAScript 5 :

+ + + +

DOM

+ +
+
Terminaison des web workers par eux-mêmes
+
Les web workers prennent désormais en charge la méthode nsIWorkerScope.close(), qui leur permet de se terminer d'eux-mêmes.
+
Glisser-déposer de fichiers
+
L'objet DataTransfer fournit à présent aux observateurs de glisser-déposer une liste des fichiers glissés.
+
Vérification pour voir si un élément correspond à un sélecteur CSS
+
La nouvelle méthode element.mozMatchesSelector permet de déterminer si un élément correspond bien à un sélecteur CSS. Voir bug 518003.
+
Dispositf de détection de l'orientation
+
Le contenu peut à présent détecter l'orientation de l'appareil s'il dispose d'un accéléromètre, à l'aide de l'évènement MozOrientation. Firefox 3.6 gère notamment l'accéléromètre des ordinateurs portables Mac.
+
Détection des changements de largeur et hauteur d'un document
+
Le nouvel évènement MozScrollAreaChanged est déclenché lorsqu'une des propriétés scrollWidth ou scrollHeight d'un document change.
+
+ + + +

XPath

+ +
+
Gestion de la méthode XPath choose()
+
La méthode choose() est à présent gérée par notre implémentation de XPath.
+
+ +

Pour les développeurs XUL et les développeurs d'extensions

+ +

Si vous êtes un développeur d'extensions, vous devriez commencer par lire Updating extensions for Firefox 3.6, qui offre une vue d'ensemble sur les changements qui pourraient affecter vos extensions. Les développeurs de Plug-in devraient lire Updating plug-ins for Firefox 3.6.

+ +

Nouvelles fonctionnalités

+ +
+
Détection de l'orientation de l'appareil
+
Le contenu peut maintenant détecter l'orientation de l'appareil si il possède un accéléromètre, en utilisant l'évènement MozOrientation. Firefox 3.6 supporte l'accéléromètre des ordinateurs portables Mac.
+
Surveillance de l'activité HTTP
+
Vous pouvez maintenant surveiller en temps réel les données HTTP demandées et reçues.
+
Intégration à la Barre des tâches de Windows
+
Il est maintenant possible de personnaliser l'apparence des fenêtres dans la barre des tâches sous Windows 7 ou plus récent. C'est désactivé par défaut dans Firefox 3.6.
+
+ +

Places

+ + + +

Storage

+ +
+
Tri des données locales avec l'API Storage
+
Gecko 1.9.2 ajoute plusieurs nouvelles méthodes pour offrir une collecte (tri) optimisée des résulats en utilisant les techniques de localisation.
+
Énumération des propriétés d'une requête
+
Vous pouvez maintenant utiliser for...in pour énumérer toutes les propriétés d'une déclaration.
+
mozIStorageStatement's getParameterIndex a changé de comportement entre Firefox 3.5 et 3.6.
+
Voir bug 528166 pour plus de détails.
+
Liaison asynchrone de plusieurs ensembles de paramètres pour exécution d'une requête.
+
Voir bug 490085 pour plus de détails.
+
+ +

Préférences

+ + + +

Thèmes

+ +

Voir Updating themes for Firefox 3.6 pour la liste des changements liés aux thèmes.

+ +
+
Thèmes légers
+
Firefox 3.6 supporte les thèmes légers ; ce sont des thèmes faciles à créer et qui sont simplement appliqué sur le fond de la fenêtre du navigateur, en haut (barre d'adresses et boutons) et en bas (barre d'état). Il s'agit d'une intégration de l'architecture de thèmes Personas dans Firefox.
+
+ +

Divers

+ + + +

Pours les développeurs de Firefox/Gecko

+ +

Certains changements sont vraiment intéressant si vous travaillez sur le fonctionnement interne de Firefox.

+ +

Interfaces fusionnées

+ +

Les interfaces suivantes ont été fusionnées :

+ + + +

Interfaces supprimées

+ +

Les interfaces suivantes ont été entièrement supprimées car elles étaient inutilisées, non implémentées ou obsolètes :

+ + + +

Interfaces déplacées

+ +

Les interfaces suivantes ont été déplacées de leurs précédents fichiers IDL vers leurs nouveaux :

+ + + +

Un grand nombre d'interfaces ont été déplacées. Voir Interfaces moved in Firefox 3.6 pour la liste complète.

+ +

Autres changements dans les interfaces

+ +

Les modifications suivantes ont été faites :

+ + + +

Changements dans l'accessibilitée du code

+ + + +

Voir également

+ + diff --git a/files/fr/mozilla/firefox/releases/3/dom_improvements/index.html b/files/fr/mozilla/firefox/releases/3/dom_improvements/index.html deleted file mode 100644 index ee6fc48f29..0000000000 --- a/files/fr/mozilla/firefox/releases/3/dom_improvements/index.html +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: Améliorations DOM dans Firefox 3 -slug: Mozilla/Firefox/Releases/3/DOM_improvements -tags: - - DOM - - Firefox 3 -translation_of: Mozilla/Firefox/Releases/3/DOM_improvements -original_slug: Améliorations_DOM_dans_Firefox_3 ---- -
{{FirefoxSidebar}}
- -

Firefox 3 offre un certain nombre d'améliorations dans sa gestion du modèle objet de document (DOM), en particulier en ce qui concerne la gestion de ses extensions ajoutées par d'autres navigateurs. Cet article reprend une liste de ces améliorations ainsi que des liens vers une documentation plus détaillée.

- - - -

Voir également

- - - -
 
- -

{{ languages( { "en": "en/DOM_improvements_in_Firefox_3", "es": "es/Mejoras_DOM_en_Firefox_3", "ja": "ja/DOM_improvements_in_Firefox_3", "pl": "pl/Poprawki_DOM_w_Firefoksie_3" } ) }}

diff --git a/files/fr/mozilla/firefox/releases/3/dom_improvements/index.md b/files/fr/mozilla/firefox/releases/3/dom_improvements/index.md new file mode 100644 index 0000000000..ee6fc48f29 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/3/dom_improvements/index.md @@ -0,0 +1,36 @@ +--- +title: Améliorations DOM dans Firefox 3 +slug: Mozilla/Firefox/Releases/3/DOM_improvements +tags: + - DOM + - Firefox 3 +translation_of: Mozilla/Firefox/Releases/3/DOM_improvements +original_slug: Améliorations_DOM_dans_Firefox_3 +--- +
{{FirefoxSidebar}}
+ +

Firefox 3 offre un certain nombre d'améliorations dans sa gestion du modèle objet de document (DOM), en particulier en ce qui concerne la gestion de ses extensions ajoutées par d'autres navigateurs. Cet article reprend une liste de ces améliorations ainsi que des liens vers une documentation plus détaillée.

+ + + +

Voir également

+ + + +
 
+ +

{{ languages( { "en": "en/DOM_improvements_in_Firefox_3", "es": "es/Mejoras_DOM_en_Firefox_3", "ja": "ja/DOM_improvements_in_Firefox_3", "pl": "pl/Poprawki_DOM_w_Firefoksie_3" } ) }}

diff --git a/files/fr/mozilla/firefox/releases/3/full_page_zoom/index.html b/files/fr/mozilla/firefox/releases/3/full_page_zoom/index.html deleted file mode 100644 index c14f9ec090..0000000000 --- a/files/fr/mozilla/firefox/releases/3/full_page_zoom/index.html +++ /dev/null @@ -1,37 +0,0 @@ ---- -title: Zoom pleine page -slug: Mozilla/Firefox/Releases/3/Full_page_zoom -translation_of: Mozilla/Firefox/Releases/3/Full_page_zoom -original_slug: Zoom_pleine_page ---- -
{{FirefoxSidebar}}

{{ Gecko_minversion_header(1.9) }}

- -

Le zoom pleine page (ou fullZoom) est une nouvelle fonctionnalité qui sera probablement disponible dans Firefox 3. Elle peut être utilisée dans les compilations courantes du tronc depuis la version 1.9a7. Bien qu'il n'y ait actuellement aucune interface utilisateur visible, il est possible d'utiliser JavaScript et l'interface XPCOM nsIMarkupDocumentViewer.

- -

Exemple (xul:browser)

- -

L'exemple qui suit montre l'utilisation du zoom pour la fenêtre de navigation ayant actuellement le focus. C'est l'utilisation typique pour une extension Firefox.

- -
var zoom = 1.5;
-var docViewer = getBrowser().mCurrentBrowser.markupDocumentViewer;
-docViewer.fullZoom = zoom;
-
- -

Exemple (xul:iframe)

- -

Il est également possible d'utiliser la fonction fullZoom pour un xul:iframe. Cependant, comme un iframe n'a pas de propriété markupDocumentViewer, il faut d'abord obtenir cette valeur :

- -
var zoom = 1.5;
-var iframe = document.getElementById("authorFrame");
-var contViewer = iframe.docShell.contentViewer;
-var docViewer = contViewer.QueryInterface(Components.interfaces.nsIMarkupDocumentViewer);
-docViewer.fullZoom = zoom;
-
- -

Références

- - diff --git a/files/fr/mozilla/firefox/releases/3/full_page_zoom/index.md b/files/fr/mozilla/firefox/releases/3/full_page_zoom/index.md new file mode 100644 index 0000000000..c14f9ec090 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/3/full_page_zoom/index.md @@ -0,0 +1,37 @@ +--- +title: Zoom pleine page +slug: Mozilla/Firefox/Releases/3/Full_page_zoom +translation_of: Mozilla/Firefox/Releases/3/Full_page_zoom +original_slug: Zoom_pleine_page +--- +
{{FirefoxSidebar}}

{{ Gecko_minversion_header(1.9) }}

+ +

Le zoom pleine page (ou fullZoom) est une nouvelle fonctionnalité qui sera probablement disponible dans Firefox 3. Elle peut être utilisée dans les compilations courantes du tronc depuis la version 1.9a7. Bien qu'il n'y ait actuellement aucune interface utilisateur visible, il est possible d'utiliser JavaScript et l'interface XPCOM nsIMarkupDocumentViewer.

+ +

Exemple (xul:browser)

+ +

L'exemple qui suit montre l'utilisation du zoom pour la fenêtre de navigation ayant actuellement le focus. C'est l'utilisation typique pour une extension Firefox.

+ +
var zoom = 1.5;
+var docViewer = getBrowser().mCurrentBrowser.markupDocumentViewer;
+docViewer.fullZoom = zoom;
+
+ +

Exemple (xul:iframe)

+ +

Il est également possible d'utiliser la fonction fullZoom pour un xul:iframe. Cependant, comme un iframe n'a pas de propriété markupDocumentViewer, il faut d'abord obtenir cette valeur :

+ +
var zoom = 1.5;
+var iframe = document.getElementById("authorFrame");
+var contViewer = iframe.docShell.contentViewer;
+var docViewer = contViewer.QueryInterface(Components.interfaces.nsIMarkupDocumentViewer);
+docViewer.fullZoom = zoom;
+
+ +

Références

+ + diff --git a/files/fr/mozilla/firefox/releases/3/index.html b/files/fr/mozilla/firefox/releases/3/index.html deleted file mode 100644 index 1d7560ed58..0000000000 --- a/files/fr/mozilla/firefox/releases/3/index.html +++ /dev/null @@ -1,273 +0,0 @@ ---- -title: Firefox 3 pour les développeurs -slug: Mozilla/Firefox/Releases/3 -tags: - - Firefox - - Firefox 3 -translation_of: Mozilla/Firefox/Releases/3 -original_slug: Mozilla/Firefox/Versions/3 ---- -
{{FirefoxSidebar}}

Pour les développeurs qui désirent prendre connaissance de toutes les nouvelles fonctionnalités de Firefox 3, c'est ici qu'il convient de commencer. Cet article fournit la liste des nouveaux articles couvrant les fonctionnalités qui ont été ajoutées à Firefox 3. Même s'il ne couvre pas nécessairement chaque petite modification, il vous aidera à découvrir les améliorations majeures.

- -

Nouvelles fonctionnalités pour les développeurs dans Firefox 3

- -

Pour les développeurs de sites et d'applications Web

- -
-
Mise à jour des applications Web pour Firefox 3
-
Fournit des informations concernant les changements que vous devrez éventuellement prendre en compte pour permettre à votre site ou application Web de profiter des nouvelles fonctionnalités de Firefox 3.
-
- -
-
Évènements online et offline
-
Firefox 3 gère les évènements online et offline définis par le WHATWG, qui permettent aux applications et extensions de détecter si une connexion Internet active est disponible, ainsi que de détecter l'activation et la désactivation de la connexion.
-
- -
-
Gestionnaires de protocoles web
-
Il est à présent possible d'enregistrer des applications Web en tant que gestionnaires de protocoles à l'aide de la méthode navigator.registerProtocolHandler().
-
- -
-
Dessin de texte avec canvas
-
Il est possible de dessiner du texte dans un élément canvas dans Firefox 3 avec une API non normalisée.
-
- -
-
Support des transformations pour canvas
-
Firefox gère à présent les méthodes transform() et setTransform() sur les éléments canvas.
-
- -
-
Utilisation de microformats
-
Firefox dispose à présent d'API permettant de travailler avec des microformats.
-
- -
-
Évènements de glisser-déposer
-
Firefox 3 gère de nouveaux évènements envoyés au nœud source d'une opération de glisser-déposer lorsque le glisser débute et se termine.
-
- -
-
Gestion du focus en HTML
-
Les nouveaux attributs activeElement et hasFocus de HTML 5 sont gérés.
-
- -
-
Ressources hors ligne dans Firefox
-
Firefox permet applications Web de demander que des ressources soient mises en cache pour permettre leur utilisation en mode hors ligne.
-
- -
-
Améliorations CSS dans Firefox 3
-
Firefox 3 propose un certain nombre d'améliorations dans son support CSS.
-
- -
-
Améliorations DOM dans Firefox 3
-
Firefox 3 propose un certain nombre de nouvelles fonctionnalités dans son implémentation DOM, comme la gestion de plusieurs extensions d'Internet Explorer au DOM.
-
- -
-
Support de JavaScript 1.8
-
JavaScript 1.8 est fourni avec Firefox 3.
-
- -
-
Support d'EXSLT
-
Firefox 3 permet d'utiliser une partie importante des extensions EXSLT à XSLT.
-
- -
-
Améliorations SVG dans Firefox 3
-
La gestion du SVG dans Firefox 3 a été mise à jour de manière substantielle, avec plus d'une vingtaine de nouveaux filtres, plusieurs nouveaux éléments et attributs, et quelques autres améliorations.
-
- -
-
Images PNG animées
-
Firefox 3 gère le format d'images PNG animées (APNG).
-
- -

Pour les développeurs XUL et d'extensions

- -

Améliorations et modifications notables

- -
-
Mise à jour des extensions pour Firefox 3
-
Un guide fournissant tout ce qu'il faut savoir pour mettre à jour une extension afin de la faire fonctionner avec Firefox 3.
-
- -
-
Améliorations XUL dans Firefox 3
-
Firefox 3 offre un certain nombre de nouveaux éléments XUL, dont de nouvelles échelles coulissantes, des sélecteurs de date et d'heure, et des boîtes d'incrément (spin buttons).
-
- -
-
Templates dans Firefox 3
-
Les templates ont été notablement améliorés dans Firefox 3. Le plus remarquable est la possibilité d'utiliser des processeur de requêtes personnalisés permettant d'utiliser d'autres sources de données que RDF.
-
- -
-
Mises à jour sécurisées
-
Afin que le processus de mise à jour soit plus sûr pour les utilisateurs, les modules complémentaires doivent à présent fournir une méthode sécurisée de distribution des mises à jour avant de pouvoir être installés. Les modules hébergés sur AMO fournissent ceci automatiquement. Tout module installé ne fournissant pas une méthode de mise à jour sécurisée lorsque l'utilisateur migrera vers Firefox 3 sera désactivé automatiquement. Firefox continuera cependant à vérifier si des mises à jour sont disponibles au travers du chemin non sécurisé et essayera d'installer toute mise à jour proposée (l'installation échouera si la mise à jour ne propose pas non plus de méthode de mise à jour sécurisée).
-
- -
-
Guide de migration vers Places
-
Un article concernant la migration d'une application existante pour utiliser l'API Places.
-
- -
-
Améliorations du gestionnaire de téléchargement dans Firefox 3
-
Le gestionnaire de téléchargement de Firefox 3 comprend de nouvelles API et d'autres améliorations, comme la gestion de plusieurs écouteurs de progression.
-
- -
-
Utilisation de nsILoginManager
-
Le gestionnaire de mots de passe a été remplacé par le nouveau gestionnaire d'identification.
-
- -
-
Intégration de liaisons XBL
-
Il est à présent possible d'utiliser le schéma d'URL data: depuis du code chrome pour intégrer des liaisons XBL directement au lieu de devoir les placer dans des fichiers XML séparés.
-
- -
-
Localisation des descriptions d'extensions
-
Firefox 3 propose une nouvelle méthode de localisation des métadonnées des modules complémentaires. Ceci permet de disposer des détails localisés dès le téléchargement du module, et même s'il est désactivé.
-
- -
-
Localisation et pluriels
-
Firefox 3 ajout un nouveau module PluralForm fournissant des outils pour aider à mettre des mots correctement au pluriel dans diverses localisations.
-
- -
-
Changements dans les thèmes pour Firefox 3
-
Notes et informations pour ceux qui voudraient créer des thèmes pour Firefox 3.
-
- -

Nouveaux composants et fonctionnalités

- -
-
Bibliothèque FUEL
-
FUEL sert à améliorer la productivité des développeurs d'extensions en minimisant certaines des formalités XPCOM et en ajoutant certaines idées « modernes » de JavaScript.
-
- -
-
Places
-
Les API d'historique et de marque-pages ont été entièrement remplacés par la nouvelle API Places.
-
- -
-
Service Idle
-
Firefox 3 propose une nouvelle interface {{ Interface("nsIIdleService") }} qui permet aux extensions de savoir depuis quand l'utilisateur n'a plus appuyé sur une touche ou déplacé la souris.
-
- -
-
ZIP writer
-
La nouvelle interface {{ Interface("nsIZipWriter") }} permet aux extensions de pouvoir créer des archives ZIP.
-
- -
-
Zoom pleine page
-
Firefox 3 améliore l'expérience utilisateur en offrant un zoom complet des pages en plus du simple zoom de texte.
-
- -
-
Interfaçage avec le collecteur de cycles XPCOM
-
XPCOM peut à présent bénéficier du collecteur de cycles, qui permet de s'assurer que la mémoire inutilisée est libérée et d'éviter les fuites mémoire.
-
- -
-
Le gestionnaire de threads
-
Firefox 3 propose une nouvelle interface {{ Interface("nsIThreadManager") }}, accompagnée de nouvelles interfaces pour les threads et les évènements liés, qui offre une manière pratique de créer et gérer des threads dans votre code.
-
- -
-
Modules JavaScript
-
Firefox 3 offre un mécanisme de modules de code partagés permettant de créer facilement des modules en JavaScript qui pourront être chargés par des extensions et applications, de manière similaire à des bibliothèques partagées.
-
- -
-
L'interface nsIJSON
-
Firefox 3 propose la nouvelle interface {{ Interface("nsIJSON") }}, qui offre des chaînes de caractères JSON de codage et décodage en haute performance.
-
- -
-
L'interface nsIParentalControlsService
-
Firefox 3 gère à présent la fonctionnalité de contrôle parental de Microsoft Windows Vista, et permet au code d'interagir directement avec elle.
-
- -
-
Utilisation des préférences de contenu
-
Firefox 3 fournit un nouveau service permettant de définir et de lire des préférences particulières à un site, que des extensions ou le programme peuvent utiliser pour conserver des informations sur les préférences de l'utilisateur concernant certains sites.
-
- -
-
Surveillance des plugins
-
Un nouveau composant du système de plugins est à présent disponible pour mesurer le temps mis par les plugins (par exemple Macromedia Flash) pour exécuter leurs appels.
-
- -

Bugs corrigés

- -
-
Bugs importants corrigés dans Firefox 3
-
Cet article fournit des informations concernant les bugs corrigés dans Firefox 3.
-
- -

Nouvelles fonctionnalités pour les utilisateurs

- -

Expérience utilisateur

- - - -

Sécurité et vie privée

- - - -

Performances

- - - -

Voir également

- -

{{Firefox_for_developers('2')}}

diff --git a/files/fr/mozilla/firefox/releases/3/index.md b/files/fr/mozilla/firefox/releases/3/index.md new file mode 100644 index 0000000000..1d7560ed58 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/3/index.md @@ -0,0 +1,273 @@ +--- +title: Firefox 3 pour les développeurs +slug: Mozilla/Firefox/Releases/3 +tags: + - Firefox + - Firefox 3 +translation_of: Mozilla/Firefox/Releases/3 +original_slug: Mozilla/Firefox/Versions/3 +--- +
{{FirefoxSidebar}}

Pour les développeurs qui désirent prendre connaissance de toutes les nouvelles fonctionnalités de Firefox 3, c'est ici qu'il convient de commencer. Cet article fournit la liste des nouveaux articles couvrant les fonctionnalités qui ont été ajoutées à Firefox 3. Même s'il ne couvre pas nécessairement chaque petite modification, il vous aidera à découvrir les améliorations majeures.

+ +

Nouvelles fonctionnalités pour les développeurs dans Firefox 3

+ +

Pour les développeurs de sites et d'applications Web

+ +
+
Mise à jour des applications Web pour Firefox 3
+
Fournit des informations concernant les changements que vous devrez éventuellement prendre en compte pour permettre à votre site ou application Web de profiter des nouvelles fonctionnalités de Firefox 3.
+
+ +
+
Évènements online et offline
+
Firefox 3 gère les évènements online et offline définis par le WHATWG, qui permettent aux applications et extensions de détecter si une connexion Internet active est disponible, ainsi que de détecter l'activation et la désactivation de la connexion.
+
+ +
+
Gestionnaires de protocoles web
+
Il est à présent possible d'enregistrer des applications Web en tant que gestionnaires de protocoles à l'aide de la méthode navigator.registerProtocolHandler().
+
+ +
+
Dessin de texte avec canvas
+
Il est possible de dessiner du texte dans un élément canvas dans Firefox 3 avec une API non normalisée.
+
+ +
+
Support des transformations pour canvas
+
Firefox gère à présent les méthodes transform() et setTransform() sur les éléments canvas.
+
+ +
+
Utilisation de microformats
+
Firefox dispose à présent d'API permettant de travailler avec des microformats.
+
+ +
+
Évènements de glisser-déposer
+
Firefox 3 gère de nouveaux évènements envoyés au nœud source d'une opération de glisser-déposer lorsque le glisser débute et se termine.
+
+ +
+
Gestion du focus en HTML
+
Les nouveaux attributs activeElement et hasFocus de HTML 5 sont gérés.
+
+ +
+
Ressources hors ligne dans Firefox
+
Firefox permet applications Web de demander que des ressources soient mises en cache pour permettre leur utilisation en mode hors ligne.
+
+ +
+
Améliorations CSS dans Firefox 3
+
Firefox 3 propose un certain nombre d'améliorations dans son support CSS.
+
+ +
+
Améliorations DOM dans Firefox 3
+
Firefox 3 propose un certain nombre de nouvelles fonctionnalités dans son implémentation DOM, comme la gestion de plusieurs extensions d'Internet Explorer au DOM.
+
+ +
+
Support de JavaScript 1.8
+
JavaScript 1.8 est fourni avec Firefox 3.
+
+ +
+
Support d'EXSLT
+
Firefox 3 permet d'utiliser une partie importante des extensions EXSLT à XSLT.
+
+ +
+
Améliorations SVG dans Firefox 3
+
La gestion du SVG dans Firefox 3 a été mise à jour de manière substantielle, avec plus d'une vingtaine de nouveaux filtres, plusieurs nouveaux éléments et attributs, et quelques autres améliorations.
+
+ +
+
Images PNG animées
+
Firefox 3 gère le format d'images PNG animées (APNG).
+
+ +

Pour les développeurs XUL et d'extensions

+ +

Améliorations et modifications notables

+ +
+
Mise à jour des extensions pour Firefox 3
+
Un guide fournissant tout ce qu'il faut savoir pour mettre à jour une extension afin de la faire fonctionner avec Firefox 3.
+
+ +
+
Améliorations XUL dans Firefox 3
+
Firefox 3 offre un certain nombre de nouveaux éléments XUL, dont de nouvelles échelles coulissantes, des sélecteurs de date et d'heure, et des boîtes d'incrément (spin buttons).
+
+ +
+
Templates dans Firefox 3
+
Les templates ont été notablement améliorés dans Firefox 3. Le plus remarquable est la possibilité d'utiliser des processeur de requêtes personnalisés permettant d'utiliser d'autres sources de données que RDF.
+
+ +
+
Mises à jour sécurisées
+
Afin que le processus de mise à jour soit plus sûr pour les utilisateurs, les modules complémentaires doivent à présent fournir une méthode sécurisée de distribution des mises à jour avant de pouvoir être installés. Les modules hébergés sur AMO fournissent ceci automatiquement. Tout module installé ne fournissant pas une méthode de mise à jour sécurisée lorsque l'utilisateur migrera vers Firefox 3 sera désactivé automatiquement. Firefox continuera cependant à vérifier si des mises à jour sont disponibles au travers du chemin non sécurisé et essayera d'installer toute mise à jour proposée (l'installation échouera si la mise à jour ne propose pas non plus de méthode de mise à jour sécurisée).
+
+ +
+
Guide de migration vers Places
+
Un article concernant la migration d'une application existante pour utiliser l'API Places.
+
+ +
+
Améliorations du gestionnaire de téléchargement dans Firefox 3
+
Le gestionnaire de téléchargement de Firefox 3 comprend de nouvelles API et d'autres améliorations, comme la gestion de plusieurs écouteurs de progression.
+
+ +
+
Utilisation de nsILoginManager
+
Le gestionnaire de mots de passe a été remplacé par le nouveau gestionnaire d'identification.
+
+ +
+
Intégration de liaisons XBL
+
Il est à présent possible d'utiliser le schéma d'URL data: depuis du code chrome pour intégrer des liaisons XBL directement au lieu de devoir les placer dans des fichiers XML séparés.
+
+ +
+
Localisation des descriptions d'extensions
+
Firefox 3 propose une nouvelle méthode de localisation des métadonnées des modules complémentaires. Ceci permet de disposer des détails localisés dès le téléchargement du module, et même s'il est désactivé.
+
+ +
+
Localisation et pluriels
+
Firefox 3 ajout un nouveau module PluralForm fournissant des outils pour aider à mettre des mots correctement au pluriel dans diverses localisations.
+
+ +
+
Changements dans les thèmes pour Firefox 3
+
Notes et informations pour ceux qui voudraient créer des thèmes pour Firefox 3.
+
+ +

Nouveaux composants et fonctionnalités

+ +
+
Bibliothèque FUEL
+
FUEL sert à améliorer la productivité des développeurs d'extensions en minimisant certaines des formalités XPCOM et en ajoutant certaines idées « modernes » de JavaScript.
+
+ +
+
Places
+
Les API d'historique et de marque-pages ont été entièrement remplacés par la nouvelle API Places.
+
+ +
+
Service Idle
+
Firefox 3 propose une nouvelle interface {{ Interface("nsIIdleService") }} qui permet aux extensions de savoir depuis quand l'utilisateur n'a plus appuyé sur une touche ou déplacé la souris.
+
+ +
+
ZIP writer
+
La nouvelle interface {{ Interface("nsIZipWriter") }} permet aux extensions de pouvoir créer des archives ZIP.
+
+ +
+
Zoom pleine page
+
Firefox 3 améliore l'expérience utilisateur en offrant un zoom complet des pages en plus du simple zoom de texte.
+
+ +
+
Interfaçage avec le collecteur de cycles XPCOM
+
XPCOM peut à présent bénéficier du collecteur de cycles, qui permet de s'assurer que la mémoire inutilisée est libérée et d'éviter les fuites mémoire.
+
+ +
+
Le gestionnaire de threads
+
Firefox 3 propose une nouvelle interface {{ Interface("nsIThreadManager") }}, accompagnée de nouvelles interfaces pour les threads et les évènements liés, qui offre une manière pratique de créer et gérer des threads dans votre code.
+
+ +
+
Modules JavaScript
+
Firefox 3 offre un mécanisme de modules de code partagés permettant de créer facilement des modules en JavaScript qui pourront être chargés par des extensions et applications, de manière similaire à des bibliothèques partagées.
+
+ +
+
L'interface nsIJSON
+
Firefox 3 propose la nouvelle interface {{ Interface("nsIJSON") }}, qui offre des chaînes de caractères JSON de codage et décodage en haute performance.
+
+ +
+
L'interface nsIParentalControlsService
+
Firefox 3 gère à présent la fonctionnalité de contrôle parental de Microsoft Windows Vista, et permet au code d'interagir directement avec elle.
+
+ +
+
Utilisation des préférences de contenu
+
Firefox 3 fournit un nouveau service permettant de définir et de lire des préférences particulières à un site, que des extensions ou le programme peuvent utiliser pour conserver des informations sur les préférences de l'utilisateur concernant certains sites.
+
+ +
+
Surveillance des plugins
+
Un nouveau composant du système de plugins est à présent disponible pour mesurer le temps mis par les plugins (par exemple Macromedia Flash) pour exécuter leurs appels.
+
+ +

Bugs corrigés

+ +
+
Bugs importants corrigés dans Firefox 3
+
Cet article fournit des informations concernant les bugs corrigés dans Firefox 3.
+
+ +

Nouvelles fonctionnalités pour les utilisateurs

+ +

Expérience utilisateur

+ + + +

Sécurité et vie privée

+ + + +

Performances

+ + + +

Voir également

+ +

{{Firefox_for_developers('2')}}

diff --git a/files/fr/mozilla/firefox/releases/3/notable_bugs_fixed/index.html b/files/fr/mozilla/firefox/releases/3/notable_bugs_fixed/index.html deleted file mode 100644 index 5d1c75e38f..0000000000 --- a/files/fr/mozilla/firefox/releases/3/notable_bugs_fixed/index.html +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: Bugs importants corrigés dans Firefox 3 -slug: Mozilla/Firefox/Releases/3/Notable_bugs_fixed -translation_of: Mozilla/Firefox/Releases/3/Notable_bugs_fixed -original_slug: Bugs_importants_corrigés_dans_Firefox_3 ---- -
{{FirefoxSidebar}}

Cet article fait la liste des corrections importantes faisant partie de Firefox 3 qui ne sont pas nécessairement évidentes à trouver dans la documentation.

- - - -

Voir également

- - diff --git a/files/fr/mozilla/firefox/releases/3/notable_bugs_fixed/index.md b/files/fr/mozilla/firefox/releases/3/notable_bugs_fixed/index.md new file mode 100644 index 0000000000..5d1c75e38f --- /dev/null +++ b/files/fr/mozilla/firefox/releases/3/notable_bugs_fixed/index.md @@ -0,0 +1,30 @@ +--- +title: Bugs importants corrigés dans Firefox 3 +slug: Mozilla/Firefox/Releases/3/Notable_bugs_fixed +translation_of: Mozilla/Firefox/Releases/3/Notable_bugs_fixed +original_slug: Bugs_importants_corrigés_dans_Firefox_3 +--- +
{{FirefoxSidebar}}

Cet article fait la liste des corrections importantes faisant partie de Firefox 3 qui ne sont pas nécessairement évidentes à trouver dans la documentation.

+ + + +

Voir également

+ + diff --git a/files/fr/mozilla/firefox/releases/3/site_compatibility/index.html b/files/fr/mozilla/firefox/releases/3/site_compatibility/index.html deleted file mode 100644 index 9a3d8d5993..0000000000 --- a/files/fr/mozilla/firefox/releases/3/site_compatibility/index.html +++ /dev/null @@ -1,81 +0,0 @@ ---- -title: Changements dans Gecko 1.9 affectant les sites Web -slug: Mozilla/Firefox/Releases/3/Site_compatibility -tags: - - Développement_Web - - Gecko -translation_of: Mozilla/Firefox/Releases/3/Site_compatibility -original_slug: Changements_dans_Gecko_1.9_affectant_les_sites_Web ---- -
{{FirefoxSidebar}}
- -

Cette page essaie de donner un aperçu des changements entre Gecko 1.8 et Gecko 1.9 qui pourraient éventuellement affecter le comportement ou le rendu des sites Web.

- -

Consultez également Firefox 3 pour les développeurs.

- -

Évènements

- -

Gestionnaires d'évènements capturants load

- -

Dans Gecko 1.8, il n'était pas possible de définir des gestionnaires d'évènements load capturants sur les images. Dans Gecko 1.9, cela devient possible avec la résolution du {{ Bug(234455) }}. Cela peut cependant causer des problèmes sur les sites Web qui ont incorrectement défini leurs gestionnaires d'évènements sur l'évènement load. Consultez la discussion dans le {{ Bug(335251) }}. Pour résoudre ce problème, les pages en question ne doivent pas définir de gestionnaires d'évènements capturants pour l'évènement load.

- -

Par exemple, ceci :

- -
window.addEventListener('load', votreFonction, true);
-
- -

devrait être remplacé par ceci :

- -
window.addEventListener('load', votreFonction, false);
-
- -

Pour une explication du fonctionnement de la capture des évènements, consultez DOM Level 2 Event capture (en)

- -

preventBubble a été supprimée

- -

Dans Gecko 1.8, la méthode preventBubble existait sur les évènements pour les empêcher de se propager plus haut. Dans Gecko 1.9, cette méthode a été supprimée. À la place, utilisez la méthode standard stopPropagation(), qui fonctionne également dans Gecko 1.8. Ce changement a été produit par le patch pour le {{ Bug(330494) }}. Consultez également le {{ Bug(105280) }}.

- -

Quelques autres anciennes API d'évènements ne sont plus supportées

- -

window.captureEvents, window.releaseEvents et window.routeEvent ne sont plus supportées ({{ Obsolete_inline() }}) dans Gecko 1.9.

- -

DOM

- -

L'exception WRONG_DOCUMENT_ERR se déclenche lorsque l'on essaie d'utiliser un nœud d'un document différent

- -

Les nœuds provenant de documents externes doivent être clonés à l'aide de document.importNode() (ou adoptés avec - document.adoptNode()) avant de pouvoir être insérés dans le document courant. Pour en savoir plus sur les problèmes - de Node.ownerDocument, consultez la FAQ DOM du W3C (en anglais).

- -

Gecko n'obligeait pas à utiliser document.importNode() et document.adoptNode() avant sa version 1.9. Depuis les versions 1.9 - alphas, si un nœud n'est pas adopté ou importé avant d'être utilisé dans un autre document, l'exception - WRONG_DOCUMENT_ERR est déclenchée (NS_ERROR_DOM_WRONG_DOCUMENT_ERR). implémentation dans le bug 47903.

- - -

Ranges

- -

intersectsNode a été supprimée

- -

Dans Gecko 1.8, la fonction intersectsNode pouvait être utilisée pour vérifier si un nœud faisait partie d'un range. Cependant, les valeurs renvoyées par cette fonction étaient trompeuses et rarement utiles. Elle a donc été retirée de Gecko 1.9. Utilisez à la place la fonction standard et plus précise compareBoundaryPoints. Cette fonction a été retirée par le patch du {{ Bug(358073) }}.

- -

Consultez la documentation de intersectsNode pour savoir comment utiliser compareBoundaryPoints à la place.

- -

compareNode a été supprimée

- -

Dans Gecko 1.8, la fonction compareNode pouvait être utilisée pour tester l'intersection d'un nœud avec un range. Cependant, les valeurs renvoyées par cette fonction étaient trompeuses et rarement utiles. Elle a donc été retirée de Gecko 1.9. Utilisez à la place la fonction standard et plus précise compareBoundaryPoints. Cette fonction a été retirée par le patch du {{ Bug(358073) }}.

- -

Consultez la documentation de compareNode pour savoir comment utiliser compareBoundaryPoints à la place.

- -

HTML

- -

Correction de nombreux bogues dans le code de <object>

- - - -
 
- -

{{ languages( { "en": "en/Gecko_1.9_Changes_affecting_websites", "ja": "ja/Gecko_1.9_Changes_affecting_websites", "ko": "ko/Gecko_1.9_Changes_affecting_websites", "pl": "pl/Zmiany_w_Gecko_1.9_wp\u0142ywaj\u0105ce_na_wy\u015bwietlanie_stron", "pt": "pt/Mudan\u00e7as_no_Gecko_1.9_que_afetam_websites" } ) }}

diff --git a/files/fr/mozilla/firefox/releases/3/site_compatibility/index.md b/files/fr/mozilla/firefox/releases/3/site_compatibility/index.md new file mode 100644 index 0000000000..9a3d8d5993 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/3/site_compatibility/index.md @@ -0,0 +1,81 @@ +--- +title: Changements dans Gecko 1.9 affectant les sites Web +slug: Mozilla/Firefox/Releases/3/Site_compatibility +tags: + - Développement_Web + - Gecko +translation_of: Mozilla/Firefox/Releases/3/Site_compatibility +original_slug: Changements_dans_Gecko_1.9_affectant_les_sites_Web +--- +
{{FirefoxSidebar}}
+ +

Cette page essaie de donner un aperçu des changements entre Gecko 1.8 et Gecko 1.9 qui pourraient éventuellement affecter le comportement ou le rendu des sites Web.

+ +

Consultez également Firefox 3 pour les développeurs.

+ +

Évènements

+ +

Gestionnaires d'évènements capturants load

+ +

Dans Gecko 1.8, il n'était pas possible de définir des gestionnaires d'évènements load capturants sur les images. Dans Gecko 1.9, cela devient possible avec la résolution du {{ Bug(234455) }}. Cela peut cependant causer des problèmes sur les sites Web qui ont incorrectement défini leurs gestionnaires d'évènements sur l'évènement load. Consultez la discussion dans le {{ Bug(335251) }}. Pour résoudre ce problème, les pages en question ne doivent pas définir de gestionnaires d'évènements capturants pour l'évènement load.

+ +

Par exemple, ceci :

+ +
window.addEventListener('load', votreFonction, true);
+
+ +

devrait être remplacé par ceci :

+ +
window.addEventListener('load', votreFonction, false);
+
+ +

Pour une explication du fonctionnement de la capture des évènements, consultez DOM Level 2 Event capture (en)

+ +

preventBubble a été supprimée

+ +

Dans Gecko 1.8, la méthode preventBubble existait sur les évènements pour les empêcher de se propager plus haut. Dans Gecko 1.9, cette méthode a été supprimée. À la place, utilisez la méthode standard stopPropagation(), qui fonctionne également dans Gecko 1.8. Ce changement a été produit par le patch pour le {{ Bug(330494) }}. Consultez également le {{ Bug(105280) }}.

+ +

Quelques autres anciennes API d'évènements ne sont plus supportées

+ +

window.captureEvents, window.releaseEvents et window.routeEvent ne sont plus supportées ({{ Obsolete_inline() }}) dans Gecko 1.9.

+ +

DOM

+ +

L'exception WRONG_DOCUMENT_ERR se déclenche lorsque l'on essaie d'utiliser un nœud d'un document différent

+ +

Les nœuds provenant de documents externes doivent être clonés à l'aide de document.importNode() (ou adoptés avec + document.adoptNode()) avant de pouvoir être insérés dans le document courant. Pour en savoir plus sur les problèmes + de Node.ownerDocument, consultez la FAQ DOM du W3C (en anglais).

+ +

Gecko n'obligeait pas à utiliser document.importNode() et document.adoptNode() avant sa version 1.9. Depuis les versions 1.9 + alphas, si un nœud n'est pas adopté ou importé avant d'être utilisé dans un autre document, l'exception + WRONG_DOCUMENT_ERR est déclenchée (NS_ERROR_DOM_WRONG_DOCUMENT_ERR). implémentation dans le bug 47903.

+ + +

Ranges

+ +

intersectsNode a été supprimée

+ +

Dans Gecko 1.8, la fonction intersectsNode pouvait être utilisée pour vérifier si un nœud faisait partie d'un range. Cependant, les valeurs renvoyées par cette fonction étaient trompeuses et rarement utiles. Elle a donc été retirée de Gecko 1.9. Utilisez à la place la fonction standard et plus précise compareBoundaryPoints. Cette fonction a été retirée par le patch du {{ Bug(358073) }}.

+ +

Consultez la documentation de intersectsNode pour savoir comment utiliser compareBoundaryPoints à la place.

+ +

compareNode a été supprimée

+ +

Dans Gecko 1.8, la fonction compareNode pouvait être utilisée pour tester l'intersection d'un nœud avec un range. Cependant, les valeurs renvoyées par cette fonction étaient trompeuses et rarement utiles. Elle a donc été retirée de Gecko 1.9. Utilisez à la place la fonction standard et plus précise compareBoundaryPoints. Cette fonction a été retirée par le patch du {{ Bug(358073) }}.

+ +

Consultez la documentation de compareNode pour savoir comment utiliser compareBoundaryPoints à la place.

+ +

HTML

+ +

Correction de nombreux bogues dans le code de <object>

+ + + +
 
+ +

{{ languages( { "en": "en/Gecko_1.9_Changes_affecting_websites", "ja": "ja/Gecko_1.9_Changes_affecting_websites", "ko": "ko/Gecko_1.9_Changes_affecting_websites", "pl": "pl/Zmiany_w_Gecko_1.9_wp\u0142ywaj\u0105ce_na_wy\u015bwietlanie_stron", "pt": "pt/Mudan\u00e7as_no_Gecko_1.9_que_afetam_websites" } ) }}

diff --git a/files/fr/mozilla/firefox/releases/3/svg_improvements/index.html b/files/fr/mozilla/firefox/releases/3/svg_improvements/index.html deleted file mode 100644 index 13de03a4e2..0000000000 --- a/files/fr/mozilla/firefox/releases/3/svg_improvements/index.html +++ /dev/null @@ -1,58 +0,0 @@ ---- -title: Améliorations SVG dans Firefox 3 -slug: Mozilla/Firefox/Releases/3/SVG_improvements -tags: - - Firefox 3 - - SVG -translation_of: Mozilla/Firefox/Releases/3/SVG_improvements -original_slug: Améliorations_SVG_dans_Firefox_3 ---- -
{{FirefoxSidebar}}
- -

Firefox 3 offre un support SVG amélioré par rapport aux versions précédentes de Firefox. Ces fonctionnalités sont documentés ailleurs, et cet article fournit une liste pratique permettant de déterminer lesquelles ont été ajoutées dans Firefox 3.

- - - -

Voir également

- - diff --git a/files/fr/mozilla/firefox/releases/3/svg_improvements/index.md b/files/fr/mozilla/firefox/releases/3/svg_improvements/index.md new file mode 100644 index 0000000000..13de03a4e2 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/3/svg_improvements/index.md @@ -0,0 +1,58 @@ +--- +title: Améliorations SVG dans Firefox 3 +slug: Mozilla/Firefox/Releases/3/SVG_improvements +tags: + - Firefox 3 + - SVG +translation_of: Mozilla/Firefox/Releases/3/SVG_improvements +original_slug: Améliorations_SVG_dans_Firefox_3 +--- +
{{FirefoxSidebar}}
+ +

Firefox 3 offre un support SVG amélioré par rapport aux versions précédentes de Firefox. Ces fonctionnalités sont documentés ailleurs, et cet article fournit une liste pratique permettant de déterminer lesquelles ont été ajoutées dans Firefox 3.

+ + + +

Voir également

+ + diff --git a/files/fr/mozilla/firefox/releases/3/updating_extensions/index.html b/files/fr/mozilla/firefox/releases/3/updating_extensions/index.html deleted file mode 100644 index 2869670aeb..0000000000 --- a/files/fr/mozilla/firefox/releases/3/updating_extensions/index.html +++ /dev/null @@ -1,224 +0,0 @@ ---- -title: Mise à jour des extensions pour Firefox 3 -slug: Mozilla/Firefox/Releases/3/Updating_extensions -tags: - - Firefox 3 -translation_of: Mozilla/Firefox/Releases/3/Updating_extensions -original_slug: Mise_à_jour_des_extensions_pour_Firefox_3 ---- -
-
    -
  1. -

    Notes de versions pour développeurs

    -
      -
    1. Notes de versions pour développeurs
    2. -
    -
  2. -
  3. - -

    Modules complémentaires

    -
      -
    1. WebExtensions
    2. -
    3. Thèmes
    4. -
    - -
  4. -
  5. - -

    Fonctionnement interne de Firefox

    -
      -
    1. Le projet Mozilla
    2. -
    3. Gecko
    4. -
    5. Mode « headless »
    6. -
    7. Modules de code Javascript
    8. -
    9. JS-ctypes
    10. -
    11. Le projet MathML
    12. -
    13. MFBT
    14. -
    15. Les projets Mozilla
    16. -
    17. Le système de préférences
    18. -
    19. Connexions WebIDL
    20. -
    21. XPCOM
    22. -
    23. XUL
    24. -
    - -
  6. -
  7. - -

    Développer et contribuer

    -
      -
    1. Instructions de compilation
    2. -
    3. Configuration des options de compilation
    4. -
    5. Fonctionnement de la compilation
    6. -
    7. Code source de Mozilla
    8. -
    9. Localisation
    10. -
    11. Mercurial
    12. -
    13. Assurance qualité
    14. -
    15. Utilisation de code Mozilla dans d'autres projets
    16. -
    - -
  8. -
-
- -

Cet article fournit des informations qui seront utiles pour les développeurs désirant mettre à jour leurs extensions pour qu'elles fonctionnent correctement avec Firefox 3.

- -

Avant d'aller plus loin, voici une indication utile : si la seule modification dont votre extension a besoin est une mise à jour du champ maxVersion dans son manifeste d'installation, et que celle-ci est hébergée sur addons.mozilla.org, il n'est pas vraiment nécessaire de renvoyer une nouvelle version de votre extension ! Utilisez simplement le Developer Control Panel sur AMO pour ajuster la valeur de maxVersion. Cela vous évitera également la revérification de votre extension.

- -

Première étape : mise à jour du manifeste d'installation

- -

La première étape — et pour la plupart des extensions la seule qui sera nécessaire — est de mettre à jour le fichier de manifeste d'installation, install.rdf, pour indiquer sa compatibilité avec Firefox 3.

- -

Trouvez simplement la ligne indiquant la version maximale compatible de Firefox (qui, pour Firefox 2, ressemblait probablement à ceci) :

- -
 <em:maxVersion>2.0.*</em:maxVersion>
-
- -

Modifiez-la pour indiquer la compatibilité avec Firefox 3 :

- -
 <em:maxVersion>3.0.*</em:maxVersion>
-
- -

Et réinstallez ensuite votre extension.

- -

Notez que Firefox 3 n'a plus besoin d'un « .0 » supplémentaire dans son numéro de version, donc au lieu d'utiliser « 3.0.0.* », il ne faut plus indiquer que « 3.0.* ».

- -
-

Note : Notez qu'à ce point, il faut s'attendre à d'autres changements dans Firefox 3. Ceux-ci peuvent poser des problèmes à certaines extensions, il faut donc éviter de publier une extension avec la valeur 3.0.0.* pour maxVersion avant que la RC de Firefox 3 soit disponible. Durant la pariode beta de Firefox 3, il convient d'utiliser 3.0b5 comme valeur de maxVersion.

-
- -

Il y a eu (et il y aura encore) un certain nombre de changements dans les API qui poseront probablement des problèmes à certaines. Nous sommes encore en train d'établir une liste complète de ces changements.

- -
-

Note : Si votre extension utilise toujours un script Install.js plutôt qu'un manifeste d'installation, il vous faudra faire la transition vers un manifeste d'installation maintenant. Firefox 3 ne gère plus les scripts install.js dans les fichiers XPI.

-
- -

Ajout de localisations au manifeste d'installation

- -

Firefox 3 permet d'utiliser de nouvelles propriétés dans le manifeste d'installation pour spécifier des descriptions localisées. Les anciennes méthodes continuent à fonctionner, mais la nouvelle permet à Firefox de charger les localisations même lorsque le module complémentaire est désactivé ou sur le point d'être installé. Consultez Localisation des descriptions d'extensions pour plus de détails.

- -

Deuxième étape : s'assurer de fournir des mises à jour sécurisées

- -

Si vous hébergez des modules complémentaires vous-mêmes et pas sur un fournisseur d'hébergement sécurisé comme addons.mozilla.org, vous devrez fournir une méthode sécurisée de mise à jour pour vos modules. Pour ce faire, il faudrait soit héberger vos mises à jour sur un site SSL, ou utiliser des clés cryptographiques pour signer les informations de mise à jour. Consultez Mises à jour sécurisées pour plus d'informations.

- -

Troisième étape : s'occuper des changements d'API

- -

Plusieurs API ont changé de manière significative. Les changements les plus importants, qui affecteront probablement un grand nombre d'extensions, sont les suivants :

- -

DOM

- -

Les nœuds provenant de documents externes doivent être clonés à l'aide de document.importNode() (ou adoptés avec - document.adoptNode()) avant de pouvoir être insérés dans le document courant. Pour en savoir plus sur les problèmes - de Node.ownerDocument, consultez la FAQ DOM du W3C (en anglais).

- -

Gecko n'obligeait pas à utiliser document.importNode() et document.adoptNode() avant sa version 1.9. Depuis les versions 1.9 - alphas, si un nœud n'est pas adopté ou importé avant d'être utilisé dans un autre document, l'exception - WRONG_DOCUMENT_ERR est déclenchée (NS_ERROR_DOM_WRONG_DOCUMENT_ERR). implémentation dans le bug 47903.

- - -

Marque-pages et historique

- -

Si votre extension accède aux marque-pages ou à des données de l'historique d'une manière ou d'une autre, elle devra être substantiellement modifiée pour être compatible avec Firefox 3. Les anciennes API pour accéder à ces informations ont été remplacées par la nouvelle architecture Places. Consultez le Guide de migration vers Places pour des détails sur la mise à jour de vos extensions existantes en utilisant l'API Places.

- -

Gestionnaire de téléchargement

- -

L'API du gestionnaire de téléchargement a légèrement changé suite à la transition d'un stockage de données RDF vers l'API Storage. La transition devrait être très facile à faire. En outre, l'API permettant d'examiner la progression des téléchargements a été modifiée pour permettre l'existence de plusieurs écouteurs sur le gestionnaire de téléchargement. Consultez nsIDownloadManager, nsIDownloadProgressListener et Surveillance de téléchargements pour plus d'informations.

- -

Gestionnaire de mots de passe

- -

Si votre extension accède à des informations d'identification à l'aide du Gestionnaire de mots de passe, elle devra être adaptée pour utiliser la nouvelle API du gestionnaire d'identification.

- - - -

Il est également possible de ne pas utiliser le stockage du gestionnaire de mots de passe intégré si vous désirez fournir votre propre implémentation de stockage de mots de passe dans vos extensions. Consultez Création d'un module de stockage du gestionnaire d'identification pour plus de détails.

- -

Popups (menus, menus contextuels, bulles d'information et panneaux)

- -

Le système de popups XUL a été modifié de manière importante dans Firefox 3. Celui-ci gère les menus principaux, les menus contextuels et les panneaux d'information. Un guide d'utilisation des popups a été créé pour expliquer en détail le fonctionnement du système. Une chose à noter est l'obsolescence de popup.showPopup en faveur des nouvelles méthodes popup.openPopup et popup.openPopupAtScreen.

- -

Complément automatique

- -

La méthode handleEnter() de l'interface nsIAutoCompleteController a été modifiée pour accepter un paramètre indiquant si le texte a été sélectionné depuis le popup de complément automatique ou par l'appui sur la touche Entrée par l'utilisateur après avoir saisi le texte.

- -

DOMParser

- - - -

Interfaces supprimées

- -

Les interfaces suivantes ont été retirées de Gecko 1.9, sur lequel se base Firefox 3. Si votre extension utilise l'une ou l'autre d'entre-elles, vous devrez mettre à jour votre code :

- - - -

Quatrième étape : vérifier les changements chrome appropriés

- -

Un changement mineur dans le chrome pourrait nécessiter des changements dans votre code. Un nouveau vbox a été ajouté, appelé « browser-bottombox », qui comprend la Barre de recherche et la Barre d'état en bas de la fenêtre de navigation. Bien que ceci n'affecte pas l'apparence de l'affichage, votre extension peut être affectée si elle utilise des overlays chrome relatifs à ces éléments.

- -

Par exemple, si vous faisiez précédemment un overlay chrome avant la Barre d'état, comme ceci :

- -
<window id="main-window">
-  <something insertbefore="status-bar" />
-</window>
-
- -

Vous devrez à présent le faire comme ceci :

- -
<vbox id="browser-bottombox">
-  <something insertbefore="status-bar" />
-</vbox>
-
- -

Ou utilisez la technique suivante pour que votre overlay fonctionne tant avec Firefox 2 que Firefox 3 :

- -
<window id="main-window">
-  <vbox id="browser-bottombox" insertbefore="status-bar">
-    <something insertbefore="status-bar" />
-  <vbox>
-</window>
-
- -
-

Note : Ce changement s'applique à partir de Firefox 3 beta 4 et des nightlies précédentes.

-
- -

Autres changements

- -

Ajoutez ici les changements simples que vous avez dû faire à vos extensions pour qu'elles fonctionnent avec Firefox 3.

- - diff --git a/files/fr/mozilla/firefox/releases/3/updating_extensions/index.md b/files/fr/mozilla/firefox/releases/3/updating_extensions/index.md new file mode 100644 index 0000000000..2869670aeb --- /dev/null +++ b/files/fr/mozilla/firefox/releases/3/updating_extensions/index.md @@ -0,0 +1,224 @@ +--- +title: Mise à jour des extensions pour Firefox 3 +slug: Mozilla/Firefox/Releases/3/Updating_extensions +tags: + - Firefox 3 +translation_of: Mozilla/Firefox/Releases/3/Updating_extensions +original_slug: Mise_à_jour_des_extensions_pour_Firefox_3 +--- +
+
    +
  1. +

    Notes de versions pour développeurs

    +
      +
    1. Notes de versions pour développeurs
    2. +
    +
  2. +
  3. + +

    Modules complémentaires

    +
      +
    1. WebExtensions
    2. +
    3. Thèmes
    4. +
    + +
  4. +
  5. + +

    Fonctionnement interne de Firefox

    +
      +
    1. Le projet Mozilla
    2. +
    3. Gecko
    4. +
    5. Mode « headless »
    6. +
    7. Modules de code Javascript
    8. +
    9. JS-ctypes
    10. +
    11. Le projet MathML
    12. +
    13. MFBT
    14. +
    15. Les projets Mozilla
    16. +
    17. Le système de préférences
    18. +
    19. Connexions WebIDL
    20. +
    21. XPCOM
    22. +
    23. XUL
    24. +
    + +
  6. +
  7. + +

    Développer et contribuer

    +
      +
    1. Instructions de compilation
    2. +
    3. Configuration des options de compilation
    4. +
    5. Fonctionnement de la compilation
    6. +
    7. Code source de Mozilla
    8. +
    9. Localisation
    10. +
    11. Mercurial
    12. +
    13. Assurance qualité
    14. +
    15. Utilisation de code Mozilla dans d'autres projets
    16. +
    + +
  8. +
+
+ +

Cet article fournit des informations qui seront utiles pour les développeurs désirant mettre à jour leurs extensions pour qu'elles fonctionnent correctement avec Firefox 3.

+ +

Avant d'aller plus loin, voici une indication utile : si la seule modification dont votre extension a besoin est une mise à jour du champ maxVersion dans son manifeste d'installation, et que celle-ci est hébergée sur addons.mozilla.org, il n'est pas vraiment nécessaire de renvoyer une nouvelle version de votre extension ! Utilisez simplement le Developer Control Panel sur AMO pour ajuster la valeur de maxVersion. Cela vous évitera également la revérification de votre extension.

+ +

Première étape : mise à jour du manifeste d'installation

+ +

La première étape — et pour la plupart des extensions la seule qui sera nécessaire — est de mettre à jour le fichier de manifeste d'installation, install.rdf, pour indiquer sa compatibilité avec Firefox 3.

+ +

Trouvez simplement la ligne indiquant la version maximale compatible de Firefox (qui, pour Firefox 2, ressemblait probablement à ceci) :

+ +
 <em:maxVersion>2.0.*</em:maxVersion>
+
+ +

Modifiez-la pour indiquer la compatibilité avec Firefox 3 :

+ +
 <em:maxVersion>3.0.*</em:maxVersion>
+
+ +

Et réinstallez ensuite votre extension.

+ +

Notez que Firefox 3 n'a plus besoin d'un « .0 » supplémentaire dans son numéro de version, donc au lieu d'utiliser « 3.0.0.* », il ne faut plus indiquer que « 3.0.* ».

+ +
+

Note : Notez qu'à ce point, il faut s'attendre à d'autres changements dans Firefox 3. Ceux-ci peuvent poser des problèmes à certaines extensions, il faut donc éviter de publier une extension avec la valeur 3.0.0.* pour maxVersion avant que la RC de Firefox 3 soit disponible. Durant la pariode beta de Firefox 3, il convient d'utiliser 3.0b5 comme valeur de maxVersion.

+
+ +

Il y a eu (et il y aura encore) un certain nombre de changements dans les API qui poseront probablement des problèmes à certaines. Nous sommes encore en train d'établir une liste complète de ces changements.

+ +
+

Note : Si votre extension utilise toujours un script Install.js plutôt qu'un manifeste d'installation, il vous faudra faire la transition vers un manifeste d'installation maintenant. Firefox 3 ne gère plus les scripts install.js dans les fichiers XPI.

+
+ +

Ajout de localisations au manifeste d'installation

+ +

Firefox 3 permet d'utiliser de nouvelles propriétés dans le manifeste d'installation pour spécifier des descriptions localisées. Les anciennes méthodes continuent à fonctionner, mais la nouvelle permet à Firefox de charger les localisations même lorsque le module complémentaire est désactivé ou sur le point d'être installé. Consultez Localisation des descriptions d'extensions pour plus de détails.

+ +

Deuxième étape : s'assurer de fournir des mises à jour sécurisées

+ +

Si vous hébergez des modules complémentaires vous-mêmes et pas sur un fournisseur d'hébergement sécurisé comme addons.mozilla.org, vous devrez fournir une méthode sécurisée de mise à jour pour vos modules. Pour ce faire, il faudrait soit héberger vos mises à jour sur un site SSL, ou utiliser des clés cryptographiques pour signer les informations de mise à jour. Consultez Mises à jour sécurisées pour plus d'informations.

+ +

Troisième étape : s'occuper des changements d'API

+ +

Plusieurs API ont changé de manière significative. Les changements les plus importants, qui affecteront probablement un grand nombre d'extensions, sont les suivants :

+ +

DOM

+ +

Les nœuds provenant de documents externes doivent être clonés à l'aide de document.importNode() (ou adoptés avec + document.adoptNode()) avant de pouvoir être insérés dans le document courant. Pour en savoir plus sur les problèmes + de Node.ownerDocument, consultez la FAQ DOM du W3C (en anglais).

+ +

Gecko n'obligeait pas à utiliser document.importNode() et document.adoptNode() avant sa version 1.9. Depuis les versions 1.9 + alphas, si un nœud n'est pas adopté ou importé avant d'être utilisé dans un autre document, l'exception + WRONG_DOCUMENT_ERR est déclenchée (NS_ERROR_DOM_WRONG_DOCUMENT_ERR). implémentation dans le bug 47903.

+ + +

Marque-pages et historique

+ +

Si votre extension accède aux marque-pages ou à des données de l'historique d'une manière ou d'une autre, elle devra être substantiellement modifiée pour être compatible avec Firefox 3. Les anciennes API pour accéder à ces informations ont été remplacées par la nouvelle architecture Places. Consultez le Guide de migration vers Places pour des détails sur la mise à jour de vos extensions existantes en utilisant l'API Places.

+ +

Gestionnaire de téléchargement

+ +

L'API du gestionnaire de téléchargement a légèrement changé suite à la transition d'un stockage de données RDF vers l'API Storage. La transition devrait être très facile à faire. En outre, l'API permettant d'examiner la progression des téléchargements a été modifiée pour permettre l'existence de plusieurs écouteurs sur le gestionnaire de téléchargement. Consultez nsIDownloadManager, nsIDownloadProgressListener et Surveillance de téléchargements pour plus d'informations.

+ +

Gestionnaire de mots de passe

+ +

Si votre extension accède à des informations d'identification à l'aide du Gestionnaire de mots de passe, elle devra être adaptée pour utiliser la nouvelle API du gestionnaire d'identification.

+ + + +

Il est également possible de ne pas utiliser le stockage du gestionnaire de mots de passe intégré si vous désirez fournir votre propre implémentation de stockage de mots de passe dans vos extensions. Consultez Création d'un module de stockage du gestionnaire d'identification pour plus de détails.

+ +

Popups (menus, menus contextuels, bulles d'information et panneaux)

+ +

Le système de popups XUL a été modifié de manière importante dans Firefox 3. Celui-ci gère les menus principaux, les menus contextuels et les panneaux d'information. Un guide d'utilisation des popups a été créé pour expliquer en détail le fonctionnement du système. Une chose à noter est l'obsolescence de popup.showPopup en faveur des nouvelles méthodes popup.openPopup et popup.openPopupAtScreen.

+ +

Complément automatique

+ +

La méthode handleEnter() de l'interface nsIAutoCompleteController a été modifiée pour accepter un paramètre indiquant si le texte a été sélectionné depuis le popup de complément automatique ou par l'appui sur la touche Entrée par l'utilisateur après avoir saisi le texte.

+ +

DOMParser

+ + + +

Interfaces supprimées

+ +

Les interfaces suivantes ont été retirées de Gecko 1.9, sur lequel se base Firefox 3. Si votre extension utilise l'une ou l'autre d'entre-elles, vous devrez mettre à jour votre code :

+ + + +

Quatrième étape : vérifier les changements chrome appropriés

+ +

Un changement mineur dans le chrome pourrait nécessiter des changements dans votre code. Un nouveau vbox a été ajouté, appelé « browser-bottombox », qui comprend la Barre de recherche et la Barre d'état en bas de la fenêtre de navigation. Bien que ceci n'affecte pas l'apparence de l'affichage, votre extension peut être affectée si elle utilise des overlays chrome relatifs à ces éléments.

+ +

Par exemple, si vous faisiez précédemment un overlay chrome avant la Barre d'état, comme ceci :

+ +
<window id="main-window">
+  <something insertbefore="status-bar" />
+</window>
+
+ +

Vous devrez à présent le faire comme ceci :

+ +
<vbox id="browser-bottombox">
+  <something insertbefore="status-bar" />
+</vbox>
+
+ +

Ou utilisez la technique suivante pour que votre overlay fonctionne tant avec Firefox 2 que Firefox 3 :

+ +
<window id="main-window">
+  <vbox id="browser-bottombox" insertbefore="status-bar">
+    <something insertbefore="status-bar" />
+  <vbox>
+</window>
+
+ +
+

Note : Ce changement s'applique à partir de Firefox 3 beta 4 et des nightlies précédentes.

+
+ +

Autres changements

+ +

Ajoutez ici les changements simples que vous avez dû faire à vos extensions pour qu'elles fonctionnent avec Firefox 3.

+ + diff --git a/files/fr/mozilla/firefox/releases/3/updating_web_applications/index.html b/files/fr/mozilla/firefox/releases/3/updating_web_applications/index.html deleted file mode 100644 index 1b79ebf9b0..0000000000 --- a/files/fr/mozilla/firefox/releases/3/updating_web_applications/index.html +++ /dev/null @@ -1,91 +0,0 @@ ---- -title: Mise à jour des applications Web pour Firefox 3 -slug: Mozilla/Firefox/Releases/3/Updating_web_applications -tags: - - Firefox 3 -translation_of: Mozilla/Firefox/Releases/3/Updating_web_applications -original_slug: Mise_à_jour_des_applications_Web_pour_Firefox_3 ---- -
{{FirefoxSidebar}}
- -

Un certain nombre de changements présents dans Firefox 3 pourraient affecter votre site ou application Web. Vous pourriez en outre tirer parti de plusieurs de ses nouvelles fonctionnalités. Cet article servira de point de départ au fur et à mesure de la mise à jour de votre contenu pour bénéficier au maximum des possibilités de Firefox 3.

- -

Changements dans le DOM

- -

Les nœuds provenant de documents externes doivent être clonés à l'aide de document.importNode() (ou adoptés avec - document.adoptNode()) avant de pouvoir être insérés dans le document courant. Pour en savoir plus sur les problèmes - de Node.ownerDocument, consultez la FAQ DOM du W3C (en anglais).

- -

Gecko n'obligeait pas à utiliser document.importNode() et document.adoptNode() avant sa version 1.9. Depuis les versions 1.9 - alphas, si un nœud n'est pas adopté ou importé avant d'être utilisé dans un autre document, l'exception - WRONG_DOCUMENT_ERR est déclenchée (NS_ERROR_DOM_WRONG_DOCUMENT_ERR). implémentation dans le bug 47903.

- - -

Changements liés à HTML

- -

Changements dans l'héritage des jeux de caractères

- -

Firefox 3 corrige un bug de sécurité dans les éléments frame et iframe qui leur permettait d'hériter du jeu de caractères de leur parent. Cela pouvait poser des problèmes dans certains cas. À présent, les cadres ne peuvent hériter du jeu de caractère de leur parent que si tant le cadre que le parent sont chargés depuis le même serveur. Si vous avez des pages qui dépendent du fait que les cadres chargés depuis d'autres serveurs hériteront du même jeu de caractères, leurs balisage HTML devra être mis à jour pour indiquer leur jeu de caractères plus précisément.

- -

Changements concernant l'élément SCRIPT

- -

L'élément <script> dans les documents HTML servis en mode text/html doit à présent être obligatoirement accompagné d'une balise fermante </script>, même si aucun contenu n'est fourni entre les deux balises. Dans les versions précédentes de Firefox, il était possible de faire ceci :

- -
<script ... />
-
- -

Le balisage doit à présent respecter les spécifications HTML (si c'est effectivement du HTML), il devient donc obligatoire de placer une balise de fermeture séparément, comme ceci :

- -
<script ...></script>
-
- -

Ce changement améliore tant la compatibilité que la sécurité.

- -

Changements liés à CSS

- -

Changements concernant les tailles de police basées sur les unités em et ex

- -

Les valeurs de taille de police (font-size) utilisant les unités em et ex étaient auparavant affectées selon la taille de police minimale spécifiée par l'utilisateur : si une police était affichée plus grande à cause de la taille de police minimale, les unités em et ex pour les tailles de police étaient adaptées en fonction. Ce comportement était incohérent avec la manière dont les tailles de police en pourcentage fonctionnaient.

- -

Les valeurs de font-size sont à présent basées sur une « taille de police désirée » qui n'est pas affectée par la taille minimale de police de l'utilisateur. Autrement dit, les tailles de police sont toujours calculées selon l'intention du concepteur du site et ne sont ajustées selon la taille de police minimale qu'après coup.

- -

Consultez le {{ Bug(322943) }} pour une démonstration (doit être visionnée avec une taille de police minimale supérieure ou égale à 6 pour voir la différence : les deux cascades de boîtes se comportent différemment dans Firefox 2, car la taille de police basée sur des unités em est décalée par la taille de police minimale).

- -

Changements concernant la sécurité

- -

Accès au chrome

- -

Dans les versions précédentes de Firefox, toute page web pouvait charger des scripts ou des images depuis le chrome à l'aide du protocole chrome://. Cela permettait entre autres à des sites de détecter la présence de certains modules complémentaires — ce qui pourrait être utilisé pour compromettre la sécurité d'un utilisateur en contournant des modules ajoutant des fonctionnalités de sécurité au navigateur.

- -

Firefox 3 ne permet plus au contenu web que d'accéder aux éléments dans les espaces chrome://browser/ et chrome://toolkit/. Ces fichiers sont prévus pour être accessibles au contenu web. Tous les autres contenus chrome y sont par contre à présent inaccessibles.

- -

Une possibilité existe cependant pour les extensions désirant rendre le contenu accessible aux pages web. Ces extensions peuvent spécifier un paramètre spécial dans leur fichier chrome.manifest comme ceci :

- -
content mypackage location/ contentaccessible=yes
-
- -

Cette manipulation ne devrait pas être nécessaire la plupart du temps, mais elle existe toutefois pour les rares cas où elle reste indispensable. Notez qu'il n'est pas exclu que Firefox avertisse l'utilisateur de cette utilisation du paramètre contentaccessible, étant donné qu'il constitue un risque potentiel de sécurité.

- -
-

Note : Firefox 2 ne gérant pas le paramètre contentaccessible (la ligne le contenant sera entièrement ignorée), si vous voulez que votre module reste compatible avec Firefox 2 et Firefox 3, ajoutez plutôt quelque chose comme ceci :

- -
content mypackage location/
-content mypackage location/ contentaccessible=yes
-
-
- -

Champs d'envoi de fichiers (upload)

- -

Dans les versions précédentes de Firefox, un certain nombre de cas existaient où le chemin entier du fichier envoyé par l'utilisateur était lisible par une application web. Pour des raisons de confidentialité, ce n'est plus possible dans Firefox 3 ; à présent seul le nom du fichier lui-même est visible par l'application web.

- -

Changements dans JavaScript

- -

Firefox 3 intègre JavaScript 1.8. Un changement important qui pourrait nécessiter une mise à jour de vos sites ou applications Web est que l'objet obsolète et non standard Script n'est plus géré. Il ne s'agit pas de la balise <script> mais d'un objet JavaScript qui n'avait jamais été standardisé. Il est finalement peu probable que vous l'ayez jamais utilisé, et vous n'aurez sans doute aucun problème.

- -

Voir également

- - diff --git a/files/fr/mozilla/firefox/releases/3/updating_web_applications/index.md b/files/fr/mozilla/firefox/releases/3/updating_web_applications/index.md new file mode 100644 index 0000000000..1b79ebf9b0 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/3/updating_web_applications/index.md @@ -0,0 +1,91 @@ +--- +title: Mise à jour des applications Web pour Firefox 3 +slug: Mozilla/Firefox/Releases/3/Updating_web_applications +tags: + - Firefox 3 +translation_of: Mozilla/Firefox/Releases/3/Updating_web_applications +original_slug: Mise_à_jour_des_applications_Web_pour_Firefox_3 +--- +
{{FirefoxSidebar}}
+ +

Un certain nombre de changements présents dans Firefox 3 pourraient affecter votre site ou application Web. Vous pourriez en outre tirer parti de plusieurs de ses nouvelles fonctionnalités. Cet article servira de point de départ au fur et à mesure de la mise à jour de votre contenu pour bénéficier au maximum des possibilités de Firefox 3.

+ +

Changements dans le DOM

+ +

Les nœuds provenant de documents externes doivent être clonés à l'aide de document.importNode() (ou adoptés avec + document.adoptNode()) avant de pouvoir être insérés dans le document courant. Pour en savoir plus sur les problèmes + de Node.ownerDocument, consultez la FAQ DOM du W3C (en anglais).

+ +

Gecko n'obligeait pas à utiliser document.importNode() et document.adoptNode() avant sa version 1.9. Depuis les versions 1.9 + alphas, si un nœud n'est pas adopté ou importé avant d'être utilisé dans un autre document, l'exception + WRONG_DOCUMENT_ERR est déclenchée (NS_ERROR_DOM_WRONG_DOCUMENT_ERR). implémentation dans le bug 47903.

+ + +

Changements liés à HTML

+ +

Changements dans l'héritage des jeux de caractères

+ +

Firefox 3 corrige un bug de sécurité dans les éléments frame et iframe qui leur permettait d'hériter du jeu de caractères de leur parent. Cela pouvait poser des problèmes dans certains cas. À présent, les cadres ne peuvent hériter du jeu de caractère de leur parent que si tant le cadre que le parent sont chargés depuis le même serveur. Si vous avez des pages qui dépendent du fait que les cadres chargés depuis d'autres serveurs hériteront du même jeu de caractères, leurs balisage HTML devra être mis à jour pour indiquer leur jeu de caractères plus précisément.

+ +

Changements concernant l'élément SCRIPT

+ +

L'élément <script> dans les documents HTML servis en mode text/html doit à présent être obligatoirement accompagné d'une balise fermante </script>, même si aucun contenu n'est fourni entre les deux balises. Dans les versions précédentes de Firefox, il était possible de faire ceci :

+ +
<script ... />
+
+ +

Le balisage doit à présent respecter les spécifications HTML (si c'est effectivement du HTML), il devient donc obligatoire de placer une balise de fermeture séparément, comme ceci :

+ +
<script ...></script>
+
+ +

Ce changement améliore tant la compatibilité que la sécurité.

+ +

Changements liés à CSS

+ +

Changements concernant les tailles de police basées sur les unités em et ex

+ +

Les valeurs de taille de police (font-size) utilisant les unités em et ex étaient auparavant affectées selon la taille de police minimale spécifiée par l'utilisateur : si une police était affichée plus grande à cause de la taille de police minimale, les unités em et ex pour les tailles de police étaient adaptées en fonction. Ce comportement était incohérent avec la manière dont les tailles de police en pourcentage fonctionnaient.

+ +

Les valeurs de font-size sont à présent basées sur une « taille de police désirée » qui n'est pas affectée par la taille minimale de police de l'utilisateur. Autrement dit, les tailles de police sont toujours calculées selon l'intention du concepteur du site et ne sont ajustées selon la taille de police minimale qu'après coup.

+ +

Consultez le {{ Bug(322943) }} pour une démonstration (doit être visionnée avec une taille de police minimale supérieure ou égale à 6 pour voir la différence : les deux cascades de boîtes se comportent différemment dans Firefox 2, car la taille de police basée sur des unités em est décalée par la taille de police minimale).

+ +

Changements concernant la sécurité

+ +

Accès au chrome

+ +

Dans les versions précédentes de Firefox, toute page web pouvait charger des scripts ou des images depuis le chrome à l'aide du protocole chrome://. Cela permettait entre autres à des sites de détecter la présence de certains modules complémentaires — ce qui pourrait être utilisé pour compromettre la sécurité d'un utilisateur en contournant des modules ajoutant des fonctionnalités de sécurité au navigateur.

+ +

Firefox 3 ne permet plus au contenu web que d'accéder aux éléments dans les espaces chrome://browser/ et chrome://toolkit/. Ces fichiers sont prévus pour être accessibles au contenu web. Tous les autres contenus chrome y sont par contre à présent inaccessibles.

+ +

Une possibilité existe cependant pour les extensions désirant rendre le contenu accessible aux pages web. Ces extensions peuvent spécifier un paramètre spécial dans leur fichier chrome.manifest comme ceci :

+ +
content mypackage location/ contentaccessible=yes
+
+ +

Cette manipulation ne devrait pas être nécessaire la plupart du temps, mais elle existe toutefois pour les rares cas où elle reste indispensable. Notez qu'il n'est pas exclu que Firefox avertisse l'utilisateur de cette utilisation du paramètre contentaccessible, étant donné qu'il constitue un risque potentiel de sécurité.

+ +
+

Note : Firefox 2 ne gérant pas le paramètre contentaccessible (la ligne le contenant sera entièrement ignorée), si vous voulez que votre module reste compatible avec Firefox 2 et Firefox 3, ajoutez plutôt quelque chose comme ceci :

+ +
content mypackage location/
+content mypackage location/ contentaccessible=yes
+
+
+ +

Champs d'envoi de fichiers (upload)

+ +

Dans les versions précédentes de Firefox, un certain nombre de cas existaient où le chemin entier du fichier envoyé par l'utilisateur était lisible par une application web. Pour des raisons de confidentialité, ce n'est plus possible dans Firefox 3 ; à présent seul le nom du fichier lui-même est visible par l'application web.

+ +

Changements dans JavaScript

+ +

Firefox 3 intègre JavaScript 1.8. Un changement important qui pourrait nécessiter une mise à jour de vos sites ou applications Web est que l'objet obsolète et non standard Script n'est plus géré. Il ne s'agit pas de la balise <script> mais d'un objet JavaScript qui n'avait jamais été standardisé. Il est finalement peu probable que vous l'ayez jamais utilisé, et vous n'aurez sans doute aucun problème.

+ +

Voir également

+ + diff --git a/files/fr/mozilla/firefox/releases/3/xul_improvements_in_firefox_3/index.html b/files/fr/mozilla/firefox/releases/3/xul_improvements_in_firefox_3/index.html deleted file mode 100644 index 403b4041a5..0000000000 --- a/files/fr/mozilla/firefox/releases/3/xul_improvements_in_firefox_3/index.html +++ /dev/null @@ -1,96 +0,0 @@ ---- -title: Améliorations XUL dans Firefox 3 -slug: Mozilla/Firefox/Releases/3/XUL_improvements_in_Firefox_3 -tags: - - Firefox 3 - - XUL -translation_of: Mozilla/Firefox/Releases/3/XUL_improvements_in_Firefox_3 -original_slug: Améliorations_XUL_dans_Firefox_3 ---- -
{{FirefoxSidebar}}
- -

Firefox 3 fournit un certain nombre de nouveaux éléments XUL, ainsi que des améliorations sur des éléments existants. Bien que ces éléments soient documentés ailleurs, cet article offre une liste pratique des améliorations ainsi que des liens vers la documentation détaillée.

- -

Nouveaux éléments

- - - -

Améliorations des arbres

- - - -

Améliorations des menus

- - - -

Améliorations des boîtes de texte

- - - -

Autres améliorations

- - - -

Voir également

- - - -

{{ languages( { "en": "en/XUL_improvements_in_Firefox_3", "es": "es/Mejoras_XUL_en_Firefox_3", "ja": "ja/XUL_improvements_in_Firefox_3", "pl": "pl/Poprawki_XUL_w_Firefoksie_3" } ) }}

diff --git a/files/fr/mozilla/firefox/releases/3/xul_improvements_in_firefox_3/index.md b/files/fr/mozilla/firefox/releases/3/xul_improvements_in_firefox_3/index.md new file mode 100644 index 0000000000..403b4041a5 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/3/xul_improvements_in_firefox_3/index.md @@ -0,0 +1,96 @@ +--- +title: Améliorations XUL dans Firefox 3 +slug: Mozilla/Firefox/Releases/3/XUL_improvements_in_Firefox_3 +tags: + - Firefox 3 + - XUL +translation_of: Mozilla/Firefox/Releases/3/XUL_improvements_in_Firefox_3 +original_slug: Améliorations_XUL_dans_Firefox_3 +--- +
{{FirefoxSidebar}}
+ +

Firefox 3 fournit un certain nombre de nouveaux éléments XUL, ainsi que des améliorations sur des éléments existants. Bien que ces éléments soient documentés ailleurs, cet article offre une liste pratique des améliorations ainsi que des liens vers la documentation détaillée.

+ +

Nouveaux éléments

+ + + +

Améliorations des arbres

+ + + +

Améliorations des menus

+ + + +

Améliorations des boîtes de texte

+ + + +

Autres améliorations

+ + + +

Voir également

+ + + +

{{ languages( { "en": "en/XUL_improvements_in_Firefox_3", "es": "es/Mejoras_XUL_en_Firefox_3", "ja": "ja/XUL_improvements_in_Firefox_3", "pl": "pl/Poprawki_XUL_w_Firefoksie_3" } ) }}

diff --git a/files/fr/mozilla/firefox/releases/30/index.html b/files/fr/mozilla/firefox/releases/30/index.html deleted file mode 100644 index 37e4ae96cc..0000000000 --- a/files/fr/mozilla/firefox/releases/30/index.html +++ /dev/null @@ -1,93 +0,0 @@ ---- -title: Firefox 30 for developers -slug: Mozilla/Firefox/Releases/30 -tags: - - Firefox - - Firefox for Developers - - TopicStub -translation_of: Mozilla/Firefox/Releases/30 ---- -
{{FirefoxSidebar}}
- -

Changements pour les développeurs Web

- -

Outils de développement

- - - -

CSS

- - - -

HTML

- -

Pas de changement.

- -

JavaScript

- - - -

Interfaces/APIs/DOM

- - - -

MathML

- -

Pas de changement.

- -

SVG

- - - -

Audio/Vidéo

- - - -

Sécurité

- -

Pas de changement.

- -

Changements pour les développeurs d'add-on et de Mozilla

- - - -

Voir aussi

- -

Anciennes versions

- -

{{Firefox_for_developers('29')}}

diff --git a/files/fr/mozilla/firefox/releases/30/index.md b/files/fr/mozilla/firefox/releases/30/index.md new file mode 100644 index 0000000000..37e4ae96cc --- /dev/null +++ b/files/fr/mozilla/firefox/releases/30/index.md @@ -0,0 +1,93 @@ +--- +title: Firefox 30 for developers +slug: Mozilla/Firefox/Releases/30 +tags: + - Firefox + - Firefox for Developers + - TopicStub +translation_of: Mozilla/Firefox/Releases/30 +--- +
{{FirefoxSidebar}}
+ +

Changements pour les développeurs Web

+ +

Outils de développement

+ + + +

CSS

+ + + +

HTML

+ +

Pas de changement.

+ +

JavaScript

+ + + +

Interfaces/APIs/DOM

+ + + +

MathML

+ +

Pas de changement.

+ +

SVG

+ + + +

Audio/Vidéo

+ + + +

Sécurité

+ +

Pas de changement.

+ +

Changements pour les développeurs d'add-on et de Mozilla

+ + + +

Voir aussi

+ +

Anciennes versions

+ +

{{Firefox_for_developers('29')}}

diff --git a/files/fr/mozilla/firefox/releases/32/index.html b/files/fr/mozilla/firefox/releases/32/index.html deleted file mode 100644 index 26331db148..0000000000 --- a/files/fr/mozilla/firefox/releases/32/index.html +++ /dev/null @@ -1,139 +0,0 @@ ---- -title: Firefox 32 for developers -slug: Mozilla/Firefox/Releases/32 -tags: - - NeedsTranslation - - TopicStub -translation_of: Mozilla/Firefox/Releases/32 ---- -
{{FirefoxSidebar}}

Changes for Web developers

- -

Developer Tools

- -

Highlights:

- - - -

All devtools bugs fixed between Firefox 31 and Firefox 32.

- -

CSS

- - - -

HTML

- - - -

JavaScript

- - - -

Interfaces/APIs/DOM

- - - -

MathML

- - - -

SVG

- -

No change.

- -

Audio/Video

- -

No change.

- -

Security

- - - -

Changes for add-on and Mozilla developers

- -

Xray vision is now applied to JavaScript objects that are not themselves DOM objects: Xrays for JavaScript objects.

- -

A getDataDirectory() method has been added to Addon instances. This method returns the preferred location, within the current profile, for add-ons to store data.

- -

Add-on SDK

- -

Highlights

- - - -

Details

- -

GitHub commits made between Firefox 31 and Firefox 32. This will not include any uplifts made after this release entered Aurora.

- -

Bugs fixed between Firefox 31 and Firefox 32. This will not include any uplifts made after this release entered Aurora.

- -

See also

- - - -

Older versions

- -

{{Firefox_for_developers('31')}}

diff --git a/files/fr/mozilla/firefox/releases/32/index.md b/files/fr/mozilla/firefox/releases/32/index.md new file mode 100644 index 0000000000..26331db148 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/32/index.md @@ -0,0 +1,139 @@ +--- +title: Firefox 32 for developers +slug: Mozilla/Firefox/Releases/32 +tags: + - NeedsTranslation + - TopicStub +translation_of: Mozilla/Firefox/Releases/32 +--- +
{{FirefoxSidebar}}

Changes for Web developers

+ +

Developer Tools

+ +

Highlights:

+ + + +

All devtools bugs fixed between Firefox 31 and Firefox 32.

+ +

CSS

+ + + +

HTML

+ + + +

JavaScript

+ + + +

Interfaces/APIs/DOM

+ + + +

MathML

+ + + +

SVG

+ +

No change.

+ +

Audio/Video

+ +

No change.

+ +

Security

+ + + +

Changes for add-on and Mozilla developers

+ +

Xray vision is now applied to JavaScript objects that are not themselves DOM objects: Xrays for JavaScript objects.

+ +

A getDataDirectory() method has been added to Addon instances. This method returns the preferred location, within the current profile, for add-ons to store data.

+ +

Add-on SDK

+ +

Highlights

+ + + +

Details

+ +

GitHub commits made between Firefox 31 and Firefox 32. This will not include any uplifts made after this release entered Aurora.

+ +

Bugs fixed between Firefox 31 and Firefox 32. This will not include any uplifts made after this release entered Aurora.

+ +

See also

+ + + +

Older versions

+ +

{{Firefox_for_developers('31')}}

diff --git a/files/fr/mozilla/firefox/releases/35/index.html b/files/fr/mozilla/firefox/releases/35/index.html deleted file mode 100644 index bc4c9c6a87..0000000000 --- a/files/fr/mozilla/firefox/releases/35/index.html +++ /dev/null @@ -1,198 +0,0 @@ ---- -title: Firefox 35 pour les développeurs -slug: Mozilla/Firefox/Releases/35 -tags: - - Firefox - - Guide - - Mozilla -translation_of: Mozilla/Firefox/Releases/35 -original_slug: Mozilla/Firefox/Versions/35 ---- -
-
    -
  1. - -

    Notes de versions pour développeurs

    -
      -
    1. Notes de versions pour développeurs
    2. -
    - -
  2. -
  3. - -

    Modules complémentaires

    -
      -
    1. WebExtensions
    2. -
    3. Thèmes
    4. -
    - -
  4. -
  5. - -

    Fonctionnement interne de Firefox

    -
      -
    1. Le projet Mozilla
    2. -
    3. Gecko
    4. -
    5. Mode « headless »
    6. -
    7. Modules de code Javascript
    8. -
    9. JS-ctypes
    10. -
    11. Le projet MathML
    12. -
    13. MFBT
    14. -
    15. Les projets Mozilla
    16. -
    17. Le système de préférences
    18. -
    19. Connexions WebIDL
    20. -
    21. XPCOM
    22. -
    23. XUL
    24. -
    - -
  6. -
  7. - -

    Développer et contribuer

    -
      -
    1. Instructions de compilation
    2. -
    3. Configuration des options de compilation
    4. -
    5. Fonctionnement de la compilation
    6. -
    7. Code source de Mozilla
    8. -
    9. Localisation
    10. -
    11. Mercurial
    12. -
    13. Assurance qualité
    14. -
    15. Utilisation de code Mozilla dans d'autres projets
    16. -
    - -
  8. -
-
-

Changement concernant les développeurs

- -

Outils de développement

- -

Liens:

- - - -

Tous les bugs des outils de développement résolus entre Firefox 34 et Firefox 35.

- -

CSS

- - - -

HTML

- - - -

JavaScript

- - - -

Interfaces/APIs/DOM

- - - -

 MathML

- - - -

SVG

- -

Aucun changement.

- -

Audio/Video

- -

Aucun changement.

- -

Réseau & Sécurité

- - - -

Changements pour les modules et les développeurs Mozilla

- -

XUL & Modules

- - - -

Module SDK

- -

Titres

- - - -

Détails

- -

Commits de GitHub effectués entre Firefox 34 et Firefox 35. Ceci ne comprendra pas les évolutions après la sortie officielle.

- -

Bugs corrigés entre Firefox 34 et Firefox 35. Ceci ne comprendra pas les évolutions après la sortie officielle.

- -

Voir aussi

- - - -

Anciennes versions

- - - diff --git a/files/fr/mozilla/firefox/releases/35/index.md b/files/fr/mozilla/firefox/releases/35/index.md new file mode 100644 index 0000000000..bc4c9c6a87 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/35/index.md @@ -0,0 +1,198 @@ +--- +title: Firefox 35 pour les développeurs +slug: Mozilla/Firefox/Releases/35 +tags: + - Firefox + - Guide + - Mozilla +translation_of: Mozilla/Firefox/Releases/35 +original_slug: Mozilla/Firefox/Versions/35 +--- +
+
    +
  1. + +

    Notes de versions pour développeurs

    +
      +
    1. Notes de versions pour développeurs
    2. +
    + +
  2. +
  3. + +

    Modules complémentaires

    +
      +
    1. WebExtensions
    2. +
    3. Thèmes
    4. +
    + +
  4. +
  5. + +

    Fonctionnement interne de Firefox

    +
      +
    1. Le projet Mozilla
    2. +
    3. Gecko
    4. +
    5. Mode « headless »
    6. +
    7. Modules de code Javascript
    8. +
    9. JS-ctypes
    10. +
    11. Le projet MathML
    12. +
    13. MFBT
    14. +
    15. Les projets Mozilla
    16. +
    17. Le système de préférences
    18. +
    19. Connexions WebIDL
    20. +
    21. XPCOM
    22. +
    23. XUL
    24. +
    + +
  6. +
  7. + +

    Développer et contribuer

    +
      +
    1. Instructions de compilation
    2. +
    3. Configuration des options de compilation
    4. +
    5. Fonctionnement de la compilation
    6. +
    7. Code source de Mozilla
    8. +
    9. Localisation
    10. +
    11. Mercurial
    12. +
    13. Assurance qualité
    14. +
    15. Utilisation de code Mozilla dans d'autres projets
    16. +
    + +
  8. +
+
+

Changement concernant les développeurs

+ +

Outils de développement

+ +

Liens:

+ + + +

Tous les bugs des outils de développement résolus entre Firefox 34 et Firefox 35.

+ +

CSS

+ + + +

HTML

+ + + +

JavaScript

+ + + +

Interfaces/APIs/DOM

+ + + +

 MathML

+ + + +

SVG

+ +

Aucun changement.

+ +

Audio/Video

+ +

Aucun changement.

+ +

Réseau & Sécurité

+ + + +

Changements pour les modules et les développeurs Mozilla

+ +

XUL & Modules

+ + + +

Module SDK

+ +

Titres

+ + + +

Détails

+ +

Commits de GitHub effectués entre Firefox 34 et Firefox 35. Ceci ne comprendra pas les évolutions après la sortie officielle.

+ +

Bugs corrigés entre Firefox 34 et Firefox 35. Ceci ne comprendra pas les évolutions après la sortie officielle.

+ +

Voir aussi

+ + + +

Anciennes versions

+ + + diff --git a/files/fr/mozilla/firefox/releases/39/index.html b/files/fr/mozilla/firefox/releases/39/index.html deleted file mode 100644 index 9abe0f9701..0000000000 --- a/files/fr/mozilla/firefox/releases/39/index.html +++ /dev/null @@ -1,117 +0,0 @@ ---- -title: Firefox 39 for developers -slug: Mozilla/Firefox/Releases/39 -tags: - - Firefox - - Releases - - TopicStub -translation_of: Mozilla/Firefox/Releases/39 ---- -
{{FirefoxSidebar}}
- -

Firefox 39 est sorti le 2 juillet 2015. Cet article répertorie les modifications clés qui sont utiles non seulement pour les développeurs Web, mais également pour les développeurs Firefox et Gecko ainsi que pour les développeurs d'add-on.

- -

Changements pour les développeurs Web

- -

Outils de développement

- -

Points forts:

- - - -

Tous les bogues de devtools corrigés entre Firefox 38 et Firefox 39.

- -

CSS

- - - -

HTML

- - - -

JavaScript

- - - -

Interfaces/APIs/DOM

- - - -

MathML

- -

Pas de changement.

- -

SVG

- -

Pas de changement.

- -

Audio/Video

- -

Pas de changement.

- -

Miscelleanous

- - - -

La mise en réseau

- - - -

Sécurité

- -

Pas de changement.

- -

Changements pour les développeurs d'add-on et de Mozilla

- -

Pas de changement.

- -

Anciennes versions

- -

{{Firefox_for_developers('38')}}

diff --git a/files/fr/mozilla/firefox/releases/39/index.md b/files/fr/mozilla/firefox/releases/39/index.md new file mode 100644 index 0000000000..9abe0f9701 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/39/index.md @@ -0,0 +1,117 @@ +--- +title: Firefox 39 for developers +slug: Mozilla/Firefox/Releases/39 +tags: + - Firefox + - Releases + - TopicStub +translation_of: Mozilla/Firefox/Releases/39 +--- +
{{FirefoxSidebar}}
+ +

Firefox 39 est sorti le 2 juillet 2015. Cet article répertorie les modifications clés qui sont utiles non seulement pour les développeurs Web, mais également pour les développeurs Firefox et Gecko ainsi que pour les développeurs d'add-on.

+ +

Changements pour les développeurs Web

+ +

Outils de développement

+ +

Points forts:

+ + + +

Tous les bogues de devtools corrigés entre Firefox 38 et Firefox 39.

+ +

CSS

+ + + +

HTML

+ + + +

JavaScript

+ + + +

Interfaces/APIs/DOM

+ + + +

MathML

+ +

Pas de changement.

+ +

SVG

+ +

Pas de changement.

+ +

Audio/Video

+ +

Pas de changement.

+ +

Miscelleanous

+ + + +

La mise en réseau

+ + + +

Sécurité

+ +

Pas de changement.

+ +

Changements pour les développeurs d'add-on et de Mozilla

+ +

Pas de changement.

+ +

Anciennes versions

+ +

{{Firefox_for_developers('38')}}

diff --git a/files/fr/mozilla/firefox/releases/4/index.html b/files/fr/mozilla/firefox/releases/4/index.html deleted file mode 100644 index 4b52f31188..0000000000 --- a/files/fr/mozilla/firefox/releases/4/index.html +++ /dev/null @@ -1,631 +0,0 @@ ---- -title: Firefox 4 pour les développeurs -slug: Mozilla/Firefox/Releases/4 -tags: - - Firefox - - Firefox 4 -translation_of: Mozilla/Firefox/Releases/4 -original_slug: Mozilla/Firefox/Versions/4 ---- -
-
    -
  1. - -

    Notes de versions pour développeurs

    -
      -
    1. Notes de versions pour développeurs
    2. -
    - -
  2. -
  3. - -

    Modules complémentaires

    -
      -
    1. WebExtensions
    2. -
    3. Thèmes
    4. -
    - -
  4. -
  5. - -

    Fonctionnement interne de Firefox

    -
      -
    1. Le projet Mozilla
    2. -
    3. Gecko
    4. -
    5. Mode « headless »
    6. -
    7. Modules de code Javascript
    8. -
    9. JS-ctypes
    10. -
    11. Le projet MathML
    12. -
    13. MFBT
    14. -
    15. Les projets Mozilla
    16. -
    17. Le système de préférences
    18. -
    19. Connexions WebIDL
    20. -
    21. XPCOM
    22. -
    23. XUL
    24. -
    - -
  6. -
  7. - -

    Développer et contribuer

    -
      -
    1. Instructions de compilation
    2. -
    3. Configuration des options de compilation
    4. -
    5. Fonctionnement de la compilation
    6. -
    7. Code source de Mozilla
    8. -
    9. Localisation
    10. -
    11. Mercurial
    12. -
    13. Assurance qualité
    14. -
    15. Utilisation de code Mozilla dans d'autres projets
    16. -
    - -
  8. -
-
- -

Firefox 4, est sorti le 22 mars 2011, améliore les performances, le support d'HTML5 et d'autres technologies du web et aussi la sécurité. Cet article fournit des informations sur cette version et sur les fonctionnalités qui sont disponibles pour les développeurs Web, les développeurs de modules complémentaires et les développeurs de la plate-forme Gecko.

- -

Fonctionnalités pour les développeurs Web

- -

Gecko utilise maintenant le parseur HTML5, qui corrige des bugs, améliore l'interopérabilité et les performances. Il permet également d'intégrer du contenu SVG et MathML directement dans le code HTML.

- -

HTML

- -
-
Rencontrez le parseur HTML5
-
Un aperçu sur ce que le parseur HTML5 représente pour vous et comment intégrer du contenu SVG et MathML dans votre code.
-
Les formulaires en HTML5
-
Un aperçu de l'amélioration de formulaires Web en HTML5. Parmi les changements on ajoute les types d'entrée dans l'élément <input>, la validation des données et d'autres modifications.
-
Sections HTML5
-
Gecko supporte à présent les nouveaux éléments HTML5 liés aux sections dans un document : <article>, <section>, <nav>, <aside>, <hgroup>, <header> et <footer>.
-
Attribut HTML5 hidden
-
Cet attribut, commun à tous les éléments, est utilisé pour cacher le contenu d'une page Web qui n'est pas encore pertinent pour l'utilisateur.
-
Autres éléments HTML5
-
Gecko supporte les nouveaux éléments HTML5 suivants : <mark>, <figure>, et <figcaption>.
-
WebSockets
-
Un guide pour utiliser la nouvelle API WebSockets pour la communication entre une application web et un serveur en temps réel. A noter que WebSockets tel qu'implémenté dans Firefox 4 n'est pas compatible avec la norme finale, et ne devrait pas être utilisé.
-
- -

Améliorations de Canvas

- -

Les modifications suivantes ont étés apportées à l'interface CanvasRenderingContext2D pour permettre à l'implémentation de <canvas> d'être en conformité avec la spécification :

- - - -
-
- -

Autres changements HTML

- - - -

CSS

- -
-
Transitions CSS
-
Le support des transitions CSS est disponible dans Firefox 4.
-
Les valeurs calculées en CSS
-
Le support de -moz-calc a été ajouté. Cela permet de spécifier des valeurs de <length> comme des expressions mathématiques.
-
Groupement de sélecteurs
-
Le support de :-moz-any pour grouper les sélecteurs et factoriser des combinateurs.
-
Support subrectangle pour background-image
-
La propriété -moz-image-rect permet d'utiliser des subrectangles en tant que background-image.
-
Propriétés CSS tactile
-
Le support des propriétés tactiles a été ajouté. Plus de détails plus tard.
-
Utilisation arbitraires d'élements comme fond
-
Vou pouvez utiliser la fonction CSS -moz-element et la fonction DOM document.mozSetImageElement() pour une utilisation arbitraire des éléments HTML comme fond.
-
Sélecteur :visited et confidentialité
-
Des modifications ont étés apportées sur les informations qui peuvent être obtenues sur le style des liens visités en utilisant les sélecteurs CSS. Certaines applications Web peuvent être affectées.
-
- -

Nouvelles propriétés CSS

- - - - - - - - - - - - - - - - - - - - -
PropriétéDescription
-moz-font-feature-settingsPermet de personnaliser les fonctionnalités avancées des polices OpenType.
-moz-tab-sizeSpécifie la largeur d'un espace de tabulation (U+0009) lors du rendu du texte.
resizePermet de modifier les dimensions d'un élément.
- -
-
- -

Nouvelles pseudo-classes CSS

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Pseudo-classDescription
:-moz-handler-crashedUtilisé pour le style d'un élément dont le plugin a planté.
:-moz-placeholderAppliquée à l'espace texte réservé dans les champs des formulaires.
:-moz-submit-invalidAppliquée au bouton d'envoi des formulaires quand un ou plusieurs des champs ne sont pas valides.
:-moz-window-inactiveAppliquée aux éléments d'une fenêtre inactive.
:invalidAutomatiquement appliquée aux champs <input> dont le contenu est invalide.
:optionalAutomatiquement appliquée aux champs <input> qui ne spécifient pas l'attribut required.
:requiredAutomatiquement appliquée aux champs <input> qui spécifient l'attribut required.
:validAutomatiquement appliquée aux champs <input> dont le contenu a été validé avec succès.
- -

Nouveaux pseudo-selectors CSS

- - - - - - - - - - - - -
Pseudo-selectorDescription
:-moz-focusringPermet de spécifier l'apparence d'un élément lorsque Gecko estime que l'on doit se fixer dessus.
- -

Nouvelles fonctions CSS

- - - - - - - - - - - - - - - - - - - - - - - - -
FonctionDescription
:-moz-anyPermet de grouper les sélecteurs et de factoriser les combinateurs.
-moz-calcPermet de spécifier des valeurs de <length> comme des expressions mathématiques.
-moz-elementPermet d'utiliser un élément arbritaire de fond pour background-image and background.
-moz-image-rectPermet d'utiliser un subrectangle d'une image comme background-image or background.
- -

Propriétés CSS renommées

- - - - - - - - - - - - - - - - - - - - - - - - - - -
Ancien nomNouveau nomNotes
-moz-background-sizebackground-sizeLe nom -moz-background-size n'est plus supporté.
-moz-border-radiusborder-radiusL'ancien nom est encore pris en charge pour une durée limitée, le temps de mettre vos sites à jour. Le changement du rendu a été fait pour correspondre à la dernière version de la spécification.
-moz-box-shadowbox-shadow
- -

Divers changements CSS

- - - -

Graphisme et vidéo

- -
-
-
WebGL
-
La norme WebGL (encore en développement) est maintenant supportée par Firefox.
-
Optimisation des performances graphique
-
Trucs et astuces pour profiter le maximum des performances graphiques et vidéo dans Firefox 4.
-
Support de WebM
-
Le nouveau format vidéo ouvert WebM est supporté par Gecko 2.0.
-
Animation SVG avec SMIL
-
Les animations SVG avec SMIL sont désomais supportées.
-
Utilisation de SVG comme image ou arrière-plan CSS
-
Vous pouvez maintenant utilisez SVG avec l'élément <img>, ainsi qu'avec CSS background-image.
-
Attribut Media buffered
-
L'attribut buffered sur les éléments <video> and <audio> est maintenant supporté, vous permettant de déterminer quel fichier multimédia a été tamponné. L'interface DOM TimeRanges a été mise en place pour ce support.
-
Attribut Media preload
-
L'attribut preload de la spécification HTML5 a été implémenté, remplaçant l'attribut autobuffer précédemment mis en place (et qui n'est plus pris en charge). Cela affecte les éléments <video> et <audio> ainsi que l'interface nsIDOMHTMLMediaElement.
-
Amélioration du positionnement du texte SVG
-
Vous pouvez maintenant spécifier des listes des valeurs pour les propriétés x, y, dx, and dy sur les éléments SVG <text> et <tspan>. Cela vous permet de contrôler le positionnement de chaque caractère d'une chaîne, individuellement.
-
- -

DOM

- -
-
Tableaux JavaScript typés
-
Ajout du support pour les tableaux JavaScript typés, cela vous permet de manipuler des tampons contenant des données brutes en utilisant des types de données natives. Plusieurs API utilisent ça, y compris l'API File, WebGL et WebSockets.
-
Obtention des limites des rectangles limites
-
L'objet Range a désormais les méthodes range.getClientRects() et range.getBoundingClientRect().
-
Capture des évènements de la souris sur des éléments quelconques
-
Ajout du support des APIs setCapture() et releaseCapture() originaires d'Internet Explorer. Voir bug 503943.
-
Manipulation de l'historique du navigateur
-
L'objet de l'historique déjà existant et disponible via l'objet window.history, supporte maintenant les nouvelles méthodes HTML5 pushState() et replaceState().
-
Animations utilisant MozBeforePaint
-
Un nouvel évènement a été ajouté, qui, avec l'aide de la méthode window.mozRequestAnimationFrame() et de la propriété window.mozAnimationStartTime, offre un moyen de créer des animations qui sont synchronisées avec les autres.
-
Evènements touch et multi-touch
-
Ajout du support des évènements touch et multi-touch.
-
- -

Changement des interfaces DOM d'éléments HTML

- -

Plusieurs éléments HTML ont vu leur interface DOM modifier, conformément à la spécification HTML5.

- - - - - - - - - - - - - - - - - - - - - - - - - - -
Interface dans Firefox 3.6Interface dans Firefox 4Elements HTML
HTMLSpanElementHTMLElement<abbr>, <acronym>, <address>, <b>, <bdo>, <big>, <blink>, <center>, <cite>, <code>, <dd>, <dfn>, <dt>, <em>, <i>, <kbd>, <listing>, <nobr>, <plaintext>, <s>, <samp>, <small>, <strike>, <strong>, <sub>, <sup>, , <tt>, <u>, <var>, <xmp>
HTMLDivElementHTMLElement<noembed>, <noframes>, <noscript>
HTMLWBRElementHTMLElement<wbr>
- -
-
- -

Divers changements DOM

- - - -

Securité

- -
-
Content Security Policy (CSP)
-
Content Security Policy (CSP) est une proposition de Mozilla, conçu pour aider les concepteurs de sites Web et les administrateurs de serveur en spécifiant comment le contenu sur leurs sites Web agit. L'objectif est d'aider à détecter et à atténuer les attaques incluant le cross-site scripting et des attaques par injection de données.
-
HTTP Strict Transport Security
-
HTTP Strict Transport Security est un dispositif de sécurité qui permet à un site web d'indiquer au navigateur d'utiliser une connexion sécurisée (HTTPS) à la place du protocole HTTP.
-
L'en-tête de réponse X-FRAME-OPTIONS
-
L'en-tête de réponse X-FRAME-OPTIONS HTTP introduite dans Internet Explorer 8 est désormais supportée par Firefox. Cela permet aux sites d'indiquer si leurs pages peuvent être utilisées dans des frames ou si l'utilisation de la page doit être restreint.
-
Changement de la chaîne de l'agent utilisateur
-
C'est un moyen de réduire la quantité et l'entropie des données envoyées dans les requêts HTPP (voir bug 572650), le niveau de cryptage et le signe de la langue ont été enlevés de la chaîne de l'agent utilisateur.
-
- -

JavaScript

- -

Pour un aperçu des changements effectués dans JavaScript 1.8.5, voir New in JavaScript 1.8.5. Dans Firefox 4, JavaScript a un plus grand respect de la norme ECMAScript 5.

- -

Outils pour les développeurs

- -
-
Utilisation de la Console Web
-
La Console Web est un outil qui aide le débogage.
-
- -

A partir de Firefox 4, la Console d'erreurs est désactivée par défaut. Vous pouvez la ré-activer en modifiant la préférence devtools.errorconsole.enabled à true et en redémarrant le navigateur.

- - -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Pour des conseils utiles sur la mise à jour des extensions existantes pour Firefox 4, voir Updating extensions for Firefox 4. Il y a plusieurs changements importants qui cassent la compatibilité avec les add-ons, donc n'oubliez pas de lire cet article.

- -

Si vous développez des thèmes, vous devez lire Theme changes in Firefox 4 afin de connaître certains changements importants.

- -

Modules de code JavaScript

- -
-
Services.jsm
-
Le module de code Services.jsm fournit des accesseurs qui font qu'il est facile d'obtenir des références sur les services couramment utilisés, tels que le service de préférences ou le médiateur fenêtre.
-
API JS-ctypes
-
L'API JS-ctypes permet d'appeler une bibliothèque de fonctions étrangère C-compatible sans utiliser XPCOM.
-
Gestionnaire de modules complémentaires
-
Le nouveau gestionnaire de modules complémentaires fournit des informations sur les modules, permet la modifications des options, l'installation et la suppression des modules.
-
PopupNotifications.jsm
-
Le nouveau module des notifications popup facilite la présentation des notifications non-modales. Vous pouvez voir comment utiliser cette API dans Using popup notifications.
-
Chargement des modules de code à partir des URLs chrome:
-
Vous pouvez maintenant charger des modules de code à partir d'URLs chrome:, même à l'intérieur de fichiers JAR.
-
DownloadLastDir.jsm
-
Le module de code DownloadLastDir.jsm fournit la variable gDownloadLastDir qui contient une chaîne qui permet de connaître le chemin du répertoire dans lequel le dernier téléchargement s'est produit. Ce module gère les questions liées à la navigation privée.
-
Mesurer les performances en utilisant le module de code PerfMeasurement.jsm code module
-
Le module de code PerfMeasurement.jsm propose une API qui mesure les performances au niveau du CPU dans du code JavaScript.
-
- -

Divers changements dans les modules de code

- - - -

Changements DOM

- -
-
ChromeWorker
-
Un nouveau type de travailleur pour du code privilégié, ce qui permet l'utilisation de choses comme js-ctypes à partir des travailleurs dans les extensions et le code d'une application.
-
Evènements tactile
-
Ajout du support de l'évènement tactile (non-standard), cela permet de pouvoir suivre plusieurs doigts qui se déplacent en même temps sur un écran tactile.
-
- -

Autres changements DOM

- - - -
-
- -

XUL

- -

Changements pour l'élément tabbrowser

- -

Plusieurs changements ont été apportés à l'élément <xul:tabbrowser> ce qui impacte les extensions qui interagissent avec les onglets. En plus du support de app tabs, ces changements on aussi modifiés la barre d'onglet en une barre d'outils standard, ce qui permet à l'utilisateur de faire glisser les boutons dans la barre d'outils.

- - - -

Changements pour les popups

- - - -

Suppression du support à distance de XUL

- -

Le support à distance de XUL n'est plus supporté, cela affecte les documents XUL qui étaient servis par HTTP, en outre, vous ne pouvez plus charger des documents XUL en utilisant l'URL file:// sauf en créant une préférence dom.allow_XUL_XBL_for_file avec la valeur true. Cependant, il y a une fonctionnalité de liste blanche qui peut être utilisée pour permettre à des domaines spécifiques de charger XUL à distance. L'extension Remote XUL Manager vous permet de gérer cette liste blanche.

- -

Divers changements XUL

- - - -

Changements dans l'UI affectant les développeurs

- -
-
La barre d'add-on
-
La barre d'état a été supprimée en faveur de la nouvelle barre d'add-on. Vous devrez mettre à jour votre extension l'utiliser cette option si vous aviez ajouté l'UI de la barre d'état avant.
-
Cacher le chrome du navigateur
-
Vous pouvez désormais cacher le chrome du navigateur quand il est souhaitable de le faire, par exemple, about:addons le fait.
-
- -

Storage

- -

Divers changement dans l'API Storage

- - - -

XPCOM

- -

En plus des changements spécifiques référencés ci-dessous, il est important de noter qu'il n'y a plus aucune interfaces gelées. Elles sont toutes dégelées maintenant, indépendamment de ce que peut indiquer la documentation. Nous mettrons à jour la documentation au fil du temps.

- -
-
Changements d'XPCOM dans Gecko 2.0
-
Détails sur les modifications d'XPCOM qui impactent la compatibilité dans Firefox 4.
-
Components.utils.getGlobalForObject()
-
Cette nouvelle méthode retourne l'objet global avec lequel un objet est associé, ce qui remplace un cas d'utilisation commun de __parent__ qui est désormais retiré.
-
- -

Places

- - - -

Changements dans les interfaces

- - - -

Gestion de la mémoire

- -
-
Allocation infaillible de la mémoire
-
Mozilla propose désormais des répartiteur de mémoire infaillible qui sont garantis de ne pas retouner null. Vous devriez lire cet article pour connaitre leur fonctionnement et savoir comment demander l'allocation de la mémoire.
-
- -

Autres changements

- - - -

Autres changements

- -
-
Seul le fichier chrome.manifest racine est chargé
-
maintenant seul le fichier chrome.manifest racine est chargé ; si vous avez besoin de fichiers manifestes secondaires à charger, vous pouvez utilisez la commande manifest dans votre fichier chrome.manifest racine pour les charger.
-
Suppression du support de Gopher
-
Le protocole Gopher n'est plus supporté nativement. L'extension OverbiteFF permet de continuer à le supporter.
-
Gestion des évènement du processus Content
-
Pour le support des plugins hors du processus et les multiples processus caractéristiques, une nouvelle API a été mise en place pour permettre l'envoi de messages dans les processus.
-
Bootstrap des extensions
-
Vous pouvez désormais créer des extensions qui peuvent être installées, désinstallées et mises à jour sans nécessiter le redémarrage du navigateur.
-
Suppression des plugins par défaut
-
The default plugin has been removed. The application plugins folder has also been removed by default, however support for installing plugins via this folder still exists. Voir bug 533891.
-
Extension Manager remplacé par Addon Manager
-
nsIExtensionManager a été remplacée par AddonManager.
-
Child HWNDs n'est plus utilisé
-
Firefox ne créé plus de child HWNDs pour son usage interne sous Windows. Si vous avez codé une extension qui utilise du code natif pour manipuler ces HWNDs, votre extensions ne fonctionnera pas dans Firefox 4. Soit vous devez arrêter l'utilisation de HWND ou soit mettre votre code reposant sur HWND dans un plugin NPAPI. C'est un gros travail, alors si vous pouviez éviter d'utiliser HWND directement.
-
Changements dans les gestes
-
Les gestes par défaut ont été changés, en faisant glisser trois doigts de haut en bas sur le trackpad cela ouvrira ou fermera Firefox Panorama. Pour modifier les éléments précédents, afin d'avoir les commandes de défilement haut et défilement bas, ouvrez about:config et mettez cmd_scrollBottom pour browser.gesture.swipe.down et cmd_scrollTop pour browser.gesture.swipe.up.
-
- -

Voir également

- - diff --git a/files/fr/mozilla/firefox/releases/4/index.md b/files/fr/mozilla/firefox/releases/4/index.md new file mode 100644 index 0000000000..4b52f31188 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/4/index.md @@ -0,0 +1,631 @@ +--- +title: Firefox 4 pour les développeurs +slug: Mozilla/Firefox/Releases/4 +tags: + - Firefox + - Firefox 4 +translation_of: Mozilla/Firefox/Releases/4 +original_slug: Mozilla/Firefox/Versions/4 +--- +
+
    +
  1. + +

    Notes de versions pour développeurs

    +
      +
    1. Notes de versions pour développeurs
    2. +
    + +
  2. +
  3. + +

    Modules complémentaires

    +
      +
    1. WebExtensions
    2. +
    3. Thèmes
    4. +
    + +
  4. +
  5. + +

    Fonctionnement interne de Firefox

    +
      +
    1. Le projet Mozilla
    2. +
    3. Gecko
    4. +
    5. Mode « headless »
    6. +
    7. Modules de code Javascript
    8. +
    9. JS-ctypes
    10. +
    11. Le projet MathML
    12. +
    13. MFBT
    14. +
    15. Les projets Mozilla
    16. +
    17. Le système de préférences
    18. +
    19. Connexions WebIDL
    20. +
    21. XPCOM
    22. +
    23. XUL
    24. +
    + +
  6. +
  7. + +

    Développer et contribuer

    +
      +
    1. Instructions de compilation
    2. +
    3. Configuration des options de compilation
    4. +
    5. Fonctionnement de la compilation
    6. +
    7. Code source de Mozilla
    8. +
    9. Localisation
    10. +
    11. Mercurial
    12. +
    13. Assurance qualité
    14. +
    15. Utilisation de code Mozilla dans d'autres projets
    16. +
    + +
  8. +
+
+ +

Firefox 4, est sorti le 22 mars 2011, améliore les performances, le support d'HTML5 et d'autres technologies du web et aussi la sécurité. Cet article fournit des informations sur cette version et sur les fonctionnalités qui sont disponibles pour les développeurs Web, les développeurs de modules complémentaires et les développeurs de la plate-forme Gecko.

+ +

Fonctionnalités pour les développeurs Web

+ +

Gecko utilise maintenant le parseur HTML5, qui corrige des bugs, améliore l'interopérabilité et les performances. Il permet également d'intégrer du contenu SVG et MathML directement dans le code HTML.

+ +

HTML

+ +
+
Rencontrez le parseur HTML5
+
Un aperçu sur ce que le parseur HTML5 représente pour vous et comment intégrer du contenu SVG et MathML dans votre code.
+
Les formulaires en HTML5
+
Un aperçu de l'amélioration de formulaires Web en HTML5. Parmi les changements on ajoute les types d'entrée dans l'élément <input>, la validation des données et d'autres modifications.
+
Sections HTML5
+
Gecko supporte à présent les nouveaux éléments HTML5 liés aux sections dans un document : <article>, <section>, <nav>, <aside>, <hgroup>, <header> et <footer>.
+
Attribut HTML5 hidden
+
Cet attribut, commun à tous les éléments, est utilisé pour cacher le contenu d'une page Web qui n'est pas encore pertinent pour l'utilisateur.
+
Autres éléments HTML5
+
Gecko supporte les nouveaux éléments HTML5 suivants : <mark>, <figure>, et <figcaption>.
+
WebSockets
+
Un guide pour utiliser la nouvelle API WebSockets pour la communication entre une application web et un serveur en temps réel. A noter que WebSockets tel qu'implémenté dans Firefox 4 n'est pas compatible avec la norme finale, et ne devrait pas être utilisé.
+
+ +

Améliorations de Canvas

+ +

Les modifications suivantes ont étés apportées à l'interface CanvasRenderingContext2D pour permettre à l'implémentation de <canvas> d'être en conformité avec la spécification :

+ + + +
+
+ +

Autres changements HTML

+ + + +

CSS

+ +
+
Transitions CSS
+
Le support des transitions CSS est disponible dans Firefox 4.
+
Les valeurs calculées en CSS
+
Le support de -moz-calc a été ajouté. Cela permet de spécifier des valeurs de <length> comme des expressions mathématiques.
+
Groupement de sélecteurs
+
Le support de :-moz-any pour grouper les sélecteurs et factoriser des combinateurs.
+
Support subrectangle pour background-image
+
La propriété -moz-image-rect permet d'utiliser des subrectangles en tant que background-image.
+
Propriétés CSS tactile
+
Le support des propriétés tactiles a été ajouté. Plus de détails plus tard.
+
Utilisation arbitraires d'élements comme fond
+
Vou pouvez utiliser la fonction CSS -moz-element et la fonction DOM document.mozSetImageElement() pour une utilisation arbitraire des éléments HTML comme fond.
+
Sélecteur :visited et confidentialité
+
Des modifications ont étés apportées sur les informations qui peuvent être obtenues sur le style des liens visités en utilisant les sélecteurs CSS. Certaines applications Web peuvent être affectées.
+
+ +

Nouvelles propriétés CSS

+ + + + + + + + + + + + + + + + + + + + +
PropriétéDescription
-moz-font-feature-settingsPermet de personnaliser les fonctionnalités avancées des polices OpenType.
-moz-tab-sizeSpécifie la largeur d'un espace de tabulation (U+0009) lors du rendu du texte.
resizePermet de modifier les dimensions d'un élément.
+ +
+
+ +

Nouvelles pseudo-classes CSS

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Pseudo-classDescription
:-moz-handler-crashedUtilisé pour le style d'un élément dont le plugin a planté.
:-moz-placeholderAppliquée à l'espace texte réservé dans les champs des formulaires.
:-moz-submit-invalidAppliquée au bouton d'envoi des formulaires quand un ou plusieurs des champs ne sont pas valides.
:-moz-window-inactiveAppliquée aux éléments d'une fenêtre inactive.
:invalidAutomatiquement appliquée aux champs <input> dont le contenu est invalide.
:optionalAutomatiquement appliquée aux champs <input> qui ne spécifient pas l'attribut required.
:requiredAutomatiquement appliquée aux champs <input> qui spécifient l'attribut required.
:validAutomatiquement appliquée aux champs <input> dont le contenu a été validé avec succès.
+ +

Nouveaux pseudo-selectors CSS

+ + + + + + + + + + + + +
Pseudo-selectorDescription
:-moz-focusringPermet de spécifier l'apparence d'un élément lorsque Gecko estime que l'on doit se fixer dessus.
+ +

Nouvelles fonctions CSS

+ + + + + + + + + + + + + + + + + + + + + + + + +
FonctionDescription
:-moz-anyPermet de grouper les sélecteurs et de factoriser les combinateurs.
-moz-calcPermet de spécifier des valeurs de <length> comme des expressions mathématiques.
-moz-elementPermet d'utiliser un élément arbritaire de fond pour background-image and background.
-moz-image-rectPermet d'utiliser un subrectangle d'une image comme background-image or background.
+ +

Propriétés CSS renommées

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Ancien nomNouveau nomNotes
-moz-background-sizebackground-sizeLe nom -moz-background-size n'est plus supporté.
-moz-border-radiusborder-radiusL'ancien nom est encore pris en charge pour une durée limitée, le temps de mettre vos sites à jour. Le changement du rendu a été fait pour correspondre à la dernière version de la spécification.
-moz-box-shadowbox-shadow
+ +

Divers changements CSS

+ + + +

Graphisme et vidéo

+ +
+
+
WebGL
+
La norme WebGL (encore en développement) est maintenant supportée par Firefox.
+
Optimisation des performances graphique
+
Trucs et astuces pour profiter le maximum des performances graphiques et vidéo dans Firefox 4.
+
Support de WebM
+
Le nouveau format vidéo ouvert WebM est supporté par Gecko 2.0.
+
Animation SVG avec SMIL
+
Les animations SVG avec SMIL sont désomais supportées.
+
Utilisation de SVG comme image ou arrière-plan CSS
+
Vous pouvez maintenant utilisez SVG avec l'élément <img>, ainsi qu'avec CSS background-image.
+
Attribut Media buffered
+
L'attribut buffered sur les éléments <video> and <audio> est maintenant supporté, vous permettant de déterminer quel fichier multimédia a été tamponné. L'interface DOM TimeRanges a été mise en place pour ce support.
+
Attribut Media preload
+
L'attribut preload de la spécification HTML5 a été implémenté, remplaçant l'attribut autobuffer précédemment mis en place (et qui n'est plus pris en charge). Cela affecte les éléments <video> et <audio> ainsi que l'interface nsIDOMHTMLMediaElement.
+
Amélioration du positionnement du texte SVG
+
Vous pouvez maintenant spécifier des listes des valeurs pour les propriétés x, y, dx, and dy sur les éléments SVG <text> et <tspan>. Cela vous permet de contrôler le positionnement de chaque caractère d'une chaîne, individuellement.
+
+ +

DOM

+ +
+
Tableaux JavaScript typés
+
Ajout du support pour les tableaux JavaScript typés, cela vous permet de manipuler des tampons contenant des données brutes en utilisant des types de données natives. Plusieurs API utilisent ça, y compris l'API File, WebGL et WebSockets.
+
Obtention des limites des rectangles limites
+
L'objet Range a désormais les méthodes range.getClientRects() et range.getBoundingClientRect().
+
Capture des évènements de la souris sur des éléments quelconques
+
Ajout du support des APIs setCapture() et releaseCapture() originaires d'Internet Explorer. Voir bug 503943.
+
Manipulation de l'historique du navigateur
+
L'objet de l'historique déjà existant et disponible via l'objet window.history, supporte maintenant les nouvelles méthodes HTML5 pushState() et replaceState().
+
Animations utilisant MozBeforePaint
+
Un nouvel évènement a été ajouté, qui, avec l'aide de la méthode window.mozRequestAnimationFrame() et de la propriété window.mozAnimationStartTime, offre un moyen de créer des animations qui sont synchronisées avec les autres.
+
Evènements touch et multi-touch
+
Ajout du support des évènements touch et multi-touch.
+
+ +

Changement des interfaces DOM d'éléments HTML

+ +

Plusieurs éléments HTML ont vu leur interface DOM modifier, conformément à la spécification HTML5.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
Interface dans Firefox 3.6Interface dans Firefox 4Elements HTML
HTMLSpanElementHTMLElement<abbr>, <acronym>, <address>, <b>, <bdo>, <big>, <blink>, <center>, <cite>, <code>, <dd>, <dfn>, <dt>, <em>, <i>, <kbd>, <listing>, <nobr>, <plaintext>, <s>, <samp>, <small>, <strike>, <strong>, <sub>, <sup>, , <tt>, <u>, <var>, <xmp>
HTMLDivElementHTMLElement<noembed>, <noframes>, <noscript>
HTMLWBRElementHTMLElement<wbr>
+ +
+
+ +

Divers changements DOM

+ + + +

Securité

+ +
+
Content Security Policy (CSP)
+
Content Security Policy (CSP) est une proposition de Mozilla, conçu pour aider les concepteurs de sites Web et les administrateurs de serveur en spécifiant comment le contenu sur leurs sites Web agit. L'objectif est d'aider à détecter et à atténuer les attaques incluant le cross-site scripting et des attaques par injection de données.
+
HTTP Strict Transport Security
+
HTTP Strict Transport Security est un dispositif de sécurité qui permet à un site web d'indiquer au navigateur d'utiliser une connexion sécurisée (HTTPS) à la place du protocole HTTP.
+
L'en-tête de réponse X-FRAME-OPTIONS
+
L'en-tête de réponse X-FRAME-OPTIONS HTTP introduite dans Internet Explorer 8 est désormais supportée par Firefox. Cela permet aux sites d'indiquer si leurs pages peuvent être utilisées dans des frames ou si l'utilisation de la page doit être restreint.
+
Changement de la chaîne de l'agent utilisateur
+
C'est un moyen de réduire la quantité et l'entropie des données envoyées dans les requêts HTPP (voir bug 572650), le niveau de cryptage et le signe de la langue ont été enlevés de la chaîne de l'agent utilisateur.
+
+ +

JavaScript

+ +

Pour un aperçu des changements effectués dans JavaScript 1.8.5, voir New in JavaScript 1.8.5. Dans Firefox 4, JavaScript a un plus grand respect de la norme ECMAScript 5.

+ +

Outils pour les développeurs

+ +
+
Utilisation de la Console Web
+
La Console Web est un outil qui aide le débogage.
+
+ +

A partir de Firefox 4, la Console d'erreurs est désactivée par défaut. Vous pouvez la ré-activer en modifiant la préférence devtools.errorconsole.enabled à true et en redémarrant le navigateur.

+ + +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Pour des conseils utiles sur la mise à jour des extensions existantes pour Firefox 4, voir Updating extensions for Firefox 4. Il y a plusieurs changements importants qui cassent la compatibilité avec les add-ons, donc n'oubliez pas de lire cet article.

+ +

Si vous développez des thèmes, vous devez lire Theme changes in Firefox 4 afin de connaître certains changements importants.

+ +

Modules de code JavaScript

+ +
+
Services.jsm
+
Le module de code Services.jsm fournit des accesseurs qui font qu'il est facile d'obtenir des références sur les services couramment utilisés, tels que le service de préférences ou le médiateur fenêtre.
+
API JS-ctypes
+
L'API JS-ctypes permet d'appeler une bibliothèque de fonctions étrangère C-compatible sans utiliser XPCOM.
+
Gestionnaire de modules complémentaires
+
Le nouveau gestionnaire de modules complémentaires fournit des informations sur les modules, permet la modifications des options, l'installation et la suppression des modules.
+
PopupNotifications.jsm
+
Le nouveau module des notifications popup facilite la présentation des notifications non-modales. Vous pouvez voir comment utiliser cette API dans Using popup notifications.
+
Chargement des modules de code à partir des URLs chrome:
+
Vous pouvez maintenant charger des modules de code à partir d'URLs chrome:, même à l'intérieur de fichiers JAR.
+
DownloadLastDir.jsm
+
Le module de code DownloadLastDir.jsm fournit la variable gDownloadLastDir qui contient une chaîne qui permet de connaître le chemin du répertoire dans lequel le dernier téléchargement s'est produit. Ce module gère les questions liées à la navigation privée.
+
Mesurer les performances en utilisant le module de code PerfMeasurement.jsm code module
+
Le module de code PerfMeasurement.jsm propose une API qui mesure les performances au niveau du CPU dans du code JavaScript.
+
+ +

Divers changements dans les modules de code

+ + + +

Changements DOM

+ +
+
ChromeWorker
+
Un nouveau type de travailleur pour du code privilégié, ce qui permet l'utilisation de choses comme js-ctypes à partir des travailleurs dans les extensions et le code d'une application.
+
Evènements tactile
+
Ajout du support de l'évènement tactile (non-standard), cela permet de pouvoir suivre plusieurs doigts qui se déplacent en même temps sur un écran tactile.
+
+ +

Autres changements DOM

+ + + +
+
+ +

XUL

+ +

Changements pour l'élément tabbrowser

+ +

Plusieurs changements ont été apportés à l'élément <xul:tabbrowser> ce qui impacte les extensions qui interagissent avec les onglets. En plus du support de app tabs, ces changements on aussi modifiés la barre d'onglet en une barre d'outils standard, ce qui permet à l'utilisateur de faire glisser les boutons dans la barre d'outils.

+ + + +

Changements pour les popups

+ + + +

Suppression du support à distance de XUL

+ +

Le support à distance de XUL n'est plus supporté, cela affecte les documents XUL qui étaient servis par HTTP, en outre, vous ne pouvez plus charger des documents XUL en utilisant l'URL file:// sauf en créant une préférence dom.allow_XUL_XBL_for_file avec la valeur true. Cependant, il y a une fonctionnalité de liste blanche qui peut être utilisée pour permettre à des domaines spécifiques de charger XUL à distance. L'extension Remote XUL Manager vous permet de gérer cette liste blanche.

+ +

Divers changements XUL

+ + + +

Changements dans l'UI affectant les développeurs

+ +
+
La barre d'add-on
+
La barre d'état a été supprimée en faveur de la nouvelle barre d'add-on. Vous devrez mettre à jour votre extension l'utiliser cette option si vous aviez ajouté l'UI de la barre d'état avant.
+
Cacher le chrome du navigateur
+
Vous pouvez désormais cacher le chrome du navigateur quand il est souhaitable de le faire, par exemple, about:addons le fait.
+
+ +

Storage

+ +

Divers changement dans l'API Storage

+ + + +

XPCOM

+ +

En plus des changements spécifiques référencés ci-dessous, il est important de noter qu'il n'y a plus aucune interfaces gelées. Elles sont toutes dégelées maintenant, indépendamment de ce que peut indiquer la documentation. Nous mettrons à jour la documentation au fil du temps.

+ +
+
Changements d'XPCOM dans Gecko 2.0
+
Détails sur les modifications d'XPCOM qui impactent la compatibilité dans Firefox 4.
+
Components.utils.getGlobalForObject()
+
Cette nouvelle méthode retourne l'objet global avec lequel un objet est associé, ce qui remplace un cas d'utilisation commun de __parent__ qui est désormais retiré.
+
+ +

Places

+ + + +

Changements dans les interfaces

+ + + +

Gestion de la mémoire

+ +
+
Allocation infaillible de la mémoire
+
Mozilla propose désormais des répartiteur de mémoire infaillible qui sont garantis de ne pas retouner null. Vous devriez lire cet article pour connaitre leur fonctionnement et savoir comment demander l'allocation de la mémoire.
+
+ +

Autres changements

+ + + +

Autres changements

+ +
+
Seul le fichier chrome.manifest racine est chargé
+
maintenant seul le fichier chrome.manifest racine est chargé ; si vous avez besoin de fichiers manifestes secondaires à charger, vous pouvez utilisez la commande manifest dans votre fichier chrome.manifest racine pour les charger.
+
Suppression du support de Gopher
+
Le protocole Gopher n'est plus supporté nativement. L'extension OverbiteFF permet de continuer à le supporter.
+
Gestion des évènement du processus Content
+
Pour le support des plugins hors du processus et les multiples processus caractéristiques, une nouvelle API a été mise en place pour permettre l'envoi de messages dans les processus.
+
Bootstrap des extensions
+
Vous pouvez désormais créer des extensions qui peuvent être installées, désinstallées et mises à jour sans nécessiter le redémarrage du navigateur.
+
Suppression des plugins par défaut
+
The default plugin has been removed. The application plugins folder has also been removed by default, however support for installing plugins via this folder still exists. Voir bug 533891.
+
Extension Manager remplacé par Addon Manager
+
nsIExtensionManager a été remplacée par AddonManager.
+
Child HWNDs n'est plus utilisé
+
Firefox ne créé plus de child HWNDs pour son usage interne sous Windows. Si vous avez codé une extension qui utilise du code natif pour manipuler ces HWNDs, votre extensions ne fonctionnera pas dans Firefox 4. Soit vous devez arrêter l'utilisation de HWND ou soit mettre votre code reposant sur HWND dans un plugin NPAPI. C'est un gros travail, alors si vous pouviez éviter d'utiliser HWND directement.
+
Changements dans les gestes
+
Les gestes par défaut ont été changés, en faisant glisser trois doigts de haut en bas sur le trackpad cela ouvrira ou fermera Firefox Panorama. Pour modifier les éléments précédents, afin d'avoir les commandes de défilement haut et défilement bas, ouvrez about:config et mettez cmd_scrollBottom pour browser.gesture.swipe.down et cmd_scrollTop pour browser.gesture.swipe.up.
+
+ +

Voir également

+ + diff --git a/files/fr/mozilla/firefox/releases/40/index.html b/files/fr/mozilla/firefox/releases/40/index.html deleted file mode 100644 index 94b920ee42..0000000000 --- a/files/fr/mozilla/firefox/releases/40/index.html +++ /dev/null @@ -1,196 +0,0 @@ ---- -title: Firefox 40 pour développeurs -slug: Mozilla/Firefox/Releases/40 -translation_of: Mozilla/Firefox/Releases/40 -original_slug: Mozilla/Firefox/Versions/40 ---- -
{{FirefoxSidebar}}
- -

Changements pour les développeurs Web

- -

Outils pour Développeurs

- -

Nouveautés:

- - - -

More:

- - - -

Autres: Tous les bugs devtools corrigés depuis Firefox 39 et Firefox 40.

- -

CSS

- - - -

HTML

- -

pas de changement.

- -

JavaScript

- - - -

Interfaces/APIs/DOM

- -

Nouvelles APIs

- - - -

Web Animations API

- -

Amélioration de notre implémentation des animations Web expérimentales, principalement mostley to match latest spec changes:

- - - -

CSSOM

- - - -

WebRTC

- - - -

DOM & HTML DOM

- - - -

Web Audio API

- -

Nouvelles extensions pour l'API Web Audio:

- - - -

Web Workers

- - - -

IndexedDB

- - - -

Dev Tools

- - - -

MathML

- -

pas de changement.

- -

SVG

- -

pas de changement.

- -

Audio/Video

- -

pas de changement.

- -

Networking

- -

pas de changement.

- -

Security

- - - -

Changes for add-on and Mozilla developers

- -

XUL

- -

pas de changement.

- -

JavaScript code modules

- - - -

XPCOM

- -

No change.

- -

Other

- - - -

See also

- - - -

Older versions

- -

{{Firefox_for_developers('39')}}

diff --git a/files/fr/mozilla/firefox/releases/40/index.md b/files/fr/mozilla/firefox/releases/40/index.md new file mode 100644 index 0000000000..94b920ee42 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/40/index.md @@ -0,0 +1,196 @@ +--- +title: Firefox 40 pour développeurs +slug: Mozilla/Firefox/Releases/40 +translation_of: Mozilla/Firefox/Releases/40 +original_slug: Mozilla/Firefox/Versions/40 +--- +
{{FirefoxSidebar}}
+ +

Changements pour les développeurs Web

+ +

Outils pour Développeurs

+ +

Nouveautés:

+ + + +

More:

+ + + +

Autres: Tous les bugs devtools corrigés depuis Firefox 39 et Firefox 40.

+ +

CSS

+ + + +

HTML

+ +

pas de changement.

+ +

JavaScript

+ + + +

Interfaces/APIs/DOM

+ +

Nouvelles APIs

+ + + +

Web Animations API

+ +

Amélioration de notre implémentation des animations Web expérimentales, principalement mostley to match latest spec changes:

+ + + +

CSSOM

+ + + +

WebRTC

+ + + +

DOM & HTML DOM

+ + + +

Web Audio API

+ +

Nouvelles extensions pour l'API Web Audio:

+ + + +

Web Workers

+ + + +

IndexedDB

+ + + +

Dev Tools

+ + + +

MathML

+ +

pas de changement.

+ +

SVG

+ +

pas de changement.

+ +

Audio/Video

+ +

pas de changement.

+ +

Networking

+ +

pas de changement.

+ +

Security

+ + + +

Changes for add-on and Mozilla developers

+ +

XUL

+ +

pas de changement.

+ +

JavaScript code modules

+ + + +

XPCOM

+ +

No change.

+ +

Other

+ + + +

See also

+ + + +

Older versions

+ +

{{Firefox_for_developers('39')}}

diff --git a/files/fr/mozilla/firefox/releases/41/index.html b/files/fr/mozilla/firefox/releases/41/index.html deleted file mode 100644 index 51a8e8ad3b..0000000000 --- a/files/fr/mozilla/firefox/releases/41/index.html +++ /dev/null @@ -1,198 +0,0 @@ ---- -title: Firefox 41 pour développeurs -slug: Mozilla/Firefox/Releases/41 -tags: - - Firefox - - Versions -translation_of: Mozilla/Firefox/Releases/41 -original_slug: Mozilla/Firefox/Versions/41 ---- -
{{FirefoxSidebar}}
- -

Changements pour les développeurs Web

- -

Outils pour Développeurs

- -

Nouveautés:

- - - -

All devtools bugs fixed between Firefox 40 and Firefox 41: note that many of these bugs, especially those relating to the performance tools, were uplifted to Firefox 40.

- -

CSS

- - - -

HTML

- - - -

JavaScript

- - - -

Interfaces/APIs/DOM

- -

HTML Editing API

- - - -

Events

- - - -

Web Crypto

- - - -

Canvas API

- - - -

Service Workers

- - - -

Miscellaneous

- - - -

MathML

- -

New default and fallback font handling

- -

Mathematical formulas require special fonts. So far, these fonts were hard-coded in the mathml.css user agent stylesheet (which sets the font-family on {{MathMLElement("math")}} tag) and in the preference option font.mathfont-family (which sets the fallback fonts to use for stretchy and large operators). Firefox 41 introduces, an internal x-math language that is automatically set on the <math> tag as well as corresponding preference options (e.g. font.name.serif.x-math). The user agent stylesheet now sets font-family to serif on the <math> tag and the preference option font.mathfont-family is replaced with font.name.serif.x-math.  All platforms now essentially use the same list of fallback fonts, with "Latin Modern Math" as first one. The default/fallback fonts can be configured from the standard per-language font preference menu. For more details, see {{bug(947654)}} and {{bug(1160456)}}.

- -

SVG

- - - -

Audio/Video

- - - -

HTTP

- - - -

Networking

- -

pas de changement.

- -

Security

- - - -

Changes for add-on and Mozilla developers

- -

XUL

- -

pas de changement.

- -

JavaScript code modules

- -

pas de changement.

- -

XPCOM

- -

Interfaces

- -

pas de changement.

- -

Other

- -

pas de changement.

- -

See also

- - - -

Older versions

- -

{{Firefox_for_developers('40')}}

diff --git a/files/fr/mozilla/firefox/releases/41/index.md b/files/fr/mozilla/firefox/releases/41/index.md new file mode 100644 index 0000000000..51a8e8ad3b --- /dev/null +++ b/files/fr/mozilla/firefox/releases/41/index.md @@ -0,0 +1,198 @@ +--- +title: Firefox 41 pour développeurs +slug: Mozilla/Firefox/Releases/41 +tags: + - Firefox + - Versions +translation_of: Mozilla/Firefox/Releases/41 +original_slug: Mozilla/Firefox/Versions/41 +--- +
{{FirefoxSidebar}}
+ +

Changements pour les développeurs Web

+ +

Outils pour Développeurs

+ +

Nouveautés:

+ + + +

All devtools bugs fixed between Firefox 40 and Firefox 41: note that many of these bugs, especially those relating to the performance tools, were uplifted to Firefox 40.

+ +

CSS

+ + + +

HTML

+ + + +

JavaScript

+ + + +

Interfaces/APIs/DOM

+ +

HTML Editing API

+ + + +

Events

+ + + +

Web Crypto

+ + + +

Canvas API

+ + + +

Service Workers

+ + + +

Miscellaneous

+ + + +

MathML

+ +

New default and fallback font handling

+ +

Mathematical formulas require special fonts. So far, these fonts were hard-coded in the mathml.css user agent stylesheet (which sets the font-family on {{MathMLElement("math")}} tag) and in the preference option font.mathfont-family (which sets the fallback fonts to use for stretchy and large operators). Firefox 41 introduces, an internal x-math language that is automatically set on the <math> tag as well as corresponding preference options (e.g. font.name.serif.x-math). The user agent stylesheet now sets font-family to serif on the <math> tag and the preference option font.mathfont-family is replaced with font.name.serif.x-math.  All platforms now essentially use the same list of fallback fonts, with "Latin Modern Math" as first one. The default/fallback fonts can be configured from the standard per-language font preference menu. For more details, see {{bug(947654)}} and {{bug(1160456)}}.

+ +

SVG

+ + + +

Audio/Video

+ + + +

HTTP

+ + + +

Networking

+ +

pas de changement.

+ +

Security

+ + + +

Changes for add-on and Mozilla developers

+ +

XUL

+ +

pas de changement.

+ +

JavaScript code modules

+ +

pas de changement.

+ +

XPCOM

+ +

Interfaces

+ +

pas de changement.

+ +

Other

+ +

pas de changement.

+ +

See also

+ + + +

Older versions

+ +

{{Firefox_for_developers('40')}}

diff --git a/files/fr/mozilla/firefox/releases/42/index.html b/files/fr/mozilla/firefox/releases/42/index.html deleted file mode 100644 index 80e22e3d09..0000000000 --- a/files/fr/mozilla/firefox/releases/42/index.html +++ /dev/null @@ -1,190 +0,0 @@ ---- -title: Firefox 42 for developers -slug: Mozilla/Firefox/Releases/42 -tags: - - '42' - - Firefox - - Mozilla - - Release - - Release Notes - - TopicStub -translation_of: Mozilla/Firefox/Releases/42 ---- -
{{FirefoxSidebar}}
- -

Changements pour les développeurs Web

- -

Outils de développement

- -

Points forts:

- - - -

Tous les bogues devtools corrigés entre Firefox 41 et Firefox 42.

- -

CSS

- - - -

HTML

- - - -

JavaScript

- - - -

Interfaces/APIs/DOM

- -

DOM & HTML DOM

- - - -

Service Workers

- - - -

API Web Animations

- -

Notre implémentation expérimentale de l'API Web Animations a été étendue pour prendre en charge:

- - - -

Composants Web

- -

Notre implémentation expérimentale du Shadow DOM a été modifiée:

- - - -

WebGL

- - - -

WebRTC

- - - -

Nouvelles API

- - - -

Divers

- - - -

MathML

- -

Pas de changement.

- -

SVG

- -

Pas de changement.

- -

Audio/Video

- -

Pas de changement.

- -

HTTP

- - - -

La mise en réseau

- - - -

Sécurité

- - - -

Changements pour les développeurs d'add-on et de Mozilla

- -

Interfaces

- -

nsIContentPolicy

- - - -

XUL

- -

Pas de changement.

- -

Modules de code JavaScript

- -

Pas de changement.

- -

XPCOM

- -

Pas de changement.

- -

Autre

- -

Pas de changement.

- -

Anciennes versions

- -

{{Firefox_for_developers('41')}}

diff --git a/files/fr/mozilla/firefox/releases/42/index.md b/files/fr/mozilla/firefox/releases/42/index.md new file mode 100644 index 0000000000..80e22e3d09 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/42/index.md @@ -0,0 +1,190 @@ +--- +title: Firefox 42 for developers +slug: Mozilla/Firefox/Releases/42 +tags: + - '42' + - Firefox + - Mozilla + - Release + - Release Notes + - TopicStub +translation_of: Mozilla/Firefox/Releases/42 +--- +
{{FirefoxSidebar}}
+ +

Changements pour les développeurs Web

+ +

Outils de développement

+ +

Points forts:

+ + + +

Tous les bogues devtools corrigés entre Firefox 41 et Firefox 42.

+ +

CSS

+ + + +

HTML

+ + + +

JavaScript

+ + + +

Interfaces/APIs/DOM

+ +

DOM & HTML DOM

+ + + +

Service Workers

+ + + +

API Web Animations

+ +

Notre implémentation expérimentale de l'API Web Animations a été étendue pour prendre en charge:

+ + + +

Composants Web

+ +

Notre implémentation expérimentale du Shadow DOM a été modifiée:

+ + + +

WebGL

+ + + +

WebRTC

+ + + +

Nouvelles API

+ + + +

Divers

+ + + +

MathML

+ +

Pas de changement.

+ +

SVG

+ +

Pas de changement.

+ +

Audio/Video

+ +

Pas de changement.

+ +

HTTP

+ + + +

La mise en réseau

+ + + +

Sécurité

+ + + +

Changements pour les développeurs d'add-on et de Mozilla

+ +

Interfaces

+ +

nsIContentPolicy

+ + + +

XUL

+ +

Pas de changement.

+ +

Modules de code JavaScript

+ +

Pas de changement.

+ +

XPCOM

+ +

Pas de changement.

+ +

Autre

+ +

Pas de changement.

+ +

Anciennes versions

+ +

{{Firefox_for_developers('41')}}

diff --git a/files/fr/mozilla/firefox/releases/5/index.html b/files/fr/mozilla/firefox/releases/5/index.html deleted file mode 100644 index aaac33da3f..0000000000 --- a/files/fr/mozilla/firefox/releases/5/index.html +++ /dev/null @@ -1,171 +0,0 @@ ---- -title: Firefox 5 pour les développeurs -slug: Mozilla/Firefox/Releases/5 -tags: - - Firefox - - Firefox 5 -translation_of: Mozilla/Firefox/Releases/5 -original_slug: Mozilla/Firefox/Versions/5 ---- -
{{FirefoxSidebar}}
- -

Firefox 5, basé sur Gecko 5.0, est sorti le 21 juin 2011. Cet article fournit des informations à propos des changements qui affectent les développeurs dans cette version.

- -

Changements pour les développeurs Web

- -

HTML

- - - -

Améliorations de Canvas

- - - -

CSS

- -
-
Animations CSS
-
Le support pour les animations CSS a été ajouté, pour l'instant il faut utilisé le préfixe -moz-.
-
- -

DOM

- - - -

JavaScript

- - - -

SVG

- - - -

HTTP

- - - -

MathML

- - - -

Outils pour les développeurs

- - - -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Pour des conseils utiles sur la mise à jour des extensions pour Firefox 5, voir Updating add-ons for Firefox 5.

- -
-

Note : Firefox 5 requiert que les composants binaires soient recompilés, comme pour toutes les versions majeures de Firefox. Pour plus de détails, voir Interfaces Binaires.

-
- -

Changements dans les modules de code JavaScript

- -

Nouveau module de code JavaScript

- - - -

NetUtil.jsm

- - - -

Changements dans les interfaces

- - - -

Nouvelle interface

- - - -

Interfaces supprimées

- -

Les interfaces suivantes ont été supprimées car elles n'étaient plus indispensables :

- - - -

Aide au débogage

- - - -

API JavaScript (SpiderMonkey)

- - - -

Changement dans le système de compilation

- - - -

Voir également

- -

{{Firefox_for_developers('4')}}

diff --git a/files/fr/mozilla/firefox/releases/5/index.md b/files/fr/mozilla/firefox/releases/5/index.md new file mode 100644 index 0000000000..aaac33da3f --- /dev/null +++ b/files/fr/mozilla/firefox/releases/5/index.md @@ -0,0 +1,171 @@ +--- +title: Firefox 5 pour les développeurs +slug: Mozilla/Firefox/Releases/5 +tags: + - Firefox + - Firefox 5 +translation_of: Mozilla/Firefox/Releases/5 +original_slug: Mozilla/Firefox/Versions/5 +--- +
{{FirefoxSidebar}}
+ +

Firefox 5, basé sur Gecko 5.0, est sorti le 21 juin 2011. Cet article fournit des informations à propos des changements qui affectent les développeurs dans cette version.

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

Améliorations de Canvas

+ + + +

CSS

+ +
+
Animations CSS
+
Le support pour les animations CSS a été ajouté, pour l'instant il faut utilisé le préfixe -moz-.
+
+ +

DOM

+ + + +

JavaScript

+ + + +

SVG

+ + + +

HTTP

+ + + +

MathML

+ + + +

Outils pour les développeurs

+ + + +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Pour des conseils utiles sur la mise à jour des extensions pour Firefox 5, voir Updating add-ons for Firefox 5.

+ +
+

Note : Firefox 5 requiert que les composants binaires soient recompilés, comme pour toutes les versions majeures de Firefox. Pour plus de détails, voir Interfaces Binaires.

+
+ +

Changements dans les modules de code JavaScript

+ +

Nouveau module de code JavaScript

+ + + +

NetUtil.jsm

+ + + +

Changements dans les interfaces

+ + + +

Nouvelle interface

+ + + +

Interfaces supprimées

+ +

Les interfaces suivantes ont été supprimées car elles n'étaient plus indispensables :

+ + + +

Aide au débogage

+ + + +

API JavaScript (SpiderMonkey)

+ + + +

Changement dans le système de compilation

+ + + +

Voir également

+ +

{{Firefox_for_developers('4')}}

diff --git a/files/fr/mozilla/firefox/releases/6/index.html b/files/fr/mozilla/firefox/releases/6/index.html deleted file mode 100644 index 82fbc1736d..0000000000 --- a/files/fr/mozilla/firefox/releases/6/index.html +++ /dev/null @@ -1,292 +0,0 @@ ---- -title: Firefox 6 pour les développeurs -slug: Mozilla/Firefox/Releases/6 -tags: - - Firefox - - Firefox 6 -translation_of: Mozilla/Firefox/Releases/6 -original_slug: Mozilla/Firefox/Versions/6 ---- -
-
    -
  1. - -

    Notes de versions pour développeurs

    -
      -
    1. Notes de versions pour développeurs
    2. -
    - -
  2. -
  3. - -

    Modules complémentaires

    -
      -
    1. WebExtensions
    2. -
    3. Thèmes
    4. -
    - -
  4. -
  5. - -

    Fonctionnement interne de Firefox

    -
      -
    1. Le projet Mozilla
    2. -
    3. Gecko
    4. -
    5. Mode « headless »
    6. -
    7. Modules de code Javascript
    8. -
    9. JS-ctypes
    10. -
    11. Le projet MathML
    12. -
    13. MFBT
    14. -
    15. Les projets Mozilla
    16. -
    17. Le système de préférences
    18. -
    19. Connexions WebIDL
    20. -
    21. XPCOM
    22. -
    23. XUL
    24. -
    - -
  6. -
  7. - -

    Développer et contribuer

    -
      -
    1. Instructions de compilation
    2. -
    3. Configuration des options de compilation
    4. -
    5. Fonctionnement de la compilation
    6. -
    7. Code source de Mozilla
    8. -
    9. Localisation
    10. -
    11. Mercurial
    12. -
    13. Assurance qualité
    14. -
    15. Utilisation de code Mozilla dans d'autres projets
    16. -
    - -
  8. -
-
-

Firefox 6, basé sur Gecko 6.0, est sorti le 16 août 2011. Cet article fournit des informations à propos des changements qui affectent les développeurs dans cette version.

- -

Changements pour les développeurs web

- -

HTML

- - - -

CSS

- -
-
-moz-text-decoration-color
-
Cette nouvelle propriété vous permet de définir la couleur utilisée par les décorations du texte, comme le soulignement, le surlignement et le texte barré.
-
-moz-text-decoration-line
-
Cette nouvelle propriété vous permet de définir le type de décorations du texte ajoutée à un élément.
-
-moz-text-decoration-style
-
Cette nouvelle propriété vous permet de définir le style de décorations du texte, comme le soulignement, le surlignement et le texte barré. Les styles incluent les simples lignes, les lignes doubles, les lignes ondulées, les lignes pointillées, etc.
-
-moz-hyphens
-
Cette nouvelle propriété vous permet de contrôler la façon dont la césure des mots lors de retours à la ligne est gérée.
-
-moz-orient
-
Une nouvelle propriété (pour l'instant spécifique à Mozilla) qui vous permet de contrôler l'orientation verticale ou horizontale de certains éléments (en particulier <progress>).
-
::-moz-progress-bar
-
Un pseudo-élément spécifique à Mozilla qui vous permet de définir le style de la zone d'un élément <progress> représentant la fraction d'une tâche.
-
- -

Autres changements

- - - -

DOM

- -
-
Utilisation de media queries à partir de code
-
Vous pouvez désormais tester le résultat d'une chaîne media query en programmant la méthode window.matchMedia() et l'interface MediaQueryList.
-
Evènements tactile
-
Firefox 6 ajout le support du standard W3C sur les évènements tactile, cela facilite l'interprétation d'une ou plusieurs touches à la fois sur les surfaces tactiles comme les écrans tactiles et pavés tactiles.
-
Evènements server-sent
-
Les évènements server-sent permettent à une application Web de demander à un serveur pour envoyer des événements comme n'importe quel événement DOM localement créé.
-
- - - -

JavaScript

- - - -

SVG

- - - -

MathML

- - - -

Accessibilité (ARIA)

- - - -

Réseau

- -
-
WebSockets
-
Pour Firefox 6, WebSockets a été mis à jour à la version 07 du protocole. De plus, l'objet WebSocket a été renommé en MozWebSocket pour l'empêcher d'être utilisé de façon incorrecte pour détecter la disponibilité des WebSockets sans préfixe.
-
- - - -

Autres changements

- - - -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Pour des conseils utiles sur la mise à jour des extensions pour Firefox 6, voir Updating add-ons for Firefox 6.

- -
-

Note : Firefox 6 requiert que les composants binaires soient recompilés, comme pour toutes les versions majeures de Firefox. Pour plus de détails, voir Interfaces Binaires.

-
- -

Modules de code JavaScript

- -

FileUtils.jsm

- - - -

XPCOMUtils.jsm

- - - -

XPCOM

- - - -

Utilisation du DOM depuis le chrome

- -
-
Utilisation de l'API DOM File dans du code chrome
-
Bien que vous avez toujours pu utiliser l'API DOM File à partir du code chrome, le constructeur File supporte désormais la spécification d'un chemin d'accès local lorsqu'il est utilisé depuis le chrome. De plus, vous pouvez également spécifier le fichier pour accéder à l'aide de l'API DOM File en utilisant un objet nsIFile.
-
- -

Changements dans les interfaces

- - - -

Nouvelles interfaces

- -
-
mozIAsyncFavicons
-
Un nouveau service qui vous permet d'accéder au service favicon de façon asynchrone.
-
nsIEventSource
-
Détails à venir.
-
nsIGSettingsCollection
-
Détails à venir.
-
nsIGSettingsService
-
Détails à venir.
-
nsIHttpUpgradeListener
-
L'interface de rappel pour le traitement des demandes de mise à niveau HTTP via la méthode nsIHttpChannelInternal.HTTPUpgrade().
-
nsIStructuredCloneContainer
-
Un conteneur pour les objets qui ont été sérialisé à l'aide de l'algorithme de clonage structuré.
-
nsITelemetry
-
Implémentation du support de la télémétrie permettant d'enregistrer des données de télémétrie pour être utilisé pour présenter des histogrammes à des fins de suivi des performances. Voir bug 649502 et bug 585196.
-
nsITimedChannel
-
Voir bug 576006.
-
nsIWebSocketListener
-
Voir bug 640003.
-
nsIWebSocketProtocol
-
Voir bug 640003.
-
- -

Interfaces supprimées

- -

Les interfaces suivantes ont été supprimées car elles n'étaient plus indispensables :

- - - -

Autres changements

- -
-
Utilisation des préférences à partir du code d'application
-
Une nouvelle API statique est disponible pour accéder facilement aux préférences, ce n'est disponible que pour le code d'application et ne peut pas être utilisé par les modules complémentaires.
-
- -

Voir également

- - diff --git a/files/fr/mozilla/firefox/releases/6/index.md b/files/fr/mozilla/firefox/releases/6/index.md new file mode 100644 index 0000000000..82fbc1736d --- /dev/null +++ b/files/fr/mozilla/firefox/releases/6/index.md @@ -0,0 +1,292 @@ +--- +title: Firefox 6 pour les développeurs +slug: Mozilla/Firefox/Releases/6 +tags: + - Firefox + - Firefox 6 +translation_of: Mozilla/Firefox/Releases/6 +original_slug: Mozilla/Firefox/Versions/6 +--- +
+
    +
  1. + +

    Notes de versions pour développeurs

    +
      +
    1. Notes de versions pour développeurs
    2. +
    + +
  2. +
  3. + +

    Modules complémentaires

    +
      +
    1. WebExtensions
    2. +
    3. Thèmes
    4. +
    + +
  4. +
  5. + +

    Fonctionnement interne de Firefox

    +
      +
    1. Le projet Mozilla
    2. +
    3. Gecko
    4. +
    5. Mode « headless »
    6. +
    7. Modules de code Javascript
    8. +
    9. JS-ctypes
    10. +
    11. Le projet MathML
    12. +
    13. MFBT
    14. +
    15. Les projets Mozilla
    16. +
    17. Le système de préférences
    18. +
    19. Connexions WebIDL
    20. +
    21. XPCOM
    22. +
    23. XUL
    24. +
    + +
  6. +
  7. + +

    Développer et contribuer

    +
      +
    1. Instructions de compilation
    2. +
    3. Configuration des options de compilation
    4. +
    5. Fonctionnement de la compilation
    6. +
    7. Code source de Mozilla
    8. +
    9. Localisation
    10. +
    11. Mercurial
    12. +
    13. Assurance qualité
    14. +
    15. Utilisation de code Mozilla dans d'autres projets
    16. +
    + +
  8. +
+
+

Firefox 6, basé sur Gecko 6.0, est sorti le 16 août 2011. Cet article fournit des informations à propos des changements qui affectent les développeurs dans cette version.

+ +

Changements pour les développeurs web

+ +

HTML

+ + + +

CSS

+ +
+
-moz-text-decoration-color
+
Cette nouvelle propriété vous permet de définir la couleur utilisée par les décorations du texte, comme le soulignement, le surlignement et le texte barré.
+
-moz-text-decoration-line
+
Cette nouvelle propriété vous permet de définir le type de décorations du texte ajoutée à un élément.
+
-moz-text-decoration-style
+
Cette nouvelle propriété vous permet de définir le style de décorations du texte, comme le soulignement, le surlignement et le texte barré. Les styles incluent les simples lignes, les lignes doubles, les lignes ondulées, les lignes pointillées, etc.
+
-moz-hyphens
+
Cette nouvelle propriété vous permet de contrôler la façon dont la césure des mots lors de retours à la ligne est gérée.
+
-moz-orient
+
Une nouvelle propriété (pour l'instant spécifique à Mozilla) qui vous permet de contrôler l'orientation verticale ou horizontale de certains éléments (en particulier <progress>).
+
::-moz-progress-bar
+
Un pseudo-élément spécifique à Mozilla qui vous permet de définir le style de la zone d'un élément <progress> représentant la fraction d'une tâche.
+
+ +

Autres changements

+ + + +

DOM

+ +
+
Utilisation de media queries à partir de code
+
Vous pouvez désormais tester le résultat d'une chaîne media query en programmant la méthode window.matchMedia() et l'interface MediaQueryList.
+
Evènements tactile
+
Firefox 6 ajout le support du standard W3C sur les évènements tactile, cela facilite l'interprétation d'une ou plusieurs touches à la fois sur les surfaces tactiles comme les écrans tactiles et pavés tactiles.
+
Evènements server-sent
+
Les évènements server-sent permettent à une application Web de demander à un serveur pour envoyer des événements comme n'importe quel événement DOM localement créé.
+
+ + + +

JavaScript

+ + + +

SVG

+ + + +

MathML

+ + + +

Accessibilité (ARIA)

+ + + +

Réseau

+ +
+
WebSockets
+
Pour Firefox 6, WebSockets a été mis à jour à la version 07 du protocole. De plus, l'objet WebSocket a été renommé en MozWebSocket pour l'empêcher d'être utilisé de façon incorrecte pour détecter la disponibilité des WebSockets sans préfixe.
+
+ + + +

Autres changements

+ + + +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Pour des conseils utiles sur la mise à jour des extensions pour Firefox 6, voir Updating add-ons for Firefox 6.

+ +
+

Note : Firefox 6 requiert que les composants binaires soient recompilés, comme pour toutes les versions majeures de Firefox. Pour plus de détails, voir Interfaces Binaires.

+
+ +

Modules de code JavaScript

+ +

FileUtils.jsm

+ + + +

XPCOMUtils.jsm

+ + + +

XPCOM

+ + + +

Utilisation du DOM depuis le chrome

+ +
+
Utilisation de l'API DOM File dans du code chrome
+
Bien que vous avez toujours pu utiliser l'API DOM File à partir du code chrome, le constructeur File supporte désormais la spécification d'un chemin d'accès local lorsqu'il est utilisé depuis le chrome. De plus, vous pouvez également spécifier le fichier pour accéder à l'aide de l'API DOM File en utilisant un objet nsIFile.
+
+ +

Changements dans les interfaces

+ + + +

Nouvelles interfaces

+ +
+
mozIAsyncFavicons
+
Un nouveau service qui vous permet d'accéder au service favicon de façon asynchrone.
+
nsIEventSource
+
Détails à venir.
+
nsIGSettingsCollection
+
Détails à venir.
+
nsIGSettingsService
+
Détails à venir.
+
nsIHttpUpgradeListener
+
L'interface de rappel pour le traitement des demandes de mise à niveau HTTP via la méthode nsIHttpChannelInternal.HTTPUpgrade().
+
nsIStructuredCloneContainer
+
Un conteneur pour les objets qui ont été sérialisé à l'aide de l'algorithme de clonage structuré.
+
nsITelemetry
+
Implémentation du support de la télémétrie permettant d'enregistrer des données de télémétrie pour être utilisé pour présenter des histogrammes à des fins de suivi des performances. Voir bug 649502 et bug 585196.
+
nsITimedChannel
+
Voir bug 576006.
+
nsIWebSocketListener
+
Voir bug 640003.
+
nsIWebSocketProtocol
+
Voir bug 640003.
+
+ +

Interfaces supprimées

+ +

Les interfaces suivantes ont été supprimées car elles n'étaient plus indispensables :

+ + + +

Autres changements

+ +
+
Utilisation des préférences à partir du code d'application
+
Une nouvelle API statique est disponible pour accéder facilement aux préférences, ce n'est disponible que pour le code d'application et ne peut pas être utilisé par les modules complémentaires.
+
+ +

Voir également

+ + diff --git a/files/fr/mozilla/firefox/releases/7/index.html b/files/fr/mozilla/firefox/releases/7/index.html deleted file mode 100644 index b15af89dd6..0000000000 --- a/files/fr/mozilla/firefox/releases/7/index.html +++ /dev/null @@ -1,241 +0,0 @@ ---- -title: Firefox 7 pour les développeurs -slug: Mozilla/Firefox/Releases/7 -tags: - - Firefox - - Firefox 7 -translation_of: Mozilla/Firefox/Releases/7 -original_slug: Mozilla/Firefox/Versions/7 ---- -
{{FirefoxSidebar}}

Firefox 7, basé sur Gecko 7.0, est sorti le 27 september 2011. Cet article fournit des informations à propos des changements qui affectent les développeurs dans cette version.

- -

Changements pour les développeurs Web

- -

HTML

- - - -

Canvas

- - - -

CSS

- - - -

MathML

- - - -

DOM

- - - -

JavaScript

- - - -

WebSockets

- - - -

Console API

- - - - -

Web timing

- - - -

XML

- - - -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Ces changements affectent les développeurs d'extensions ainsi que les développeurs qui travaillent sur ​​ou avec le code de Mozilla lui-même. Les developpeurs d'extensions doivent voir Updating extensions for Firefox 7 pour plus d'informations.

- -
-

Note : Firefox 7 requiert que les composants binaires soient recompilés, comme pour toutes les versions majeures de Firefox. Pour plus de détails, voir Interfaces Binaires.

-
- -

Modules de code JavaScript

- -

FileUtils.jsm

- - - -

AddonManager.jsm

- - - -

XUL

- - - -

XPCOM

- - - -

Rapporteur de mémoire

- -

Ajout du support pour le multi-reporters, c'est le rapporteur de mémoire qui rassemble des données sur demande et effectue un rappel pour chaque résultat généré. Voir {{interface("nsIMemoryMultiReporter")}} et {{interface("nsIMemoryMultiReporterCallback")}} pour les interfaces nécessaires, ainsi que les méthodes {{ifmethod("nsIMemoryReporterManager", "registerMultiReporter")}} et {{ifmethod("nsIMemoryReporterManager", "unregisterMultiReporter")}}.

- -

Changements de l'expérience utilisateur

- - - -

Changements dans le système de compilation

- - - -

Changements dans les interfaces

- - - -

Nouvelles interfaces

- -
-
{{interface("nsIDOMFontFace")}}
-
Décrit une seule police de caractères.
-
{{interface("nsIDOMFontFaceList")}}
-
Décrit une liste de polices de caractères, chacune représentée par {{interface("nsIDOMFontFace")}}.
-
- -

Interfaces supprimées

- -

Les interfaces suivantes ont été supprimées car elles n'étaient plus indispensables :

- - - -

Les interfaces suivantes ont été supprimées dans le cadre du retrait de l'API ActiveX :

- - - -

Autres changements

- - - -

Voir également

- -

{{Firefox_for_developers('6')}}

diff --git a/files/fr/mozilla/firefox/releases/7/index.md b/files/fr/mozilla/firefox/releases/7/index.md new file mode 100644 index 0000000000..b15af89dd6 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/7/index.md @@ -0,0 +1,241 @@ +--- +title: Firefox 7 pour les développeurs +slug: Mozilla/Firefox/Releases/7 +tags: + - Firefox + - Firefox 7 +translation_of: Mozilla/Firefox/Releases/7 +original_slug: Mozilla/Firefox/Versions/7 +--- +
{{FirefoxSidebar}}

Firefox 7, basé sur Gecko 7.0, est sorti le 27 september 2011. Cet article fournit des informations à propos des changements qui affectent les développeurs dans cette version.

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

Canvas

+ + + +

CSS

+ + + +

MathML

+ + + +

DOM

+ + + +

JavaScript

+ + + +

WebSockets

+ + + +

Console API

+ + + + +

Web timing

+ + + +

XML

+ + + +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Ces changements affectent les développeurs d'extensions ainsi que les développeurs qui travaillent sur ​​ou avec le code de Mozilla lui-même. Les developpeurs d'extensions doivent voir Updating extensions for Firefox 7 pour plus d'informations.

+ +
+

Note : Firefox 7 requiert que les composants binaires soient recompilés, comme pour toutes les versions majeures de Firefox. Pour plus de détails, voir Interfaces Binaires.

+
+ +

Modules de code JavaScript

+ +

FileUtils.jsm

+ + + +

AddonManager.jsm

+ + + +

XUL

+ + + +

XPCOM

+ + + +

Rapporteur de mémoire

+ +

Ajout du support pour le multi-reporters, c'est le rapporteur de mémoire qui rassemble des données sur demande et effectue un rappel pour chaque résultat généré. Voir {{interface("nsIMemoryMultiReporter")}} et {{interface("nsIMemoryMultiReporterCallback")}} pour les interfaces nécessaires, ainsi que les méthodes {{ifmethod("nsIMemoryReporterManager", "registerMultiReporter")}} et {{ifmethod("nsIMemoryReporterManager", "unregisterMultiReporter")}}.

+ +

Changements de l'expérience utilisateur

+ + + +

Changements dans le système de compilation

+ + + +

Changements dans les interfaces

+ + + +

Nouvelles interfaces

+ +
+
{{interface("nsIDOMFontFace")}}
+
Décrit une seule police de caractères.
+
{{interface("nsIDOMFontFaceList")}}
+
Décrit une liste de polices de caractères, chacune représentée par {{interface("nsIDOMFontFace")}}.
+
+ +

Interfaces supprimées

+ +

Les interfaces suivantes ont été supprimées car elles n'étaient plus indispensables :

+ + + +

Les interfaces suivantes ont été supprimées dans le cadre du retrait de l'API ActiveX :

+ + + +

Autres changements

+ + + +

Voir également

+ +

{{Firefox_for_developers('6')}}

diff --git a/files/fr/mozilla/firefox/releases/8/index.html b/files/fr/mozilla/firefox/releases/8/index.html deleted file mode 100644 index 55e9bea8a5..0000000000 --- a/files/fr/mozilla/firefox/releases/8/index.html +++ /dev/null @@ -1,257 +0,0 @@ ---- -title: Firefox 8 pour les développeurs -slug: Mozilla/Firefox/Releases/8 -tags: - - Firefox - - Firefox 8 -translation_of: Mozilla/Firefox/Releases/8 -original_slug: Mozilla/Firefox/Versions/8 ---- -
-
    -
  1. - -

    Notes de versions pour développeurs

    -
      -
    1. Notes de versions pour développeurs
    2. -
    - -
  2. -
  3. - -

    Modules complémentaires

    -
      -
    1. WebExtensions
    2. -
    3. Thèmes
    4. -
    - -
  4. -
  5. - -

    Fonctionnement interne de Firefox

    -
      -
    1. Le projet Mozilla
    2. -
    3. Gecko
    4. -
    5. Mode « headless »
    6. -
    7. Modules de code Javascript
    8. -
    9. JS-ctypes
    10. -
    11. Le projet MathML
    12. -
    13. MFBT
    14. -
    15. Les projets Mozilla
    16. -
    17. Le système de préférences
    18. -
    19. Connexions WebIDL
    20. -
    21. XPCOM
    22. -
    23. XUL
    24. -
    - -
  6. -
  7. - -

    Développer et contribuer

    -
      -
    1. Instructions de compilation
    2. -
    3. Configuration des options de compilation
    4. -
    5. Fonctionnement de la compilation
    6. -
    7. Code source de Mozilla
    8. -
    9. Localisation
    10. -
    11. Mercurial
    12. -
    13. Assurance qualité
    14. -
    15. Utilisation de code Mozilla dans d'autres projets
    16. -
    - -
  8. -
-
-

Firefox 8, basé sur Gecko 8.0, est sorti le 8 novembre 2011. Cet article fournit des informations à la fois pour les developpeurs Web et pour les développeurs d'extensions et de projets liés à Mozilla pour aider à tirer pleinement parti des fonctionnalités de cette version.

- -

Changements pour les développeurs Web

- -

HTML

- - - -

DOM

- - - -

JavaScript

- - - -

CSS

- - - -

Réseau

- - - -

WebSockets

- - - -

WebGL

- - - -

MathML

- - - -

Outils de développement

- - - -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Voir Updating add-ons for Firefox 8 pour vous guidez dans les modifications que vous êtes susceptibles d'avoir à faire pour rendre vos extensions compatibles avec Firefox 8.

- -
-

Note : Firefox 8 requiert que les composants binaires soient recompilés, comme pour toutes les versions majeures de Firefox. Pour plus de détails, voir Interfaces Binaires.

-
- -

XPCOM

- -
-
Components.utils
-
Les nouvelles méthodes Components.utils.createObjectIn() et Components.utils.makeObjectPropsNormal() ont été créées pour faciliter la création d'objets dans des compartiments spécifiques.
-
- -

Autres changements relatifs à XPCOM

- - - -

Workers

- -

Il n'est plus possible d'accéder à des objets XPCOM depuis ChromeWorkers. XPConnect a été désactivé dans le contexte des travailleurs comme indiqué par le bug 649537.

- -

XUL

- - - -

Changements dans le système de compilation

- - - -

Enregistrement du chrome

- - - -

Changements dans les interfaces

- - - -

Interfaces supprimées

- -

Les interfaces suivantes ont été supprimées car elles n'étaient plus indispensables :

- - - -

L'interface nsIWorkerFactory a également été retirée. WLes travailleurs peuvent encore être créés à l'aide des constructeurs Worker et ChromeWorker.

- -

Autres changements

- - - -

Voir également

- - diff --git a/files/fr/mozilla/firefox/releases/8/index.md b/files/fr/mozilla/firefox/releases/8/index.md new file mode 100644 index 0000000000..55e9bea8a5 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/8/index.md @@ -0,0 +1,257 @@ +--- +title: Firefox 8 pour les développeurs +slug: Mozilla/Firefox/Releases/8 +tags: + - Firefox + - Firefox 8 +translation_of: Mozilla/Firefox/Releases/8 +original_slug: Mozilla/Firefox/Versions/8 +--- +
+
    +
  1. + +

    Notes de versions pour développeurs

    +
      +
    1. Notes de versions pour développeurs
    2. +
    + +
  2. +
  3. + +

    Modules complémentaires

    +
      +
    1. WebExtensions
    2. +
    3. Thèmes
    4. +
    + +
  4. +
  5. + +

    Fonctionnement interne de Firefox

    +
      +
    1. Le projet Mozilla
    2. +
    3. Gecko
    4. +
    5. Mode « headless »
    6. +
    7. Modules de code Javascript
    8. +
    9. JS-ctypes
    10. +
    11. Le projet MathML
    12. +
    13. MFBT
    14. +
    15. Les projets Mozilla
    16. +
    17. Le système de préférences
    18. +
    19. Connexions WebIDL
    20. +
    21. XPCOM
    22. +
    23. XUL
    24. +
    + +
  6. +
  7. + +

    Développer et contribuer

    +
      +
    1. Instructions de compilation
    2. +
    3. Configuration des options de compilation
    4. +
    5. Fonctionnement de la compilation
    6. +
    7. Code source de Mozilla
    8. +
    9. Localisation
    10. +
    11. Mercurial
    12. +
    13. Assurance qualité
    14. +
    15. Utilisation de code Mozilla dans d'autres projets
    16. +
    + +
  8. +
+
+

Firefox 8, basé sur Gecko 8.0, est sorti le 8 novembre 2011. Cet article fournit des informations à la fois pour les developpeurs Web et pour les développeurs d'extensions et de projets liés à Mozilla pour aider à tirer pleinement parti des fonctionnalités de cette version.

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

DOM

+ + + +

JavaScript

+ + + +

CSS

+ + + +

Réseau

+ + + +

WebSockets

+ + + +

WebGL

+ + + +

MathML

+ + + +

Outils de développement

+ + + +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Voir Updating add-ons for Firefox 8 pour vous guidez dans les modifications que vous êtes susceptibles d'avoir à faire pour rendre vos extensions compatibles avec Firefox 8.

+ +
+

Note : Firefox 8 requiert que les composants binaires soient recompilés, comme pour toutes les versions majeures de Firefox. Pour plus de détails, voir Interfaces Binaires.

+
+ +

XPCOM

+ +
+
Components.utils
+
Les nouvelles méthodes Components.utils.createObjectIn() et Components.utils.makeObjectPropsNormal() ont été créées pour faciliter la création d'objets dans des compartiments spécifiques.
+
+ +

Autres changements relatifs à XPCOM

+ + + +

Workers

+ +

Il n'est plus possible d'accéder à des objets XPCOM depuis ChromeWorkers. XPConnect a été désactivé dans le contexte des travailleurs comme indiqué par le bug 649537.

+ +

XUL

+ + + +

Changements dans le système de compilation

+ + + +

Enregistrement du chrome

+ + + +

Changements dans les interfaces

+ + + +

Interfaces supprimées

+ +

Les interfaces suivantes ont été supprimées car elles n'étaient plus indispensables :

+ + + +

L'interface nsIWorkerFactory a également été retirée. WLes travailleurs peuvent encore être créés à l'aide des constructeurs Worker et ChromeWorker.

+ +

Autres changements

+ + + +

Voir également

+ + diff --git a/files/fr/mozilla/firefox/releases/9/index.html b/files/fr/mozilla/firefox/releases/9/index.html deleted file mode 100644 index 3f912ccb7c..0000000000 --- a/files/fr/mozilla/firefox/releases/9/index.html +++ /dev/null @@ -1,232 +0,0 @@ ---- -title: Firefox 9 pour les développeurs -slug: Mozilla/Firefox/Releases/9 -tags: - - Firefox - - Firefox 9 -translation_of: Mozilla/Firefox/Releases/9 -original_slug: Mozilla/Firefox/Versions/9 ---- -
-
    -
  1. - -

    Notes de versions pour développeurs

    -
      -
    1. Notes de versions pour développeurs
    2. -
    - -
  2. -
  3. - -

    Modules complémentaires

    -
      -
    1. WebExtensions
    2. -
    3. Thèmes
    4. -
    - -
  4. -
  5. - -

    Fonctionnement interne de Firefox

    -
      -
    1. Le projet Mozilla
    2. -
    3. Gecko
    4. -
    5. Mode « headless »
    6. -
    7. Modules de code Javascript
    8. -
    9. JS-ctypes
    10. -
    11. Le projet MathML
    12. -
    13. MFBT
    14. -
    15. Les projets Mozilla
    16. -
    17. Le système de préférences
    18. -
    19. Connexions WebIDL
    20. -
    21. XPCOM
    22. -
    23. XUL
    24. -
    - -
  6. -
  7. - -

    Développer et contribuer

    -
      -
    1. Instructions de compilation
    2. -
    3. Configuration des options de compilation
    4. -
    5. Fonctionnement de la compilation
    6. -
    7. Code source de Mozilla
    8. -
    9. Localisation
    10. -
    11. Mercurial
    12. -
    13. Assurance qualité
    14. -
    15. Utilisation de code Mozilla dans d'autres projets
    16. -
    - -
  8. -
-
- -

Firefox 9, basé sur Gecko 9.0, est sorti le 20 décembre 2011 sur Windows. La version 9.0.1, qui corrige un problème de plantage découvert au dernier moment, est sortie le 21 décembre 2011, sur Mac et Linux.

- -

Changements pour les développeurs Web

- -

HTML

- - - -

CSS

- - - -

DOM

- -
-
Utilisation du mode plein écran
-
La nouvelle API pour le plein écran offre un moyen de présenter le contenu en utilisant la totalité de l'écran, sans l'interface du navigateur. C'est très bien pour les vidéos et les jeux. Cette API est encore expérimentale et préfixée.
-
- - - -

Workers

- - - -

WebGL

- - - -

MathML

- - - -

Réseau

- - - -

Outils de développement

- - - -

Changements pour les développeurs de Mozilla et de modules complémentaires

- -

Voir Updating add-ons for Firefox 9 pour un aperçu des modifications que vous devriez apporter pour rendre vos extensions compatibles avec Firefox 9.

- -

XUL

- - - -

Changements dans le module de code JavaScript

- - - -

Changement dans le service

- - - -

NSPR

- - - -

Changements dans les interfaces

- -

Interface supprimée

- - - -

Divers changements dans les interfaces

- - - -

Parseur IDL

- -

Le parseur IDL ne supporte plus la notion de pointeurs unique qui n'a jamais été entièrement implémentée.

- -

Changements dans le système de compilation

- - - -

Autres changements

- - - -

Voir également

- - diff --git a/files/fr/mozilla/firefox/releases/9/index.md b/files/fr/mozilla/firefox/releases/9/index.md new file mode 100644 index 0000000000..3f912ccb7c --- /dev/null +++ b/files/fr/mozilla/firefox/releases/9/index.md @@ -0,0 +1,232 @@ +--- +title: Firefox 9 pour les développeurs +slug: Mozilla/Firefox/Releases/9 +tags: + - Firefox + - Firefox 9 +translation_of: Mozilla/Firefox/Releases/9 +original_slug: Mozilla/Firefox/Versions/9 +--- +
+
    +
  1. + +

    Notes de versions pour développeurs

    +
      +
    1. Notes de versions pour développeurs
    2. +
    + +
  2. +
  3. + +

    Modules complémentaires

    +
      +
    1. WebExtensions
    2. +
    3. Thèmes
    4. +
    + +
  4. +
  5. + +

    Fonctionnement interne de Firefox

    +
      +
    1. Le projet Mozilla
    2. +
    3. Gecko
    4. +
    5. Mode « headless »
    6. +
    7. Modules de code Javascript
    8. +
    9. JS-ctypes
    10. +
    11. Le projet MathML
    12. +
    13. MFBT
    14. +
    15. Les projets Mozilla
    16. +
    17. Le système de préférences
    18. +
    19. Connexions WebIDL
    20. +
    21. XPCOM
    22. +
    23. XUL
    24. +
    + +
  6. +
  7. + +

    Développer et contribuer

    +
      +
    1. Instructions de compilation
    2. +
    3. Configuration des options de compilation
    4. +
    5. Fonctionnement de la compilation
    6. +
    7. Code source de Mozilla
    8. +
    9. Localisation
    10. +
    11. Mercurial
    12. +
    13. Assurance qualité
    14. +
    15. Utilisation de code Mozilla dans d'autres projets
    16. +
    + +
  8. +
+
+ +

Firefox 9, basé sur Gecko 9.0, est sorti le 20 décembre 2011 sur Windows. La version 9.0.1, qui corrige un problème de plantage découvert au dernier moment, est sortie le 21 décembre 2011, sur Mac et Linux.

+ +

Changements pour les développeurs Web

+ +

HTML

+ + + +

CSS

+ + + +

DOM

+ +
+
Utilisation du mode plein écran
+
La nouvelle API pour le plein écran offre un moyen de présenter le contenu en utilisant la totalité de l'écran, sans l'interface du navigateur. C'est très bien pour les vidéos et les jeux. Cette API est encore expérimentale et préfixée.
+
+ + + +

Workers

+ + + +

WebGL

+ + + +

MathML

+ + + +

Réseau

+ + + +

Outils de développement

+ + + +

Changements pour les développeurs de Mozilla et de modules complémentaires

+ +

Voir Updating add-ons for Firefox 9 pour un aperçu des modifications que vous devriez apporter pour rendre vos extensions compatibles avec Firefox 9.

+ +

XUL

+ + + +

Changements dans le module de code JavaScript

+ + + +

Changement dans le service

+ + + +

NSPR

+ + + +

Changements dans les interfaces

+ +

Interface supprimée

+ + + +

Divers changements dans les interfaces

+ + + +

Parseur IDL

+ +

Le parseur IDL ne supporte plus la notion de pointeurs unique qui n'a jamais été entièrement implémentée.

+ +

Changements dans le système de compilation

+ + + +

Autres changements

+ + + +

Voir également

+ + diff --git a/files/fr/mozilla/firefox/releases/index.html b/files/fr/mozilla/firefox/releases/index.html deleted file mode 100644 index 70515ce953..0000000000 --- a/files/fr/mozilla/firefox/releases/index.html +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: Notes de version Firefox pour développeurs -slug: Mozilla/Firefox/Releases -tags: - - Firefox - - TopicStub -translation_of: Mozilla/Firefox/Releases -original_slug: Mozilla/Firefox/Versions ---- -
{{FirefoxSidebar}}
- -

Cette page regroupe les liens vers les articles « Firefox X pour les développeurs » pour chacune des versions de Firefox. Ces notes vous permettent de connaître quelles fonctions ont été ajoutées et les bogues éliminées à chacune des versions de Firefox.

- -
{{ListSubpages("",1,0,1)}}
diff --git a/files/fr/mozilla/firefox/releases/index.md b/files/fr/mozilla/firefox/releases/index.md new file mode 100644 index 0000000000..70515ce953 --- /dev/null +++ b/files/fr/mozilla/firefox/releases/index.md @@ -0,0 +1,14 @@ +--- +title: Notes de version Firefox pour développeurs +slug: Mozilla/Firefox/Releases +tags: + - Firefox + - TopicStub +translation_of: Mozilla/Firefox/Releases +original_slug: Mozilla/Firefox/Versions +--- +
{{FirefoxSidebar}}
+ +

Cette page regroupe les liens vers les articles « Firefox X pour les développeurs » pour chacune des versions de Firefox. Ces notes vous permettent de connaître quelles fonctions ont été ajoutées et les bogues éliminées à chacune des versions de Firefox.

+ +
{{ListSubpages("",1,0,1)}}
diff --git a/files/fr/mozilla/index.html b/files/fr/mozilla/index.html deleted file mode 100644 index 881e22064e..0000000000 --- a/files/fr/mozilla/index.html +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: Mozilla -slug: Mozilla -tags: - - Add-ons - - Apps - - Avancé - - Codage - - Extensions - - Localisation - - Mozilla -translation_of: Mozilla ---- -

Les articles ci-dessous intégrent des contenus à propos du téléchargement et de la compilation du code de Mozilla. De plus, vous trouverez des articles utiles expliquant le fonctionnement du code et indiquant les modalités de construction d'extensions pour les applications Mozilla et semblables.

- -

{{LandingPageListSubpages}}

diff --git a/files/fr/mozilla/index.md b/files/fr/mozilla/index.md new file mode 100644 index 0000000000..881e22064e --- /dev/null +++ b/files/fr/mozilla/index.md @@ -0,0 +1,16 @@ +--- +title: Mozilla +slug: Mozilla +tags: + - Add-ons + - Apps + - Avancé + - Codage + - Extensions + - Localisation + - Mozilla +translation_of: Mozilla +--- +

Les articles ci-dessous intégrent des contenus à propos du téléchargement et de la compilation du code de Mozilla. De plus, vous trouverez des articles utiles expliquant le fonctionnement du code et indiquant les modalités de construction d'extensions pour les applications Mozilla et semblables.

+ +

{{LandingPageListSubpages}}

-- cgit v1.2.3-54-g00ecf