mdn / content

The content behind MDN Web Docs
https://developer.mozilla.org
Other
9.15k stars 22.46k forks source link

WebExtensions: move {{WebExtExamples}} before {{Compat}} section #22631

Open caugner opened 1 year ago

caugner commented 1 year ago

MDN URL

https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions

What specific section or headline is this issue about?

Example extensions

What information was incorrect, unhelpful, or incomplete?

While triaging https://github.com/mdn/yari/issues/7703, I noticed that the {{WebExtExamples}} macro (i.e. the "Example extensions" section, if there is any example extensions) is sometimes called before and sometimes after the {{Compat}} macro (i.e. the "Browser compatibility" section).

What did you expect to see?

I would expect the "Example extensions" section to always appear either before or (probably better) after the "Browser compatibility" section.

Do you have any supporting links, references, or citations?

No response

Do you have anything more you want to share?

rg -i '\{\{(WebExtExamples|Compat)' -p --color=never ``` manifest.json/page_action/index.md 307:{{Compat}} api/pkcs11/installmodule/index.md 46:{{Compat}} 71:{{WebExtExamples}} api/webnavigation/ontabreplaced/index.md 65:{{Compat}} 77:{{WebExtExamples}} api/webnavigation/transitiontype/index.md 52:{{Compat}} 54:{{WebExtExamples}} api/webnavigation/onreferencefragmentupdated/index.md 76:{{Compat}} 100:{{WebExtExamples}} api/webnavigation/index.md 85:{{Compat}} 87:{{WebExtExamples("h2")}} manifest.json/storage/index.md 68:{{Compat}} api/webnavigation/oncreatednavigationtarget/index.md 83:{{Compat}} 107:{{WebExtExamples}} api/webnavigation/getframe/index.md 59:{{Compat}} 83:{{WebExtExamples}} api/webnavigation/onbeforenavigate/index.md 74:{{Compat}} 96:{{WebExtExamples}} api/webnavigation/onhistorystateupdated/index.md 76:{{Compat}} 100:{{WebExtExamples}} api/webnavigation/ondomcontentloaded/index.md 72:{{Compat}} 94:{{WebExtExamples}} api/webnavigation/getallframes/index.md 59:{{Compat}} 94:{{WebExtExamples}} api/pkcs11/index.md 68:{{WebExtExamples("h2")}} 70:{{Compat}} api/webnavigation/oncompleted/index.md 72:{{Compat}} 94:{{WebExtExamples}} api/webnavigation/oncommitted/index.md 78:{{Compat}} 102:{{WebExtExamples}} api/clipboard/index.md 33:{{WebExtExamples("h2")}} 35:{{Compat}} api/webnavigation/onerroroccurred/index.md 90:{{Compat}} 113:{{WebExtExamples}} api/pkcs11/ismoduleinstalled/index.md 43:{{Compat}} 57:{{WebExtExamples}} api/pkcs11/uninstallmodule/index.md 43:{{Compat}} 53:{{WebExtExamples}} api/pkcs11/getmoduleslots/index.md 63:{{Compat}} 88:{{WebExtExamples}} api/clipboard/setimagedata/index.md 50:{{Compat}} 76:{{WebExtExamples}} api/webnavigation/transitionqualifier/index.md 36:{{Compat}} 38:{{WebExtExamples}} manifest.json/host_permissions/index.md 87:{{Compat}} user_interface/browser_styles/index.md 120:{{Compat}} api/notifications/onshown/index.md 51:{{Compat}} 68:{{WebExtExamples}} api/notifications/getall/index.md 41:{{Compat}} 85:{{WebExtExamples}} api/webrequest/uploaddata/index.md 32:{{Compat}} 34:{{WebExtExamples}} api/webrequest/resourcetype/index.md 80:{{Compat}} 82:{{WebExtExamples}} api/webrequest/getsecurityinfo/index.md 54:{{Compat}} 105:{{WebExtExamples}} api/webrequest/onheadersreceived/index.md 173:{{Compat}} 234:{{WebExtExamples}} api/webrequest/certificateinfo/index.md 71:{{Compat}} 73:{{WebExtExamples}} api/webrequest/streamfilter/index.md 82:{{Compat}} 116:{{WebExtExamples}} api/webrequest/onbeforesendheaders/index.md 170:{{Compat}} 260:{{WebExtExamples}} api/webrequest/streamfilter/error/index.md 21:{{Compat}} 45:{{WebExtExamples}} api/webrequest/streamfilter/onerror/index.md 25:{{Compat}} 66:{{WebExtExamples}} api/webrequest/streamfilter/suspend/index.md 37:{{Compat}} 65:{{WebExtExamples}} api/webrequest/streamfilter/disconnect/index.md 38:{{Compat}} 63:{{WebExtExamples}} api/webrequest/streamfilter/ondata/index.md 342:{{WebExtExamples}} 346:{{Compat}} api/webrequest/streamfilter/close/index.md 40:{{Compat}} 65:{{WebExtExamples}} api/webrequest/streamfilter/resume/index.md 37:{{Compat}} 65:{{WebExtExamples}} api/webrequest/streamfilter/status/index.md 36:{{Compat}} 69:{{WebExtExamples}} api/webrequest/streamfilter/onstop/index.md 21:{{Compat}} 78:{{WebExtExamples}} api/webrequest/streamfilter/onstart/index.md 21:{{Compat}} 46:{{WebExtExamples}} api/webrequest/streamfilter/write/index.md 40:{{Compat}} 71:{{WebExtExamples}} api/webrequest/blockingresponse/index.md 57:{{Compat}} 59:{{WebExtExamples}} api/notifications/clear/index.md 42:{{Compat}} 72:{{WebExtExamples}} api/webrequest/onresponsestarted/index.md 153:{{Compat}} 178:{{WebExtExamples}} api/webrequest/index.md 145:{{Compat}} 149:{{WebExtExamples("h2")}} api/webrequest/onsendheaders/index.md 145:{{Compat}} 173:{{WebExtExamples}} api/webrequest/handlerbehaviorchanged/index.md 54:{{Compat}} 73:{{WebExtExamples}} api/webrequest/oncompleted/index.md 153:{{Compat}} 181:{{WebExtExamples}} api/webrequest/httpheaders/index.md 34:{{Compat}} 36:{{WebExtExamples}} api/webrequest/onauthrequired/index.md 199:{{Compat}} 338:{{WebExtExamples}} api/webrequest/filterresponsedata/index.md 89:{{WebExtExamples}} 95:{{Compat}} api/webrequest/onerroroccurred/index.md 159:{{Compat}} 183:{{WebExtExamples}} api/webrequest/max_handler_behavior_changed_calls_per_10_minutes/index.md 26:{{Compat}} 28:{{WebExtExamples}} api/userscripts/onbeforescript/index.md 111:{{Compat}} api/webrequest/onbeforeredirect/index.md 155:{{Compat}} 178:{{WebExtExamples}} api/webrequest/requestfilter/index.md 38:{{Compat}} 40:{{WebExtExamples}} api/webrequest/onbeforerequest/index.md 181:{{Compat}} 329:{{WebExtExamples}} api/notifications/update/index.md 45:{{Compat}} 101:{{WebExtExamples}} api/webrequest/securityinfo/index.md 88:{{Compat}} 90:{{WebExtExamples}} api/notifications/create/index.md 86:{{WebExtExamples}} 90:{{Compat}} api/notifications/notificationoptions/index.md 80:{{Compat}} 82:{{WebExtExamples}} api/notifications/onbuttonclicked/index.md 53:{{Compat}} 55:{{WebExtExamples}} api/notifications/index.md 54:{{Compat}} 56:{{WebExtExamples("h2")}} api/cookies/getall/index.md 77:{{Compat}} 97:{{WebExtExamples}} api/cookies/onchanged/index.md 68:{{Compat}} 83:{{WebExtExamples}} api/notifications/onclicked/index.md 51:{{Compat}} 63:{{WebExtExamples}} api/cookies/set/index.md 75:{{Compat}} 94:{{WebExtExamples}} api/notifications/onclosed/index.md 53:{{Compat}} 65:{{WebExtExamples}} api/cookies/getallcookiestores/index.md 39:{{Compat}} 57:{{WebExtExamples}} api/cookies/onchangedcause/index.md 38:{{Compat}} 53:{{WebExtExamples}} api/cookies/cookie/index.md 59:{{Compat}} 81:{{WebExtExamples}} api/notifications/templatetype/index.md 51:{{Compat}} 53:{{WebExtExamples}} api/cookies/remove/index.md 61:{{Compat}} 88:{{WebExtExamples}} api/cookies/get/index.md 61:{{Compat}} 89:{{WebExtExamples}} api/cookies/index.md 121:{{Compat}} 123:{{WebExtExamples("h2")}} api/userscripts/index.md 51:{{Compat}} api/userscripts/register/index.md 73:{{Compat}} api/topsites/index.md 36:{{Compat}} 38:{{WebExtExamples("h2")}} api/cookies/cookiestore/index.md 36:{{Compat}} 61:{{WebExtExamples}} api/userscripts/registereduserscript/index.md 29:{{Compat}} api/dns/resolve/index.md 63:{{Compat}} 94:{{WebExtExamples}} api/downloads/show/index.md 42:{{Compat}} 73:{{WebExtExamples}} api/downloads/downloadquery/index.md 82:{{Compat}} 84:{{WebExtExamples}} api/contextualidentities/onupdated/index.md 50:{{Compat}} 62:{{WebExtExamples}} api/dns/index.md 28:{{Compat}} 30:{{WebExtExamples("h2")}} api/downloads/downloadtime/index.md 35:{{Compat}} 37:{{WebExtExamples}} api/contextualidentities/onremoved/index.md 50:{{Compat}} 62:{{WebExtExamples}} api/contextualidentities/contextualidentity/index.md 69:{{Compat}} api/downloads/open/index.md 44:{{Compat}} 74:{{WebExtExamples}} api/contextualidentities/index.md 58:{{Compat}} 60:{{WebExtExamples("h2")}} api/downloads/downloaditem/index.md 70:{{Compat}} 72:{{WebExtExamples}} api/contextualidentities/create/index.md 76:{{Compat}} 98:{{WebExtExamples}} api/downloads/erase/index.md 46:{{Compat}} 84:{{WebExtExamples}} api/contextualidentities/query/index.md 45:{{Compat}} 85:{{WebExtExamples}} api/downloads/booleandelta/index.md 32:{{Compat}} 34:{{WebExtExamples}} api/downloads/onchanged/index.md 88:{{Compat}} 104:{{WebExtExamples}} api/downloads/removefile/index.md 48:{{Compat}} 78:{{WebExtExamples}} api/contextualidentities/oncreated/index.md 50:{{Compat}} 62:{{WebExtExamples}} api/downloads/getfileicon/index.md 53:{{Compat}} 84:{{WebExtExamples}} api/downloads/index.md 87:{{Compat}} 89:{{WebExtExamples("h2")}} api/contextualidentities/get/index.md 41:{{Compat}} 63:{{WebExtExamples}} api/downloads/download/index.md 84:{{Compat}} 110:{{WebExtExamples}} api/contextualidentities/update/index.md 79:{{Compat}} 102:{{WebExtExamples}} api/downloads/acceptdanger/index.md 44:{{Compat}} 46:{{WebExtExamples}} api/downloads/doubledelta/index.md 32:{{Compat}} 34:{{WebExtExamples}} api/downloads/oncreated/index.md 53:{{Compat}} 67:{{WebExtExamples}} api/contextualidentities/remove/index.md 41:{{Compat}} 64:{{WebExtExamples}} api/downloads/search/index.md 40:{{Compat}} 133:{{WebExtExamples}} api/downloads/drag/index.md 38:{{Compat}} 40:{{WebExtExamples}} api/downloads/state/index.md 38:{{Compat}} 40:{{WebExtExamples}} api/downloads/resume/index.md 42:{{Compat}} 61:{{WebExtExamples}} api/downloads/stringdelta/index.md 32:{{Compat}} 34:{{WebExtExamples}} api/i18n/index.md 40:{{Compat}} 42:{{WebExtExamples("h2")}} api/i18n/getmessage/index.md 53:{{Compat}} 87:{{WebExtExamples}} api/downloads/setshelfenabled/index.md 40:{{Compat}} 42:{{WebExtExamples}} api/i18n/languagecode/index.md 27:{{Compat}} 29:{{WebExtExamples}} api/i18n/detectlanguage/index.md 55:{{Compat}} 73:{{WebExtExamples}} api/downloads/filenameconflictaction/index.md 36:{{Compat}} 38:{{WebExtExamples}} api/downloads/onerased/index.md 53:{{Compat}} 72:{{WebExtExamples}} api/i18n/getacceptlanguages/index.md 41:{{Compat}} 55:{{WebExtExamples}} api/downloads/showdefaultfolder/index.md 33:{{Compat}} 47:{{WebExtExamples}} api/downloads/interruptreason/index.md 68:{{Compat}} 70:{{WebExtExamples}} api/downloads/pause/index.md 42:{{Compat}} 59:{{WebExtExamples}} api/i18n/getuilanguage/index.md 39:{{Compat}} 50:{{WebExtExamples}} api/downloads/cancel/index.md 42:{{Compat}} 61:{{WebExtExamples}} api/downloads/dangertype/index.md 48:{{Compat}} 50:{{WebExtExamples}} api/topsites/get/index.md 70:{{Compat}} 111:{{WebExtExamples}} api/userscripts/registereduserscript/unregister/index.md 41:{{Compat}} api/topsites/mostvisitedurl/index.md 34:{{Compat}} 38:{{WebExtExamples}} api/events/index.md 31:{{Compat}} 33:{{WebExtExamples("h2")}} api/events/event/index.md 44:{{Compat}} 46:{{WebExtExamples}} api/events/rule/index.md 38:{{Compat}} 40:{{WebExtExamples}} api/windows/getall/index.md 48:{{Compat}} 76:{{WebExtExamples}} api/windows/window/index.md 54:{{Compat}} 56:{{WebExtExamples}} api/commands/oncommand/index.md 53:{{Compat}} 80:{{WebExtExamples}} api/commands/update/index.md 53:{{Compat}} 72:{{WebExtExamples}} api/windows/create/index.md 148:{{WebExtExamples}} 152:{{Compat}} api/commands/command/index.md 36:{{Compat}} 38:{{WebExtExamples}} api/commands/index.md 40:{{WebExtExamples("h2")}} 42:{{Compat}} api/commands/getall/index.md 41:{{Compat}} 56:{{WebExtExamples}} api/find/find/index.md 113:{{Compat}} 295:{{WebExtExamples}} api/find/index.md 31:{{WebExtExamples("h2")}} 33:{{Compat}} api/windows/index.md 66:{{Compat}} 68:{{WebExtExamples("h2")}} api/windows/createtype/index.md 32:{{Compat}} 34:{{WebExtExamples}} api/commands/reset/index.md 43:{{Compat}} 59:{{WebExtExamples}} api/find/highlightresults/index.md 51:{{Compat}} api/windows/onfocuschanged/index.md 53:{{Compat}} 65:{{WebExtExamples}} api/windows/window_id_current/index.md 23:{{Compat}} 25:{{WebExtExamples}} api/windows/oncreated/index.md 51:{{Compat}} 63:{{WebExtExamples}} api/windows/onremoved/index.md 51:{{Compat}} 63:{{WebExtExamples}} api/find/removehighlighting/index.md 36:{{Compat}} api/windows/window_id_none/index.md 23:{{Compat}} 25:{{WebExtExamples}} api/windows/get/index.md 53:{{Compat}} 77:{{WebExtExamples}} api/windows/windowstate/index.md 40:{{Compat}} 42:{{WebExtExamples}} api/windows/getlastfocused/index.md 50:{{Compat}} 72:{{WebExtExamples}} api/windows/windowtype/index.md 32:{{Compat}} 34:{{WebExtExamples}} api/windows/update/index.md 63:{{Compat}} 89:{{WebExtExamples}} api/windows/remove/index.md 43:{{Compat}} 80:{{WebExtExamples}} api/windows/getcurrent/index.md 52:{{Compat}} 74:{{WebExtExamples}} api/events/urlfilter/index.md 102:{{Compat}} 104:{{WebExtExamples}} manifest.json/sidebar_action/index.md 235:{{Compat}} manifest.json/content_scripts/index.md 358:{{Compat}} api/history/index.md 73:{{Compat}} 75:{{WebExtExamples("h2")}} api/devtools/index.md 33:{{Compat}} api/menus/update/index.md 151:{{WebExtExamples}} 155:{{Compat}} api/menus/onclicked/index.md 55:{{Compat}} 73:{{WebExtExamples}} api/history/onvisitremoved/index.md 59:{{Compat}} 75:{{WebExtExamples}} api/history/getvisits/index.md 46:{{Compat}} 79:{{WebExtExamples}} api/devtools/network/index.md 35:{{Compat}} 37:{{WebExtExamples("h2")}} api/devtools/inspectedwindow/index.md 35:{{WebExtExamples("h2")}} 39:{{Compat}} api/history/search/index.md 120:{{WebExtExamples}} 124:{{Compat}} api/devtools/network/onrequestfinished/index.md 54:{{Compat}} 72:{{WebExtExamples}} api/history/historyitem/index.md 40:{{Compat}} 42:{{WebExtExamples}} api/devtools/inspectedwindow/eval/index.md 89:{{Compat}} 175:{{WebExtExamples}} api/devtools/inspectedwindow/reload/index.md 43:{{Compat}} 60:{{WebExtExamples}} api/devtools/panels/index.md 59:{{Compat}} 61:{{WebExtExamples("h2")}} api/devtools/panels/create/index.md 47:{{Compat}} 72:{{WebExtExamples}} api/devtools/panels/themename/index.md 28:{{Compat}} 30:{{WebExtExamples}} api/devtools/inspectedwindow/tabid/index.md 49:{{Compat}} 51:{{WebExtExamples}} api/devtools/panels/onthemechanged/index.md 50:{{Compat}} 60:{{WebExtExamples}} api/devtools/panels/elementspanel/index.md 33:{{Compat}} 35:{{WebExtExamples}} api/devtools/panels/elements/index.md 22:{{Compat}} 24:{{WebExtExamples}} api/devtools/panels/extensionpanel/index.md 28:{{Compat}} 55:{{WebExtExamples}} api/devtools/panels/elementspanel/createsidebarpane/index.md 49:{{Compat}} 70:{{WebExtExamples}} api/devtools/panels/elementspanel/onselectionchanged/index.md 48:{{Compat}} 65:{{WebExtExamples}} api/devtools/network/onnavigated/index.md 49:{{Compat}} 61:{{WebExtExamples}} api/devtools/panels/extensionsidebarpane/setexpression/index.md 49:{{Compat}} 69:{{WebExtExamples}} api/devtools/network/gethar/index.md 36:{{Compat}} 54:{{WebExtExamples}} api/history/visititem/index.md 38:{{Compat}} 40:{{WebExtExamples}} api/menus/gettargetelement/index.md 68:{{WebExtExamples}} 72:{{Compat}} api/history/addurl/index.md 52:{{Compat}} 108:{{WebExtExamples}} api/history/deleterange/index.md 48:{{Compat}} 67:{{WebExtExamples}} api/menus/onhidden/index.md 52:{{Compat}} 66:{{WebExtExamples}} api/menus/create/index.md 186:{{WebExtExamples}} 190:{{Compat}} api/devtools/panels/extensionsidebarpane/index.md 43:{{Compat}} 45:{{WebExtExamples("h2")}} api/history/onvisited/index.md 54:{{Compat}} 69:{{WebExtExamples}} api/history/ontitlechanged/index.md 53:{{Compat}} 69:{{WebExtExamples}} api/devtools/panels/extensionsidebarpane/onhidden/index.md 48:{{Compat}} 70:{{WebExtExamples}} api/devtools/panels/extensionsidebarpane/onshown/index.md 47:{{Compat}} 69:{{WebExtExamples}} api/devtools/panels/extensionsidebarpane/setpage/index.md 50:{{WebExtExamples}} 54:{{Compat}} api/history/deleteurl/index.md 46:{{Compat}} 104:{{WebExtExamples}} api/menus/index.md 158:{{WebExtExamples("h2")}} 160:{{Compat}} api/menus/onshown/index.md 144:{{WebExtExamples}} 148:{{Compat}} api/devtools/panels/extensionsidebarpane/setobject/index.md 47:{{Compat}} 68:{{WebExtExamples}} api/history/deleteall/index.md 41:{{Compat}} 60:{{WebExtExamples}} api/history/transitiontype/index.md 50:{{Compat}} 52:{{WebExtExamples}} api/menus/onclickdata/index.md 64:{{Compat}} 66:{{WebExtExamples}} api/menus/itemtype/index.md 36:{{Compat}} 38:{{WebExtExamples}} api/menus/action_menu_top_level_limit/index.md 27:{{Compat}} 29:{{WebExtExamples}} api/menus/refresh/index.md 44:{{Compat}} 68:{{WebExtExamples}} api/menus/remove/index.md 69:{{WebExtExamples}} 73:{{Compat}} api/menus/contexttype/index.md 67:{{Compat}} 69:{{WebExtExamples}} api/menus/removeall/index.md 42:{{Compat}} 73:{{WebExtExamples}} manifest.json/name/index.md 44:{{Compat}} api/theme/index.md 41:{{Compat}} 43:{{WebExtExamples("h2")}} api/theme/theme/index.md 23:{{Compat}} 25:{{WebExtExamples}} api/theme/onupdated/index.md 59:{{Compat}} 75:{{WebExtExamples}} api/bookmarks/search/index.md 100:{{WebExtExamples}} 104:{{Compat}} api/bookmarks/bookmarktreenodeunmodifiable/index.md 27:{{Compat}} 29:{{WebExtExamples}} api/sessions/session/index.md 45:{{Compat}} api/sessions/onchanged/index.md 47:{{Compat}} 81:{{WebExtExamples}} api/sessions/restore/index.md 41:{{Compat}} 73:{{WebExtExamples}} api/bookmarks/create/index.md 61:{{WebExtExamples}} 65:{{Compat}} api/bookmarks/gettree/index.md 75:{{WebExtExamples}} 79:{{Compat}} api/bookmarks/removetree/index.md 68:{{WebExtExamples}} 72:{{Compat}} api/sessions/gettabvalue/index.md 46:{{Compat}} 66:{{WebExtExamples}} api/sessions/getwindowvalue/index.md 46:{{Compat}} 66:{{WebExtExamples}} manifest.json/user_scripts/index.md 61:{{Compat}} api/sessions/forgetclosedtab/index.md 46:{{Compat}} 74:{{WebExtExamples}} api/sessions/filter/index.md 30:{{Compat}} 34:{{WebExtExamples}} api/sessions/index.md 69:{{Compat}} 71:{{WebExtExamples("h2")}} api/bookmarks/getsubtree/index.md 80:{{WebExtExamples}} 84:{{Compat}} api/sessions/max_session_results/index.md 23:{{Compat}} api/bookmarks/bookmarktreenodetype/index.md 30:{{Compat}} 32:{{WebExtExamples}} api/bookmarks/index.md 79:{{Compat}} 81:{{WebExtExamples("h2")}} api/bookmarks/onchanged/index.md 72:{{WebExtExamples}} 76:{{Compat}} api/bookmarks/onmoved/index.md 68:{{Compat}} 88:{{WebExtExamples}} api/sessions/setwindowvalue/index.md 49:{{Compat}} 70:{{WebExtExamples}} api/sessions/settabvalue/index.md 49:{{Compat}} 71:{{WebExtExamples}} api/bookmarks/getchildren/index.md 61:{{WebExtExamples}} 65:{{Compat}} api/sessions/removewindowvalue/index.md 44:{{Compat}} 82:{{WebExtExamples}} api/bookmarks/oncreated/index.md 62:{{WebExtExamples}} 66:{{Compat}} api/bookmarks/onimportbegan/index.md 49:{{Compat}} 70:{{WebExtExamples}} api/bookmarks/onremoved/index.md 78:{{WebExtExamples}} 82:{{Compat}} manifest.json/dictionaries/index.md 55:{{Compat}} api/theme/reset/index.md 37:{{Compat}} 51:{{WebExtExamples}} api/bookmarks/onimportended/index.md 49:{{Compat}} 70:{{WebExtExamples}} api/bookmarks/getrecent/index.md 58:{{WebExtExamples}} 62:{{Compat}} api/bookmarks/get/index.md 57:{{WebExtExamples}} 61:{{Compat}} api/sessions/getrecentlyclosed/index.md 44:{{Compat}} 76:{{WebExtExamples}} api/sessions/forgetclosedwindow/index.md 43:{{Compat}} 71:{{WebExtExamples}} api/sessions/removetabvalue/index.md 44:{{Compat}} 84:{{WebExtExamples}} api/bookmarks/bookmarktreenode/index.md 49:{{Compat}} 51:{{WebExtExamples}} api/bookmarks/update/index.md 80:{{WebExtExamples}} 84:{{Compat}} manifest.json/manifest_version/index.md 40:{{Compat}} api/bookmarks/remove/index.md 61:{{WebExtExamples}} 65:{{Compat}} api/bookmarks/createdetails/index.md 38:{{Compat}} 40:{{WebExtExamples}} api/bookmarks/move/index.md 74:{{WebExtExamples}} 78:{{Compat}} api/bookmarks/onchildrenreordered/index.md 60:{{Compat}} 77:{{WebExtExamples}} api/theme/update/index.md 38:{{Compat}} 85:{{WebExtExamples}} api/theme/getcurrent/index.md 41:{{Compat}} 63:{{WebExtExamples}} manifest.json/commands/index.md 270:{{Compat}} api/action/settitle/index.md 77:{{WebExtExamples}} 81:{{Compat}} api/action/setpopup/index.md 104:{{WebExtExamples}} 108:{{Compat}} api/action/getpopup/index.md 66:{{WebExtExamples}} 70:{{Compat}} api/browsersettings/ftpprotocolenabled/index.md 27:{{Compat}} 48:{{WebExtExamples}} api/browsersettings/zoomsitespecific/index.md 37:{{Compat}} 51:{{WebExtExamples}} api/browsersettings/openurlbarresultsinnewtabs/index.md 26:{{Compat}} 42:{{WebExtExamples}} api/action/getbadgetext/index.md 66:{{WebExtExamples}} 70:{{Compat}} api/browsersettings/newtabposition/index.md 28:{{Compat}} 45:{{WebExtExamples}} api/browsersettings/contextmenushowevent/index.md 26:{{Compat}} 42:{{WebExtExamples}} api/action/setbadgetext/index.md 75:{{WebExtExamples}} 79:{{Compat}} api/browsersettings/index.md 68:{{Compat}} 70:{{WebExtExamples("h2")}} api/browsersettings/zoomfullpage/index.md 29:{{Compat}} 43:{{WebExtExamples}} api/browsersettings/imageanimationbehavior/index.md 27:{{Compat}} 37:{{WebExtExamples}} api/search/index.md 30:{{WebExtExamples("h2")}} 32:{{Compat}} api/browsersettings/openbookmarksinnewtabs/index.md 24:{{Compat}} 40:{{WebExtExamples}} api/browsersettings/webnotificationsdisabled/index.md 32:{{Compat}} 52:{{WebExtExamples}} api/browsersettings/newtabpageoverride/index.md 24:{{Compat}} 36:{{WebExtExamples}} api/browsersettings/usedocumentfonts/index.md 29:{{Compat}} 43:{{WebExtExamples}} api/browsersettings/cacheenabled/index.md 24:{{Compat}} 49:{{WebExtExamples}} api/search/search/index.md 52:{{Compat}} 95:{{WebExtExamples}} api/search/get/index.md 49:{{Compat}} 66:{{WebExtExamples}} api/browsersettings/overridecontentcolorscheme/index.md 31:{{Compat}} 47:{{WebExtExamples}} api/browsersettings/opensearchresultsinnewtabs/index.md 26:{{Compat}} 42:{{WebExtExamples}} api/browsersettings/tlsversionrestrictionconfig/index.md 31:{{Compat}} 45:{{WebExtExamples}} api/browsersettings/homepageoverride/index.md 24:{{Compat}} 36:{{WebExtExamples}} api/browsersettings/colormanagement/index.md 33:{{Compat}} 59:{{WebExtExamples}} api/browsersettings/allowpopupsforuserevents/index.md 35:{{Compat}} 58:{{WebExtExamples}} api/action/getbadgetextcolor/index.md 72:{{WebExtExamples}} 76:{{Compat}} api/browsersettings/overridedocumentcolors/index.md 30:{{Compat}} 46:{{WebExtExamples}} api/action/gettitle/index.md 74:{{WebExtExamples}} 78:{{Compat}} api/browsersettings/closetabsbydoubleclick/index.md 26:{{Compat}} manifest.json/options_page/index.md 58:{{Compat}} api/action/colorarray/index.md 30:{{WebExtExamples}} 34:{{Compat}} api/action/openpopup/index.md 55:{{WebExtExamples}} 59:{{Compat}} api/action/index.md 80:{{WebExtExamples("h2")}} 84:{{Compat}} api/action/getbadgebackgroundcolor/index.md 69:{{WebExtExamples}} 73:{{Compat}} api/contentscripts/index.md 40:{{Compat}} 42:{{WebExtExamples("h2")}} api/action/setbadgetextcolor/index.md 81:{{WebExtExamples}} 85:{{Compat}} api/action/onclicked/index.md 74:{{WebExtExamples}} 78:{{Compat}} api/action/isenabled/index.md 77:{{WebExtExamples}} 81:{{Compat}} api/action/setbadgebackgroundcolor/index.md 86:{{WebExtExamples}} 90:{{Compat}} api/action/imagedatatype/index.md 25:{{WebExtExamples}} 29:{{Compat}} api/action/disable/index.md 58:{{WebExtExamples}} 62:{{Compat}} api/action/seticon/index.md 157:{{WebExtExamples}} 161:{{Compat}} api/contentscripts/registeredcontentscript/index.md 29:{{Compat}} 62:{{WebExtExamples}} api/contentscripts/register/index.md 70:{{Compat}} 104:{{WebExtExamples}} api/action/enable/index.md 50:{{WebExtExamples}} 54:{{Compat}} manifest.json/options_ui/index.md 146:{{Compat}} manifest.json/icons/index.md 93:{{Compat}} api/contentscripts/registeredcontentscript/unregister/index.md 34:{{Compat}} 67:{{WebExtExamples}} api/storage/storagearea/index.md 45:{{Compat}} 47:{{WebExtExamples}} api/permissions/request/index.md 48:{{Compat}} 80:{{WebExtExamples}} api/storage/storagearea/onchanged/index.md 71:{{WebExtExamples}} 75:{{Compat}} api/storage/storagearea/remove/index.md 45:{{Compat}} 64:{{WebExtExamples}} manifest.json/theme/index.md 1558:{{Compat}} api/permissions/getall/index.md 37:{{Compat}} 51:{{WebExtExamples}} api/storage/onchanged/index.md 55:{{Compat}} 80:{{WebExtExamples}} api/storage/sync/index.md 106:{{WebExtExamples}} 110:{{Compat}} api/storage/session/index.md 47:{{WebExtExamples}} 51:{{Compat}} api/permissions/index.md 62:{{Compat}} 69:{{WebExtExamples("h2")}} api/storage/storagearea/set/index.md 54:{{Compat}} 98:{{WebExtExamples}} api/storage/storagearea/getbytesinuse/index.md 49:{{Compat}} 51:{{WebExtExamples}} api/storage/storagearea/clear/index.md 42:{{Compat}} 59:{{WebExtExamples}} api/permissions/onremoved/index.md 49:{{Compat}} 62:{{WebExtExamples}} api/storage/storagearea/get/index.md 57:{{Compat}} 136:{{WebExtExamples}} api/permissions/remove/index.md 42:{{Compat}} 62:{{WebExtExamples}} api/permissions/contains/index.md 42:{{Compat}} 84:{{WebExtExamples}} api/permissions/onadded/index.md 49:{{Compat}} 62:{{WebExtExamples}} api/storage/storagechange/index.md 32:{{Compat}} 34:{{WebExtExamples}} api/storage/local/index.md 54:{{WebExtExamples}} 58:{{Compat}} api/permissions/permissions/index.md 29:{{Compat}} 31:{{WebExtExamples}} api/storage/index.md 64:{{Compat}} 66:{{WebExtExamples("h2")}} manifest.json/index.md 169:{{Compat}} manifest.json/version/index.md 75:{{Compat}} api/management/onuninstalled/index.md 51:{{Compat}} 63:{{WebExtExamples}} api/management/getall/index.md 41:{{Compat}} 60:{{WebExtExamples}} manifest.json/description/index.md 50:{{Compat}} api/storage/managed/index.md 65:{{WebExtExamples}} 69:{{Compat}} api/management/get/index.md 42:{{Compat}} 59:{{WebExtExamples}} api/management/setenabled/index.md 49:{{Compat}} 68:{{WebExtExamples}} api/management/onenabled/index.md 51:{{Compat}} 63:{{WebExtExamples}} api/management/index.md 67:{{Compat}} 69:{{WebExtExamples("h2")}} api/management/uninstall/index.md 50:{{Compat}} 69:{{WebExtExamples}} api/management/getpermissionwarningsbymanifest/index.md 44:{{Compat}} 72:{{WebExtExamples}} api/management/ondisabled/index.md 51:{{Compat}} 63:{{WebExtExamples}} api/management/uninstallself/index.md 48:{{Compat}} 83:{{WebExtExamples}} api/management/getself/index.md 39:{{Compat}} 54:{{WebExtExamples}} api/management/getpermissionwarningsbyid/index.md 44:{{Compat}} 62:{{WebExtExamples}} api/management/oninstalled/index.md 51:{{Compat}} 63:{{WebExtExamples}} api/management/extensioninfo/index.md 84:{{Compat}} 86:{{WebExtExamples}} api/management/install/index.md 41:{{Compat}} 83:{{WebExtExamples}} manifest.json/incognito/index.md 72:{{Compat}} api/runtime/platformos/index.md 42:{{Compat}} 44:{{WebExtExamples}} api/runtime/openoptionspage/index.md 39:{{Compat}} 58:{{WebExtExamples}} api/runtime/reload/index.md 35:{{Compat}} 47:{{WebExtExamples}} api/runtime/geturl/index.md 42:{{Compat}} 55:{{WebExtExamples}} api/runtime/getpackagedirectoryentry/index.md 39:{{Compat}} 52:{{WebExtExamples}} api/runtime/lasterror/index.md 83:{{Compat}} 85:{{WebExtExamples}} api/alarms/getall/index.md 49:{{WebExtExamples}} 53:{{Compat}} api/runtime/onstartup/index.md 49:{{Compat}} 65:{{WebExtExamples}} api/alarms/index.md 46:{{WebExtExamples("h2")}} 50:{{Compat}} api/alarms/alarm/index.md 34:{{Compat}} 36:{{WebExtExamples}} api/alarms/create/index.md 93:{{Compat}} api/runtime/setuninstallurl/index.md 42:{{Compat}} 59:{{WebExtExamples}} api/runtime/onbrowserupdateavailable/index.md 48:{{Compat}} 62:{{WebExtExamples}} api/runtime/connect/index.md 58:{{Compat}} 116:{{WebExtExamples}} api/alarms/onalarm/index.md 61:{{WebExtExamples}} 65:{{Compat}} api/runtime/onsuspendcanceled/index.md 47:{{Compat}} 61:{{WebExtExamples}} api/runtime/onconnect/index.md 51:{{Compat}} 109:{{WebExtExamples}} api/runtime/port/index.md 103:{{Compat}} 212:{{WebExtExamples}} manifest.json/action/index.md 389:{{Compat}} api/alarms/clear/index.md 51:{{WebExtExamples}} 55:{{Compat}} api/alarms/get/index.md 53:{{WebExtExamples}} 57:{{Compat}} api/runtime/requestupdatecheckstatus/index.md 34:{{Compat}} 36:{{WebExtExamples}} api/alarms/clearall/index.md 48:{{WebExtExamples}} 52:{{Compat}} api/runtime/index.md 111:{{Compat}} 113:{{WebExtExamples("h2")}} api/runtime/id/index.md 33:{{Compat}} 35:{{WebExtExamples}} api/runtime/sendmessage/index.md 84:{{Compat}} 126:{{WebExtExamples}} api/runtime/platformnaclarch/index.md 27:{{Compat}} 29:{{WebExtExamples}} manifest.json/externally_connectable/index.md 69:{{Compat}} api/runtime/getbrowserinfo/index.md 58:{{WebExtExamples}} 62:{{Compat}} api/runtime/platforminfo/index.md 34:{{Compat}} 36:{{WebExtExamples}} api/runtime/connectnative/index.md 42:{{Compat}} 70:{{WebExtExamples}} api/runtime/onconnectexternal/index.md 55:{{Compat}} 97:{{WebExtExamples}} api/runtime/platformarch/index.md 34:{{Compat}} 36:{{WebExtExamples}} api/runtime/oninstalledreason/index.md 36:{{Compat}} 38:{{WebExtExamples}} api/runtime/onmessage/index.md 118:{{Compat}} 273:{{WebExtExamples}} api/runtime/messagesender/index.md 48:{{Compat}} 50:{{WebExtExamples}} api/runtime/onsuspend/index.md 49:{{Compat}} 64:{{WebExtExamples}} api/runtime/onrestartrequired/index.md 51:{{Compat}} 55:{{WebExtExamples}} api/runtime/onupdateavailable/index.md 57:{{Compat}} 73:{{WebExtExamples}} api/runtime/getmanifest/index.md 37:{{Compat}} 48:{{WebExtExamples}} api/runtime/getframeid/index.md 63:{{WebExtExamples}} 67:{{Compat}} api/runtime/oninstalled/index.md 63:{{Compat}} 80:{{WebExtExamples}} api/runtime/getbackgroundpage/index.md 53:{{Compat}} 84:{{WebExtExamples}} api/runtime/getplatforminfo/index.md 39:{{Compat}} 54:{{WebExtExamples}} api/runtime/sendnativemessage/index.md 51:{{Compat}} 76:{{WebExtExamples}} api/runtime/onrestartrequiredreason/index.md 31:{{Compat}} 33:{{WebExtExamples}} api/runtime/requestupdatecheck/index.md 48:{{Compat}} 70:{{WebExtExamples}} api/runtime/onmessageexternal/index.md 74:{{Compat}} 103:{{WebExtExamples}} api/browseraction/getpopup/index.md 53:{{Compat}} 68:{{WebExtExamples}} api/browseraction/setpopup/index.md 60:{{Compat}} 106:{{WebExtExamples}} api/browseraction/getbadgetextcolor/index.md 56:{{Compat}} 74:{{WebExtExamples}} api/omnibox/oninputcancelled/index.md 43:{{Compat}} 53:{{WebExtExamples}} api/sidebaraction/open/index.md 39:{{Compat}} 57:{{WebExtExamples}} api/sidebaraction/close/index.md 40:{{Compat}} 58:{{WebExtExamples}} api/sidebaraction/gettitle/index.md 54:{{Compat}} 75:{{WebExtExamples}} api/sidebaraction/settitle/index.md 68:{{Compat}} 84:{{WebExtExamples}} api/browseraction/setbadgebackgroundcolor/index.md 59:{{Compat}} 90:{{WebExtExamples}} api/sidebaraction/setpanel/index.md 87:{{WebExtExamples}} 91:{{Compat}} api/sidebaraction/getpanel/index.md 56:{{Compat}} 71:{{WebExtExamples}} api/browseraction/setbadgetextcolor/index.md 54:{{Compat}} 83:{{WebExtExamples}} api/sidebaraction/index.md 53:{{Compat}} api/sidebaraction/toggle/index.md 40:{{Compat}} 58:{{WebExtExamples}} api/sidebaraction/isopen/index.md 50:{{Compat}} 77:{{WebExtExamples}} api/omnibox/oninputstarted/index.md 48:{{Compat}} 58:{{WebExtExamples}} api/sidebaraction/imagedatatype/index.md 26:{{Compat}} 28:{{WebExtExamples}} manifest.json/short_name/index.md 46:{{Compat}} api/omnibox/index.md 54:{{Compat}} 56:{{WebExtExamples("h2")}} api/sidebaraction/seticon/index.md 106:{{Compat}} 134:{{WebExtExamples}} api/omnibox/oninputchanged/index.md 55:{{Compat}} 134:{{WebExtExamples}} api/omnibox/suggestresult/index.md 33:{{Compat}} api/omnibox/setdefaultsuggestion/index.md 41:{{Compat}} 51:{{WebExtExamples}} api/omnibox/oninputentered/index.md 55:{{Compat}} 134:{{WebExtExamples}} api/omnibox/oninputentereddisposition/index.md 35:{{Compat}} api/browseraction/gettitle/index.md 55:{{Compat}} 76:{{WebExtExamples}} api/browseraction/settitle/index.md 58:{{Compat}} 79:{{WebExtExamples}} api/browseraction/index.md 80:{{Compat}} 82:{{WebExtExamples("h2")}} api/browseraction/openpopup/index.md 39:{{Compat}} 57:{{WebExtExamples}} api/browseraction/colorarray/index.md 32:{{Compat}} 34:{{WebExtExamples}} api/browseraction/isenabled/index.md 52:{{Compat}} 79:{{WebExtExamples}} manifest.json/theme_experiment/index.md 194:{{Compat}} api/browseraction/onclicked/index.md 61:{{Compat}} 76:{{WebExtExamples}} api/browseraction/imagedatatype/index.md 27:{{Compat}} 29:{{WebExtExamples}} api/browseraction/getbadgebackgroundcolor/index.md 53:{{Compat}} 71:{{WebExtExamples}} api/browseraction/setbadgetext/index.md 61:{{Compat}} 77:{{WebExtExamples}} api/browseraction/getbadgetext/index.md 53:{{Compat}} 68:{{WebExtExamples}} api/browseraction/disable/index.md 36:{{Compat}} 60:{{WebExtExamples}} api/browseraction/seticon/index.md 95:{{Compat}} 160:{{WebExtExamples}} api/browseraction/enable/index.md 36:{{Compat}} 52:{{WebExtExamples}} manifest.json/permissions/index.md 209:{{Compat}} manifest.json/browser_specific_settings/index.md 133:{{Compat}} manifest.json/author/index.md 46:{{Compat}} manifest.json/chrome_url_overrides/index.md 132:{{Compat}} manifest.json/devtools_page/index.md 54:{{Compat}} manifest.json/omnibox/index.md 56:{{Compat}} manifest.json/content_security_policy/index.md 267:{{Compat}} manifest.json/protocol_handlers/index.md 105:{{Compat}} manifest.json/chrome_settings_overrides/index.md 196:{{Compat}} manifest.json/browser_action/index.md 391:{{Compat}} manifest.json/offline_enabled/index.md 48:{{Compat}} manifest.json/web_accessible_resources/index.md 191:{{Compat}} manifest.json/homepage_url/index.md 53:{{Compat}} manifest.json/optional_permissions/index.md 125:{{Compat}} manifest.json/version_name/index.md 40:{{Compat}} manifest.json/default_locale/index.md 45:{{Compat}} api/identity/index.md 67:{{Compat}} 69:{{WebExtExamples("h2")}} api/proxy/index.md 54:{{WebExtExamples("h2")}} 58:{{Compat}} api/identity/getredirecturl/index.md 40:{{Compat}} 50:{{WebExtExamples}} api/identity/launchwebauthflow/index.md 74:{{Compat}} 106:{{WebExtExamples}} api/browsingdata/remove/index.md 86:{{WebExtExamples}} 90:{{Compat}} api/proxy/onrequest/index.md 79:{{Compat}} 101:{{WebExtExamples}} api/browsingdata/removehistory/index.md 84:{{Compat}} 86:{{WebExtExamples}} api/browsingdata/removelocalstorage/index.md 62:{{Compat}} 64:{{WebExtExamples}} api/proxy/proxyinfo/index.md 55:{{Compat}} 57:{{WebExtExamples}} api/proxy/onerror/index.md 49:{{WebExtExamples}} 53:{{Compat}} api/proxy/requestdetails/index.md 55:{{Compat}} 57:{{WebExtExamples}} api/proxy/register/index.md 158:{{WebExtExamples}} 162:{{Compat}} api/proxy/unregister/index.md 46:{{WebExtExamples}} 50:{{Compat}} api/browsingdata/index.md 73:{{Compat}} 75:{{WebExtExamples("h2")}} api/browsingdata/removeformdata/index.md 84:{{Compat}} 86:{{WebExtExamples}} api/proxy/settings/index.md 62:{{WebExtExamples}} 66:{{Compat}} api/browsingdata/removecookies/index.md 88:{{Compat}} 90:{{WebExtExamples}} api/browsingdata/removedownloads/index.md 84:{{Compat}} 86:{{WebExtExamples}} api/browsingdata/removeplugindata/index.md 84:{{Compat}} 86:{{WebExtExamples}} api/browsingdata/removecache/index.md 59:{{Compat}} 61:{{WebExtExamples}} manifest.json/developer/index.md 58:{{Compat}} api/browsingdata/datatypeset/index.md 58:{{Compat}} api/browsingdata/removaloptions/index.md 54:{{Compat}} api/extensiontypes/index.md 35:{{Compat}} 37:{{WebExtExamples("h2")}} api/browsingdata/settings/index.md 51:{{Compat}} 71:{{WebExtExamples}} api/extensiontypes/imagedetails/index.md 45:{{Compat}} 47:{{WebExtExamples}} api/extensiontypes/imageformat/index.md 27:{{Compat}} 29:{{WebExtExamples}} api/extensiontypes/runat/index.md 33:{{Compat}} 35:{{WebExtExamples}} api/browsingdata/removepasswords/index.md 84:{{Compat}} 86:{{WebExtExamples}} manifest.json/background/index.md 173:{{Compat}} api/privacy/index.md 31:{{Compat}} 33:{{WebExtExamples("h2")}} api/privacy/websites/index.md 77:{{Compat}} 111:{{WebExtExamples}} api/extension/sendrequest/index.md 51:{{Compat}} 53:{{WebExtExamples}} api/privacy/services/index.md 26:{{Compat}} 56:{{WebExtExamples}} api/scripting/unregistercontentscripts/index.md 57:{{WebExtExamples}} 61:{{Compat}} api/pageaction/setpopup/index.md 47:{{Compat}} 72:{{WebExtExamples}} api/pageaction/getpopup/index.md 46:{{Compat}} 70:{{WebExtExamples}} api/pageaction/onclicked/index.md 61:{{Compat}} 79:{{WebExtExamples}} api/scripting/contentscriptfilter/index.md 29:{{Compat}} 31:{{WebExtExamples}} api/pageaction/gettitle/index.md 46:{{Compat}} 65:{{WebExtExamples}} api/pageaction/settitle/index.md 45:{{Compat}} 61:{{WebExtExamples}} api/pageaction/openpopup/index.md 38:{{Compat}} 56:{{WebExtExamples}} api/pageaction/index.md 63:{{Compat}} 65:{{WebExtExamples("h2")}} api/scripting/insertcss/index.md 95:{{WebExtExamples}} 99:{{Compat}} api/pageaction/imagedatatype/index.md 27:{{Compat}} 29:{{WebExtExamples}} api/pageaction/hide/index.md 38:{{Compat}} 50:{{WebExtExamples}} api/scripting/updatecontentscripts/index.md 70:{{WebExtExamples}} 74:{{Compat}} api/scripting/index.md 56:{{Compat}} 58:{{WebExtExamples("h2")}} api/scripting/executescript/index.md 121:{{WebExtExamples}} 125:{{Compat}} api/scripting/registeredcontentscript/index.md 43:{{Compat}} 45:{{WebExtExamples}} api/scripting/injectiontarget/index.md 37:{{Compat}} 39:{{WebExtExamples}} api/pageaction/show/index.md 44:{{Compat}} 65:{{WebExtExamples}} api/pageaction/isshown/index.md 45:{{Compat}} 64:{{WebExtExamples}} api/scripting/registercontentscripts/index.md 61:{{WebExtExamples}} 65:{{Compat}} api/pageaction/seticon/index.md 86:{{Compat}} 100:{{WebExtExamples}} api/extension/geturl/index.md 43:{{Compat}} 56:{{WebExtExamples}} api/extension/isallowedfileschemeaccess/index.md 41:{{Compat}} 54:{{WebExtExamples}} api/scripting/getregisteredcontentscripts/index.md 73:{{WebExtExamples}} 77:{{Compat}} api/extension/inincognitocontext/index.md 33:{{Compat}} 35:{{WebExtExamples}} api/scripting/removecss/index.md 82:{{WebExtExamples}} 86:{{Compat}} api/extension/isallowedincognitoaccess/index.md 48:{{WebExtExamples}} 52:{{Compat}} api/extension/lasterror/index.md 25:{{Compat}} 27:{{WebExtExamples}} api/extension/index.md 61:{{Compat}} 63:{{WebExtExamples("h2")}} api/extension/onrequestexternal/index.md 61:{{Compat}} 63:{{WebExtExamples}} api/extension/getextensiontabs/index.md 44:{{Compat}} 46:{{WebExtExamples}} api/extension/viewtype/index.md 27:{{Compat}} 29:{{WebExtExamples}} api/types/index.md 24:{{WebExtExamples("h2")}} api/extension/onrequest/index.md 61:{{Compat}} 63:{{WebExtExamples}} api/extension/setupdateurldata/index.md 36:{{Compat}} 40:{{WebExtExamples}} api/extension/getbackgroundpage/index.md 60:{{WebExtExamples}} 64:{{Compat}} api/extension/getviews/index.md 53:{{Compat}} 79:{{WebExtExamples}} api/privacy/network/index.md 54:{{Compat}} 88:{{WebExtExamples}} api/types/browsersetting/clear/index.md 61:{{WebExtExamples}} api/types/browsersetting/index.md 40:{{Compat}} 42:{{WebExtExamples}} api/types/browsersetting/onchange/index.md 81:{{Compat}} 85:{{WebExtExamples}} api/types/browsersetting/get/index.md 82:{{WebExtExamples}} api/types/browsersetting/set/index.md 83:{{WebExtExamples}} api/captiveportal/getstate/index.md 29:{{WebExtExamples}} 33:{{Compat}} api/captiveportal/index.md 42:{{Compat}} 44:{{WebExtExamples("h2")}} api/captiveportal/onconnectivityavailable/index.md 59:{{WebExtExamples}} 63:{{Compat}} api/captiveportal/canonicalurl/index.md 20:{{Compat}} 22:{{WebExtExamples}} api/idle/idlestate/index.md 27:{{Compat}} 29:{{WebExtExamples}} api/idle/index.md 41:{{Compat}} 43:{{WebExtExamples("h2")}} api/captiveportal/onstatechanged/index.md 59:{{WebExtExamples}} 63:{{Compat}} api/idle/setdetectioninterval/index.md 38:{{Compat}} 46:{{WebExtExamples}} api/captiveportal/getlastchecked/index.md 29:{{WebExtExamples}} 33:{{Compat}} api/idle/querystate/index.md 42:{{Compat}} 61:{{WebExtExamples}} api/idle/onstatechanged/index.md 55:{{Compat}} 67:{{WebExtExamples}} api/tabs/reload/index.md 76:{{WebExtExamples}} 80:{{Compat}} api/tabs/tabstatus/index.md 27:{{Compat}} 29:{{WebExtExamples}} api/tabs/warmup/index.md 76:{{WebExtExamples}} 80:{{Compat}} api/tabs/query/index.md 148:{{WebExtExamples}} 152:{{Compat}} api/tabs/onmoved/index.md 76:{{WebExtExamples}} 80:{{Compat}} api/tabs/onupdated/index.md 223:{{WebExtExamples}} 227:{{Compat}} api/tabs/onattached/index.md 74:{{WebExtExamples}} 78:{{Compat}} api/tabs/insertcss/index.md 106:{{WebExtExamples}} 110:{{Compat}} api/tabs/discard/index.md 78:{{WebExtExamples}} 82:{{Compat}} api/tabs/capturevisibletab/index.md 62:{{WebExtExamples}} 66:{{Compat}} api/tabs/onactivated/index.md 72:{{WebExtExamples}} 76:{{Compat}} api/tabs/zoomsettingsmode/index.md 34:{{Compat}} 36:{{WebExtExamples}} api/tabs/getselected/index.md 45:{{Compat}} 47:{{WebExtExamples}} api/tabs/printpreview/index.md 53:{{WebExtExamples}} 57:{{Compat}} api/tabs/onhighlighted/index.md 72:{{WebExtExamples}} 76:{{Compat}} api/tabs/create/index.md 108:{{WebExtExamples}} 112:{{Compat}} api/tabs/goback/index.md 44:{{Compat}} 63:{{WebExtExamples}} api/tabs/zoomsettingsscope/index.md 36:{{Compat}} 38:{{WebExtExamples}} api/tabs/removecss/index.md 79:{{WebExtExamples}} 83:{{Compat}} api/tabs/executescript/index.md 186:{{WebExtExamples}} 190:{{Compat}} api/tabs/tab_id_none/index.md 23:{{Compat}} 25:{{WebExtExamples}} api/tabs/sendmessage/index.md 106:{{WebExtExamples}} 110:{{Compat}} api/tabs/getzoom/index.md 72:{{WebExtExamples}} 76:{{Compat}} api/tabs/index.md 168:{{Compat}} 170:{{WebExtExamples("h2")}} api/tabs/connect/index.md 78:{{WebExtExamples}} 82:{{Compat}} api/tabs/getzoomsettings/index.md 57:{{WebExtExamples}} 61:{{Compat}} api/tabs/ondetached/index.md 74:{{WebExtExamples}} 78:{{Compat}} api/tabs/detectlanguage/index.md 85:{{WebExtExamples}} 89:{{Compat}} api/tabs/capturetab/index.md 61:{{WebExtExamples}} 65:{{Compat}} api/tabs/mutedinfo/index.md 34:{{Compat}} 36:{{WebExtExamples}} api/tabs/oncreated/index.md 63:{{WebExtExamples}} 67:{{Compat}} api/tabs/duplicate/index.md 78:{{WebExtExamples}} 82:{{Compat}} api/tabs/onremoved/index.md 74:{{WebExtExamples}} 78:{{Compat}} api/tabs/hide/index.md 87:{{WebExtExamples}} 91:{{Compat}} api/tabs/print/index.md 44:{{WebExtExamples}} 48:{{Compat}} api/tabs/getallinwindow/index.md 45:{{Compat}} 47:{{WebExtExamples}} api/tabs/setzoom/index.md 67:{{WebExtExamples}} 71:{{Compat}} api/tabs/onselectionchanged/index.md 63:{{Compat}} 65:{{WebExtExamples}} api/tabs/setzoomsettings/index.md 60:{{WebExtExamples}} 64:{{Compat}} api/tabs/mutedinforeason/index.md 34:{{Compat}} 36:{{WebExtExamples}} api/tabs/onzoomchange/index.md 76:{{WebExtExamples}} 80:{{Compat}} api/tabs/get/index.md 57:{{WebExtExamples}} 61:{{Compat}} api/tabs/show/index.md 69:{{WebExtExamples}} 73:{{Compat}} api/tabs/tab/index.md 90:{{Compat}} 92:{{WebExtExamples}} api/tabs/togglereadermode/index.md 74:{{WebExtExamples}} 78:{{Compat}} api/tabs/onreplaced/index.md 66:{{WebExtExamples}} 70:{{Compat}} api/tabs/goforward/index.md 44:{{Compat}} 63:{{WebExtExamples}} api/tabs/highlight/index.md 54:{{Compat}} 56:{{WebExtExamples}} api/tabs/zoomsettings/index.md 34:{{Compat}} 36:{{WebExtExamples}} api/tabs/windowtype/index.md 32:{{Compat}} 34:{{WebExtExamples}} api/tabs/update/index.md 128:{{WebExtExamples}} 132:{{Compat}} api/tabs/moveinsuccession/index.md 50:{{Compat}} api/tabs/onactivechanged/index.md 63:{{Compat}} api/tabs/remove/index.md 72:{{WebExtExamples}} 76:{{Compat}} api/tabs/saveaspdf/index.md 60:{{Compat}} api/tabs/sendrequest/index.md 48:{{Compat}} api/tabs/onhighlightchanged/index.md 63:{{Compat}} api/tabs/pagesettings/index.md 83:{{Compat}} 85:{{WebExtExamples}} api/tabs/getcurrent/index.md 58:{{WebExtExamples}} 62:{{Compat}} api/tabs/move/index.md 130:{{WebExtExamples}} 134:{{Compat}} interact_with_the_clipboard/index.md 176:{{Compat}} match_patterns/index.md 373:{{Compat}} browser_compatibility_for_manifest.json/index.md 13:{{Compat}} ```
rebloor commented 1 year ago

@caugner as a background task, examples are being moved to before the BCD as we have found people miss the examples when below BCD.

capjamesg commented 1 year ago

Is this still an active issue? If so, I would love to help!

Rob--W commented 1 year ago

This is still relevant.

Here is an example: https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/commands/getAll

In the sidebar, you can see that the "Browser compatibility" section comes before "Examples". The source code is here:

https://github.com/mdn/content/blob/6f9c88d96588ea1690300d97efdf87d13a5be7e9/files/en-us/mozilla/add-ons/webextensions/api/commands/getall/index.md#L30-L47

That should change, and the desired outcome is:

## Examples

... soem articles have optional inline examples here ....

{{WebExtExamples}}

## Browser compatibility

{{Compat}}

Note: Some articles may have {{WebExtExamples}} but no ## Examples header. That is incorrect, because it would cause the examples to be rendered under an unrelated header. If the rendered result has examples, put ## Examples before it. If {{WebExtExamples}} is empty (which happens if the API is not listed at https://github.com/mdn/webextensions-examples/blob/ff1cd273e0be8e8cc5bedd807ad70f82059c8438/examples.json), an alternative would be to use {{WebExtExamples("h2")}} as a placeholder, as done in https://github.com/mdn/content/pull/26802. The main reason for using {{WebExtExamples("h2")}} over {{WebExtExamples}} is to avoid having a ## Examples header with an empty section, because too many of such empty sections could continuously disappoint readers, to the point where developers may ignore the Examples section in the table of contents.

sesamemaki commented 1 year ago

Hello! Is someone still actively working on this issue? Otherwise, I would like to be assigned.

Rob--W commented 1 year ago

There are no pull requests associated with this ticket, so feel free to submit a pull request.

bsmth commented 6 months ago

I've removed the good first issue label as this touches 429 files and most likely requires some automation work and a bit of familiarity of the project structure. There is a description of the changes that need to be made in the following review comment: https://github.com/mdn/content/pull/29211#pullrequestreview-1651735366