webext-schema 5.3.4 → 5.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2524,11 +2524,11 @@
2524
2524
  "choices": [
2525
2525
  {
2526
2526
  "type": "string",
2527
- "description": "A string containing a valid `CSS color string <|link-css-color-string|>`__, including hexadecimal or functional representations. For example the color *crimson* can be specified as: <li><value>crimson</value> <li><value>#dc143c</value> <li><value>rgb(220, 20, 60)</value> (or <value>rgba(220, 20, 60, 0.5)</value> to set 50% opacity) <li><value>hsl(348, 83%, 47%)</value> (or <value>hsla(348, 83%, 47%, 0.5)</value> to set 50% opacity)"
2527
+ "description": "A string containing a valid <a href='url-css-color-string'>CSS color string</a>, including hexadecimal or functional representations. For example the color *crimson* can be specified as: <li><var>crimson</var> <li><var>#dc143c</var> <li><var>rgb(220, 20, 60)</var> (or <var>rgba(220, 20, 60, 0.5)</var> to set 50% opacity) <li><var>hsl(348, 83%, 47%)</var> (or <var>hsla(348, 83%, 47%, 0.5)</var> to set 50% opacity)"
2528
2528
  },
2529
2529
  {
2530
2530
  "type": "array",
2531
- "description": "An RGB array of 3 integers. For example <value>[220, 20, 60]</value> for the color *crimson*.",
2531
+ "description": "An RGB array of 3 integers. For example <var>[220, 20, 60]</var> for the color *crimson*.",
2532
2532
  "minItems": 3,
2533
2533
  "maxItems": 3,
2534
2534
  "items": {
@@ -2539,7 +2539,7 @@
2539
2539
  },
2540
2540
  {
2541
2541
  "type": "array",
2542
- "description": "An RGBA array of 3 integers and a fractional (a float between 0 and 1). For example <value>[220, 20, 60, 0.5]<value> for the color *crimson* with 50% opacity.",
2542
+ "description": "An RGBA array of 3 integers and a fractional (a float between 0 and 1). For example <var>[220, 20, 60, 0.5]<var> for the color *crimson* with 50% opacity.",
2543
2543
  "minItems": 4,
2544
2544
  "maxItems": 4,
2545
2545
  "items": {
@@ -2550,18 +2550,18 @@
2550
2550
  },
2551
2551
  {
2552
2552
  "id": "ThemeExperiment",
2553
- "description": "Defines additional color, image and property keys to be used in :ref:`theme.ThemeType`, extending the theme-able areas of Thunderbird.",
2553
+ "description": "Defines additional color, image and property keys to be used in $(ref:theme.ThemeType), extending the theme-able areas of Thunderbird.",
2554
2554
  "type": "object",
2555
2555
  "properties": {
2556
2556
  "stylesheet": {
2557
2557
  "optional": true,
2558
- "description": "URL to a stylesheet introducing additional CSS variables, extending the theme-able areas of Thunderbird. The `theme_experiment add-on in our example repository <https://github.com/thunderbird/sample-extensions/tree/master/manifest_v2/theme_experiment>`__ is using the stylesheet shown below, to add the <value>--chat-button-color</value> CSS color variable: <literalinclude>includes/theme/theme_experiment_style.css<lang>CSS</lang></literalinclude>The following <em>manifest.json</em> file maps the </value>--chat-button-color</value> CSS color variable to the theme color key <value>exp_chat_button</value> and uses it to set a color for the chat button: <literalinclude>includes/theme/theme_experiment_manifest.json<lang>JSON</lang></literalinclude>",
2558
+ "description": "URL to a stylesheet introducing additional CSS variables, extending the theme-able areas of Thunderbird. The <a href='url-theme-experiment'>theme_experiment add-on in our example repository</a> is using the stylesheet shown below, to add the <var>--chat-button-color</var> CSS color variable: <literalinclude>includes/theme/theme_experiment_style.css<lang>CSS</lang></literalinclude>The following <em>manifest.json</em> file maps the </var>--chat-button-color</var> CSS color variable to the theme color key <var>exp_chat_button</var> and uses it to set a color for the chat button: <literalinclude>includes/theme/theme_experiment_manifest.json<lang>JSON</lang></literalinclude>",
2559
2559
  "$ref": "ExtensionURL"
2560
2560
  },
2561
2561
  "images": {
2562
2562
  "type": "object",
2563
2563
  "optional": true,
2564
- "description": "A <em>dictionary object</em> with one or more <em>key-value</em> pairs to map new theme image keys to internal Thunderbird CSS image variables. The new image key is usable as an image reference in :ref:`theme.ThemeType`. Example: <literalinclude>includes/theme/theme_experiment_image.json<lang>JSON</lang></literalinclude>",
2564
+ "description": "A <em>dictionary object</em> with one or more <em>key-value</em> pairs to map new theme image keys to internal Thunderbird CSS image variables. The new image key is usable as an image reference in $(ref:theme.ThemeType). Example: <literalinclude>includes/theme/theme_experiment_image.json<lang>JSON</lang></literalinclude>",
2565
2565
  "additionalProperties": {
2566
2566
  "type": "string"
2567
2567
  }
@@ -2569,7 +2569,7 @@
2569
2569
  "colors": {
2570
2570
  "type": "object",
2571
2571
  "optional": true,
2572
- "description": "A <em>dictionary object</em> with one or more <em>key-value</em> pairs to map new theme color keys to internal Thunderbird CSS color variables. The example shown below maps the theme color key <value>popup_affordance</value> to the CSS color variable </value>--arrowpanel-dimmed</value>. The new color key is usable as a color reference in :ref:`theme.ThemeType`. <literalinclude>includes/theme/theme_experiment_color.json<lang>JSON</lang></literalinclude>",
2572
+ "description": "A <em>dictionary object</em> with one or more <em>key-value</em> pairs to map new theme color keys to internal Thunderbird CSS color variables. The example shown below maps the theme color key <var>popup_affordance</var> to the CSS color variable </var>--arrowpanel-dimmed</var>. The new color key is usable as a color reference in $(ref:theme.ThemeType). <literalinclude>includes/theme/theme_experiment_color.json<lang>JSON</lang></literalinclude>",
2573
2573
  "additionalProperties": {
2574
2574
  "type": "string"
2575
2575
  }
@@ -2577,7 +2577,7 @@
2577
2577
  "properties": {
2578
2578
  "type": "object",
2579
2579
  "optional": true,
2580
- "description": "A <em>dictionary object</em> with one or more <em>key-value</em> pairs to map new theme property keys to internal Thunderbird CSS property variables. The new property key is usable as a property reference in :ref:`theme.ThemeType`. Example: <literalinclude>includes/theme/theme_experiment_property.json<lang>JSON</lang></literalinclude>",
2580
+ "description": "A <em>dictionary object</em> with one or more <em>key-value</em> pairs to map new theme property keys to internal Thunderbird CSS property variables. The new property key is usable as a property reference in $(ref:theme.ThemeType). Example: <literalinclude>includes/theme/theme_experiment_property.json<lang>JSON</lang></literalinclude>",
2581
2581
  "additionalProperties": {
2582
2582
  "type": "string"
2583
2583
  }
@@ -2601,12 +2601,12 @@
2601
2601
  },
2602
2602
  "maxItems": 15,
2603
2603
  "optional": true,
2604
- "description": "Additional images added to the header area and displayed behind the ``theme_frame`` image."
2604
+ "description": "Additional images added to the header area and displayed behind the <var>theme_frame</var> image."
2605
2605
  },
2606
2606
  "headerURL": {
2607
2607
  "$ref": "ImageDataOrExtensionURL",
2608
2608
  "optional": true,
2609
- "deprecated": "Unsupported images property, use ``theme.images.theme_frame``, this alias is ignored in Thunderbird >= 70."
2609
+ "deprecated": "Unsupported images property, use <var>theme.images.theme_frame</var>, this alias is ignored in Thunderbird >= 70."
2610
2610
  },
2611
2611
  "theme_frame": {
2612
2612
  "$ref": "ImageDataOrExtensionURL",
@@ -2626,12 +2626,12 @@
2626
2626
  "tab_selected": {
2627
2627
  "$ref": "ThemeColor",
2628
2628
  "optional": true,
2629
- "description": "Background color of the selected tab. Defaults to the color specified by ``toolbar``."
2629
+ "description": "Background color of the selected tab. Defaults to the color specified by <var>toolbar</var>."
2630
2630
  },
2631
2631
  "accentcolor": {
2632
2632
  "$ref": "ThemeColor",
2633
2633
  "optional": true,
2634
- "deprecated": "Unsupported colors property, use ``theme.colors.frame``, this alias is ignored in Thunderbird >= 70."
2634
+ "deprecated": "Unsupported colors property, use <var>theme.colors.frame</var>, this alias is ignored in Thunderbird >= 70."
2635
2635
  },
2636
2636
  "frame": {
2637
2637
  "$ref": "ThemeColor",
@@ -2646,7 +2646,7 @@
2646
2646
  "textcolor": {
2647
2647
  "$ref": "ThemeColor",
2648
2648
  "optional": true,
2649
- "deprecated": "Unsupported color property, use ``theme.colors.tab_background_text``, this alias is ignored in Thunderbird >= 70."
2649
+ "deprecated": "Unsupported color property, use <var>theme.colors.tab_background_text</var>, this alias is ignored in Thunderbird >= 70."
2650
2650
  },
2651
2651
  "tab_background_text": {
2652
2652
  "$ref": "ThemeColor",
@@ -2666,7 +2666,7 @@
2666
2666
  "tab_text": {
2667
2667
  "$ref": "ThemeColor",
2668
2668
  "optional": true,
2669
- "description": "The text color for the selected tab. Defaults to the color specified by ``toolbar_text``."
2669
+ "description": "The text color for the selected tab. Defaults to the color specified by <var>toolbar_text</var>."
2670
2670
  },
2671
2671
  "tab_line": {
2672
2672
  "$ref": "ThemeColor",
@@ -2676,12 +2676,12 @@
2676
2676
  "toolbar": {
2677
2677
  "$ref": "ThemeColor",
2678
2678
  "optional": true,
2679
- "description": "The background color of the toolbars. Also used as default value for ``tab_selected``."
2679
+ "description": "The background color of the toolbars. Also used as default value for <var>tab_selected</var>."
2680
2680
  },
2681
2681
  "toolbar_text": {
2682
2682
  "$ref": "ThemeColor",
2683
2683
  "optional": true,
2684
- "description": "The text color in the main Thunderbird toolbar. Also used as default value for ``icons`` and ``tab_text``."
2684
+ "description": "The text color in the main Thunderbird toolbar. Also used as default value for <var>icons</var> and <var>tab_text</var>."
2685
2685
  },
2686
2686
  "bookmark_text": {
2687
2687
  "$ref": "ThemeColor",
@@ -2727,7 +2727,7 @@
2727
2727
  "icons": {
2728
2728
  "$ref": "ThemeColor",
2729
2729
  "optional": true,
2730
- "description": "The color of the toolbar icons. Defaults to the color specified by ``toolbar_text``."
2730
+ "description": "The color of the toolbar icons. Defaults to the color specified by <var>toolbar_text</var>."
2731
2731
  },
2732
2732
  "icons_attention": {
2733
2733
  "$ref": "ThemeColor",
@@ -2953,7 +2953,7 @@
2953
2953
  "theme_experiment": {
2954
2954
  "$ref": "ThemeExperiment",
2955
2955
  "optional": true,
2956
- "description": "A theme experiment allows modifying the user interface of Thunderbird beyond what is currently possible using the built-in color, image and property keys of :ref:`theme.ThemeType`. These experiments are a precursor to proposing new theme features for inclusion in Thunderbird. Experimentation is done by mapping internal CSS color, image and property variables to new theme keys and using them in :ref:`theme.ThemeType` and by loading additional style sheets to add new CSS variables, extending the theme-able areas of Thunderbird. Can be used in static and dynamic themes."
2956
+ "description": "A theme experiment allows modifying the user interface of Thunderbird beyond what is currently possible using the built-in color, image and property keys of $(ref:theme.ThemeType). These experiments are a precursor to proposing new theme features for inclusion in Thunderbird. Experimentation is done by mapping internal CSS color, image and property variables to new theme keys and using them in $(ref:theme.ThemeType) and by loading additional style sheets to add new CSS variables, extending the theme-able areas of Thunderbird. Can be used in static and dynamic themes."
2957
2957
  }
2958
2958
  }
2959
2959
  }
@@ -3086,7 +3086,7 @@
3086
3086
  "types": [
3087
3087
  {
3088
3088
  "id": "MailAccount",
3089
- "description": "An object describing a mail account, as returned for example by the :ref:`accounts.list` and :ref:`accounts.get` methods.",
3089
+ "description": "An object describing a mail account, as returned for example by the $(ref:accounts.list) and $(ref:accounts.get) methods.",
3090
3090
  "type": "object",
3091
3091
  "properties": {
3092
3092
  "id": {
@@ -3099,11 +3099,11 @@
3099
3099
  },
3100
3100
  "type": {
3101
3101
  "type": "string",
3102
- "description": "What sort of account this is, e.g. <value>imap</value>, <value>nntp</value>, or <value>pop3</value>."
3102
+ "description": "What sort of account this is, e.g. <var>imap</var>, <var>nntp</var>, or <var>pop3</var>."
3103
3103
  },
3104
3104
  "folders": {
3105
3105
  "max_manifest_version": 2,
3106
- "description": "The folders for this account. The property may be <value>null</value>, if inclusion of folders had not been requested.",
3106
+ "description": "The folders for this account. The property may be <var>null</var>, if inclusion of folders had not been requested.",
3107
3107
  "choices": [
3108
3108
  {
3109
3109
  "type": "array",
@@ -3132,7 +3132,7 @@
3132
3132
  {
3133
3133
  "id": "MailAccountId",
3134
3134
  "type": "string",
3135
- "description": "A unique id representing a :ref:`accounts.MailAccount`."
3135
+ "description": "A unique id representing a $(ref:accounts.MailAccount)."
3136
3136
  },
3137
3137
  {
3138
3138
  "id": "MailAccountType",
@@ -3170,11 +3170,11 @@
3170
3170
  "async": "callback",
3171
3171
  "parameters": [
3172
3172
  {
3173
- "name": "includeFolders",
3173
+ "name": "includeSubFolders",
3174
3174
  "optional": true,
3175
3175
  "default": false,
3176
3176
  "type": "boolean",
3177
- "description": "Specifies whether the returned :ref:`accounts.MailAccount` objects should include their account's folders. Defaults to <value>false</value>."
3177
+ "description": "Specifies whether the $(ref:folders.MailFolder) in the <var>rootFolder</var> property of each found $(ref:accounts.MailAccount) should populate its <var>subFolders</var> property, and include all (nested!) subfolders. Defaults to <var>false</var>."
3178
3178
  },
3179
3179
  {
3180
3180
  "type": "function",
@@ -3199,11 +3199,11 @@
3199
3199
  "async": "callback",
3200
3200
  "parameters": [
3201
3201
  {
3202
- "name": "includeFolders",
3202
+ "name": "includeSubFolders",
3203
3203
  "optional": true,
3204
3204
  "default": true,
3205
3205
  "type": "boolean",
3206
- "description": "Specifies whether the returned :ref:`accounts.MailAccount` objects should include their account's folders. Defaults to <value>true</value>."
3206
+ "description": "Specifies whether the $(ref:folders.MailFolder) in the <var>rootFolder</var> property of each found $(ref:accounts.MailAccount) should populate its <var>subFolders</var> property, and include all (nested!) subfolders. This also affects the deprecated <var>folders</var> property of each found $(ref:accounts.MailAccount). Defaults to <var>true</var>."
3207
3207
  },
3208
3208
  {
3209
3209
  "type": "function",
@@ -3224,7 +3224,7 @@
3224
3224
  "name": "get",
3225
3225
  "type": "function",
3226
3226
  "min_manifest_version": 3,
3227
- "description": "Returns details of the requested account, or <value>null</value> if it doesn't exist.",
3227
+ "description": "Returns details of the requested account, or <var>null</var> if it doesn't exist.",
3228
3228
  "async": "callback",
3229
3229
  "parameters": [
3230
3230
  {
@@ -3232,11 +3232,11 @@
3232
3232
  "$ref": "MailAccountId"
3233
3233
  },
3234
3234
  {
3235
- "name": "includeFolders",
3235
+ "name": "includeSubFolders",
3236
3236
  "optional": true,
3237
3237
  "default": false,
3238
3238
  "type": "boolean",
3239
- "description": "Specifies whether the returned :ref:`accounts.MailAccount` object should included the account's folders. Defaults to <value>false</value>."
3239
+ "description": "Specifies whether the $(ref:folders.MailFolder) in the <var>rootFolder</var> property of the returned $(ref:accounts.MailAccount) should populate its <var>subFolders</var> property, and include all (nested!) subfolders. Defaults to <var>false</var>."
3240
3240
  },
3241
3241
  {
3242
3242
  "type": "function",
@@ -3255,7 +3255,7 @@
3255
3255
  "name": "get",
3256
3256
  "type": "function",
3257
3257
  "max_manifest_version": 2,
3258
- "description": "Returns details of the requested account, or <value>null</value> if it doesn't exist.",
3258
+ "description": "Returns details of the requested account, or <var>null</var> if it doesn't exist.",
3259
3259
  "async": "callback",
3260
3260
  "parameters": [
3261
3261
  {
@@ -3263,11 +3263,11 @@
3263
3263
  "$ref": "MailAccountId"
3264
3264
  },
3265
3265
  {
3266
- "name": "includeFolders",
3266
+ "name": "includeSubFolders",
3267
3267
  "optional": true,
3268
3268
  "default": true,
3269
3269
  "type": "boolean",
3270
- "description": "Specifies whether the returned :ref:`accounts.MailAccount` object should included the account's folders. Defaults to <value>true</value>."
3270
+ "description": "Specifies whether the $(ref:folders.MailFolder) in the <var>rootFolder</var> property of the returned $(ref:accounts.MailAccount) should populate its <var>subFolders</var> property, and include all (nested!) subfolders. This also affects the deprecated <var>folders</var> property of the returned $(ref:accounts.MailAccount). Defaults to <var>true</var>."
3271
3271
  },
3272
3272
  {
3273
3273
  "type": "function",
@@ -3291,12 +3291,46 @@
3291
3291
  {
3292
3292
  "name": "getDefault",
3293
3293
  "type": "function",
3294
- "description": "Returns the default account, or <value>null</value> if it is not defined.",
3294
+ "min_manifest_version": 3,
3295
+ "description": "Returns the default account, or <var>null</var> if it is not defined.",
3295
3296
  "async": "callback",
3296
3297
  "parameters": [
3297
3298
  {
3298
- "name": "includeFolders",
3299
- "description": "Specifies whether the returned :ref:`accounts.MailAccount` object should included the account's folders. Defaults to <value>true</value>.",
3299
+ "name": "includeSubFolders",
3300
+ "description": "Specifies whether the $(ref:folders.MailFolder) in the <var>rootFolder</var> property of the default $(ref:accounts.MailAccount) should populate its <var>subFolders</var> property, and include all (nested!) subfolders. Defaults to <var>false</var>",
3301
+ "optional": true,
3302
+ "default": false,
3303
+ "type": "boolean"
3304
+ },
3305
+ {
3306
+ "type": "function",
3307
+ "name": "callback",
3308
+ "optional": true,
3309
+ "parameters": [
3310
+ {
3311
+ "choices": [
3312
+ {
3313
+ "$ref": "accounts.MailAccount"
3314
+ },
3315
+ {
3316
+ "type": "null"
3317
+ }
3318
+ ]
3319
+ }
3320
+ ]
3321
+ }
3322
+ ]
3323
+ },
3324
+ {
3325
+ "name": "getDefault",
3326
+ "type": "function",
3327
+ "max_manifest_version": 2,
3328
+ "description": "Returns the default account, or <var>null</var> if it is not defined.",
3329
+ "async": "callback",
3330
+ "parameters": [
3331
+ {
3332
+ "name": "includeSubFolders",
3333
+ "description": "Specifies whether the $(ref:folders.MailFolder) in the <var>rootFolder</var> property of the default $(ref:accounts.MailAccount) should populate its <var>subFolders</var> property, and include all (nested!) subfolders. This also affects the deprecated <var>folders</var> property of the default $(ref:accounts.MailAccount). Defaults to <var>true</var>",
3300
3334
  "optional": true,
3301
3335
  "default": true,
3302
3336
  "type": "boolean"
@@ -3341,7 +3375,7 @@
3341
3375
  {
3342
3376
  "name": "getDefaultIdentity",
3343
3377
  "type": "function",
3344
- "description": "Returns the default identity for an account, or <value>null</value> if it is not defined.",
3378
+ "description": "Returns the default identity for an account, or <var>null</var> if it is not defined.",
3345
3379
  "async": "callback",
3346
3380
  "max_manifest_version": 2,
3347
3381
  "deprecated": "Deprecated since Thunderbird 91 and removed in Manifest V3: accounts.getDefaultIdentity() is now available as identities.getDefault.",
@@ -3400,7 +3434,7 @@
3400
3434
  {
3401
3435
  "name": "onUpdated",
3402
3436
  "type": "function",
3403
- "description": "Fired when a property of an account has been modified. Folders and identities of accounts are not monitored by this event, use the dedicated folder and identity events instead. A changed ``defaultIdentity`` is reported only after a different identity has been assigned as default identity, but not after a property of the default identity has been changed.",
3437
+ "description": "Fired when a property of an account has been modified. Folders and identities of accounts are not monitored by this event, use the dedicated folder and identity events instead. A changed <var>defaultIdentity</var> is reported only after a different identity has been assigned as default identity, but not after a property of the default identity has been changed.",
3404
3438
  "parameters": [
3405
3439
  {
3406
3440
  "name": "accountId",
@@ -3471,11 +3505,11 @@
3471
3505
  "parentId": {
3472
3506
  "type": "string",
3473
3507
  "optional": true,
3474
- "description": "The ``id`` of the parent object."
3508
+ "description": "The <var>id</var> of the parent object."
3475
3509
  },
3476
3510
  "type": {
3477
3511
  "$ref": "NodeType",
3478
- "description": "Always set to <value>addressBook</value>."
3512
+ "description": "Always set to <var>addressBook</var>."
3479
3513
  },
3480
3514
  "readOnly": {
3481
3515
  "type": "boolean",
@@ -3738,7 +3772,7 @@
3738
3772
  "id": {
3739
3773
  "type": "string",
3740
3774
  "optional": true,
3741
- "description": "The unique ID of the created address book. If several listeners have been added, the ``id`` allows to identify which address book initiated the search request. If not provided, a unique ID will be generated for you."
3775
+ "description": "The unique ID of the created address book. If several listeners have been added, the <var>id</var> allows to identify which address book initiated the search request. If not provided, a unique ID will be generated for you."
3742
3776
  }
3743
3777
  }
3744
3778
  }
@@ -3765,7 +3799,7 @@
3765
3799
  "types": [
3766
3800
  {
3767
3801
  "id": "QueryInfo",
3768
- "description": "Object defining a query for :ref:`contacts.quickSearch`.",
3802
+ "description": "Object defining a query for $(ref:contacts.quickSearch).",
3769
3803
  "type": "object",
3770
3804
  "properties": {
3771
3805
  "parentId": {
@@ -3777,31 +3811,31 @@
3777
3811
  "searchString": {
3778
3812
  "type": "string",
3779
3813
  "optional": true,
3780
- "description": "One or more space-separated terms to search for in predefined contact fields (defined by the preference <value>mail.addr_book.quicksearchquery.format</value>)."
3814
+ "description": "One or more space-separated terms to search for in predefined contact fields (defined by the preference <var>mail.addr_book.quicksearchquery.format</var>)."
3781
3815
  },
3782
3816
  "includeLocal": {
3783
3817
  "type": "boolean",
3784
3818
  "optional": true,
3785
3819
  "default": true,
3786
- "description": "Whether to include results from local address books. Defaults to <value>true</value>."
3820
+ "description": "Whether to include results from local address books. Defaults to <var>true</var>."
3787
3821
  },
3788
3822
  "includeRemote": {
3789
3823
  "type": "boolean",
3790
3824
  "optional": true,
3791
3825
  "default": true,
3792
- "description": "Whether to include results from remote address books. Defaults to <value>true</value>."
3826
+ "description": "Whether to include results from remote address books. Defaults to <var>true</var>."
3793
3827
  },
3794
3828
  "includeReadOnly": {
3795
3829
  "type": "boolean",
3796
3830
  "optional": true,
3797
3831
  "default": true,
3798
- "description": "Whether to include results from read-only address books. Defaults to <value>true</value>."
3832
+ "description": "Whether to include results from read-only address books. Defaults to <var>true</var>."
3799
3833
  },
3800
3834
  "includeReadWrite": {
3801
3835
  "type": "boolean",
3802
3836
  "optional": true,
3803
3837
  "default": true,
3804
- "description": "Whether to include results from read-write address books. Defaults to <value>true</value>."
3838
+ "description": "Whether to include results from read-write address books. Defaults to <var>true</var>."
3805
3839
  }
3806
3840
  }
3807
3841
  },
@@ -3817,11 +3851,11 @@
3817
3851
  "parentId": {
3818
3852
  "type": "string",
3819
3853
  "optional": true,
3820
- "description": "The ``id`` of the parent object."
3854
+ "description": "The <var>id</var> of the parent object."
3821
3855
  },
3822
3856
  "type": {
3823
3857
  "$ref": "addressBooks.NodeType",
3824
- "description": "Always set to <value>contact</value>."
3858
+ "description": "Always set to <var>contact</var>."
3825
3859
  },
3826
3860
  "readOnly": {
3827
3861
  "type": "boolean",
@@ -3846,7 +3880,7 @@
3846
3880
  {
3847
3881
  "id": "ContactProperties",
3848
3882
  "type": "object",
3849
- "description": "A set of individual properties for a particular contact, and its vCard string. Further information can be found in :doc:`examples/vcard`.",
3883
+ "description": "A set of individual properties for a particular contact, and its vCard string. Further information can be found in $(doc:examples/vcard).",
3850
3884
  "patternProperties": {
3851
3885
  "^\\w+$": {
3852
3886
  "choices": [
@@ -3863,7 +3897,7 @@
3863
3897
  {
3864
3898
  "id": "PropertyChange",
3865
3899
  "type": "object",
3866
- "description": "A dictionary of changed properties. Keys are the property name that changed, values are an object containing ``oldValue`` and ``newValue``. Values can be either a string or <value>null</value>.",
3900
+ "description": "A dictionary of changed properties. Keys are the property name that changed, values are an object containing <var>oldValue</var> and <var>newValue</var>. Values can be either a string or <var>null</var>.",
3867
3901
  "patternProperties": {
3868
3902
  "^\\w+$": {
3869
3903
  "type": "object",
@@ -3917,7 +3951,7 @@
3917
3951
  ]
3918
3952
  }
3919
3953
  ],
3920
- "description": "Gets all the contacts in the address book with the id ``parentId``."
3954
+ "description": "Gets all the contacts in the address book with the id <var>parentId</var>."
3921
3955
  },
3922
3956
  {
3923
3957
  "name": "quickSearch",
@@ -3933,7 +3967,7 @@
3933
3967
  },
3934
3968
  {
3935
3969
  "name": "queryInfo",
3936
- "description": "Either a <em>string</em> with one or more space-separated terms to search for, or a complex :ref:`contacts.QueryInfo` search query.",
3970
+ "description": "Either a <em>string</em> with one or more space-separated terms to search for, or a complex $(ref:contacts.QueryInfo) search query.",
3937
3971
  "choices": [
3938
3972
  {
3939
3973
  "type": "string"
@@ -3957,7 +3991,7 @@
3957
3991
  ]
3958
3992
  }
3959
3993
  ],
3960
- "description": "Gets all contacts matching ``queryInfo`` in the address book with the id ``parentId``."
3994
+ "description": "Gets all contacts matching <var>queryInfo</var> in the address book with the id <var>parentId</var>."
3961
3995
  },
3962
3996
  {
3963
3997
  "name": "query",
@@ -3983,7 +4017,7 @@
3983
4017
  ]
3984
4018
  }
3985
4019
  ],
3986
- "description": "Gets all contacts matching ``queryInfo``."
4020
+ "description": "Gets all contacts matching <var>queryInfo</var>."
3987
4021
  },
3988
4022
  {
3989
4023
  "name": "get",
@@ -4036,7 +4070,7 @@
4036
4070
  ]
4037
4071
  }
4038
4072
  ],
4039
- "description": "Gets the photo associated with this contact. Returns <value>null</value>, if no photo is available."
4073
+ "description": "Gets the photo associated with this contact. Returns <var>null</var>, if no photo is available."
4040
4074
  },
4041
4075
  {
4042
4076
  "name": "setPhoto",
@@ -4075,7 +4109,7 @@
4075
4109
  {
4076
4110
  "name": "properties",
4077
4111
  "$ref": "ContactProperties",
4078
- "description": "The properties object for the new contact. If it includes a ``vCard`` member, all specified `legacy properties <|link-legacy-properties|>`__ are ignored and the new contact will be based on the provided vCard string. If a UID is specified in the vCard string, which is already used by another contact, an exception is thrown. **Note:** Using individual properties is deprecated, use the ``vCard`` member instead."
4112
+ "description": "The properties object for the new contact. If it includes a <var>vCard</var> member, all specified <a href='url-legacy-properties'>legacy properties</a> are ignored and the new contact will be based on the provided vCard string. If a UID is specified in the vCard string, which is already used by another contact, an exception is thrown. **Note:** Using individual properties is deprecated, use the <var>vCard</var> member instead."
4079
4113
  },
4080
4114
  {
4081
4115
  "type": "function",
@@ -4089,7 +4123,7 @@
4089
4123
  ]
4090
4124
  }
4091
4125
  ],
4092
- "description": "Adds a new contact to the address book with the id ``parentId``."
4126
+ "description": "Adds a new contact to the address book with the id <var>parentId</var>."
4093
4127
  },
4094
4128
  {
4095
4129
  "name": "create",
@@ -4119,7 +4153,7 @@
4119
4153
  ]
4120
4154
  }
4121
4155
  ],
4122
- "description": "Adds a new contact to the address book with the id ``parentId``."
4156
+ "description": "Adds a new contact to the address book with the id <var>parentId</var>."
4123
4157
  },
4124
4158
  {
4125
4159
  "name": "update",
@@ -4134,7 +4168,7 @@
4134
4168
  {
4135
4169
  "name": "properties",
4136
4170
  "$ref": "ContactProperties",
4137
- "description": "An object with properties to update the specified contact. Individual properties are removed, if they are set to <value>null</value>. If the provided object includes a ``vCard`` member, all specified `legacy properties <|link-legacy-properties|>`__ are ignored and the details of the contact will be replaced by the provided vCard. Changes to the UID will be ignored. **Note:** Using individual properties is deprecated, use the ``vCard`` member instead. "
4171
+ "description": "An object with properties to update the specified contact. Individual properties are removed, if they are set to <var>null</var>. If the provided object includes a <var>vCard</var> member, all specified <a href='url-legacy-properties'>legacy properties</a> are ignored and the details of the contact will be replaced by the provided vCard. Changes to the UID will be ignored. **Note:** Using individual properties is deprecated, use the <var>vCard</var> member instead. "
4138
4172
  }
4139
4173
  ],
4140
4174
  "description": "Updates a contact."
@@ -4250,11 +4284,11 @@
4250
4284
  "parentId": {
4251
4285
  "type": "string",
4252
4286
  "optional": true,
4253
- "description": "The ``id`` of the parent object."
4287
+ "description": "The <var>id</var> of the parent object."
4254
4288
  },
4255
4289
  "type": {
4256
4290
  "$ref": "addressBooks.NodeType",
4257
- "description": "Always set to <value>mailingList</value>."
4291
+ "description": "Always set to <var>mailingList</var>."
4258
4292
  },
4259
4293
  "readOnly": {
4260
4294
  "type": "boolean",
@@ -4310,7 +4344,7 @@
4310
4344
  ]
4311
4345
  }
4312
4346
  ],
4313
- "description": "Gets all the mailing lists in the address book with id ``parentId``."
4347
+ "description": "Gets all the mailing lists in the address book with id <var>parentId</var>."
4314
4348
  },
4315
4349
  {
4316
4350
  "name": "get",
@@ -4372,7 +4406,7 @@
4372
4406
  ]
4373
4407
  }
4374
4408
  ],
4375
- "description": "Creates a new mailing list in the address book with id ``parentId``."
4409
+ "description": "Creates a new mailing list in the address book with id <var>parentId</var>."
4376
4410
  },
4377
4411
  {
4378
4412
  "name": "update",
@@ -4429,7 +4463,7 @@
4429
4463
  "type": "string"
4430
4464
  }
4431
4465
  ],
4432
- "description": "Adds a contact to the mailing list with id ``id``. If the contact and mailing list are in different address books, the contact will also be copied to the list's address book."
4466
+ "description": "Adds a contact to the mailing list with id <var>id</var>. If the contact and mailing list are in different address books, the contact will also be copied to the list's address book."
4433
4467
  },
4434
4468
  {
4435
4469
  "name": "listMembers",
@@ -4454,7 +4488,7 @@
4454
4488
  ]
4455
4489
  }
4456
4490
  ],
4457
- "description": "Gets all contacts that are members of the mailing list with id ``id``."
4491
+ "description": "Gets all contacts that are members of the mailing list with id <var>id</var>."
4458
4492
  },
4459
4493
  {
4460
4494
  "name": "removeMember",
@@ -4470,7 +4504,7 @@
4470
4504
  "type": "string"
4471
4505
  }
4472
4506
  ],
4473
- "description": "Removes a contact from the mailing list with id ``id``. This does not delete the contact from the address book."
4507
+ "description": "Removes a contact from the mailing list with id <var>id</var>. This does not delete the contact from the address book."
4474
4508
  }
4475
4509
  ],
4476
4510
  "events": [
@@ -4578,29 +4612,29 @@
4578
4612
  "items": {
4579
4613
  "$ref": "ThemeIcons"
4580
4614
  },
4581
- "description": "Specifies dark and light icons to be used with themes. The ``light`` icon is used on dark backgrounds and vice versa. **Note:** The default theme uses the ``default_icon`` for light backgrounds (if specified)."
4615
+ "description": "Specifies dark and light icons to be used with themes. The <var>light</var> icon is used on dark backgrounds and vice versa. **Note:** The default theme uses the <var>default_icon</var> for light backgrounds (if specified)."
4582
4616
  },
4583
4617
  "default_popup": {
4584
4618
  "type": "string",
4585
4619
  "format": "relativeUrl",
4586
4620
  "optional": true,
4587
- "description": "The html document to be opened as a popup when the user clicks on the action button. Ignored for action buttons with type <value>menu</value>.",
4621
+ "description": "The html document to be opened as a popup when the user clicks on the action button. Ignored for action buttons with type <var>menu</var>.",
4588
4622
  "preprocess": "localize"
4589
4623
  },
4590
4624
  "browser_style": {
4591
4625
  "type": "boolean",
4592
4626
  "optional": true,
4593
- "description": "Enable browser styles. See the `MDN documentation on browser styles <|link-mdn-browser-styles|>`__ for more information.",
4627
+ "description": "Enable browser styles. See the <a href='url-mdn-browser-styles'>MDN documentation on browser styles</a> for more information.",
4594
4628
  "default": false
4595
4629
  },
4596
4630
  "default_area": {
4597
4631
  "type": "string",
4598
4632
  "optional": true,
4599
- "description": "Defines the location the action button will appear. Deprecated and ignored. Replaced by ``allowed_spaces``",
4633
+ "description": "Defines the location the action button will appear. Deprecated and ignored. Replaced by <var>allowed_spaces</var>",
4600
4634
  "deprecated": "Unsupported on Thunderbird."
4601
4635
  },
4602
4636
  "default_windows": {
4603
- "description": "Defines the windows, the action button should appear in. Defaults to showing it only in the <value>normal</value> Thunderbird window, but can also be shown in the <value>messageDisplay</value> window.",
4637
+ "description": "Defines the windows, the action button should appear in. Defaults to showing it only in the <var>normal</var> Thunderbird window, but can also be shown in the <var>messageDisplay</var> window.",
4604
4638
  "type": "array",
4605
4639
  "items": {
4606
4640
  "type": "string",
@@ -4615,7 +4649,7 @@
4615
4649
  "optional": true
4616
4650
  },
4617
4651
  "allowed_spaces": {
4618
- "description": "Defines for which spaces the action button will be added to Thunderbird's unified toolbar. Defaults to only allowing the action in the <value>mail</value> space. The <value>default</value> space is for tabs that don't belong to any space. If this is an empty array, the action button is shown in all spaces.",
4652
+ "description": "Defines for which spaces the action button will be added to Thunderbird's unified toolbar. Defaults to only allowing the action in the <var>mail</var> space. The <var>default</var> space is for tabs that don't belong to any space. If this is an empty array, the action button is shown in all spaces.",
4619
4653
  "type": "array",
4620
4654
  "items": {
4621
4655
  "type": "string",
@@ -4635,7 +4669,7 @@
4635
4669
  "optional": true
4636
4670
  },
4637
4671
  "type": {
4638
- "description": "Specifies the type of the button. Default type is <value>button</value>.",
4672
+ "description": "Specifies the type of the button. Default type is <var>button</var>.",
4639
4673
  "type": "string",
4640
4674
  "enum": [
4641
4675
  "button",
@@ -4683,23 +4717,23 @@
4683
4717
  "items": {
4684
4718
  "$ref": "ThemeIcons"
4685
4719
  },
4686
- "description": "Specifies dark and light icons to be used with themes. The ``light`` icon is used on dark backgrounds and vice versa. **Note:** The default theme uses the ``default_icon`` for light backgrounds (if specified)."
4720
+ "description": "Specifies dark and light icons to be used with themes. The <var>light</var> icon is used on dark backgrounds and vice versa. **Note:** The default theme uses the <var>default_icon</var> for light backgrounds (if specified)."
4687
4721
  },
4688
4722
  "default_popup": {
4689
4723
  "type": "string",
4690
4724
  "format": "relativeUrl",
4691
4725
  "optional": true,
4692
- "description": "The html document to be opened as a popup when the user clicks on the browserAction button. Ignored for action buttons with type <value>menu</value>.",
4726
+ "description": "The html document to be opened as a popup when the user clicks on the browserAction button. Ignored for action buttons with type <var>menu</var>.",
4693
4727
  "preprocess": "localize"
4694
4728
  },
4695
4729
  "browser_style": {
4696
4730
  "type": "boolean",
4697
4731
  "optional": true,
4698
- "description": "Enable browser styles. See the `MDN documentation on browser styles <|link-mdn-browser-styles|>`__ for more information.",
4732
+ "description": "Enable browser styles. See the <a href='url-mdn-browser-styles'>MDN documentation on browser styles</a> for more information.",
4699
4733
  "default": false
4700
4734
  },
4701
4735
  "default_area": {
4702
- "description": "Defines the location the browserAction button will appear. Deprecated and ignored. Replaced by ``allowed_spaces``",
4736
+ "description": "Defines the location the browserAction button will appear. Deprecated and ignored. Replaced by <var>allowed_spaces</var>",
4703
4737
  "type": "string",
4704
4738
  "enum": [
4705
4739
  "maintoolbar",
@@ -4708,7 +4742,7 @@
4708
4742
  "optional": true
4709
4743
  },
4710
4744
  "default_windows": {
4711
- "description": "Defines the windows, the browserAction button should appear in. Defaults to showing it only in the <value>normal</value> Thunderbird window, but can also be shown in the <value>messageDisplay</value> window.",
4745
+ "description": "Defines the windows, the browserAction button should appear in. Defaults to showing it only in the <var>normal</var> Thunderbird window, but can also be shown in the <var>messageDisplay</var> window.",
4712
4746
  "type": "array",
4713
4747
  "items": {
4714
4748
  "type": "string",
@@ -4723,7 +4757,7 @@
4723
4757
  "optional": true
4724
4758
  },
4725
4759
  "allowed_spaces": {
4726
- "description": "Defines for which spaces the browserAction button will be added to Thunderbird's unified toolbar. Defaults to only allowing the browserAction in the <value>mail</value> space. The <value>default</value> space is for tabs that don't belong to any space. If this is an empty array, the browserAction button is shown in all spaces.",
4760
+ "description": "Defines for which spaces the browserAction button will be added to Thunderbird's unified toolbar. Defaults to only allowing the browserAction in the <var>mail</var> space. The <var>default</var> space is for tabs that don't belong to any space. If this is an empty array, the browserAction button is shown in all spaces.",
4727
4761
  "type": "array",
4728
4762
  "items": {
4729
4763
  "type": "string",
@@ -4743,7 +4777,7 @@
4743
4777
  "optional": true
4744
4778
  },
4745
4779
  "type": {
4746
- "description": "Specifies the type of the button. Default type is <value>button</value>.",
4780
+ "description": "Specifies the type of the button. Default type is <var>button</var>.",
4747
4781
  "type": "string",
4748
4782
  "enum": [
4749
4783
  "button",
@@ -4770,7 +4804,7 @@
4770
4804
  "types": [
4771
4805
  {
4772
4806
  "id": "ColorArray",
4773
- "description": "An array of four integers in the range [0,255] that make up the RGBA color. For example, opaque red is <value>[255, 0, 0, 255]</value>.",
4807
+ "description": "An array of four integers in the range [0,255] that make up the RGBA color. For example, opaque red is <var>[255, 0, 0, 255]</var>.",
4774
4808
  "type": "array",
4775
4809
  "items": {
4776
4810
  "type": "integer",
@@ -4788,12 +4822,12 @@
4788
4822
  "type": "any"
4789
4823
  },
4790
4824
  "postprocess": "convertImageDataToURL",
4791
- "description": "Pixel data for an image. Must be an |ImageData| object (for example, from a |Canvas| element)."
4825
+ "description": "Pixel data for an image. Must be an <a href='url-image-data'>ImageData</a> object (for example, from a <a href='url-canvas-element'>canvas</a> element)."
4792
4826
  },
4793
4827
  {
4794
4828
  "id": "ImageDataDictionary",
4795
4829
  "type": "object",
4796
- "description": "A <em>dictionary object</em> to specify multiple |ImageData| objects in different sizes, so the icon does not have to be scaled for a device with a different pixel density. Each entry is a <em>name-value</em> pair with <em>value</em> being an |ImageData| object, and <em>name</em> its size. Example: <literalinclude>includes/ImageDataDictionary.json<lang>JavaScript</lang></literalinclude>See the `MDN documentation about choosing icon sizes <|link-mdn-icon-size|>`__ for more information on this.",
4830
+ "description": "A <em>dictionary object</em> to specify multiple <a href='url-image-data'>ImageData</a> objects in different sizes, so the icon does not have to be scaled for a device with a different pixel density. Each entry is a <em>name-value</em> pair with <em>value</em> being an <a href='url-image-data'>ImageData</a> object, and <em>name</em> its size. Example: <literalinclude>includes/ImageDataDictionary.json<lang>JavaScript</lang></literalinclude>See the <a href='url-mdn-icon-size'>MDN documentation about choosing icon sizes</a> for more information on this.",
4797
4831
  "patternProperties": {
4798
4832
  "^[1-9]\\d*$": {
4799
4833
  "$ref": "ImageDataType"
@@ -4847,7 +4881,7 @@
4847
4881
  "type": "null"
4848
4882
  }
4849
4883
  ],
4850
- "description": "A string the action button should display as its label and when moused over. Cleared by setting it to <value>null</value> or an empty string (title defined the manifest will be used)."
4884
+ "description": "A string the action button should display as its label and when moused over. Cleared by setting it to <var>null</var> or an empty string (title defined the manifest will be used)."
4851
4885
  },
4852
4886
  "tabId": {
4853
4887
  "type": "integer",
@@ -4929,7 +4963,7 @@
4929
4963
  "type": "null"
4930
4964
  }
4931
4965
  ],
4932
- "description": "A string the action button should use as its label, overriding the defined title. Can be set to an empty string to not display any label at all. If the containing toolbar is configured to display text only, its title will be used. Cleared by setting it to <value>null</value>."
4966
+ "description": "A string the action button should use as its label, overriding the defined title. Can be set to an empty string to not display any label at all. If the containing toolbar is configured to display text only, its title will be used. Cleared by setting it to <var>null</var>."
4933
4967
  },
4934
4968
  "tabId": {
4935
4969
  "type": "integer",
@@ -4957,7 +4991,7 @@
4957
4991
  {
4958
4992
  "name": "getLabel",
4959
4993
  "type": "function",
4960
- "description": "Gets the label of the action button. Returns <value>null</value>, if no label has been set and the title is used.",
4994
+ "description": "Gets the label of the action button. Returns <var>null</var>, if no label has been set and the title is used.",
4961
4995
  "async": "callback",
4962
4996
  "parameters": [
4963
4997
  {
@@ -5002,7 +5036,7 @@
5002
5036
  {
5003
5037
  "name": "setIcon",
5004
5038
  "type": "function",
5005
- "description": "Sets the icon for the action button. Either the ``path`` or the ``imageData`` property must be specified.",
5039
+ "description": "Sets the icon for the action button. Either the <var>path</var> or the <var>imageData</var> property must be specified.",
5006
5040
  "async": "callback",
5007
5041
  "parameters": [
5008
5042
  {
@@ -5068,7 +5102,7 @@
5068
5102
  "type": "null"
5069
5103
  }
5070
5104
  ],
5071
- "description": "The html file to show in a popup. Can be set to an empty string to not open a popup. Cleared by setting it to <value>null</value> (popup value defined the manifest will be used)."
5105
+ "description": "The html file to show in a popup. Can be set to an empty string to not open a popup. Cleared by setting it to <var>null</var> (popup value defined the manifest will be used)."
5072
5106
  },
5073
5107
  "tabId": {
5074
5108
  "type": "integer",
@@ -5150,7 +5184,7 @@
5150
5184
  "type": "null"
5151
5185
  }
5152
5186
  ],
5153
- "description": "Any number of characters can be passed, but only about four can fit in the space. Cleared by setting it to <value>null</value> or an empty string."
5187
+ "description": "Any number of characters can be passed, but only about four can fit in the space. Cleared by setting it to <var>null</var> or an empty string."
5154
5188
  },
5155
5189
  "tabId": {
5156
5190
  "type": "integer",
@@ -5235,7 +5269,7 @@
5235
5269
  "type": "null"
5236
5270
  }
5237
5271
  ],
5238
- "description": "The color to use as text color in the badge. Cleared by setting it to <value>null</value>."
5272
+ "description": "The color to use as text color in the badge. Cleared by setting it to <var>null</var>."
5239
5273
  },
5240
5274
  "tabId": {
5241
5275
  "type": "integer",
@@ -5258,7 +5292,7 @@
5258
5292
  "name": "getBadgeTextColor",
5259
5293
  "type": "function",
5260
5294
  "description": "Gets the text color of the badge.",
5261
- "async": true,
5295
+ "async": "callback",
5262
5296
  "parameters": [
5263
5297
  {
5264
5298
  "name": "details",
@@ -5286,7 +5320,7 @@
5286
5320
  "parameters": [
5287
5321
  {
5288
5322
  "name": "result",
5289
- "type": "string"
5323
+ "$ref": "ColorArray"
5290
5324
  }
5291
5325
  ]
5292
5326
  }
@@ -5314,7 +5348,7 @@
5314
5348
  "type": "null"
5315
5349
  }
5316
5350
  ],
5317
- "description": "The color to use as background in the badge. Cleared by setting it to <value>null</value>."
5351
+ "description": "The color to use as background in the badge. Cleared by setting it to <var>null</var>."
5318
5352
  },
5319
5353
  "tabId": {
5320
5354
  "type": "integer",
@@ -5380,7 +5414,7 @@
5380
5414
  {
5381
5415
  "name": "enable",
5382
5416
  "type": "function",
5383
- "description": "Enables the action button for a specific tab (if a ``tabId`` is provided), or for all tabs which do not have a custom enable state. Once the enable state of a tab has been updated individually, all further changes to its state have to be done individually as well. By default, an action button is enabled.",
5417
+ "description": "Enables the action button for a specific tab (if a <var>tabId</var> is provided), or for all tabs which do not have a custom enable state. Once the enable state of a tab has been updated individually, all further changes to its state have to be done individually as well. By default, an action button is enabled.",
5384
5418
  "async": "callback",
5385
5419
  "parameters": [
5386
5420
  {
@@ -5401,7 +5435,7 @@
5401
5435
  {
5402
5436
  "name": "disable",
5403
5437
  "type": "function",
5404
- "description": "Disables the action button for a specific tab (if a ``tabId`` is provided), or for all tabs which do not have a custom enable state. Once the enable state of a tab has been updated individually, all further changes to its state have to be done individually as well.",
5438
+ "description": "Disables the action button for a specific tab (if a <var>tabId</var> is provided), or for all tabs which do not have a custom enable state. Once the enable state of a tab has been updated individually, all further changes to its state have to be done individually as well.",
5405
5439
  "async": "callback",
5406
5440
  "parameters": [
5407
5441
  {
@@ -5459,7 +5493,7 @@
5459
5493
  {
5460
5494
  "name": "openPopup",
5461
5495
  "type": "function",
5462
- "description": "Opens the action's popup window in the specified window. Defaults to the current window. Returns false if the popup could not be opened because the action has no popup, is of type <value>menu</value>, is disabled or has been removed from the toolbar.",
5496
+ "description": "Opens the action's popup window in the specified window. Defaults to the current window. Returns false if the popup could not be opened because the action has no popup, is of type <var>menu</var>, is disabled or has been removed from the toolbar.",
5463
5497
  "async": "callback",
5464
5498
  "parameters": [
5465
5499
  {
@@ -5493,7 +5527,7 @@
5493
5527
  {
5494
5528
  "name": "onClicked",
5495
5529
  "type": "function",
5496
- "description": "Fired when an action button is clicked. This event will not fire if the action has a popup. This is a user input event handler. For asynchronous listeners some `restrictions <|link-user-input-restrictions|>`__ apply.",
5530
+ "description": "Fired when an action button is clicked. This event will not fire if the action has a popup. This is a user input event handler. For asynchronous listeners some <a href='url-user-input-restrictions'>restrictions</a> apply.",
5497
5531
  "parameters": [
5498
5532
  {
5499
5533
  "name": "tab",
@@ -5731,7 +5765,7 @@
5731
5765
  "properties": {
5732
5766
  "browser_style": {
5733
5767
  "type": "boolean",
5734
- "description": "Enable browser styles in the ``management_url`` page. See the `MDN documentation on browser styles <|link-mdn-browser-styles|>`__ for more information.",
5768
+ "description": "Enable browser styles in the <var>management_url</var> page. See the <a href='url-mdn-browser-styles'>MDN documentation on browser styles</a> for more information.",
5735
5769
  "optional": true,
5736
5770
  "default": false
5737
5771
  },
@@ -5739,10 +5773,10 @@
5739
5773
  "type": "string",
5740
5774
  "optional": true,
5741
5775
  "deprecated": true,
5742
- "description": "This property is no longer used. The only supported data format for the ``data`` argument in :ref:`cloudFile.onFileUpload` is |File|."
5776
+ "description": "This property is no longer used. The only supported data format for the <var>data</var> argument in $(ref:cloudFile.onFileUpload) is <a href='url-dom-file'>File</a>."
5743
5777
  },
5744
5778
  "reuse_uploads": {
5745
- "description": "If a previously uploaded cloud file attachment is reused at a later time in a different message, Thunderbird may use the already known ``url`` and ``templateInfo`` values without triggering the registered :ref:`cloudFile.onFileUpload` listener again. Setting this option to <value>false</value> will always trigger the registered listener, providing the already known values through the ``relatedFileInfo`` parameter of the :ref:`cloudFile.onFileUpload` event, to let the provider decide how to handle these cases.",
5779
+ "description": "If a previously uploaded cloud file attachment is reused at a later time in a different message, Thunderbird may use the already known <var>url</var> and <var>templateInfo</var> values without triggering the registered $(ref:cloudFile.onFileUpload) listener again. Setting this option to <var>false</var> will always trigger the registered listener, providing the already known values through the <var>relatedFileInfo</var> parameter of the $(ref:cloudFile.onFileUpload) event, to let the provider decide how to handle these cases.",
5746
5780
  "type": "boolean",
5747
5781
  "optional": true,
5748
5782
  "default": true
@@ -5751,7 +5785,7 @@
5751
5785
  "type": "string",
5752
5786
  "format": "relativeUrl",
5753
5787
  "preprocess": "localize",
5754
- "description": "A page for configuring accounts, to be displayed in the preferences UI. **Note:** Within this UI only a limited subset of the WebExtension APIs is available: ``cloudFile``, ``extension``, ``i18n``, ``runtime``, ``storage``, ``test``."
5788
+ "description": "A page for configuring accounts, to be displayed in the preferences UI. **Note:** Within this UI only a limited subset of the WebExtension APIs is available: <var>cloudFile</var>, <var>extension</var>, <var>i18n</var>, <var>runtime</var>, <var>storage</var>, <var>test</var>."
5755
5789
  },
5756
5790
  "name": {
5757
5791
  "type": "string",
@@ -5768,7 +5802,7 @@
5768
5802
  "type": "string",
5769
5803
  "optional": true,
5770
5804
  "deprecated": true,
5771
- "description": "This property is no longer used. The ``service_url`` property of the :ref:`cloudFile.CloudFileTemplateInfo` object returned by the :ref:`cloudFile.onFileUpload` event can be used to add a <em>Learn more about</em> link to the footer of the cloud file attachment element."
5805
+ "description": "This property is no longer used. The <var>service_url</var> property of the $(ref:cloudFile.CloudFileTemplateInfo) object returned by the $(ref:cloudFile.onFileUpload) event can be used to add a <em>Learn more about</em> link to the footer of the cloud file attachment element."
5772
5806
  }
5773
5807
  },
5774
5808
  "optional": true
@@ -5818,7 +5852,7 @@
5818
5852
  "properties": {
5819
5853
  "aborted": {
5820
5854
  "type": "boolean",
5821
- "description": "Set this to <value>true</value> if the file upload was aborted by the user and an :ref:`cloudFile.onFileUploadAbort` event has been received. No error message will be shown to the user.",
5855
+ "description": "Set this to <var>true</var> if the file upload was aborted by the user and an $(ref:cloudFile.onFileUploadAbort) event has been received. No error message will be shown to the user.",
5822
5856
  "optional": true
5823
5857
  },
5824
5858
  "error": {
@@ -5830,7 +5864,7 @@
5830
5864
  "type": "string"
5831
5865
  }
5832
5866
  ],
5833
- "description": "Report an error to the user. Set this to <value>true</value> for showing a generic error message, or set a specific error message.",
5867
+ "description": "Report an error to the user. Set this to <var>true</var> for showing a generic error message, or set a specific error message.",
5834
5868
  "optional": true
5835
5869
  },
5836
5870
  "url": {
@@ -5907,7 +5941,7 @@
5907
5941
  "type": "string"
5908
5942
  }
5909
5943
  ],
5910
- "description": "Report an error to the user. Set this to <value>true</value> for showing a generic error message, or set a specific error message.",
5944
+ "description": "Report an error to the user. Set this to <var>true</var> for showing a generic error message, or set a specific error message.",
5911
5945
  "optional": true
5912
5946
  },
5913
5947
  "url": {
@@ -5988,19 +6022,19 @@
5988
6022
  "type": "integer",
5989
6023
  "minimum": -1,
5990
6024
  "optional": true,
5991
- "description": "The maximum size in bytes for a single file to upload. Set to <value>-1</value> if unlimited."
6025
+ "description": "The maximum size in bytes for a single file to upload. Set to <var>-1</var> if unlimited."
5992
6026
  },
5993
6027
  "spaceRemaining": {
5994
6028
  "type": "integer",
5995
6029
  "minimum": -1,
5996
6030
  "optional": true,
5997
- "description": "The amount of remaining space on the cloud provider, in bytes. Set to <value>-1</value> if unsupported."
6031
+ "description": "The amount of remaining space on the cloud provider, in bytes. Set to <var>-1</var> if unsupported."
5998
6032
  },
5999
6033
  "spaceUsed": {
6000
6034
  "type": "integer",
6001
6035
  "minimum": -1,
6002
6036
  "optional": true,
6003
- "description": "The amount of space already used on the cloud provider, in bytes. Set to <value>-1</value> if unsupported."
6037
+ "description": "The amount of space already used on the cloud provider, in bytes. Set to <var>-1</var> if unsupported."
6004
6038
  },
6005
6039
  "managementUrl": {
6006
6040
  "type": "string",
@@ -6050,7 +6084,7 @@
6050
6084
  },
6051
6085
  "format": {
6052
6086
  "optional": true,
6053
- "description": "A format options object as used by |DateTimeFormat|. Defaults to: <literalinclude>includes/cloudFile/defaultDateFormat.js<lang>JavaScript</lang></literalinclude>",
6087
+ "description": "A format options object as used by <a href='url-date-time-format'>Intl.DateTimeFormat</a>. Defaults to: <literalinclude>includes/cloudFile/defaultDateFormat.js<lang>JavaScript</lang></literalinclude>",
6054
6088
  "type": "object",
6055
6089
  "additionalProperties": true
6056
6090
  }
@@ -6083,7 +6117,7 @@
6083
6117
  {
6084
6118
  "id": "RelatedCloudFile",
6085
6119
  "type": "object",
6086
- "description": "Information about an already uploaded cloud file, which is related to a new upload. For example if the content of a cloud attachment is updated, if a repeatedly used cloud attachment is renamed (and therefore should be re-uploaded to not invalidate existing links) or if the provider has its manifest property ``reuse_uploads`` set to <value>false</value>.",
6120
+ "description": "Information about an already uploaded cloud file, which is related to a new upload. For example if the content of a cloud attachment is updated, if a repeatedly used cloud attachment is renamed (and therefore should be re-uploaded to not invalidate existing links) or if the provider has its manifest property <var>reuse_uploads</var> set to <var>false</var>.",
6087
6121
  "properties": {
6088
6122
  "id": {
6089
6123
  "type": "integer",
@@ -6116,7 +6150,7 @@
6116
6150
  {
6117
6151
  "name": "getAccount",
6118
6152
  "type": "function",
6119
- "description": "Retrieve information about a single cloud file account, or <value>undefined</value> if it does not exists",
6153
+ "description": "Retrieve information about a single cloud file account, or <var>undefined</var> if it does not exists",
6120
6154
  "allowedContexts": [
6121
6155
  "content"
6122
6156
  ],
@@ -6192,19 +6226,19 @@
6192
6226
  "type": "integer",
6193
6227
  "minimum": -1,
6194
6228
  "optional": true,
6195
- "description": "The maximum size in bytes for a single file to upload. Set to <value>-1</value> if unlimited."
6229
+ "description": "The maximum size in bytes for a single file to upload. Set to <var>-1</var> if unlimited."
6196
6230
  },
6197
6231
  "spaceRemaining": {
6198
6232
  "type": "integer",
6199
6233
  "minimum": -1,
6200
6234
  "optional": true,
6201
- "description": "The amount of remaining space on the cloud provider, in bytes. Set to <value>-1</value> if unsupported."
6235
+ "description": "The amount of remaining space on the cloud provider, in bytes. Set to <var>-1</var> if unsupported."
6202
6236
  },
6203
6237
  "spaceUsed": {
6204
6238
  "type": "integer",
6205
6239
  "minimum": -1,
6206
6240
  "optional": true,
6207
- "description": "The amount of space already used on the cloud provider, in bytes. Set to <value>-1</value> if unsupported."
6241
+ "description": "The amount of space already used on the cloud provider, in bytes. Set to <var>-1</var> if unsupported."
6208
6242
  },
6209
6243
  "managementUrl": {
6210
6244
  "type": "string",
@@ -6258,7 +6292,7 @@
6258
6292
  "choices": [
6259
6293
  {
6260
6294
  "type": "string",
6261
- "description": "A name and email address in the format <value>Name <email@example.com></value>, or just an email address."
6295
+ "description": "A name and email address in the format <var>Name <email@example.com></var>, or just an email address."
6262
6296
  },
6263
6297
  {
6264
6298
  "type": "object",
@@ -6266,12 +6300,12 @@
6266
6300
  "id": {
6267
6301
  "type": "string",
6268
6302
  "max_manifest_version": 2,
6269
- "description": "The ID of a contact or mailing list from the :doc:`contacts` or :doc:`mailingLists`."
6303
+ "description": "The ID of a contact or mailing list from the $(doc:contacts) or $(doc:mailingLists)."
6270
6304
  },
6271
6305
  "nodeId": {
6272
6306
  "type": "string",
6273
6307
  "min_manifest_version": 3,
6274
- "description": "The ID of a contact or mailing list node from the :doc:`addressBook.contacts` or :doc:`addressBook.mailingLists`."
6308
+ "description": "The ID of a contact or mailing list node from the $(doc:addressBook.contacts) or $(doc:addressBook.mailingLists)."
6275
6309
  },
6276
6310
  "type": {
6277
6311
  "type": "string",
@@ -6322,7 +6356,7 @@
6322
6356
  "additionalFccFolderId": {
6323
6357
  "min_manifest_version": 3,
6324
6358
  "$ref": "folders.MailFolderId",
6325
- "description": "An additional fcc folder which can be selected while composing the message. Cleared when set to <value>null</value>.",
6359
+ "description": "An additional fcc folder which can be selected while composing the message. Cleared when set to <var>null</var>.",
6326
6360
  "optional": "omit-key-if-missing"
6327
6361
  },
6328
6362
  "additionalFccFolder": {
@@ -6398,7 +6432,7 @@
6398
6432
  "html",
6399
6433
  "both"
6400
6434
  ],
6401
- "description": "Defines the MIME format of the sent message (ignored on plain text messages). Defaults to <value>auto</value>, which will send html messages as plain text, if they do not include any formatting, and as <value>both</value> otherwise (a multipart/mixed message).",
6435
+ "description": "Defines the MIME format of the sent message (ignored on plain text messages). Defaults to <var>auto</var>, which will send html messages as plain text, if they do not include any formatting, and as <var>both</var> otherwise (a multipart/mixed message).",
6402
6436
  "optional": true
6403
6437
  },
6404
6438
  "deliveryStatusNotification": {
@@ -6416,7 +6450,7 @@
6416
6450
  }
6417
6451
  ],
6418
6452
  "optional": true,
6419
- "description": "The selected encryption technology (<value>OpenPGP</value> or <value>S/MIME</value>) which is to be used to sign and/or encrypt the message. If the sending identity does not support encryption at all, this will be <value>undefined</value>."
6453
+ "description": "The selected encryption technology (<var>OpenPGP</var> or <var>S/MIME</var>) which is to be used to sign and/or encrypt the message. If the sending identity does not support encryption at all, this will be <var>undefined</var>."
6420
6454
  },
6421
6455
  "followupTo": {
6422
6456
  "$ref": "ComposeRecipientList",
@@ -6424,12 +6458,12 @@
6424
6458
  },
6425
6459
  "from": {
6426
6460
  "$ref": "ComposeRecipient",
6427
- "description": "*Caution*: Setting a value for ``from`` does not change the used identity, it overrides the <value>From</value> header. Many email servers do not accept emails where the <value>From</value> header does not match the sender identity. Must be set to exactly one valid email address.",
6461
+ "description": "*Caution*: Setting a value for <var>from</var> does not change the used identity, it overrides the <em>From</em> header. Many email servers do not accept emails where the <em>From</em> header does not match the sender identity. Must be set to exactly one valid email address.",
6428
6462
  "optional": true
6429
6463
  },
6430
6464
  "identityId": {
6431
6465
  "type": "string",
6432
- "description": "The ID of an identity from the :doc:`accounts`. The settings from the identity will be used in the composed message. If ``replyTo`` is also specified, the ``replyTo`` property of the identity is overridden. The permission <permission>accountsRead</permission> is required to include the ``identityId``.",
6466
+ "description": "The ID of an identity from the $(doc:accounts). The settings from the identity will be used in the composed message. If <var>replyTo</var> is also specified, the <var>replyTo</var> property of the identity is overridden. The permission <permission>accountsRead</permission> is required to include the <var>identityId</var>.",
6433
6467
  "optional": true
6434
6468
  },
6435
6469
  "isModified": {
@@ -6461,7 +6495,7 @@
6461
6495
  "max_manifest_version": 2,
6462
6496
  "type": "boolean",
6463
6497
  "optional": true,
6464
- "description": "Indicates whether the default fcc setting (defined by the used identity) is being overridden for this message. Setting <value>false</value> will clear the override. Setting <value>true</value> will throw an <em>ExtensionError</em>, if ``overrideDefaultFccFolder`` is not set as well."
6498
+ "description": "Indicates whether the default fcc setting (defined by the used identity) is being overridden for this message. Setting <var>false</var> will clear the override. Setting <var>true</var> will throw an <em>ExtensionError</em>, if <var>overrideDefaultFccFolder</var> is not set as well."
6465
6499
  },
6466
6500
  "overrideDefaultFccFolder": {
6467
6501
  "max_manifest_version": 2,
@@ -6480,12 +6514,12 @@
6480
6514
  }
6481
6515
  ],
6482
6516
  "optional": true,
6483
- "description": " This value overrides the default fcc setting (defined by the used identity) for this message only. Either a :ref:`folders.MailFolder` specifying the folder for the copy of the sent message, or an empty string to not save a copy at all."
6517
+ "description": " This value overrides the default fcc setting (defined by the used identity) for this message only. Either a $(ref:folders.MailFolder) specifying the folder for the copy of the sent message, or an empty string to not save a copy at all."
6484
6518
  },
6485
6519
  "overrideDefaultFccFolderId": {
6486
6520
  "min_manifest_version": 3,
6487
6521
  "$ref": "folders.MailFolderId",
6488
- "description": " This value overrides the default fcc setting (defined by the used identity) for this message only. Either a :ref:`folders.MailFolderId` specifying the folder for the copy of the sent message, or an empty string to not save a copy at all. Reset when set to <value>null</value>.",
6522
+ "description": " This value overrides the default fcc setting (defined by the used identity) for this message only. Either a $(ref:folders.MailFolderId) specifying the folder for the copy of the sent message, or an empty string to not save a copy at all. Reset when set to <var>null</var>.",
6489
6523
  "optional": "omit-key-if-missing"
6490
6524
  },
6491
6525
  "plainTextBody": {
@@ -6506,7 +6540,7 @@
6506
6540
  "optional": true
6507
6541
  },
6508
6542
  "relatedMessageId": {
6509
- "description": "The id of the original message (in case of draft, template, forward or reply). Read-only. Is <value>null</value> in all other cases or if the original message was opened from file.",
6543
+ "description": "The id of the original message (in case of draft, template, forward or reply). Read-only. Is <var>null</var> in all other cases or if the original message was opened from file.",
6510
6544
  "$ref": "messages.MessageId",
6511
6545
  "optional": true
6512
6546
  },
@@ -6555,7 +6589,7 @@
6555
6589
  },
6556
6590
  "name": {
6557
6591
  "type": "string",
6558
- "description": "The new name for the attachment, as displayed to the user. If not specified, the name of the provided ``file`` object is used.",
6592
+ "description": "The new name for the attachment, as displayed to the user. If not specified, the name of the provided <var>file</var> object is used.",
6559
6593
  "optional": true
6560
6594
  }
6561
6595
  }
@@ -6588,7 +6622,7 @@
6588
6622
  "properties": {
6589
6623
  "name": {
6590
6624
  "type": "string",
6591
- "description": "Name of a custom header, must be prefixed by <value>X-</value> (but not by <value>X-Mozilla-</value>) or be one of the explicitly allowed headers (<value>MSIP_Labels</value>)"
6625
+ "description": "Name of a custom header, must be prefixed by <var>X-</var> (but not by <var>X-Mozilla-</var>) or be one of the explicitly allowed headers (<var>MSIP_Labels</var>)"
6592
6626
  },
6593
6627
  "value": {
6594
6628
  "type": "string"
@@ -6601,7 +6635,7 @@
6601
6635
  "additionalProperties": {
6602
6636
  "type": "boolean"
6603
6637
  },
6604
- "description": "A <em>dictionary object</em> with entries for all installed dictionaries, having a language identifier as <em>key</em> (for example <value>en-US</value>) and a boolean expression as <em>value</em>, indicating whether that dictionary is enabled for spellchecking or not."
6638
+ "description": "A <em>dictionary object</em> with entries for all installed dictionaries, having a language identifier as <em>key</em> (for example <var>en-US</var>) and a boolean expression as <em>value</em>, indicating whether that dictionary is enabled for spellchecking or not."
6605
6639
  },
6606
6640
  {
6607
6641
  "id": "EncryptionPropertiesOpenPGP",
@@ -6613,7 +6647,7 @@
6613
6647
  },
6614
6648
  "encryptBody": {
6615
6649
  "type": "boolean",
6616
- "description": "Whether encryption of the message body using the OpenPGP technology is enabled. **Note:** If encryption is enabled, but the `preconditions <https://support.mozilla.org/en-US/kb/thunderbird-help-cannot-encrypt>`__ for sending an encrypted message are not met, the message cannot be sent."
6650
+ "description": "Whether encryption of the message body using the OpenPGP technology is enabled. **Note:** If encryption is enabled, but the <a href='url-help-cannot-encrypt'>preconditions</a> for sending an encrypted message are not met, the message cannot be sent."
6617
6651
  },
6618
6652
  "encryptSubject": {
6619
6653
  "type": "boolean",
@@ -6635,7 +6669,7 @@
6635
6669
  },
6636
6670
  "encryptBody": {
6637
6671
  "type": "boolean",
6638
- "description": "Whether encryption of the message body using the S/MIME technology is enabled. **Note:** If encryption is enabled, but the `preconditions <https://support.mozilla.org/en-US/kb/thunderbird-help-cannot-encrypt>`__ for sending an encrypted message are not met, the message cannot be sent."
6672
+ "description": "Whether encryption of the message body using the S/MIME technology is enabled. **Note:** If encryption is enabled, but the <a href='url-help-cannot-encrypt'>preconditions</a> for sending an encrypted message are not met, the message cannot be sent."
6639
6673
  },
6640
6674
  "signMessage": {
6641
6675
  "type": "boolean",
@@ -6648,7 +6682,7 @@
6648
6682
  {
6649
6683
  "name": "onBeforeSend",
6650
6684
  "type": "function",
6651
- "description": "Fired when a message is about to be sent from the compose window. This is a user input event handler. For asynchronous listeners some `restrictions <|link-user-input-restrictions|>`__ apply.",
6685
+ "description": "Fired when a message is about to be sent from the compose window. This is a user input event handler. For asynchronous listeners some <a href='url-user-input-restrictions'>restrictions</a> apply.",
6652
6686
  "permissions": [
6653
6687
  "compose"
6654
6688
  ],
@@ -6660,7 +6694,7 @@
6660
6694
  {
6661
6695
  "name": "details",
6662
6696
  "$ref": "ComposeDetails",
6663
- "description": "The current state of the compose window. This is functionally the same as calling the :ref:`compose.getComposeDetails` function."
6697
+ "description": "The current state of the compose window. This is functionally the same as calling the $(ref:compose.getComposeDetails) function."
6664
6698
  }
6665
6699
  ],
6666
6700
  "returns": {
@@ -6674,7 +6708,7 @@
6674
6708
  "details": {
6675
6709
  "$ref": "ComposeDetails",
6676
6710
  "optional": true,
6677
- "description": "Updates the compose window. This is functionally the same as calling the :ref:`compose.setComposeDetails` function."
6711
+ "description": "Updates the compose window. This is functionally the same as calling the $(ref:compose.setComposeDetails) function."
6678
6712
  }
6679
6713
  }
6680
6714
  }
@@ -6854,7 +6888,7 @@
6854
6888
  {
6855
6889
  "name": "beginNew",
6856
6890
  "type": "function",
6857
- "description": "Open a new message compose window.\n\n**Note:** The compose format can be set by ``details.isPlainText`` or by specifying only one of ``details.body`` or ``details.plainTextBody``. Otherwise the default compose format of the selected identity is used.\n\n**Note:** Specifying ``details.body`` and ``details.plainTextBody`` without also specifying ``details.isPlainText`` threw an exception in Thunderbird up to version 97. Since Thunderbird 98, this combination creates a compose window with the compose format of the selected identity, using the matching ``details.body`` or ``details.plainTextBody`` value.\n\n**Note:** If no identity is specified, this function is using the default identity and not the identity of the referenced message.",
6891
+ "description": "Open a new message compose window.\n\n**Note:** The compose format can be set by <var>details.isPlainText</var> or by specifying only one of <var>details.body</var> or <var>details.plainTextBody</var>. Otherwise the default compose format of the selected identity is used.\n\n**Note:** Specifying <var>details.body</var> and <var>details.plainTextBody</var> without also specifying <var>details.isPlainText</var> threw an exception in Thunderbird up to version 97. Since Thunderbird 98, this combination creates a compose window with the compose format of the selected identity, using the matching <var>details.body</var> or <var>details.plainTextBody</var> value.\n\n**Note:** If no identity is specified, this function is using the default identity and not the identity of the referenced message.",
6858
6892
  "async": "callback",
6859
6893
  "parameters": [
6860
6894
  {
@@ -6884,7 +6918,7 @@
6884
6918
  {
6885
6919
  "name": "beginReply",
6886
6920
  "type": "function",
6887
- "description": "Open a new message compose window replying to a given message.\n\n**Note:** The compose format can be set by ``details.isPlainText`` or by specifying only one of ``details.body`` or ``details.plainTextBody``. Otherwise the default compose format of the selected identity is used.\n\n**Note:** Specifying ``details.body`` and ``details.plainTextBody`` without also specifying ``details.isPlainText`` threw an exception in Thunderbird up to version 97. Since Thunderbird 98, this combination creates a compose window with the compose format of the selected identity, using the matching ``details.body`` or ``details.plainTextBody`` value.\n\n**Note:** If no identity is specified, this function is using the default identity and not the identity of the referenced message.",
6921
+ "description": "Open a new message compose window replying to a given message.\n\n**Note:** The compose format can be set by <var>details.isPlainText</var> or by specifying only one of <var>details.body</var> or <var>details.plainTextBody</var>. Otherwise the default compose format of the selected identity is used.\n\n**Note:** Specifying <var>details.body</var> and <var>details.plainTextBody</var> without also specifying <var>details.isPlainText</var> threw an exception in Thunderbird up to version 97. Since Thunderbird 98, this combination creates a compose window with the compose format of the selected identity, using the matching <var>details.body</var> or <var>details.plainTextBody</var> value.\n\n**Note:** If no identity is specified, this function is using the default identity and not the identity of the referenced message.",
6888
6922
  "async": "callback",
6889
6923
  "parameters": [
6890
6924
  {
@@ -6923,7 +6957,7 @@
6923
6957
  {
6924
6958
  "name": "beginForward",
6925
6959
  "type": "function",
6926
- "description": "Open a new message compose window forwarding a given message.\n\n**Note:** The compose format can be set by ``details.isPlainText`` or by specifying only one of ``details.body`` or ``details.plainTextBody``. Otherwise the default compose format of the selected identity is used.\n\n**Note:** Specifying ``details.body`` and ``details.plainTextBody`` without also specifying ``details.isPlainText`` threw an exception in Thunderbird up to version 97. Since Thunderbird 98, this combination creates a compose window with the compose format of the selected identity, using the matching ``details.body`` or ``details.plainTextBody`` value.\n\n**Note:** If no identity is specified, this function is using the default identity and not the identity of the referenced message.",
6960
+ "description": "Open a new message compose window forwarding a given message.\n\n**Note:** The compose format can be set by <var>details.isPlainText</var> or by specifying only one of <var>details.body</var> or <var>details.plainTextBody</var>. Otherwise the default compose format of the selected identity is used.\n\n**Note:** Specifying <var>details.body</var> and <var>details.plainTextBody</var> without also specifying <var>details.isPlainText</var> threw an exception in Thunderbird up to version 97. Since Thunderbird 98, this combination creates a compose window with the compose format of the selected identity, using the matching <var>details.body</var> or <var>details.plainTextBody</var> value.\n\n**Note:** If no identity is specified, this function is using the default identity and not the identity of the referenced message.",
6927
6961
  "async": "callback",
6928
6962
  "parameters": [
6929
6963
  {
@@ -6988,7 +7022,7 @@
6988
7022
  "name": "setComposeDetails",
6989
7023
  "type": "function",
6990
7024
  "async": true,
6991
- "description": "Updates the compose window. The properties of the given :ref:`compose.ComposeDetails` object will be used to overwrite the current values of the specified compose window, so only properties that are to be changed should be included. Modified settings will be treated as user initiated, and turn off further automatic changes on these settings.\n\nWhen updating any of the array properties (``customHeaders`` and most address fields), make sure to first get the current values to not accidentally remove all existing entries when setting the new value.\n\n**Note:** The compose format of an existing compose window cannot be changed. Since Thunderbird 98, setting conflicting values for ``details.body``, ``details.plainTextBody`` or ``details.isPlaintext`` no longer throws an exception, instead the compose window chooses the matching ``details.body`` or ``details.plainTextBody`` value and ignores the other.",
7025
+ "description": "Updates the compose window. The properties of the given $(ref:compose.ComposeDetails) object will be used to overwrite the current values of the specified compose window, so only properties that are to be changed should be included. Modified settings will be treated as user initiated, and turn off further automatic changes on these settings.\n\nWhen updating any of the array properties (<var>customHeaders</var> and most address fields), make sure to first get the current values to not accidentally remove all existing entries when setting the new value.\n\n**Note:** The compose format of an existing compose window cannot be changed. Since Thunderbird 98, setting conflicting values for <var>details.body</var>, <var>details.plainTextBody</var> or <var>details.isPlaintext</var> no longer throws an exception, instead the compose window chooses the matching <var>details.body</var> or <var>details.plainTextBody</var> value and ignores the other.",
6992
7026
  "permissions": [
6993
7027
  "compose"
6994
7028
  ],
@@ -7008,7 +7042,7 @@
7008
7042
  "name": "getActiveDictionaries",
7009
7043
  "type": "function",
7010
7044
  "async": "callback",
7011
- "description": "Returns a :ref:`compose.ComposeDictionaries` object, listing all installed dictionaries, including the information whether they are currently enabled or not.",
7045
+ "description": "Returns a $(ref:compose.ComposeDictionaries) object, listing all installed dictionaries, including the information whether they are currently enabled or not.",
7012
7046
  "permissions": [
7013
7047
  "compose"
7014
7048
  ],
@@ -7034,7 +7068,7 @@
7034
7068
  "name": "setActiveDictionaries",
7035
7069
  "type": "function",
7036
7070
  "async": true,
7037
- "description": "Updates the active dictionaries. Throws if the ``activeDictionaries`` array contains unknown or invalid language identifiers.",
7071
+ "description": "Updates the active dictionaries. Throws if the <var>activeDictionaries</var> array contains unknown or invalid language identifiers.",
7038
7072
  "permissions": [
7039
7073
  "compose"
7040
7074
  ],
@@ -7084,7 +7118,7 @@
7084
7118
  {
7085
7119
  "name": "getAttachmentFile",
7086
7120
  "type": "function",
7087
- "description": "Gets the content of a :ref:`compose.ComposeAttachment` as a |File| object.",
7121
+ "description": "Gets the content of a $(ref:compose.ComposeAttachment) as a <a href='url-dom-file'>File</a> object.",
7088
7122
  "async": "callback",
7089
7123
  "parameters": [
7090
7124
  {
@@ -7200,7 +7234,7 @@
7200
7234
  "compose.send"
7201
7235
  ],
7202
7236
  "type": "function",
7203
- "description": "Sends the message currently being composed. If the send mode is not specified or set to <value>default</value>, the message will be send directly if the user is online and placed in the users outbox otherwise. The returned Promise fulfills once the message has been successfully sent or placed in the user's outbox. Throws when the send process has been aborted by the user, by an :ref:`compose.onBeforeSend` event or if there has been an error while sending the message to the outgoing mail server.",
7237
+ "description": "Sends the message currently being composed. If the send mode is not specified or set to <var>default</var>, the message will be send directly if the user is online and placed in the users outbox otherwise. The returned Promise fulfills once the message has been successfully sent or placed in the user's outbox. Throws when the send process has been aborted by the user, by an $(ref:compose.onBeforeSend) event or if there has been an error while sending the message to the outgoing mail server.",
7204
7238
  "async": "callback",
7205
7239
  "parameters": [
7206
7240
  {
@@ -7377,23 +7411,23 @@
7377
7411
  "items": {
7378
7412
  "$ref": "ThemeIcons"
7379
7413
  },
7380
- "description": "Specifies dark and light icons to be used with themes. The ``light`` icon is used on dark backgrounds and vice versa. **Note:** The default theme uses the ``default_icon`` for light backgrounds (if specified)."
7414
+ "description": "Specifies dark and light icons to be used with themes. The <var>light</var> icon is used on dark backgrounds and vice versa. **Note:** The default theme uses the <var>default_icon</var> for light backgrounds (if specified)."
7381
7415
  },
7382
7416
  "default_popup": {
7383
7417
  "type": "string",
7384
7418
  "format": "relativeUrl",
7385
7419
  "optional": true,
7386
- "description": "The html document to be opened as a popup when the user clicks on the composeAction button. Ignored for action buttons with type <value>menu</value>.",
7420
+ "description": "The html document to be opened as a popup when the user clicks on the composeAction button. Ignored for action buttons with type <var>menu</var>.",
7387
7421
  "preprocess": "localize"
7388
7422
  },
7389
7423
  "browser_style": {
7390
7424
  "type": "boolean",
7391
7425
  "optional": true,
7392
- "description": "Enable browser styles. See the `MDN documentation on browser styles <|link-mdn-browser-styles|>`__ for more information.",
7426
+ "description": "Enable browser styles. See the <a href='url-mdn-browser-styles'>MDN documentation on browser styles</a> for more information.",
7393
7427
  "default": false
7394
7428
  },
7395
7429
  "default_area": {
7396
- "description": "Defines the location the composeAction button will appear. The default location is <value>maintoolbar</value>.",
7430
+ "description": "Defines the location the composeAction button will appear. The default location is <var>maintoolbar</var>.",
7397
7431
  "type": "string",
7398
7432
  "enum": [
7399
7433
  "maintoolbar",
@@ -7402,7 +7436,7 @@
7402
7436
  "optional": true
7403
7437
  },
7404
7438
  "type": {
7405
- "description": "Specifies the type of the button. Default type is <value>button</value>.",
7439
+ "description": "Specifies the type of the button. Default type is <var>button</var>.",
7406
7440
  "type": "string",
7407
7441
  "enum": [
7408
7442
  "button",
@@ -7427,7 +7461,7 @@
7427
7461
  "types": [
7428
7462
  {
7429
7463
  "id": "ColorArray",
7430
- "description": "An array of four integers in the range [0,255] that make up the RGBA color. For example, opaque red is <value>[255, 0, 0, 255]</value>.",
7464
+ "description": "An array of four integers in the range [0,255] that make up the RGBA color. For example, opaque red is <var>[255, 0, 0, 255]</var>.",
7431
7465
  "type": "array",
7432
7466
  "items": {
7433
7467
  "type": "integer",
@@ -7445,12 +7479,12 @@
7445
7479
  "type": "any"
7446
7480
  },
7447
7481
  "postprocess": "convertImageDataToURL",
7448
- "description": "Pixel data for an image. Must be an |ImageData| object (for example, from a |Canvas| element)."
7482
+ "description": "Pixel data for an image. Must be an <a href='url-image-data'>ImageData</a> object (for example, from a <a href='url-canvas-element'>canvas</a> element)."
7449
7483
  },
7450
7484
  {
7451
7485
  "id": "ImageDataDictionary",
7452
7486
  "type": "object",
7453
- "description": "A <em>dictionary object</em> to specify multiple |ImageData| objects in different sizes, so the icon does not have to be scaled for a device with a different pixel density. Each entry is a <em>name-value</em> pair with <em>value</em> being an |ImageData| object, and <em>name</em> its size. Example: <literalinclude>includes/ImageDataDictionary.json<lang>JavaScript</lang></literalinclude>See the `MDN documentation about choosing icon sizes <|link-mdn-icon-size|>`__ for more information on this.",
7487
+ "description": "A <em>dictionary object</em> to specify multiple <a href='url-image-data'>ImageData</a> objects in different sizes, so the icon does not have to be scaled for a device with a different pixel density. Each entry is a <em>name-value</em> pair with <em>value</em> being an <a href='url-image-data'>ImageData</a> object, and <em>name</em> its size. Example: <literalinclude>includes/ImageDataDictionary.json<lang>JavaScript</lang></literalinclude>See the <a href='url-mdn-icon-size'>MDN documentation about choosing icon sizes</a> for more information on this.",
7454
7488
  "patternProperties": {
7455
7489
  "^[1-9]\\d*$": {
7456
7490
  "$ref": "ImageDataType"
@@ -7504,7 +7538,7 @@
7504
7538
  "type": "null"
7505
7539
  }
7506
7540
  ],
7507
- "description": "A string the composeAction button should display as its label and when moused over. Cleared by setting it to <value>null</value> or an empty string (title defined the manifest will be used)."
7541
+ "description": "A string the composeAction button should display as its label and when moused over. Cleared by setting it to <var>null</var> or an empty string (title defined the manifest will be used)."
7508
7542
  },
7509
7543
  "tabId": {
7510
7544
  "type": "integer",
@@ -7586,7 +7620,7 @@
7586
7620
  "type": "null"
7587
7621
  }
7588
7622
  ],
7589
- "description": "A string the composeAction button should use as its label, overriding the defined title. Can be set to an empty string to not display any label at all. If the containing toolbar is configured to display text only, its title will be used. Cleared by setting it to <value>null</value>."
7623
+ "description": "A string the composeAction button should use as its label, overriding the defined title. Can be set to an empty string to not display any label at all. If the containing toolbar is configured to display text only, its title will be used. Cleared by setting it to <var>null</var>."
7590
7624
  },
7591
7625
  "tabId": {
7592
7626
  "type": "integer",
@@ -7614,7 +7648,7 @@
7614
7648
  {
7615
7649
  "name": "getLabel",
7616
7650
  "type": "function",
7617
- "description": "Gets the label of the composeAction button. Returns <value>null</value>, if no label has been set and the title is used.",
7651
+ "description": "Gets the label of the composeAction button. Returns <var>null</var>, if no label has been set and the title is used.",
7618
7652
  "async": "callback",
7619
7653
  "parameters": [
7620
7654
  {
@@ -7659,7 +7693,7 @@
7659
7693
  {
7660
7694
  "name": "setIcon",
7661
7695
  "type": "function",
7662
- "description": "Sets the icon for the composeAction button. Either the ``path`` or the ``imageData`` property must be specified.",
7696
+ "description": "Sets the icon for the composeAction button. Either the <var>path</var> or the <var>imageData</var> property must be specified.",
7663
7697
  "async": "callback",
7664
7698
  "parameters": [
7665
7699
  {
@@ -7725,7 +7759,7 @@
7725
7759
  "type": "null"
7726
7760
  }
7727
7761
  ],
7728
- "description": "The html file to show in a popup. Can be set to an empty string to not open a popup. Cleared by setting it to <value>null</value> (action will use the popup value defined in the manifest)."
7762
+ "description": "The html file to show in a popup. Can be set to an empty string to not open a popup. Cleared by setting it to <var>null</var> (action will use the popup value defined in the manifest)."
7729
7763
  },
7730
7764
  "tabId": {
7731
7765
  "type": "integer",
@@ -7807,7 +7841,7 @@
7807
7841
  "type": "null"
7808
7842
  }
7809
7843
  ],
7810
- "description": "Any number of characters can be passed, but only about four can fit in the space. Cleared by setting it to <value>null</value> or an empty string."
7844
+ "description": "Any number of characters can be passed, but only about four can fit in the space. Cleared by setting it to <var>null</var> or an empty string."
7811
7845
  },
7812
7846
  "tabId": {
7813
7847
  "type": "integer",
@@ -7892,7 +7926,7 @@
7892
7926
  "type": "null"
7893
7927
  }
7894
7928
  ],
7895
- "description": "The color to use as text color in the badge. Cleared by setting it to <value>null</value>."
7929
+ "description": "The color to use as text color in the badge. Cleared by setting it to <var>null</var>."
7896
7930
  },
7897
7931
  "tabId": {
7898
7932
  "type": "integer",
@@ -7915,7 +7949,7 @@
7915
7949
  "name": "getBadgeTextColor",
7916
7950
  "type": "function",
7917
7951
  "description": "Gets the text color of the badge.",
7918
- "async": true,
7952
+ "async": "callback",
7919
7953
  "parameters": [
7920
7954
  {
7921
7955
  "name": "details",
@@ -7943,7 +7977,7 @@
7943
7977
  "parameters": [
7944
7978
  {
7945
7979
  "name": "result",
7946
- "type": "string"
7980
+ "$ref": "ColorArray"
7947
7981
  }
7948
7982
  ]
7949
7983
  }
@@ -7971,7 +8005,7 @@
7971
8005
  "type": "null"
7972
8006
  }
7973
8007
  ],
7974
- "description": "The color to use as background in the badge. Cleared by setting it to <value>null</value>."
8008
+ "description": "The color to use as background in the badge. Cleared by setting it to <var>null</var>."
7975
8009
  },
7976
8010
  "tabId": {
7977
8011
  "type": "integer",
@@ -8037,7 +8071,7 @@
8037
8071
  {
8038
8072
  "name": "enable",
8039
8073
  "type": "function",
8040
- "description": "Enables the composeAction button for a specific tab (if a ``tabId`` is provided), or for all tabs which do not have a custom enable state. Once the enable state of a tab has been updated individually, all further changes to its state have to be done individually as well. By default, a composeAction button is enabled.",
8074
+ "description": "Enables the composeAction button for a specific tab (if a <var>tabId</var> is provided), or for all tabs which do not have a custom enable state. Once the enable state of a tab has been updated individually, all further changes to its state have to be done individually as well. By default, a composeAction button is enabled.",
8041
8075
  "async": "callback",
8042
8076
  "parameters": [
8043
8077
  {
@@ -8058,7 +8092,7 @@
8058
8092
  {
8059
8093
  "name": "disable",
8060
8094
  "type": "function",
8061
- "description": "Disables the composeAction button for a specific tab (if a ``tabId`` is provided), or for all tabs which do not have a custom enable state. Once the enable state of a tab has been updated individually, all further changes to its state have to be done individually as well.",
8095
+ "description": "Disables the composeAction button for a specific tab (if a <var>tabId</var> is provided), or for all tabs which do not have a custom enable state. Once the enable state of a tab has been updated individually, all further changes to its state have to be done individually as well.",
8062
8096
  "async": "callback",
8063
8097
  "parameters": [
8064
8098
  {
@@ -8116,7 +8150,7 @@
8116
8150
  {
8117
8151
  "name": "openPopup",
8118
8152
  "type": "function",
8119
- "description": "Opens the action's popup window in the specified window. Defaults to the current window. Returns false if the popup could not be opened because the action has no popup, is of type <value>menu</value>, is disabled or has been removed from the toolbar.",
8153
+ "description": "Opens the action's popup window in the specified window. Defaults to the current window. Returns false if the popup could not be opened because the action has no popup, is of type <var>menu</var>, is disabled or has been removed from the toolbar.",
8120
8154
  "async": "callback",
8121
8155
  "parameters": [
8122
8156
  {
@@ -8150,7 +8184,7 @@
8150
8184
  {
8151
8185
  "name": "onClicked",
8152
8186
  "type": "function",
8153
- "description": "Fired when a composeAction button is clicked. This event will not fire if the composeAction has a popup. This is a user input event handler. For asynchronous listeners some `restrictions <|link-user-input-restrictions|>`__ apply.",
8187
+ "description": "Fired when a composeAction button is clicked. This event will not fire if the composeAction has a popup. This is a user input event handler. For asynchronous listeners some <a href='url-user-input-restrictions'>restrictions</a> apply.",
8154
8188
  "parameters": [
8155
8189
  {
8156
8190
  "name": "tab",
@@ -8233,7 +8267,7 @@
8233
8267
  {
8234
8268
  "name": "register",
8235
8269
  "type": "function",
8236
- "description": "Register a compose script programmatically. **Note:** Registered scripts will only be applied to newly opened message composer tabs. To apply the script to already open message composer tab, manually inject your script by calling :ref:`tabs.executeScript` for each of the open <value>messageCompose</value> tabs.",
8270
+ "description": "Register a compose script programmatically. **Note:** Registered scripts will only be applied to newly opened message composer tabs. To apply the script to already open message composer tab, manually inject your script by calling $(ref:tabs.executeScript) for each of the open <var>messageCompose</var> tabs.",
8237
8271
  "async": true,
8238
8272
  "parameters": [
8239
8273
  {
@@ -8281,7 +8315,7 @@
8281
8315
  "document_end",
8282
8316
  "document_idle"
8283
8317
  ],
8284
- "description": "Determines when the files specified in css and js are injected. The states directly correspond to <code>Document.readyState</code>: <value>loading</value>, <value>interactive</value> and <value>complete</value>"
8318
+ "description": "Determines when the files specified in css and js are injected. The states directly correspond to <code>Document.readyState</code>: <var>loading</var>, <var>interactive</var> and <var>complete</var>"
8285
8319
  }
8286
8320
  }
8287
8321
  },
@@ -8304,7 +8338,7 @@
8304
8338
  {
8305
8339
  "name": "register",
8306
8340
  "type": "function",
8307
- "description": "Register a message display script programmatically. **Note:** Registered scripts will only be applied to newly opened messages. To apply the script to already open messages, manually inject your script by calling :ref:`tabs.executeScript` for each of the open <value>messageDisplay</value> tabs.",
8341
+ "description": "Register a message display script programmatically. **Note:** Registered scripts will only be applied to newly opened messages. To apply the script to already open messages, manually inject your script by calling $(ref:tabs.executeScript) for each of the open <var>messageDisplay</var> tabs.",
8308
8342
  "async": true,
8309
8343
  "parameters": [
8310
8344
  {
@@ -8386,7 +8420,7 @@
8386
8420
  },
8387
8421
  "path": {
8388
8422
  "type": "string",
8389
- "description": "Path to this folder in the account. Although paths look predictable, never guess a folder's path, as there are a number of reasons why it may not be what you think it is. Use :ref:`folders.getParentFolders` or :ref:`folders.getSubFolders` to obtain hierarchy information."
8423
+ "description": "Path to this folder in the account. Although paths look predictable, never guess a folder's path, as there are a number of reasons why it may not be what you think it is. Use $(ref:folders.getParentFolders) or $(ref:folders.getSubFolders) to obtain hierarchy information."
8390
8424
  },
8391
8425
  "specialUse": {
8392
8426
  "type": "array",
@@ -8397,7 +8431,7 @@
8397
8431
  "description": "The special use of this folder. A folder can have multiple special uses."
8398
8432
  },
8399
8433
  "subFolders": {
8400
- "description": "Subfolders of this folder. The property may be <value>null</value>, if inclusion of folders had not been requested. The folders will be returned in the same order as used in Thunderbird's folder pane.",
8434
+ "description": "Subfolders of this folder. The property may be <var>null</var>, if inclusion of folders had not been requested. The folders will be returned in the same order as used in Thunderbird's folder pane.",
8401
8435
  "choices": [
8402
8436
  {
8403
8437
  "type": "array",
@@ -8423,7 +8457,7 @@
8423
8457
  {
8424
8458
  "id": "MailFolderId",
8425
8459
  "type": "string",
8426
- "description": "A unique id representing a :ref:`folders.MailFolder` throughout a session. Renaming or moving a folder will invalidate its id."
8460
+ "description": "A unique id representing a $(ref:folders.MailFolder) throughout a session. Renaming or moving a folder will invalidate its id."
8427
8461
  },
8428
8462
  {
8429
8463
  "id": "MailFolderInfo",
@@ -8434,7 +8468,7 @@
8434
8468
  "type": "boolean",
8435
8469
  "optional": true,
8436
8470
  "max_manifest_version": 2,
8437
- "description": "Deprecated. This information is now available in :ref:`folders.MailFolder`."
8471
+ "description": "Deprecated. This information is now available in $(ref:folders.MailFolder)."
8438
8472
  },
8439
8473
  "lastUsed": {
8440
8474
  "$ref": "extensionTypes.Date",
@@ -8524,7 +8558,7 @@
8524
8558
  "STORAGE",
8525
8559
  "MESSAGE"
8526
8560
  ],
8527
- "description": "The type of the quota as defined by RFC2087. A <value>STORAGE</value> quota is constraining the available storage in bytes, a <value>MESSAGE</value> quota is constraining the number of storable messages."
8561
+ "description": "The type of the quota as defined by RFC2087. A <var>STORAGE</var> quota is constraining the available storage in bytes, a <var>MESSAGE</var> quota is constraining the number of storable messages."
8528
8562
  },
8529
8563
  "limit": {
8530
8564
  "type": "integer",
@@ -8563,12 +8597,12 @@
8563
8597
  "properties": {
8564
8598
  "regexp": {
8565
8599
  "type": "string",
8566
- "description": "A regular expression, for example <value>^Projects \\d{4}$</value>."
8600
+ "description": "A regular expression, for example <var>^Projects \\d{4}$</var>."
8567
8601
  },
8568
8602
  "flags": {
8569
8603
  "type": "string",
8570
8604
  "pattern": "^(i|u|v|iu|iv|ui|vi)$",
8571
- "description": "Supported RegExp flags: <value>i</value> = case insensitive, and/or one of <value>u</value> = unicode support or <value>v</value> = extended unicode support",
8605
+ "description": "Supported RegExp flags: <var>i</var> = case insensitive, and/or one of <var>u</var> = unicode support or <var>v</var> = extended unicode support",
8572
8606
  "optional": true
8573
8607
  }
8574
8608
  }
@@ -8577,7 +8611,7 @@
8577
8611
  "properties": {
8578
8612
  "DEFAULT_MOST_RECENT_LIMIT": {
8579
8613
  "value": -1,
8580
- "description": "The number of most recent folders used in Thunderbird's UI. Controled by the <value>mail.folder_widget.max_recent</value> preference."
8614
+ "description": "The number of most recent folders used in Thunderbird's UI. Controled by the <var>mail.folder_widget.max_recent</var> preference."
8581
8615
  }
8582
8616
  },
8583
8617
  "functions": [
@@ -8638,7 +8672,7 @@
8638
8672
  }
8639
8673
  ],
8640
8674
  "optional": true,
8641
- "description": "Whether the folder (excluding subfolders) contains messages, or not. Supports to specify a :ref:`folders.QueryRange` (min/max) instead of a simple boolean value (none/some)."
8675
+ "description": "Whether the folder (excluding subfolders) contains messages, or not. Supports to specify a $(ref:folders.QueryRange) (min/max) instead of a simple boolean value (none/some)."
8642
8676
  },
8643
8677
  "hasUnreadMessages": {
8644
8678
  "choices": [
@@ -8650,7 +8684,7 @@
8650
8684
  }
8651
8685
  ],
8652
8686
  "optional": true,
8653
- "description": "Whether the folder (excluding subfolders) contains unread messages, or not. Supports to specify a :ref:`folders.QueryRange` (min/max) instead of a simple boolean value (none/some)."
8687
+ "description": "Whether the folder (excluding subfolders) contains unread messages, or not. Supports to specify a $(ref:folders.QueryRange) (min/max) instead of a simple boolean value (none/some)."
8654
8688
  },
8655
8689
  "hasNewMessages": {
8656
8690
  "choices": [
@@ -8662,7 +8696,7 @@
8662
8696
  }
8663
8697
  ],
8664
8698
  "optional": true,
8665
- "description": "Whether the folder (excluding subfolders) contains new messages, or not. Supports to specify a :ref:`folders.QueryRange` (min/max) instead of a simple boolean value (none/some)."
8699
+ "description": "Whether the folder (excluding subfolders) contains new messages, or not. Supports to specify a $(ref:folders.QueryRange) (min/max) instead of a simple boolean value (none/some)."
8666
8700
  },
8667
8701
  "hasSubFolders": {
8668
8702
  "choices": [
@@ -8674,7 +8708,7 @@
8674
8708
  }
8675
8709
  ],
8676
8710
  "optional": true,
8677
- "description": "Whether the folder has subfolders, or not. Supports to specify a :ref:`folders.QueryRange` (min/max) instead of a simple boolean value (none/some)."
8711
+ "description": "Whether the folder has subfolders, or not. Supports to specify a $(ref:folders.QueryRange) (min/max) instead of a simple boolean value (none/some)."
8678
8712
  },
8679
8713
  "isFavorite": {
8680
8714
  "type": "boolean",
@@ -8689,12 +8723,12 @@
8689
8723
  "isTag": {
8690
8724
  "type": "boolean",
8691
8725
  "optional": true,
8692
- "description": "Whether the folder is a virtual tag folder, or not. Note: Virtual tag folders are always skipped, unless this property is set to <value>true</value>"
8726
+ "description": "Whether the folder is a virtual tag folder, or not. Note: Virtual tag folders are always skipped, unless this property is set to <var>true</var>"
8693
8727
  },
8694
8728
  "isUnified": {
8695
8729
  "type": "boolean",
8696
8730
  "optional": true,
8697
- "description": "Whether the folder is a unified mailbox folder, or not. Note: Unified mailbox folders are always skipped, unless this property is set to <value>true</value>"
8731
+ "description": "Whether the folder is a unified mailbox folder, or not. Note: Unified mailbox folders are always skipped, unless this property is set to <var>true</var>"
8698
8732
  },
8699
8733
  "isVirtual": {
8700
8734
  "type": "boolean",
@@ -8704,7 +8738,7 @@
8704
8738
  "limit": {
8705
8739
  "type": "integer",
8706
8740
  "optional": true,
8707
- "description": "Limits the number of returned folders. If used together with <value>recent</value>, supports being set to :ref:`folders.DEFAULT_MOST_RECENT_LIMIT`"
8741
+ "description": "Limits the number of returned folders. If used together with <var>recent</var>, supports being set to $(ref:folders.DEFAULT_MOST_RECENT_LIMIT)"
8708
8742
  },
8709
8743
  "name": {
8710
8744
  "choices": [
@@ -8783,7 +8817,7 @@
8783
8817
  "optional": true,
8784
8818
  "type": "boolean",
8785
8819
  "default": false,
8786
- "description": "Specifies whether the returned :ref:`folders.MailFolder` object should include all its nested subfolders. Defaults to <value>false</value>."
8820
+ "description": "Specifies whether the returned $(ref:folders.MailFolder) should populate its <var>subFolders</var> property and include all its (nested!) subfolders. Defaults to <var>false</var>."
8787
8821
  },
8788
8822
  {
8789
8823
  "type": "function",
@@ -8813,7 +8847,7 @@
8813
8847
  "optional": true,
8814
8848
  "type": "boolean",
8815
8849
  "default": true,
8816
- "description": "Specifies whether the returned :ref:`folders.MailFolder` object should include all its nested subfolders. Defaults to <value>true</value>."
8850
+ "description": "Specifies whether the returned $(ref:folders.MailFolder) should populate its <var>subFolders</var> property and include all its (nested!) subfolders. Defaults to <var>true</var>."
8817
8851
  },
8818
8852
  {
8819
8853
  "type": "function",
@@ -9362,7 +9396,7 @@
9362
9396
  },
9363
9397
  {
9364
9398
  "name": "includeSubFolders",
9365
- "description": "Specifies whether the returned :ref:`folders.MailFolder` object for each parent folder should include its nested subfolders. Defaults to <value>false</value>.",
9399
+ "description": "Specifies whether each returned parent $(ref:folders.MailFolder) should populate its <var>subFolders</var> property and include all its (nested!) subfolders. Defaults to <var>false</var>.",
9366
9400
  "optional": true,
9367
9401
  "default": false,
9368
9402
  "type": "boolean"
@@ -9395,7 +9429,7 @@
9395
9429
  },
9396
9430
  {
9397
9431
  "name": "includeSubFolders",
9398
- "description": "Specifies whether the returned :ref:`folders.MailFolder` object for each parent folder should include its nested subfolders. Defaults to <value>false</value>.",
9432
+ "description": "Specifies whether each returned parent $(ref:folders.MailFolder) should populate its <var>subFolders</var> property and include all its (nested!) subfolders. Defaults to <var>false</var>.",
9399
9433
  "optional": true,
9400
9434
  "default": false,
9401
9435
  "type": "boolean"
@@ -9431,7 +9465,7 @@
9431
9465
  "optional": true,
9432
9466
  "type": "boolean",
9433
9467
  "default": false,
9434
- "description": "Specifies whether the returned :ref:`folders.MailFolder` object for each direct subfolder should also include all its nested subfolders. Defaults to <value>false</value>."
9468
+ "description": "Specifies whether each returned direct child $(ref:folders.MailFolder) should populate its <var>subFolders</var> property and include all its (nested!) subfolders. Defaults to <var>false</var>."
9435
9469
  },
9436
9470
  {
9437
9471
  "type": "function",
@@ -9476,7 +9510,7 @@
9476
9510
  "optional": true,
9477
9511
  "type": "boolean",
9478
9512
  "default": true,
9479
- "description": "Specifies whether the returned :ref:`folders.MailFolder` object for each direct subfolder should also include all its nested subfolders. Defaults to <value>true</value>."
9513
+ "description": "Specifies whether each returned direct child $(ref:folders.MailFolder) should populate its <var>subFolders</var> property and include all its (nested!) subfolders. Defaults to <var>true</var>."
9480
9514
  },
9481
9515
  {
9482
9516
  "type": "function",
@@ -9500,6 +9534,7 @@
9500
9534
  "async": "callback",
9501
9535
  "parameters": [
9502
9536
  {
9537
+ "name": "type",
9503
9538
  "type": "string",
9504
9539
  "description": "The requested unified mailbox folder type.",
9505
9540
  "enum": [
@@ -9514,7 +9549,7 @@
9514
9549
  },
9515
9550
  {
9516
9551
  "name": "includeSubFolders",
9517
- "description": "Specifies whether the returned :ref:`folders.MailFolder` object should include all its nested subfolders . Defaults to <value>false</value>.",
9552
+ "description": "Specifies whether the returned $(ref:folders.MailFolder) should populate its <var>subFolders</var> property and include all its (nested!) subfolders. Defaults to <var>false</var>.",
9518
9553
  "optional": true,
9519
9554
  "default": false,
9520
9555
  "type": "boolean"
@@ -9538,8 +9573,9 @@
9538
9573
  "async": "callback",
9539
9574
  "parameters": [
9540
9575
  {
9576
+ "name": "key",
9541
9577
  "type": "string",
9542
- "description": "The tag key of the requested folder. See :ref:`messages.tags.list()` for the available tags. Throws when specifying an invalid tag key."
9578
+ "description": "The tag key of the requested folder. See $(ref:messages.tags.list()) for the available tags. Throws when specifying an invalid tag key."
9543
9579
  },
9544
9580
  {
9545
9581
  "type": "function",
@@ -9561,7 +9597,7 @@
9561
9597
  "type": "function",
9562
9598
  "max_manifest_version": 2,
9563
9599
  "description": "Marks all messages in a folder as read.",
9564
- "async": false,
9600
+ "async": "callback",
9565
9601
  "parameters": [
9566
9602
  {
9567
9603
  "name": "folder",
@@ -9574,6 +9610,12 @@
9574
9610
  "$ref": "folders.MailFolder"
9575
9611
  }
9576
9612
  ]
9613
+ },
9614
+ {
9615
+ "name": "callback",
9616
+ "type": "function",
9617
+ "optional": true,
9618
+ "parameters": []
9577
9619
  }
9578
9620
  ]
9579
9621
  },
@@ -9585,11 +9627,17 @@
9585
9627
  "type": "function",
9586
9628
  "min_manifest_version": 3,
9587
9629
  "description": "Marks all messages in a folder as read.",
9588
- "async": false,
9630
+ "async": "callback",
9589
9631
  "parameters": [
9590
9632
  {
9591
9633
  "name": "folderId",
9592
9634
  "$ref": "folders.MailFolderId"
9635
+ },
9636
+ {
9637
+ "name": "callback",
9638
+ "type": "function",
9639
+ "optional": true,
9640
+ "parameters": []
9593
9641
  }
9594
9642
  ]
9595
9643
  }
@@ -9665,7 +9713,7 @@
9665
9713
  {
9666
9714
  "name": "onUpdated",
9667
9715
  "type": "function",
9668
- "description": "Fired when properties of a folder have changed (<value>specialUse</value> and <value>isFavorite</value>).",
9716
+ "description": "Fired when properties of a folder have changed (<var>specialUse</var> and <var>isFavorite</var>).",
9669
9717
  "parameters": [
9670
9718
  {
9671
9719
  "name": "originalFolder",
@@ -9739,7 +9787,7 @@
9739
9787
  "accountId": {
9740
9788
  "$ref": "accounts.MailAccountId",
9741
9789
  "optional": true,
9742
- "description": "The id of the :ref:`accounts.MailAccount` this identity belongs to. The ``accountId`` property is read-only."
9790
+ "description": "The id of the $(ref:accounts.MailAccount) this identity belongs to. The <var>accountId</var> property is read-only."
9743
9791
  },
9744
9792
  "composeHtml": {
9745
9793
  "type": "boolean",
@@ -9754,7 +9802,7 @@
9754
9802
  "id": {
9755
9803
  "type": "string",
9756
9804
  "optional": true,
9757
- "description": "A unique identifier for this identity. The ``id`` property is read-only."
9805
+ "description": "A unique identifier for this identity. The <var>id</var> property is read-only."
9758
9806
  },
9759
9807
  "label": {
9760
9808
  "type": "string",
@@ -9808,7 +9856,7 @@
9808
9856
  {
9809
9857
  "name": "list",
9810
9858
  "type": "function",
9811
- "description": "Returns the identities of the specified account, or all identities if no account is specified. Do not expect the returned identities to be in any specific order. Use :ref:`identities.getDefault` to get the default identity of an account.",
9859
+ "description": "Returns the identities of the specified account, or all identities if no account is specified. Do not expect the returned identities to be in any specific order. Use $(ref:identities.getDefault) to get the default identity of an account.",
9812
9860
  "async": "callback",
9813
9861
  "parameters": [
9814
9862
  {
@@ -9834,7 +9882,7 @@
9834
9882
  {
9835
9883
  "name": "get",
9836
9884
  "type": "function",
9837
- "description": "Returns details of the requested identity, or <value>null</value> if it doesn't exist.",
9885
+ "description": "Returns details of the requested identity, or <var>null</var> if it doesn't exist.",
9838
9886
  "async": "callback",
9839
9887
  "parameters": [
9840
9888
  {
@@ -9936,7 +9984,7 @@
9936
9984
  {
9937
9985
  "name": "getDefault",
9938
9986
  "type": "function",
9939
- "description": "Returns the default identity for the requested account, or <value>null</value> if it is not defined.",
9987
+ "description": "Returns the default identity for the requested account, or <var>null</var> if it is not defined.",
9940
9988
  "async": "callback",
9941
9989
  "parameters": [
9942
9990
  {
@@ -10009,7 +10057,7 @@
10009
10057
  {
10010
10058
  "name": "onUpdated",
10011
10059
  "type": "function",
10012
- "description": "Fired when one or more properties of an identity have been modified. The returned :ref:`identities.MailIdentity` includes only the changed values.",
10060
+ "description": "Fired when one or more properties of an identity have been modified. The returned $(ref:identities.MailIdentity) includes only the changed values.",
10013
10061
  "parameters": [
10014
10062
  {
10015
10063
  "name": "identityId",
@@ -10175,7 +10223,7 @@
10175
10223
  },
10176
10224
  "sortType": {
10177
10225
  "type": "string",
10178
- "description": "Sorts the list of messages. ``sortOrder`` must also be given.",
10226
+ "description": "Sorts the list of messages. <var>sortOrder</var> must also be given.",
10179
10227
  "optional": true,
10180
10228
  "enum": [
10181
10229
  "none",
@@ -10202,7 +10250,7 @@
10202
10250
  },
10203
10251
  "sortOrder": {
10204
10252
  "type": "string",
10205
- "description": "Sorts the list of messages. ``sortType`` must also be given.",
10253
+ "description": "Sorts the list of messages. <var>sortType</var> must also be given.",
10206
10254
  "optional": true,
10207
10255
  "enum": [
10208
10256
  "none",
@@ -10237,7 +10285,7 @@
10237
10285
  "optional": true
10238
10286
  },
10239
10287
  "folderMode": {
10240
- "description": "Sets the currently used folder mode, enabling it if required. If used without also specifying <value>displayedFolder</value>, the currently selected folder is re-selected in the new folder mode, if possible.",
10288
+ "description": "Sets the currently used folder mode, enabling it if required. If used without also specifying <var>displayedFolder</var>, the currently selected folder is re-selected in the new folder mode, if possible.",
10241
10289
  "$ref": "mailTabs.FolderMode",
10242
10290
  "optional": true
10243
10291
  },
@@ -10258,7 +10306,7 @@
10258
10306
  "displayedFolderId": {
10259
10307
  "$ref": "folders.MailFolderId",
10260
10308
  "min_manifest_version": 3,
10261
- "description": "Sets the folder displayed in the mail tab. Requires the <permission>accountsRead</permission> permission. The previous message selection in the given folder will be restored, if any. This property is ignored, if <value>selectedMessages</value> is specified.",
10309
+ "description": "Sets the folder displayed in the mail tab. Requires the <permission>accountsRead</permission> permission. The previous message selection in the given folder will be restored, if any. This property is ignored, if <var>selectedMessages</var> is specified.",
10262
10310
  "optional": true
10263
10311
  },
10264
10312
  "displayedFolder": {
@@ -10272,7 +10320,7 @@
10272
10320
  }
10273
10321
  ],
10274
10322
  "max_manifest_version": 2,
10275
- "description": "Sets the folder displayed in the mail tab. Requires the <permission>accountsRead</permission> permission. The previous message selection in the given folder will be restored, if any. This property is ignored, if <value>selectedMessages</value> is specified.",
10323
+ "description": "Sets the folder displayed in the mail tab. Requires the <permission>accountsRead</permission> permission. The previous message selection in the given folder will be restored, if any. This property is ignored, if <var>selectedMessages</var> is specified.",
10276
10324
  "optional": true
10277
10325
  }
10278
10326
  }
@@ -10283,26 +10331,26 @@
10283
10331
  "properties": {
10284
10332
  "text": {
10285
10333
  "type": "string",
10286
- "description": "String to match against the ``recipients``, ``author``, ``subject``, or ``body``."
10334
+ "description": "String to match against the <var>recipients</var>, <var>author</var>, <var>subject</var>, or <var>body</var>."
10287
10335
  },
10288
10336
  "recipients": {
10289
10337
  "type": "boolean",
10290
- "description": "Shows messages where ``text`` matches the recipients.",
10338
+ "description": "Shows messages where <var>text</var> matches the recipients.",
10291
10339
  "optional": true
10292
10340
  },
10293
10341
  "author": {
10294
10342
  "type": "boolean",
10295
- "description": "Shows messages where ``text`` matches the author.",
10343
+ "description": "Shows messages where <var>text</var> matches the author.",
10296
10344
  "optional": true
10297
10345
  },
10298
10346
  "subject": {
10299
10347
  "type": "boolean",
10300
- "description": "Shows messages where ``text`` matches the subject.",
10348
+ "description": "Shows messages where <var>text</var> matches the subject.",
10301
10349
  "optional": true
10302
10350
  },
10303
10351
  "body": {
10304
10352
  "type": "boolean",
10305
- "description": "Shows messages where ``text`` matches the message body.",
10353
+ "description": "Shows messages where <var>text</var> matches the message body.",
10306
10354
  "optional": true
10307
10355
  }
10308
10356
  }
@@ -10340,7 +10388,7 @@
10340
10388
  "type": "integer",
10341
10389
  "optional": true,
10342
10390
  "minimum": -2,
10343
- "description": "The ID of the parent window, or :ref:`windows.WINDOW_ID_CURRENT` for the current window."
10391
+ "description": "The ID of the parent window, or $(ref:windows.WINDOW_ID_CURRENT) for the current window."
10344
10392
  }
10345
10393
  }
10346
10394
  },
@@ -10362,13 +10410,13 @@
10362
10410
  {
10363
10411
  "name": "get",
10364
10412
  "type": "function",
10365
- "description": "Get the :ref:`mailTabs.MailTab` properties of a mail tab.",
10413
+ "description": "Get the $(ref:mailTabs.MailTab) properties of a mail tab.",
10366
10414
  "async": "callback",
10367
10415
  "parameters": [
10368
10416
  {
10369
10417
  "name": "tabId",
10370
10418
  "type": "integer",
10371
- "description": "ID of the requested mail tab. Throws if the requested <value>tabId</value> does not belong to a mail tab."
10419
+ "description": "ID of the requested mail tab. Throws if the requested <var>tabId</var> does not belong to a mail tab."
10372
10420
  },
10373
10421
  {
10374
10422
  "type": "function",
@@ -10386,7 +10434,7 @@
10386
10434
  "name": "getCurrent",
10387
10435
  "type": "function",
10388
10436
  "max_manifest_version": 2,
10389
- "description": "Get the :ref:`mailTabs.MailTab` properties of the active mail tab. Returns <value>undefined</value>, if the active tab is not a mail tab.",
10437
+ "description": "Get the $(ref:mailTabs.MailTab) properties of the active mail tab. Returns <var>undefined</var>, if the active tab is not a mail tab.",
10390
10438
  "async": "callback",
10391
10439
  "parameters": [
10392
10440
  {
@@ -10406,7 +10454,7 @@
10406
10454
  {
10407
10455
  "name": "create",
10408
10456
  "type": "function",
10409
- "description": "Creates a new mail tab. Standard tab properties can be adjusted via :ref:`tabs.update` after the mail tab has been created. **Note:** A new mail window can be created via :ref:`windows.create`.",
10457
+ "description": "Creates a new mail tab. Standard tab properties can be adjusted via $(ref:tabs.update) after the mail tab has been created. **Note:** A new mail window can be created via $(ref:windows.create).",
10410
10458
  "async": "callback",
10411
10459
  "parameters": [
10412
10460
  {
@@ -10432,7 +10480,7 @@
10432
10480
  {
10433
10481
  "name": "update",
10434
10482
  "type": "function",
10435
- "description": "Modifies the properties of a mail tab. Properties that are not specified in ``updateProperties`` are not modified.",
10483
+ "description": "Modifies the properties of a mail tab. Properties that are not specified in <var>updateProperties</var> are not modified.",
10436
10484
  "async": "callback",
10437
10485
  "parameters": [
10438
10486
  {
@@ -10766,7 +10814,7 @@
10766
10814
  ]
10767
10815
  }
10768
10816
  ],
10769
- "description": "The different contexts a menu can appear in. Specifying <value>all</value> is equivalent to the combination of all other contexts excluding <value>tab</value> and <value>tools_menu</value>. More information about each context can be found in the `Supported UI Elements <|link-ui-elements|>`__ article on developer.thunderbird.net."
10817
+ "description": "The different contexts a menu can appear in. Specifying <var>all</var> is equivalent to the combination of all other contexts excluding <var>tab</var> and <var>tools_menu</var>. More information about each context can be found in the <a href='url-ui-elements'>Supported UI Elements</a> article on developer.thunderbird.net."
10770
10818
  },
10771
10819
  {
10772
10820
  "id": "ItemType",
@@ -10782,7 +10830,7 @@
10782
10830
  {
10783
10831
  "id": "OnShowData",
10784
10832
  "type": "object",
10785
- "description": "Information sent when a context menu is being shown. Some properties are only included if the extension has host permission for the given context, for example :permission:`activeTab` for content tabs, :permission:`compose` for compose tabs and :permission:`messagesRead` for message display tabs.",
10833
+ "description": "Information sent when a context menu is being shown. Some properties are only included if the extension has host permission for the given context, for example <permission>activeTab</permission> for content tabs, <permission>compose</permission> for compose tabs and <permission>messagesRead</permission> for message display tabs.",
10786
10834
  "properties": {
10787
10835
  "menuIds": {
10788
10836
  "description": "A list of IDs of the menu items that were shown.",
@@ -10812,7 +10860,7 @@
10812
10860
  "mediaType": {
10813
10861
  "type": "string",
10814
10862
  "optional": true,
10815
- "description": "One of <value>image</value>, <value>video</value>, or <value>audio</value> if the context menu was activated on one of these types of elements."
10863
+ "description": "One of <var>image</var>, <var>video</var>, or <var>audio</var> if the context menu was activated on one of these types of elements."
10816
10864
  },
10817
10865
  "viewType": {
10818
10866
  "$ref": "extension.ViewType",
@@ -10852,7 +10900,7 @@
10852
10900
  "targetElementId": {
10853
10901
  "type": "integer",
10854
10902
  "optional": true,
10855
- "description": "An identifier of the clicked content element, if any. Use :ref:`menus.getTargetElement` in the page to find the corresponding element."
10903
+ "description": "An identifier of the clicked content element, if any. Use $(ref:menus.getTargetElement) in the page to find the corresponding element."
10856
10904
  },
10857
10905
  "fieldId": {
10858
10906
  "type": "string",
@@ -10870,19 +10918,19 @@
10870
10918
  "selectedMessages": {
10871
10919
  "$ref": "messages.MessageList",
10872
10920
  "optional": true,
10873
- "description": "The selected message(s) in the message list (a.k.a. the thread pane). Only available for the `message_list` context. The <permission>messagesRead</permission> permission is required. The returned selection includes the messages which would be affected by a context action through Thunderbirds UI, which may not be the actuall selected messages. For example, if the user has multiple messages selected and opens the context menu for a message outside that selection, only the message for which the context menu was opened, is returned."
10921
+ "description": "The selected message(s) in the message list (a.k.a. the thread pane). Only available for the <var>message_list</var> context. The <permission>messagesRead</permission> permission is required. The returned selection includes the messages which would be affected by a context action through Thunderbirds UI, which may not be the actuall selected messages. For example, if the user has multiple messages selected and opens the context menu for a message outside that selection, only the message for which the context menu was opened, is returned."
10874
10922
  },
10875
10923
  "displayedFolder": {
10876
10924
  "$ref": "folders.MailFolder",
10877
10925
  "optional": true,
10878
- "description": "The displayed folder. Only available for the `message_list` context. The <permission>accountsRead</permission> permission is required."
10926
+ "description": "The displayed folder. Only available for the <var>message_list</var> context. The <permission>accountsRead</permission> permission is required."
10879
10927
  },
10880
10928
  "selectedFolder": {
10881
10929
  "$ref": "folders.MailFolder",
10882
10930
  "max_manifest_version": 2,
10883
10931
  "optional": true,
10884
10932
  "deprecated": "Deprecated since Thunderbird 128 and removed in Manifest V3: The selectedFolder property has been replaced by the selectedFolders property.",
10885
- "description": "The selected folder in the folder pane (where the context menu was opened). Only available for the `folder_pane` context. The <permission>accountsRead</permission> permission is required."
10933
+ "description": "The selected folder in the folder pane (where the context menu was opened). Only available for the <var>folder_pane</var> context. The <permission>accountsRead</permission> permission is required."
10886
10934
  },
10887
10935
  "selectedFolders": {
10888
10936
  "type": "array",
@@ -10890,14 +10938,14 @@
10890
10938
  "$ref": "folders.MailFolder"
10891
10939
  },
10892
10940
  "optional": true,
10893
- "description": "The selected folders in the folder pane. Only available for the `folder_pane` context. The <permission>accountsRead</permission> permission is required. The returned selection includes the folders which would be affected by a context action through Thunderbirds UI, which may not be the actuall selected folders. For example, if the user has multiple folders selected and opens the context menu for a folder outside that selection, only the folder for which the context menu was opened, is returned."
10941
+ "description": "The selected folders in the folder pane. Only available for the <var>folder_pane</var> context. The <permission>accountsRead</permission> permission is required. The returned selection includes the folders which would be affected by a context action through Thunderbirds UI, which may not be the actuall selected folders. For example, if the user has multiple folders selected and opens the context menu for a folder outside that selection, only the folder for which the context menu was opened, is returned."
10894
10942
  },
10895
10943
  "selectedAccount": {
10896
10944
  "$ref": "accounts.MailAccount",
10897
10945
  "max_manifest_version": 2,
10898
10946
  "optional": true,
10899
10947
  "deprecated": "Deprecated since Thunderbird 128 and removed in Manifest V3: The selectedAccount property has been replaced by the selectedFolders property, returning the root folder of the account.",
10900
- "description": "The selected account in the folder pane, if the context menu was opened on an account entry. Only available for the `folder_pane` context. The <permission>accountsRead</permission> permission is required."
10948
+ "description": "The selected account in the folder pane, if the context menu was opened on an account entry. Only available for the <var>folder_pane</var> context. The <permission>accountsRead</permission> permission is required."
10901
10949
  },
10902
10950
  "attachments": {
10903
10951
  "type": "array",
@@ -10951,7 +10999,7 @@
10951
10999
  "mediaType": {
10952
11000
  "type": "string",
10953
11001
  "optional": true,
10954
- "description": "One of <value>image</value>, <value>video</value>, or <value>audio</value> if the context menu was activated on one of these types of elements."
11002
+ "description": "One of <var>image</var>, <var>video</var>, or <var>audio</var> if the context menu was activated on one of these types of elements."
10955
11003
  },
10956
11004
  "viewType": {
10957
11005
  "$ref": "extension.ViewType",
@@ -11026,7 +11074,7 @@
11026
11074
  "targetElementId": {
11027
11075
  "type": "integer",
11028
11076
  "optional": true,
11029
- "description": "An identifier of the clicked content element, if any. Use :ref:`menus.getTargetElement` in the page to find the corresponding element."
11077
+ "description": "An identifier of the clicked content element, if any. Use $(ref:menus.getTargetElement) in the page to find the corresponding element."
11030
11078
  },
11031
11079
  "fieldId": {
11032
11080
  "type": "string",
@@ -11044,19 +11092,19 @@
11044
11092
  "selectedMessages": {
11045
11093
  "$ref": "messages.MessageList",
11046
11094
  "optional": true,
11047
- "description": "The selected message(s) in the message list (a.k.a. the thread pane). Only available for the `message_list` context. The <permission>messagesRead</permission> permission is required. The returned selection includes the messages which would be affected by a context action through Thunderbirds UI, which may not be the actuall selected messages. For example, if the user has multiple messages selected and opens the context menu for a message outside that selection, only the message for which the context menu was opened, is returned."
11095
+ "description": "The selected message(s) in the message list (a.k.a. the thread pane). Only available for the <var>message_list</var> context. The <permission>messagesRead</permission> permission is required. The returned selection includes the messages which would be affected by a context action through Thunderbirds UI, which may not be the actuall selected messages. For example, if the user has multiple messages selected and opens the context menu for a message outside that selection, only the message for which the context menu was opened, is returned."
11048
11096
  },
11049
11097
  "displayedFolder": {
11050
11098
  "$ref": "folders.MailFolder",
11051
11099
  "optional": true,
11052
- "description": "The displayed folder. Only available for the `message_list` context. The <permission>accountsRead</permission> permission is required."
11100
+ "description": "The displayed folder. Only available for the <var>message_list</var> context. The <permission>accountsRead</permission> permission is required."
11053
11101
  },
11054
11102
  "selectedFolder": {
11055
11103
  "$ref": "folders.MailFolder",
11056
11104
  "max_manifest_version": 2,
11057
11105
  "optional": true,
11058
11106
  "deprecated": "Deprecated since Thunderbird 128 and removed in Manifest V3: The selectedFolder property has been replaced by the selectedFolders property.",
11059
- "description": "The selected folder in the folder pane (where the context menu was opened). Only available for the `folder_pane` context. The <permission>accountsRead</permission> permission is required."
11107
+ "description": "The selected folder in the folder pane (where the context menu was opened). Only available for the <var>folder_pane</var> context. The <permission>accountsRead</permission> permission is required."
11060
11108
  },
11061
11109
  "selectedFolders": {
11062
11110
  "type": "array",
@@ -11064,14 +11112,14 @@
11064
11112
  "$ref": "folders.MailFolder"
11065
11113
  },
11066
11114
  "optional": true,
11067
- "description": "The selected folders in the folder pane. Only available for the `folder_pane` context. The <permission>accountsRead</permission> permission is required. The returned selection includes the folders which would be affected by a context action through Thunderbirds UI, which may not be the actuall selected folders. For example, if the user has multiple folders selected and opens the context menu for a folder outside that selection, only the folder for which the context menu was opened, is returned."
11115
+ "description": "The selected folders in the folder pane. Only available for the <var>folder_pane</var> context. The <permission>accountsRead</permission> permission is required. The returned selection includes the folders which would be affected by a context action through Thunderbirds UI, which may not be the actuall selected folders. For example, if the user has multiple folders selected and opens the context menu for a folder outside that selection, only the folder for which the context menu was opened, is returned."
11068
11116
  },
11069
11117
  "selectedAccount": {
11070
11118
  "$ref": "accounts.MailAccount",
11071
11119
  "max_manifest_version": 2,
11072
11120
  "optional": true,
11073
11121
  "deprecated": "Deprecated since Thunderbird 128 and removed in Manifest V3: The selectedAccount property has been replaced by the selectedFolders property, returning the root folder of the account.",
11074
- "description": "The selected account in the folder pane, if the context menu was opened on an account entry. Only available for the `folder_pane` context. The <permission>accountsRead</permission> permission is required."
11122
+ "description": "The selected account in the folder pane, if the context menu was opened on an account entry. Only available for the <var>folder_pane</var> context. The <permission>accountsRead</permission> permission is required."
11075
11123
  },
11076
11124
  "attachments": {
11077
11125
  "type": "array",
@@ -11102,7 +11150,7 @@
11102
11150
  "pattern": "^(moz-extension|blob|http|https):.*$"
11103
11151
  }
11104
11152
  ],
11105
- "description": "The path for a menu icon may be a relative path to an icon file, a <value>moz-extension:</value> URL, an image <value>data:</value> URL, a <value>blob:</value> URL, or a remote <value>http(s):</value> URL."
11153
+ "description": "The path for a menu icon may be a relative path to an icon file, a <var>moz-extension:</var> URL, an image <var>data:</var> URL, a <var>blob:</var> URL, or a remote <var>http(s):</var> URL."
11106
11154
  },
11107
11155
  {
11108
11156
  "id": "MenuIconDictionary",
@@ -11112,14 +11160,14 @@
11112
11160
  "$ref": "MenuIconPath"
11113
11161
  }
11114
11162
  },
11115
- "description": "A <em>dictionary object</em> to specify paths for multiple icons in different sizes, so the best matching icon can be used, instead of scaling a standard icon to fit the pixel density of the user's display. Each entry is a <em>name-value</em> pair, with <em>name</em> being a size and <em>value</em> being a :ref:`menus.MenuIconPath`. Example: <literalinclude>includes/IconPath.json<lang>JSON</lang></literalinclude>See the `MDN documentation about choosing icon sizes <https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/browser_action#choosing_icon_sizes>`__ for more information on this. "
11163
+ "description": "A <em>dictionary object</em> to specify paths for multiple icons in different sizes, so the best matching icon can be used, instead of scaling a standard icon to fit the pixel density of the user's display. Each entry is a <em>name-value</em> pair, with <em>name</em> being a size and <em>value</em> being a $(ref:menus.MenuIconPath). Example: <literalinclude>includes/IconPath.json<lang>JSON</lang></literalinclude>See the <a href='url-choosing-icon-size'>MDN documentation about choosing icon sizes</a> for more information on this. "
11116
11164
  }
11117
11165
  ],
11118
11166
  "functions": [
11119
11167
  {
11120
11168
  "name": "create",
11121
11169
  "type": "function",
11122
- "description": "Creates a new context menu item. Note that if an error occurs during creation, you may not find out until the creation callback fires (the details will be in `runtime.lastError <|link-runtime-last-error|>`__).",
11170
+ "description": "Creates a new context menu item. Note that if an error occurs during creation, you may not find out until the creation callback fires (the details will be in <a href='url-runtime-last-error'>runtime.lastError</a>).",
11123
11171
  "returns": {
11124
11172
  "choices": [
11125
11173
  {
@@ -11139,7 +11187,7 @@
11139
11187
  "type": {
11140
11188
  "$ref": "ItemType",
11141
11189
  "optional": true,
11142
- "description": "The type of menu item. Defaults to <value>normal</value> if not specified."
11190
+ "description": "The type of menu item. Defaults to <var>normal</var> if not specified."
11143
11191
  },
11144
11192
  "id": {
11145
11193
  "type": "string",
@@ -11161,12 +11209,12 @@
11161
11209
  "title": {
11162
11210
  "type": "string",
11163
11211
  "optional": true,
11164
- "description": "The text to be displayed in the item; this is <em>required</em> unless ``type`` is <value>separator</value>. When the context is <value>selection</value>, you can use <value>%s</value> within the string to show the selected text. For example, if this parameter's value is <value>Translate '%s' to Latin</value> and the user selects the word <value>cool</value>, the context menu item for the selection is <value>Translate 'cool' to Latin</value>. To specify an access key for the new menu entry, include a <value>&</value> before the desired letter in the title. For example <value>&Help</value>."
11212
+ "description": "The text to be displayed in the item; this is <em>required</em> unless <var>type</var> is <var>separator</var>. When the context is <var>selection</var>, you can use <var>%s</var> within the string to show the selected text. For example, if this parameter's value is <var>Translate '%s' to Latin</var> and the user selects the word <var>cool</var>, the context menu item for the selection is <var>Translate 'cool' to Latin</var>. To specify an access key for the new menu entry, include a <var>&</var> before the desired letter in the title. For example <var>&Help</var>."
11165
11213
  },
11166
11214
  "checked": {
11167
11215
  "type": "boolean",
11168
11216
  "optional": true,
11169
- "description": "The initial state of a checkbox or radio item: <value>true</value> for selected and <value>false</value> for unselected. Only one radio item can be selected at a time in a given group of radio items."
11217
+ "description": "The initial state of a checkbox or radio item: <var>true</var> for selected and <var>false</var> for unselected. Only one radio item can be selected at a time in a given group of radio items."
11170
11218
  },
11171
11219
  "contexts": {
11172
11220
  "type": "array",
@@ -11175,7 +11223,7 @@
11175
11223
  },
11176
11224
  "minItems": 1,
11177
11225
  "optional": true,
11178
- "description": "List of contexts this menu item will appear in. Defaults to <value>['page']</value> if not specified."
11226
+ "description": "List of contexts this menu item will appear in. Defaults to <var>['page']</var> if not specified."
11179
11227
  },
11180
11228
  "viewTypes": {
11181
11229
  "type": "array",
@@ -11226,7 +11274,7 @@
11226
11274
  "type": "string"
11227
11275
  },
11228
11276
  "optional": true,
11229
- "description": "Lets you restrict the item to apply only to documents whose URL matches one of the given patterns. (This applies to frames as well.) For details on the format of a pattern, see `Match Patterns <|link-match-patterns|>`__."
11277
+ "description": "Lets you restrict the item to apply only to documents whose URL matches one of the given patterns. (This applies to frames as well.) For details on the format of a pattern, see <a href='url-match-patterns'>Match Patterns</a>."
11230
11278
  },
11231
11279
  "targetUrlPatterns": {
11232
11280
  "type": "array",
@@ -11247,12 +11295,12 @@
11247
11295
  {
11248
11296
  "type": "string",
11249
11297
  "max_manifest_version": 2,
11250
- "description": "Specifies a command to issue for the context click. Currently supports internal commands <value>_execute_browser_action</value>, <value>_execute_compose_action</value> and <value>_execute_message_display_action</value>."
11298
+ "description": "Specifies a command to issue for the context click. Currently supports internal commands <var>_execute_browser_action</var>, <var>_execute_compose_action</var> and <var>_execute_message_display_action</var>."
11251
11299
  },
11252
11300
  {
11253
11301
  "type": "string",
11254
11302
  "min_manifest_version": 3,
11255
- "description": "Specifies a command to issue for the context click. Currently supports internal commands <value>_execute_action</value>, <value>_execute_compose_action</value> and <value>_execute_message_display_action</value>."
11303
+ "description": "Specifies a command to issue for the context click. Currently supports internal commands <var>_execute_action</var>, <var>_execute_compose_action</var> and <var>_execute_message_display_action</var>."
11256
11304
  }
11257
11305
  ]
11258
11306
  }
@@ -11262,7 +11310,7 @@
11262
11310
  "type": "function",
11263
11311
  "name": "callback",
11264
11312
  "optional": true,
11265
- "description": "Called when the item has been created in the browser. If there were any problems creating the item, details will be available in `runtime.lastError <|link-runtime-last-error|>`__.",
11313
+ "description": "Called when the item has been created in the browser. If there were any problems creating the item, details will be available in <a href='url-runtime-last-error'>runtime.lastError</a>.",
11266
11314
  "parameters": []
11267
11315
  }
11268
11316
  ]
@@ -11438,7 +11486,7 @@
11438
11486
  "menus.overrideContext"
11439
11487
  ],
11440
11488
  "type": "function",
11441
- "description": "Show the matching menu items from this extension instead of the default menu. This should be called during a `contextmenu <|link-contextmenu-event|>`__ event handler, and only applies to the menu that opens after this event.",
11489
+ "description": "Show the matching menu items from this extension instead of the default menu. This should be called during a <a href='url-contextmenu-event'>contextmenu</a> event handler, and only applies to the menu that opens after this event.",
11442
11490
  "parameters": [
11443
11491
  {
11444
11492
  "name": "contextOptions",
@@ -11456,13 +11504,13 @@
11456
11504
  "tab"
11457
11505
  ],
11458
11506
  "optional": true,
11459
- "description": "ContextType to override, to allow menu items from other extensions in the menu. Currently only <value>tab</value> is supported. ``contextOptions.showDefaults`` cannot be used with this option."
11507
+ "description": "ContextType to override, to allow menu items from other extensions in the menu. Currently only <var>tab</var> is supported. <var>contextOptions.showDefaults</var> cannot be used with this option."
11460
11508
  },
11461
11509
  "tabId": {
11462
11510
  "type": "integer",
11463
11511
  "minimum": 0,
11464
11512
  "optional": true,
11465
- "description": "Required when context is <value>tab</value>. Requires the <permission>tabs</permission> permission."
11513
+ "description": "Required when context is <var>tab</var>. Requires the <permission>tabs</permission> permission."
11466
11514
  }
11467
11515
  }
11468
11516
  }
@@ -11480,7 +11528,7 @@
11480
11528
  {
11481
11529
  "name": "onClicked",
11482
11530
  "type": "function",
11483
- "description": "Fired when a context menu item is clicked. This is a user input event handler. For asynchronous listeners some `restrictions <|link-user-input-restrictions|>`__ apply.",
11531
+ "description": "Fired when a context menu item is clicked. This is a user input event handler. For asynchronous listeners some <a href='url-user-input-restrictions'>restrictions</a> apply.",
11484
11532
  "parameters": [
11485
11533
  {
11486
11534
  "name": "info",
@@ -11498,7 +11546,7 @@
11498
11546
  {
11499
11547
  "name": "onShown",
11500
11548
  "type": "function",
11501
- "description": "Fired when a menu is shown. The extension can add, modify or remove menu items and call :ref:`menus.refresh` to update the menu.",
11549
+ "description": "Fired when a menu is shown. The extension can add, modify or remove menu items and call $(ref:menus.refresh) to update the menu.",
11502
11550
  "parameters": [
11503
11551
  {
11504
11552
  "name": "info",
@@ -11540,11 +11588,11 @@
11540
11588
  "content",
11541
11589
  "devtools"
11542
11590
  ],
11543
- "description": "Retrieve the element that was associated with a recent `contextmenu <|link-contextmenu-event|>`__ event.",
11591
+ "description": "Retrieve the element that was associated with a recent <a href='url-contextmenu-event'>contextmenu</a> event.",
11544
11592
  "parameters": [
11545
11593
  {
11546
11594
  "type": "integer",
11547
- "description": "The identifier of the clicked element, available as ``info.targetElementId`` in the :ref:`menus.onShown` and :ref:`menus.onClicked` events.",
11595
+ "description": "The identifier of the clicked element, available as <var>info.targetElementId</var> in the $(ref:menus.onShown) and $(ref:menus.onClicked) events.",
11548
11596
  "name": "targetElementId"
11549
11597
  }
11550
11598
  ],
@@ -11613,7 +11661,7 @@
11613
11661
  "name": "getDisplayedMessage",
11614
11662
  "max_manifest_version": 2,
11615
11663
  "type": "function",
11616
- "description": "Gets the currently displayed message in the specified tab (even if the tab itself is currently not visible), or the currently active tab. It returns <value>null</value> if no messages are displayed, or if multiple messages are displayed.",
11664
+ "description": "Gets the currently displayed message in the specified tab (even if the tab itself is currently not visible), or the currently active tab. It returns <var>null</var> if no messages are displayed, or if multiple messages are displayed.",
11617
11665
  "async": "callback",
11618
11666
  "parameters": [
11619
11667
  {
@@ -11698,12 +11746,12 @@
11698
11746
  "messageId": {
11699
11747
  "$ref": "messages.MessageId",
11700
11748
  "optional": true,
11701
- "description": "The id of a message to be opened. Will throw an <em>ExtensionError</em>, if the provided ``messageId`` is unknown or invalid."
11749
+ "description": "The id of a message to be opened. Will throw an <em>ExtensionError</em>, if the provided <var>messageId</var> is unknown or invalid."
11702
11750
  },
11703
11751
  "headerMessageId": {
11704
11752
  "type": "string",
11705
11753
  "optional": true,
11706
- "description": "The headerMessageId of a message to be opened. Will throw an <em>ExtensionError</em>, if the provided ``headerMessageId`` is unknown or invalid. Not supported for external messages."
11754
+ "description": "The headerMessageId of a message to be opened. Will throw an <em>ExtensionError</em>, if the provided <var>headerMessageId</var> is unknown or invalid. Not supported for external messages."
11707
11755
  },
11708
11756
  "location": {
11709
11757
  "type": "string",
@@ -11780,19 +11828,19 @@
11780
11828
  "items": {
11781
11829
  "$ref": "ThemeIcons"
11782
11830
  },
11783
- "description": "Specifies dark and light icons to be used with themes. The ``light`` icon is used on dark backgrounds and vice versa. **Note:** The default theme uses the ``default_icon`` for light backgrounds (if specified)."
11831
+ "description": "Specifies dark and light icons to be used with themes. The <var>light</var> icon is used on dark backgrounds and vice versa. **Note:** The default theme uses the <var>default_icon</var> for light backgrounds (if specified)."
11784
11832
  },
11785
11833
  "default_popup": {
11786
11834
  "type": "string",
11787
11835
  "format": "relativeUrl",
11788
11836
  "optional": true,
11789
- "description": "The html document to be opened as a popup when the user clicks on the messageDisplayAction button. Ignored for action buttons with type <value>menu</value>.",
11837
+ "description": "The html document to be opened as a popup when the user clicks on the messageDisplayAction button. Ignored for action buttons with type <var>menu</var>.",
11790
11838
  "preprocess": "localize"
11791
11839
  },
11792
11840
  "browser_style": {
11793
11841
  "type": "boolean",
11794
11842
  "optional": true,
11795
- "description": "Enable browser styles. See the `MDN documentation on browser styles <|link-mdn-browser-styles|>`__ for more information.",
11843
+ "description": "Enable browser styles. See the <a href='url-mdn-browser-styles'>MDN documentation on browser styles</a> for more information.",
11796
11844
  "default": false
11797
11845
  },
11798
11846
  "default_area": {
@@ -11801,7 +11849,7 @@
11801
11849
  "optional": true
11802
11850
  },
11803
11851
  "type": {
11804
- "description": "Specifies the type of the button. Default type is <value>button</value>.",
11852
+ "description": "Specifies the type of the button. Default type is <var>button</var>.",
11805
11853
  "type": "string",
11806
11854
  "enum": [
11807
11855
  "button",
@@ -11826,7 +11874,7 @@
11826
11874
  "types": [
11827
11875
  {
11828
11876
  "id": "ColorArray",
11829
- "description": "An array of four integers in the range [0,255] that make up the RGBA color. For example, opaque red is <value>[255, 0, 0, 255]</value>.",
11877
+ "description": "An array of four integers in the range [0,255] that make up the RGBA color. For example, opaque red is <var>[255, 0, 0, 255]</var>.",
11830
11878
  "type": "array",
11831
11879
  "items": {
11832
11880
  "type": "integer",
@@ -11844,12 +11892,12 @@
11844
11892
  "type": "any"
11845
11893
  },
11846
11894
  "postprocess": "convertImageDataToURL",
11847
- "description": "Pixel data for an image. Must be an |ImageData| object (for example, from a |Canvas| element)."
11895
+ "description": "Pixel data for an image. Must be an <a href='url-image-data'>ImageData</a> object (for example, from a <a href='url-canvas-element'>canvas</a> element)."
11848
11896
  },
11849
11897
  {
11850
11898
  "id": "ImageDataDictionary",
11851
11899
  "type": "object",
11852
- "description": "A <em>dictionary object</em> to specify multiple |ImageData| objects in different sizes, so the icon does not have to be scaled for a device with a different pixel density. Each entry is a <em>name-value</em> pair with <em>value</em> being an |ImageData| object, and <em>name</em> its size. Example: <literalinclude>includes/ImageDataDictionary.json<lang>JavaScript</lang></literalinclude>See the `MDN documentation about choosing icon sizes <|link-mdn-icon-size|>`__ for more information on this.",
11900
+ "description": "A <em>dictionary object</em> to specify multiple <a href='url-image-data'>ImageData</a> objects in different sizes, so the icon does not have to be scaled for a device with a different pixel density. Each entry is a <em>name-value</em> pair with <em>value</em> being an <a href='url-image-data'>ImageData</a> object, and <em>name</em> its size. Example: <literalinclude>includes/ImageDataDictionary.json<lang>JavaScript</lang></literalinclude>See the <a href='url-mdn-icon-size'>MDN documentation about choosing icon sizes</a> for more information on this.",
11853
11901
  "patternProperties": {
11854
11902
  "^[1-9]\\d*$": {
11855
11903
  "$ref": "ImageDataType"
@@ -11903,7 +11951,7 @@
11903
11951
  "type": "null"
11904
11952
  }
11905
11953
  ],
11906
- "description": "A string the messageDisplayAction button should display as its label and when moused over. Cleared by setting it to <value>null</value> or an empty string (title defined the manifest will be used)."
11954
+ "description": "A string the messageDisplayAction button should display as its label and when moused over. Cleared by setting it to <var>null</var> or an empty string (title defined the manifest will be used)."
11907
11955
  },
11908
11956
  "tabId": {
11909
11957
  "type": "integer",
@@ -11985,7 +12033,7 @@
11985
12033
  "type": "null"
11986
12034
  }
11987
12035
  ],
11988
- "description": "A string the messageDisplayAction button should use as its label, overriding the defined title. Can be set to an empty string to not display any label at all. If the containing toolbar is configured to display text only, its title will be used. Cleared by setting it to <value>null</value>."
12036
+ "description": "A string the messageDisplayAction button should use as its label, overriding the defined title. Can be set to an empty string to not display any label at all. If the containing toolbar is configured to display text only, its title will be used. Cleared by setting it to <var>null</var>."
11989
12037
  },
11990
12038
  "tabId": {
11991
12039
  "type": "integer",
@@ -12013,7 +12061,7 @@
12013
12061
  {
12014
12062
  "name": "getLabel",
12015
12063
  "type": "function",
12016
- "description": "Gets the label of the messageDisplayAction button. Returns <value>null</value>, if no label has been set and the title is used.",
12064
+ "description": "Gets the label of the messageDisplayAction button. Returns <var>null</var>, if no label has been set and the title is used.",
12017
12065
  "async": "callback",
12018
12066
  "parameters": [
12019
12067
  {
@@ -12058,7 +12106,7 @@
12058
12106
  {
12059
12107
  "name": "setIcon",
12060
12108
  "type": "function",
12061
- "description": "Sets the icon for the messageDisplayAction button. Either the ``path`` or the ``imageData`` property must be specified.",
12109
+ "description": "Sets the icon for the messageDisplayAction button. Either the <var>path</var> or the <var>imageData</var> property must be specified.",
12062
12110
  "async": "callback",
12063
12111
  "parameters": [
12064
12112
  {
@@ -12124,7 +12172,7 @@
12124
12172
  "type": "null"
12125
12173
  }
12126
12174
  ],
12127
- "description": "The html file to show in a popup. Can be set to an empty string to not open a popup. Cleared by setting it to <value>null</value> (action will use the popup value defined in the manifest)."
12175
+ "description": "The html file to show in a popup. Can be set to an empty string to not open a popup. Cleared by setting it to <var>null</var> (action will use the popup value defined in the manifest)."
12128
12176
  },
12129
12177
  "tabId": {
12130
12178
  "type": "integer",
@@ -12206,7 +12254,7 @@
12206
12254
  "type": "null"
12207
12255
  }
12208
12256
  ],
12209
- "description": "Any number of characters can be passed, but only about four can fit in the space. Cleared by setting it to <value>null</value> or an empty string."
12257
+ "description": "Any number of characters can be passed, but only about four can fit in the space. Cleared by setting it to <var>null</var> or an empty string."
12210
12258
  },
12211
12259
  "tabId": {
12212
12260
  "type": "integer",
@@ -12291,7 +12339,7 @@
12291
12339
  "type": "null"
12292
12340
  }
12293
12341
  ],
12294
- "description": "The color to use as text color in the badge. Cleared by setting it to <value>null</value>."
12342
+ "description": "The color to use as text color in the badge. Cleared by setting it to <var>null</var>."
12295
12343
  },
12296
12344
  "tabId": {
12297
12345
  "type": "integer",
@@ -12314,7 +12362,7 @@
12314
12362
  "name": "getBadgeTextColor",
12315
12363
  "type": "function",
12316
12364
  "description": "Gets the text color of the badge.",
12317
- "async": true,
12365
+ "async": "callback",
12318
12366
  "parameters": [
12319
12367
  {
12320
12368
  "name": "details",
@@ -12342,7 +12390,7 @@
12342
12390
  "parameters": [
12343
12391
  {
12344
12392
  "name": "result",
12345
- "type": "string"
12393
+ "$ref": "ColorArray"
12346
12394
  }
12347
12395
  ]
12348
12396
  }
@@ -12370,7 +12418,7 @@
12370
12418
  "type": "null"
12371
12419
  }
12372
12420
  ],
12373
- "description": "The color to use as background in the badge. Cleared by setting it to <value>null</value>."
12421
+ "description": "The color to use as background in the badge. Cleared by setting it to <var>null</var>."
12374
12422
  },
12375
12423
  "tabId": {
12376
12424
  "type": "integer",
@@ -12436,7 +12484,7 @@
12436
12484
  {
12437
12485
  "name": "enable",
12438
12486
  "type": "function",
12439
- "description": "Enables the messageDisplayAction button for a specific tab (if a ``tabId`` is provided), or for all tabs which do not have a custom enable state. Once the enable state of a tab has been updated individually, all further changes to its state have to be done individually as well. By default, a messageDisplayAction button is enabled.",
12487
+ "description": "Enables the messageDisplayAction button for a specific tab (if a <var>tabId</var> is provided), or for all tabs which do not have a custom enable state. Once the enable state of a tab has been updated individually, all further changes to its state have to be done individually as well. By default, a messageDisplayAction button is enabled.",
12440
12488
  "async": "callback",
12441
12489
  "parameters": [
12442
12490
  {
@@ -12457,7 +12505,7 @@
12457
12505
  {
12458
12506
  "name": "disable",
12459
12507
  "type": "function",
12460
- "description": "Disables the messageDisplayAction button for a specific tab (if a ``tabId`` is provided), or for all tabs which do not have a custom enable state. Once the enable state of a tab has been updated individually, all further changes to its state have to be done individually as well.",
12508
+ "description": "Disables the messageDisplayAction button for a specific tab (if a <var>tabId</var> is provided), or for all tabs which do not have a custom enable state. Once the enable state of a tab has been updated individually, all further changes to its state have to be done individually as well.",
12461
12509
  "async": "callback",
12462
12510
  "parameters": [
12463
12511
  {
@@ -12515,7 +12563,7 @@
12515
12563
  {
12516
12564
  "name": "openPopup",
12517
12565
  "type": "function",
12518
- "description": "Opens the action's popup window in the specified window. Defaults to the current window. Returns false if the popup could not be opened because the action has no popup, is of type <value>menu</value>, is disabled or has been removed from the toolbar.",
12566
+ "description": "Opens the action's popup window in the specified window. Defaults to the current window. Returns false if the popup could not be opened because the action has no popup, is of type <var>menu</var>, is disabled or has been removed from the toolbar.",
12519
12567
  "async": "callback",
12520
12568
  "parameters": [
12521
12569
  {
@@ -12549,7 +12597,7 @@
12549
12597
  {
12550
12598
  "name": "onClicked",
12551
12599
  "type": "function",
12552
- "description": "Fired when a messageDisplayAction button is clicked. This event will not fire if the messageDisplayAction has a popup. This is a user input event handler. For asynchronous listeners some `restrictions <|link-user-input-restrictions|>`__ apply.",
12600
+ "description": "Fired when a messageDisplayAction button is clicked. This event will not fire if the messageDisplayAction has a popup. This is a user input event handler. For asynchronous listeners some <a href='url-user-input-restrictions'>restrictions</a> apply.",
12553
12601
  "parameters": [
12554
12602
  {
12555
12603
  "name": "tab",
@@ -12600,16 +12648,16 @@
12600
12648
  "id": "MessageId",
12601
12649
  "type": "integer",
12602
12650
  "minimum": 1,
12603
- "description": "A unique id representing a :ref:`messages.MessageHeader` and the associated message. This id doesn’t refer to the Message-ID email header. It is an internal tracking number that does not remain after a restart. Nor does it follow an email that has been moved to a different folder."
12651
+ "description": "A unique id representing a $(ref:messages.MessageHeader) and the associated message. This id doesn’t refer to the Message-ID email header. It is an internal tracking number that does not remain after a restart. Nor does it follow an email that has been moved to a different folder."
12604
12652
  },
12605
12653
  {
12606
12654
  "id": "InlineTextPart",
12607
12655
  "type": "object",
12608
- "description": "An inline part with content type <value>text/*</value>. These parts are not returned by :ref:`listAttachments` and usually make up the readable content of the message, mostly with content type <value>text/plain</value> or <value>text/html</value>",
12656
+ "description": "An inline part with content type <var>text/*</var>. These parts are not returned by $(ref:messages.listAttachments) and usually make up the readable content of the message, mostly with content type <var>text/plain</var> or <var>text/html</var>",
12609
12657
  "properties": {
12610
12658
  "contentType": {
12611
12659
  "type": "string",
12612
- "description": "The content type of the part. Most common types for inline text parts are <value>text/plain</value> and <value>text/html</value>. Possible other (deprecated) types are <value>text/richtext</value> and <value>text/enriched</value>. Some calendaring services include an inline text part with type <value>text/calendar</value>."
12660
+ "description": "The content type of the part. Most common types for inline text parts are <var>text/plain</var> and <var>text/html</var>. Possible other (deprecated) types are <var>text/richtext</var> and <var>text/enriched</var>. Some calendaring services include an inline text part with type <var>text/calendar</var>."
12613
12661
  },
12614
12662
  "content": {
12615
12663
  "type": "string",
@@ -12660,19 +12708,19 @@
12660
12708
  "description": "The message-id header of the message."
12661
12709
  },
12662
12710
  "headersOnly": {
12663
- "description": "Some account types (for example <value>pop3</value>) allow to download only the headers of the message, but not its body. The body of such messages will not be available.",
12711
+ "description": "Some account types (for example <var>pop3</var>) allow to download only the headers of the message, but not its body. The body of such messages will not be available.",
12664
12712
  "type": "boolean"
12665
12713
  },
12666
12714
  "id": {
12667
12715
  "$ref": "messages.MessageId"
12668
12716
  },
12669
12717
  "junk": {
12670
- "description": "Whether the message has been marked as junk. Always <value>false</value> for news/nntp messages and external messages.",
12718
+ "description": "Whether the message has been marked as junk. Always <var>false</var> for news/nntp messages and external messages.",
12671
12719
  "type": "boolean"
12672
12720
  },
12673
12721
  "junkScore": {
12674
12722
  "type": "integer",
12675
- "description": "The junk score associated with the message. Always <value>0</value> for news/nntp messages and external messages.",
12723
+ "description": "The junk score associated with the message. Always <var>0</var> for news/nntp messages and external messages.",
12676
12724
  "minimum": 0,
12677
12725
  "maximum": 100
12678
12726
  },
@@ -12705,14 +12753,14 @@
12705
12753
  "items": {
12706
12754
  "type": "string"
12707
12755
  },
12708
- "description": "Tags associated with this message. For a list of available tags, use :ref:`messages.tags.list`."
12756
+ "description": "Tags associated with this message. For a list of available tags, use $(ref:messages.tags.list)."
12709
12757
  }
12710
12758
  }
12711
12759
  },
12712
12760
  {
12713
12761
  "id": "MessageList",
12714
12762
  "type": "object",
12715
- "description": "See :doc:`examples/messageLists` for more information.",
12763
+ "description": "See $(doc:examples/messageLists) for more information.",
12716
12764
  "properties": {
12717
12765
  "id": {
12718
12766
  "choices": [
@@ -12723,7 +12771,7 @@
12723
12771
  "type": "null"
12724
12772
  }
12725
12773
  ],
12726
- "description": "Id of the message list, to be used with :ref:`messages.continueList` or :ref:`messages.abortList`."
12774
+ "description": "Id of the message list, to be used with $(ref:messages.continueList) or $(ref:messages.abortList)."
12727
12775
  },
12728
12776
  "messages": {
12729
12777
  "type": "array",
@@ -12777,7 +12825,7 @@
12777
12825
  "partName": {
12778
12826
  "type": "string",
12779
12827
  "optional": true,
12780
- "description": "The identifier of this part, used in :ref:`messages.getAttachmentFile`."
12828
+ "description": "The identifier of this part, used in $(ref:messages.getAttachmentFile)."
12781
12829
  },
12782
12830
  "parts": {
12783
12831
  "type": "array",
@@ -12797,7 +12845,7 @@
12797
12845
  {
12798
12846
  "id": "MessageProperties",
12799
12847
  "type": "object",
12800
- "description": "Message properties used in :ref:`messages.update` and :ref:`messages.import`. They can also be monitored by :ref:`messages.onUpdated`.",
12848
+ "description": "Message properties used in $(ref:messages.update) and $(ref:messages.import). They can also be monitored by $(ref:messages.onUpdated).",
12801
12849
  "properties": {
12802
12850
  "flagged": {
12803
12851
  "type": "boolean",
@@ -12807,11 +12855,11 @@
12807
12855
  "junk": {
12808
12856
  "type": "boolean",
12809
12857
  "optional": true,
12810
- "description": "Whether the message is marked as junk. Only supported in :ref:`messages.update`."
12858
+ "description": "Whether the message is marked as junk. Only supported in $(ref:messages.update)."
12811
12859
  },
12812
12860
  "new": {
12813
12861
  "type": "boolean",
12814
- "description": "Whether the message is marked as new. Only supported in :ref:`messages.import`.",
12862
+ "description": "Whether the message is marked as new. Only supported in $(ref:messages.import).",
12815
12863
  "optional": true
12816
12864
  },
12817
12865
  "read": {
@@ -12821,7 +12869,7 @@
12821
12869
  },
12822
12870
  "tags": {
12823
12871
  "type": "array",
12824
- "description": "Tags associated with this message. For a list of available tags, call the :ref:`messages.tags.list` method.",
12872
+ "description": "Tags associated with this message. For a list of available tags, call the $(ref:messages.tags.list) method.",
12825
12873
  "optional": true,
12826
12874
  "items": {
12827
12875
  "type": "string"
@@ -12832,11 +12880,11 @@
12832
12880
  {
12833
12881
  "id": "MessageAttachment",
12834
12882
  "type": "object",
12835
- "description": "Represents an attachment in a message. This includes all MIME parts with a <value>content-disposition</value> header set to <value>attachment</value>, but also related parts like inline images.",
12883
+ "description": "Represents an attachment in a message. This includes all MIME parts with a <em>content-disposition</em> header set to <var>attachment</var>, but also related parts like inline images.",
12836
12884
  "properties": {
12837
12885
  "contentType": {
12838
12886
  "type": "string",
12839
- "description": "The content type of the attachment. A value of <value>text/x-moz-deleted</value> indicates that the original attachment was permanently deleted and replaced by a placeholder text attachment with some meta information about the original attachment."
12887
+ "description": "The content type of the attachment. A value of <var>text/x-moz-deleted</var> indicates that the original attachment was permanently deleted and replaced by a placeholder text attachment with some meta information about the original attachment."
12840
12888
  },
12841
12889
  "name": {
12842
12890
  "type": "string",
@@ -12966,7 +13014,7 @@
12966
13014
  "extraParameters": [
12967
13015
  {
12968
13016
  "name": "monitorAllFolders",
12969
- "description": "Monitor all folders (including all special use folders as defined by :ref:`folders.MailFolderSpecialUse`) instead of just inbox folders and normal folders.",
13017
+ "description": "Monitor all folders (including all special use folders as defined by $(ref:folders.MailFolderSpecialUse)) instead of just inbox folders and normal folders.",
12970
13018
  "type": "boolean",
12971
13019
  "optional": true
12972
13020
  }
@@ -13037,7 +13085,7 @@
13037
13085
  {
13038
13086
  "name": "continueList",
13039
13087
  "type": "function",
13040
- "description": "Returns the next chunk of messages in a list. See :doc:`examples/messageLists` for more information.",
13088
+ "description": "Returns the next chunk of messages in a list. See $(doc:examples/messageLists) for more information.",
13041
13089
  "async": "callback",
13042
13090
  "parameters": [
13043
13091
  {
@@ -13147,7 +13195,7 @@
13147
13195
  "choices": [
13148
13196
  {
13149
13197
  "max_manifest_version": 2,
13150
- "description": "The message can either be returned as a DOM File or as a `binary string <|link-binary-string|>`__. The historic default is to return a binary string (kept for backward compatibility). However, it is now recommended to use the ``File`` format, because the DOM File object can be used as-is with the downloads API and has useful methods to access the content, like `File.text() <|link-DOMFile-text|>`__ and `File.arrayBuffer() <|link-DOMFile-arrayBuffer|>`__. Working with binary strings is error prone and needs special handling: <literalinclude>includes/messages/decodeBinaryString.js<lang>JavaScript</lang></literalinclude> (see MDN for `supported input encodings <|link-input-encoding|>`__).",
13198
+ "description": "The message can either be returned as a DOM File or as a <a href='url-binary-string'>binary string</a>. The historic default is to return a binary string (kept for backward compatibility). However, it is now recommended to use the <var>File</var> format, because the DOM File object can be used as-is with the downloads API and has useful methods to access the content, like <a href='url-dom-file-text'>File.text()</a> and <a href='url-dom-file-array-buffer'>File.arrayBuffer()</a>. Working with binary strings is error prone and needs special handling: <literalinclude>includes/messages/decodeBinaryString.js<lang>JavaScript</lang></literalinclude> (see MDN for <a href='url-input-encoding'>supported input encodings</a>).",
13151
13199
  "type": "string",
13152
13200
  "enum": [
13153
13201
  "File",
@@ -13156,7 +13204,7 @@
13156
13204
  },
13157
13205
  {
13158
13206
  "min_manifest_version": 3,
13159
- "description": "The message can either be returned as a DOM File (default) or as a `binary string <|link-binary-string|>`__. It is recommended to use the ``File`` format, because the DOM File object can be used as-is with the downloads API and has useful methods to access the content, like `File.text() <|link-DOMFile-text|>`__ and `File.arrayBuffer() <|link-DOMFile-arrayBuffer|>`__. Working with binary strings is error prone and needs special handling: <literalinclude>includes/messages/decodeBinaryString.js<lang>JavaScript</lang></literalinclude> (see MDN for `supported input encodings <|link-input-encoding|>`__).",
13207
+ "description": "The message can either be returned as a DOM File (default) or as a <a href='url-binary-string'>binary string</a>. It is recommended to use the <var>File</var> format, because the DOM File object can be used as-is with the downloads API and has useful methods to access the content, like <a href='url-dom-file-text'>File.text()</a> and <a href='url-dom-file-array-buffer'>File.arrayBuffer()</a>. Working with binary strings is error prone and needs special handling: <literalinclude>includes/messages/decodeBinaryString.js<lang>JavaScript</lang></literalinclude> (see MDN for <a href='url-input-encoding'>supported input encodings</a>).",
13160
13208
  "type": "string",
13161
13209
  "enum": [
13162
13210
  "File",
@@ -13218,7 +13266,7 @@
13218
13266
  {
13219
13267
  "name": "listInlineTextParts",
13220
13268
  "type": "function",
13221
- "description": "Lists all inline text parts of a message. These parts are not returned by :ref:`listAttachments` and usually make up the readable content of the message, mostly with content type <value>text/plain</value> or <value>text/html</value>. If a message only includes a <value>text/html</value> part, the method :ref:`messengerUtilities.convertToPlainText` can be used to retreive a plain text version. \n\n**Note:** A message usually contains only one inline text part per subtype, but technically messages can contain multiple inline text parts per subtype.",
13269
+ "description": "Lists all inline text parts of a message. These parts are not returned by $(ref:messages.listAttachments) and usually make up the readable content of the message, mostly with content type <var>text/plain</var> or <var>text/html</var>. If a message only includes a part with content type <var>text/html</var>, the method $(ref:messengerUtilities.convertToPlainText) can be used to retreive a plain text version. \n\n**Note:** A message usually contains only one inline text part per subtype, but technically messages can contain multiple inline text parts per subtype.",
13222
13270
  "async": "callback",
13223
13271
  "parameters": [
13224
13272
  {
@@ -13243,7 +13291,7 @@
13243
13291
  {
13244
13292
  "name": "getAttachmentFile",
13245
13293
  "type": "function",
13246
- "description": "Gets the content of a :ref:`messages.MessageAttachment` as a |File| object.",
13294
+ "description": "Gets the content of a $(ref:messages.MessageAttachment) as a <a href='url-dom-file'>File</a> object.",
13247
13295
  "async": "callback",
13248
13296
  "parameters": [
13249
13297
  {
@@ -13272,7 +13320,7 @@
13272
13320
  {
13273
13321
  "name": "deleteAttachments",
13274
13322
  "type": "function",
13275
- "description": "Deletes the specified attachments and replaces them by placeholder text attachments with meta information about the original attachments and a <value>text/x-moz-deleted</value> content type. This permanently modifies the message.",
13323
+ "description": "Deletes the specified attachments and replaces them by placeholder text attachments with meta information about the original attachments and a <var>text/x-moz-deleted</var> content type. This permanently modifies the message.",
13276
13324
  "permissions": [
13277
13325
  "messagesModifyPermanent"
13278
13326
  ],
@@ -13285,7 +13333,7 @@
13285
13333
  {
13286
13334
  "name": "partNames",
13287
13335
  "type": "array",
13288
- "description": "An array of attachments, identifying the to be deleted attachments by their <value>partName</value>.",
13336
+ "description": "An array of attachments, identifying the to be deleted attachments by their <var>partName</var>.",
13289
13337
  "items": {
13290
13338
  "type": "string",
13291
13339
  "pattern": "^\\d+(\\.\\d+)*$"
@@ -13329,9 +13377,19 @@
13329
13377
  "default": {},
13330
13378
  "properties": {
13331
13379
  "accountId": {
13332
- "$ref": "accounts.MailAccountId",
13333
- "description": "Limits the search to folders of the account with the specified id.",
13334
- "optional": true
13380
+ "choices": [
13381
+ {
13382
+ "$ref": "accounts.MailAccountId"
13383
+ },
13384
+ {
13385
+ "type": "array",
13386
+ "items": {
13387
+ "$ref": "accounts.MailAccountId"
13388
+ }
13389
+ }
13390
+ ],
13391
+ "optional": true,
13392
+ "description": "Limits the search to the specified account(s). Accounts are searched in the specified order."
13335
13393
  },
13336
13394
  "attachment": {
13337
13395
  "choices": [
@@ -13343,12 +13401,12 @@
13343
13401
  }
13344
13402
  ],
13345
13403
  "optional": true,
13346
- "description": "Whether the message has attachments, or not. Supports to specify a :ref:`messages.QueryRange` (min/max) instead of a simple boolean value (none/some)."
13404
+ "description": "Whether the message has attachments, or not. Supports to specify a $(ref:messages.QueryRange) (min/max) instead of a simple boolean value (none/some)."
13347
13405
  },
13348
13406
  "author": {
13349
13407
  "type": "string",
13350
13408
  "optional": true,
13351
- "description": "Returns only messages with this value matching the author. The search value is a single email address, a name or a combination (e.g.: <value>Name <user@domain.org></value>). The address part of the search value (if provided) must match the author's address completely. The name part of the search value (if provided) must match the author's name partially. All matches are done case-insensitive."
13409
+ "description": "Returns only messages with this value matching the author. The search value is a single email address, a name or a combination (e.g.: <var>Name <user@domain.org></var>). The address part of the search value (if provided) must match the author's address completely. The name part of the search value (if provided) must match the author's name partially. All matches are done case-insensitive."
13352
13410
  },
13353
13411
  "body": {
13354
13412
  "type": "string",
@@ -13361,9 +13419,19 @@
13361
13419
  "description": "Returns only flagged (or unflagged if false) messages."
13362
13420
  },
13363
13421
  "folderId": {
13364
- "$ref": "folders.MailFolderId",
13422
+ "choices": [
13423
+ {
13424
+ "$ref": "folders.MailFolderId"
13425
+ },
13426
+ {
13427
+ "type": "array",
13428
+ "items": {
13429
+ "$ref": "folders.MailFolderId"
13430
+ }
13431
+ }
13432
+ ],
13365
13433
  "optional": true,
13366
- "description": "Returns only messages from the folder with the specified id. The <permission>accountsRead</permission> permission is required."
13434
+ "description": "Limits the search to the specified folder(s). Folders are searched in the specified order. The <permission>accountsRead</permission> permission is required."
13367
13435
  },
13368
13436
  "folder": {
13369
13437
  "$ref": "folders.MailFolder",
@@ -13397,10 +13465,15 @@
13397
13465
  "optional": true,
13398
13466
  "description": "Search the specified folder recursively."
13399
13467
  },
13468
+ "online": {
13469
+ "type": "boolean",
13470
+ "optional": true,
13471
+ "description": "Query the server directly instead of the local message database. Online queries currently only support querying the `headerMessageId` property. Currently only supported for NNTP accounts."
13472
+ },
13400
13473
  "recipients": {
13401
13474
  "type": "string",
13402
13475
  "optional": true,
13403
- "description": "Returns only messages whose recipients match all specified addresses. The search value is a semicolon separated list of email addresses, names or combinations (e.g.: <value>Name <user@domain.org></value>). For a match, all specified addresses must equal a recipient's address completely and all specified names must match a recipient's name partially. All matches are done case-insensitive."
13476
+ "description": "Returns only messages whose recipients match all specified addresses. The search value is a semicolon separated list of email addresses, names or combinations (e.g.: <var>Name <user@domain.org></var>). For a match, all specified addresses must equal a recipient's address completely and all specified names must match a recipient's name partially. All matches are done case-insensitive."
13404
13477
  },
13405
13478
  "size": {
13406
13479
  "$ref": "QueryRange",
@@ -13415,7 +13488,7 @@
13415
13488
  "tags": {
13416
13489
  "$ref": "messages.tags.TagsDetail",
13417
13490
  "optional": true,
13418
- "description": "Returns only messages with the specified tags. For a list of available tags, call the :ref:`messages.tags.list` method."
13491
+ "description": "Returns only messages with the specified tags. For a list of available tags, call the $(ref:messages.tags.list) method."
13419
13492
  },
13420
13493
  "toDate": {
13421
13494
  "$ref": "extensionTypes.Date",
@@ -13457,12 +13530,12 @@
13457
13530
  "autoPaginationTimeout": {
13458
13531
  "type": "integer",
13459
13532
  "optional": true,
13460
- "description": "Set the timeout in ms after which results should be returned, even if the nominal number of messages-per-page has not yet been reached. Defaults to <value>1000</value> ms. Setting it to <value>0</value> will disable auto-pagination."
13533
+ "description": "Set the timeout in ms after which results should be returned, even if the nominal number of messages-per-page has not yet been reached. Defaults to <var>1000</var> ms. Setting it to <var>0</var> will disable auto-pagination."
13461
13534
  },
13462
13535
  "messagesPerPage": {
13463
13536
  "type": "integer",
13464
13537
  "optional": true,
13465
- "description": "Set the nominal number of messages-per-page for this query. Defaults to <value>100</value> messages."
13538
+ "description": "Set the nominal number of messages-per-page for this query. Defaults to <var>100</var> messages."
13466
13539
  },
13467
13540
  "returnMessageListId": {
13468
13541
  "type": "boolean",
@@ -13632,7 +13705,7 @@
13632
13705
  {
13633
13706
  "name": "delete",
13634
13707
  "type": "function",
13635
- "description": "Deletes messages permanently, or moves them to the trash folder (honoring the account's deletion behavior settings). Deleting external messages will throw an <em>ExtensionError</em>. The ``skipTrash`` parameter allows immediate permanent deletion, bypassing the trash folder.",
13708
+ "description": "Deletes messages permanently, or moves them to the trash folder (honoring the account's deletion behavior settings). Deleting external messages will throw an <em>ExtensionError</em>. The <var>skipTrash</var> parameter allows immediate permanent deletion, bypassing the trash folder.",
13636
13709
  "async": true,
13637
13710
  "permissions": [
13638
13711
  "messagesDelete"
@@ -13796,7 +13869,7 @@
13796
13869
  {
13797
13870
  "type": "string",
13798
13871
  "name": "key",
13799
- "description": "Unique tag identifier (will be converted to lower case). Must not include <value>()<>{/%*\"</value> or spaces.",
13872
+ "description": "Unique tag identifier (will be converted to lower case). Must not include <var>()<>{/%*\"</var> or spaces.",
13800
13873
  "pattern": "^[^ ()/{%*<>\"]+$"
13801
13874
  },
13802
13875
  {
@@ -13807,7 +13880,7 @@
13807
13880
  {
13808
13881
  "type": "string",
13809
13882
  "name": "color",
13810
- "description": "Tag color in hex format (i.e.: <value>#000080</value> for navy blue). Value will be stored as upper case.",
13883
+ "description": "Tag color in hex format (i.e.: <var>#000080</var> for navy blue). Value will be stored as upper case.",
13811
13884
  "pattern": "^#[0-9a-fA-F]{6}"
13812
13885
  }
13813
13886
  ]
@@ -13826,7 +13899,7 @@
13826
13899
  {
13827
13900
  "type": "string",
13828
13901
  "name": "key",
13829
- "description": "Unique tag identifier (will be converted to lower case). Must not include <value>()<>{/%*\"</value> or spaces.",
13902
+ "description": "Unique tag identifier (will be converted to lower case). Must not include <var>()<>{/%*\"</var> or spaces.",
13830
13903
  "pattern": "^[^ ()/{%*<>\"]+$"
13831
13904
  },
13832
13905
  {
@@ -13862,7 +13935,7 @@
13862
13935
  {
13863
13936
  "type": "string",
13864
13937
  "name": "key",
13865
- "description": "Unique tag identifier (will be converted to lower case). Must not include <value>()<>{/%*\"</value> or spaces.",
13938
+ "description": "Unique tag identifier (will be converted to lower case). Must not include <var>()<>{/%*\"</var> or spaces.",
13866
13939
  "pattern": "^[^ ()/{%*<>\"]+$"
13867
13940
  }
13868
13941
  ]
@@ -13901,7 +13974,7 @@
13901
13974
  "properties": {
13902
13975
  "tags": {
13903
13976
  "type": "object",
13904
- "description": "A <em>dictionary object</em> with one or more filter condition as <em>key-value</em> pairs, the <em>key</em> being the tag to filter on, and the <em>value</em> being a boolean expression, requesting whether a message must include (<value>true</value>) or exclude (<value>false</value>) the tag. For a list of available tags, call the :ref:`messages.tags.list` method.",
13977
+ "description": "A <em>dictionary object</em> with one or more filter condition as <em>key-value</em> pairs, the <em>key</em> being the tag to filter on, and the <em>value</em> being a boolean expression, requesting whether a message must include (<var>true</var>) or exclude (<var>false</var>) the tag. For a list of available tags, call the $(ref:messages.tags.list) method.",
13905
13978
  "patternProperties": {
13906
13979
  ".*": {
13907
13980
  "type": "boolean"
@@ -13956,7 +14029,7 @@
13956
14029
  {
13957
14030
  "type": "string",
13958
14031
  "name": "key",
13959
- "description": "Unique tag identifier (will be converted to lower case). Must not include <value>()<>{/%*\"</value> or spaces.",
14032
+ "description": "Unique tag identifier (will be converted to lower case). Must not include <var>()<>{/%*\"</var> or spaces.",
13960
14033
  "pattern": "^[^ ()/{%*<>\"]+$"
13961
14034
  },
13962
14035
  {
@@ -13984,7 +14057,7 @@
13984
14057
  {
13985
14058
  "type": "string",
13986
14059
  "name": "key",
13987
- "description": "Unique tag identifier (will be converted to lower case). Must not include <value>()<>{/%*\"</value> or spaces.",
14060
+ "description": "Unique tag identifier (will be converted to lower case). Must not include <var>()<>{/%*\"</var> or spaces.",
13988
14061
  "pattern": "^[^ ()/{%*<>\"]+$"
13989
14062
  },
13990
14063
  {
@@ -14018,7 +14091,7 @@
14018
14091
  {
14019
14092
  "type": "string",
14020
14093
  "name": "key",
14021
- "description": "Unique tag identifier (will be converted to lower case). Must not include <value>()<>{/%*\"</value> or spaces.",
14094
+ "description": "Unique tag identifier (will be converted to lower case). Must not include <var>()<>{/%*\"</var> or spaces.",
14022
14095
  "pattern": "^[^ ()/{%*<>\"]+$"
14023
14096
  }
14024
14097
  ]
@@ -14055,7 +14128,7 @@
14055
14128
  {
14056
14129
  "name": "getTabValue",
14057
14130
  "type": "function",
14058
- "description": "Retrieve a previously stored value for a given tab, given its key. Returns <value>undefined</value> if the key does not exist.",
14131
+ "description": "Retrieve a previously stored value for a given tab, given its key. Returns <var>undefined</var> if the key does not exist.",
14059
14132
  "async": "callback",
14060
14133
  "parameters": [
14061
14134
  {
@@ -14121,7 +14194,7 @@
14121
14194
  }
14122
14195
  ],
14123
14196
  "optional": true,
14124
- "description": "Sets the background color of the badge. Can be specified as an array of four integers in the range [0,255] that make up the RGBA color of the badge. For example, opaque red is <value>[255, 0, 0, 255]</value>. Can also be a string with an HTML color name (<value>red</value>) or a HEX color value (<value>#FF0000</value> or <value>#F00</value>). Reset when set to an empty string."
14197
+ "description": "Sets the background color of the badge. Can be specified as an array of four integers in the range [0,255] that make up the RGBA color of the badge. For example, opaque red is <var>[255, 0, 0, 255]</var>. Can also be a string with an HTML color name (<var>red</var>) or a HEX color value (<var>#FF0000</var> or <var>#F00</var>). Reset when set to an empty string."
14125
14198
  },
14126
14199
  "badgeText": {
14127
14200
  "type": "string",
@@ -14146,7 +14219,7 @@
14146
14219
  "items": {
14147
14220
  "$ref": "manifest.ThemeIcons"
14148
14221
  },
14149
- "description": "Specifies dark and light icons for the button in the spaces toolbar to be used with themes: The ``light`` icons will be used on dark backgrounds and vice versa. At least the set for <em>16px</em> icons should be specified. The set for <em>32px</em> icons will be used on screens with a very high pixel density, if specified. Reset when set to an empty array."
14222
+ "description": "Specifies dark and light icons for the button in the spaces toolbar to be used with themes: The <var>light</var> icons will be used on dark backgrounds and vice versa. At least the set for <em>16px</em> icons should be specified. The set for <em>32px</em> icons will be used on screens with a very high pixel density, if specified. Reset when set to an empty array."
14150
14223
  },
14151
14224
  "title": {
14152
14225
  "type": "string",
@@ -14169,17 +14242,17 @@
14169
14242
  }
14170
14243
  ],
14171
14244
  "optional": "omit-key-if-missing",
14172
- "description": "Sets the background color of the badge. Can be specified as an array of four integers in the range [0,255] that make up the RGBA color of the badge. For example, opaque red is <value>[255, 0, 0, 255]</value>. Can also be a string with an HTML color name (<value>red</value>) or a HEX color value (<value>#FF0000</value> or <value>#F00</value>). Reset when set to <value>null</value>."
14245
+ "description": "Sets the background color of the badge. Can be specified as an array of four integers in the range [0,255] that make up the RGBA color of the badge. For example, opaque red is <var>[255, 0, 0, 255]</var>. Can also be a string with an HTML color name (<var>red</var>) or a HEX color value (<var>#FF0000</var> or <var>#F00</var>). Reset when set to <var>null</var>."
14173
14246
  },
14174
14247
  "badgeText": {
14175
14248
  "type": "string",
14176
14249
  "optional": "omit-key-if-missing",
14177
- "description": "Sets the badge text for the button in the spaces toolbar. The badge is displayed on top of the icon. Any number of characters can be set, but only about four can fit in the space. Removed when set to <value>null</value>."
14250
+ "description": "Sets the badge text for the button in the spaces toolbar. The badge is displayed on top of the icon. Any number of characters can be set, but only about four can fit in the space. Removed when set to <var>null</var>."
14178
14251
  },
14179
14252
  "defaultIcons": {
14180
14253
  "$ref": "manifest.IconPath",
14181
14254
  "optional": "omit-key-if-missing",
14182
- "description": "The paths to one or more icons for the button in the spaces toolbar. Reset to the extension icon, when set to <value>null</value>."
14255
+ "description": "The paths to one or more icons for the button in the spaces toolbar. Reset to the extension icon, when set to <var>null</var>."
14183
14256
  },
14184
14257
  "themeIcons": {
14185
14258
  "type": "array",
@@ -14187,18 +14260,18 @@
14187
14260
  "items": {
14188
14261
  "$ref": "manifest.ThemeIcons"
14189
14262
  },
14190
- "description": "Specifies dark and light icons for the button in the spaces toolbar to be used with themes: The ``light`` icons will be used on dark backgrounds and vice versa. At least the set for <em>16px</em> icons should be specified. The set for <em>32px</em> icons will be used on screens with a very high pixel density, if specified. Reset when set to <value>null</value>."
14263
+ "description": "Specifies dark and light icons for the button in the spaces toolbar to be used with themes: The <var>light</var> icons will be used on dark backgrounds and vice versa. At least the set for <em>16px</em> icons should be specified. The set for <em>32px</em> icons will be used on screens with a very high pixel density, if specified. Reset when set to <var>null</var>."
14191
14264
  },
14192
14265
  "title": {
14193
14266
  "type": "string",
14194
14267
  "optional": "omit-key-if-missing",
14195
- "description": "The title for the button in the spaces toolbar, used in the tooltip of the button and as the displayed name in the overflow menu. Reset to the name of the extension, when set to <value>null</value>."
14268
+ "description": "The title for the button in the spaces toolbar, used in the tooltip of the button and as the displayed name in the overflow menu. Reset to the name of the extension, when set to <var>null</var>."
14196
14269
  }
14197
14270
  }
14198
14271
  },
14199
14272
  {
14200
14273
  "id": "ColorArray",
14201
- "description": "An array of four integers in the range [0,255] that make up the RGBA color. For example, opaque red is <value>[255, 0, 0, 255]</value>.",
14274
+ "description": "An array of four integers in the range [0,255] that make up the RGBA color. For example, opaque red is <var>[255, 0, 0, 255]</var>.",
14202
14275
  "type": "array",
14203
14276
  "items": {
14204
14277
  "type": "integer",
@@ -14254,7 +14327,7 @@
14254
14327
  {
14255
14328
  "name": "defaultUrl",
14256
14329
  "type": "string",
14257
- "description": "The default space url, loaded into a tab when the button in the spaces toolbar is clicked. Supported are <value>https://</value> and <value>http://</value> links, as well as links to WebExtension pages."
14330
+ "description": "The default space url, loaded into a tab when the button in the spaces toolbar is clicked. Supported are <var>https://</var> and <var>http://</var> links, as well as links to WebExtension pages."
14258
14331
  },
14259
14332
  {
14260
14333
  "name": "buttonProperties",
@@ -14404,7 +14477,7 @@
14404
14477
  {
14405
14478
  "name": "defaultUrl",
14406
14479
  "type": "string",
14407
- "description": "The default space url, loaded into a tab when the button in the spaces toolbar is clicked. Supported are <value>https://</value> and <value>http://</value> links, as well as links to WebExtension pages.",
14480
+ "description": "The default space url, loaded into a tab when the button in the spaces toolbar is clicked. Supported are <var>https://</var> and <var>http://</var> links, as well as links to WebExtension pages.",
14408
14481
  "optional": true
14409
14482
  },
14410
14483
  {
@@ -14479,7 +14552,7 @@
14479
14552
  }
14480
14553
  ],
14481
14554
  "optional": true,
14482
- "description": "Sets the background color of the badge. Can be specified as an array of four integers in the range [0,255] that make up the RGBA color of the badge. For example, opaque red is <value>[255, 0, 0, 255]</value>. Can also be a string with an HTML color name (<value>red</value>) or a HEX color value (<value>#FF0000</value> or <value>#F00</value>). Reset when set to an empty string."
14555
+ "description": "Sets the background color of the badge. Can be specified as an array of four integers in the range [0,255] that make up the RGBA color of the badge. For example, opaque red is <var>[255, 0, 0, 255]</var>. Can also be a string with an HTML color name (<var>red</var>) or a HEX color value (<var>#FF0000</var> or <var>#F00</var>). Reset when set to an empty string."
14483
14556
  },
14484
14557
  "badgeText": {
14485
14558
  "type": "string",
@@ -14504,7 +14577,7 @@
14504
14577
  "items": {
14505
14578
  "$ref": "manifest.ThemeIcons"
14506
14579
  },
14507
- "description": "Specifies dark and light icons for the spaces toolbar button to be used with themes: The ``light`` icons will be used on dark backgrounds and vice versa. At least the set for <em>16px</em> icons should be specified. The set for <em>32px</em> icons will be used on screens with a very high pixel density, if specified."
14580
+ "description": "Specifies dark and light icons for the spaces toolbar button to be used with themes: The <var>light</var> icons will be used on dark backgrounds and vice versa. At least the set for <em>16px</em> icons should be specified. The set for <em>32px</em> icons will be used on screens with a very high pixel density, if specified."
14508
14581
  },
14509
14582
  "title": {
14510
14583
  "type": "string",
@@ -14514,13 +14587,13 @@
14514
14587
  "url": {
14515
14588
  "type": "string",
14516
14589
  "optional": true,
14517
- "description": "The page url, loaded into a tab when the button is clicked. Supported are <value>https://</value> and <value>http://</value> links, as well as links to WebExtension pages."
14590
+ "description": "The page url, loaded into a tab when the button is clicked. Supported are <var>https://</var> and <var>http://</var> links, as well as links to WebExtension pages."
14518
14591
  }
14519
14592
  }
14520
14593
  },
14521
14594
  {
14522
14595
  "id": "ColorArray",
14523
- "description": "An array of four integers in the range [0,255] that make up the RGBA color. For example, opaque red is <value>[255, 0, 0, 255]</value>.",
14596
+ "description": "An array of four integers in the range [0,255] that make up the RGBA color. For example, opaque red is <var>[255, 0, 0, 255]</var>.",
14524
14597
  "type": "array",
14525
14598
  "items": {
14526
14599
  "type": "integer",
@@ -14535,7 +14608,7 @@
14535
14608
  {
14536
14609
  "name": "addButton",
14537
14610
  "type": "function",
14538
- "description": "Adds a new button to the spaces toolbar. Throws an exception, if the used ``id`` is not unique within the extension.",
14611
+ "description": "Adds a new button to the spaces toolbar. Throws an exception, if the used <var>id</var> is not unique within the extension.",
14539
14612
  "async": "callback",
14540
14613
  "parameters": [
14541
14614
  {
@@ -14546,7 +14619,7 @@
14546
14619
  },
14547
14620
  {
14548
14621
  "name": "properties",
14549
- "description": "Properties of the new button. The ``url`` is mandatory.",
14622
+ "description": "Properties of the new button. The <var>url</var> is mandatory.",
14550
14623
  "$ref": "spacesToolbar.ButtonProperties"
14551
14624
  },
14552
14625
  {
@@ -14673,7 +14746,7 @@
14673
14746
  "type": "integer",
14674
14747
  "minimum": -1,
14675
14748
  "optional": true,
14676
- "description": "The ID of the tab. Tab IDs are unique within a session. Under some circumstances a Tab may not be assigned an ID. Tab ID can also be set to :ref:`tabs.TAB_ID_NONE` for apps and devtools windows."
14749
+ "description": "The ID of the tab. Tab IDs are unique within a session. Under some circumstances a Tab may not be assigned an ID. Tab ID can also be set to $(ref:tabs.TAB_ID_NONE) for apps and devtools windows."
14677
14750
  },
14678
14751
  "index": {
14679
14752
  "type": "integer",
@@ -14689,7 +14762,7 @@
14689
14762
  "selected": {
14690
14763
  "type": "boolean",
14691
14764
  "description": "Whether the tab is selected.",
14692
- "deprecated": "Please use :ref:`tabs.Tab.highlighted`.",
14765
+ "deprecated": "Please use $(ref:tabs.Tab.highlighted).",
14693
14766
  "unsupported": true
14694
14767
  },
14695
14768
  "highlighted": {
@@ -14727,7 +14800,7 @@
14727
14800
  "status": {
14728
14801
  "type": "string",
14729
14802
  "optional": true,
14730
- "description": "Either <value>loading</value> or <value>complete</value>."
14803
+ "description": "Either <var>loading</var> or <var>complete</var>."
14731
14804
  },
14732
14805
  "width": {
14733
14806
  "type": "integer",
@@ -14742,7 +14815,7 @@
14742
14815
  "cookieStoreId": {
14743
14816
  "type": "string",
14744
14817
  "optional": true,
14745
- "description": "The `CookieStore <|link-cookieStore|>`__ id used by the tab. Either a custom id created using the `contextualIdentities API <|link-contextualIdentity|>`__, or a built-in one: <value>firefox-default</value>, <value>firefox-container-1</value>, <value>firefox-container-2</value>, <value>firefox-container-3</value>, <value>firefox-container-4</value>, <value>firefox-container-5</value>. **Note:** The naming pattern was deliberately not changed for Thunderbird, but kept for compatibility reasons."
14818
+ "description": "The <a href='url-cookieStore'>CookieStore</a> id used by the tab. Either a custom id created using the <a href='url-contextualIdentity'>contextualIdentities API</a>, or a built-in one: <var>firefox-default</var>, <var>firefox-container-1</var>, <var>firefox-container-2</var>, <var>firefox-container-3</var>, <var>firefox-container-4</var>, <var>firefox-container-5</var>. **Note:** The naming pattern was deliberately not changed for Thunderbird, but kept for compatibility reasons."
14746
14819
  },
14747
14820
  "type": {
14748
14821
  "$ref": "TabType",
@@ -14881,7 +14954,7 @@
14881
14954
  {
14882
14955
  "name": "getCurrent",
14883
14956
  "type": "function",
14884
- "description": "Gets the tab that this script call is being made from. May be <value>undefined</value> if called from a non-tab context (for example: a background page or popup view).",
14957
+ "description": "Gets the tab that this script call is being made from. May be <var>undefined</var> if called from a non-tab context (for example: a background page or popup view).",
14885
14958
  "async": "callback",
14886
14959
  "parameters": [
14887
14960
  {
@@ -14902,7 +14975,7 @@
14902
14975
  {
14903
14976
  "name": "connect",
14904
14977
  "type": "function",
14905
- "description": "Connects to the content script(s) in the specified tab. The `runtime.onConnect <|link-runtime-on-connect|>`__ event is fired in each content script running in the specified tab for the current extension. For more details, see `Content Script Messaging <|link-content-scripts|>`__.",
14978
+ "description": "Connects to the content script(s) in the specified tab. The <a href='url-runtime-on-connect'>runtime.onConnect</a> event is fired in each content script running in the specified tab for the current extension. For more details, see <a href='url-content-scripts'>Content Script Messaging</a>.",
14906
14979
  "parameters": [
14907
14980
  {
14908
14981
  "type": "integer",
@@ -14922,7 +14995,7 @@
14922
14995
  "type": "integer",
14923
14996
  "optional": true,
14924
14997
  "minimum": 0,
14925
- "description": "Open a port to a specific frame identified by ``frameId`` instead of all frames in the tab."
14998
+ "description": "Open a port to a specific frame identified by <var>frameId</var> instead of all frames in the tab."
14926
14999
  }
14927
15000
  },
14928
15001
  "optional": true
@@ -14936,7 +15009,7 @@
14936
15009
  {
14937
15010
  "name": "sendMessage",
14938
15011
  "type": "function",
14939
- "description": "Sends a single message to the content script(s) in the specified tab, with an optional callback to run when a response is sent back. The `runtime.onMessage <|link-runtime-on-message|>`__ event is fired in each content script running in the specified tab for the current extension.",
15012
+ "description": "Sends a single message to the content script(s) in the specified tab, with an optional callback to run when a response is sent back. The <a href='url-runtime-on-message'>runtime.onMessage</a> event is fired in each content script running in the specified tab for the current extension.",
14940
15013
  "async": "responseCallback",
14941
15014
  "parameters": [
14942
15015
  {
@@ -14956,7 +15029,7 @@
14956
15029
  "type": "integer",
14957
15030
  "optional": true,
14958
15031
  "minimum": 0,
14959
- "description": "Send a message to a specific frame identified by ``frameId`` instead of all frames in the tab."
15032
+ "description": "Send a message to a specific frame identified by <var>frameId</var> instead of all frames in the tab."
14960
15033
  }
14961
15034
  },
14962
15035
  "optional": true
@@ -14969,7 +15042,7 @@
14969
15042
  {
14970
15043
  "name": "response",
14971
15044
  "type": "any",
14972
- "description": "The JSON response object sent by the handler of the message. If an error occurs while connecting to the specified tab, the callback will be called with no arguments and `runtime.lastError <|link-runtime-last-error|>`__ will be set to the error message."
15045
+ "description": "The JSON response object sent by the handler of the message. If an error occurs while connecting to the specified tab, the callback will be called with no arguments and <a href='url-runtime-last-error'>runtime.lastError</a> will be set to the error message."
14973
15046
  }
14974
15047
  ]
14975
15048
  }
@@ -14978,13 +15051,13 @@
14978
15051
  {
14979
15052
  "name": "create",
14980
15053
  "type": "function",
14981
- "description": "Creates a new content tab. Use the :ref:`messageDisplay_api` to open messages. Only supported in <value>normal</value> windows. Same-site links in the loaded page are opened within Thunderbird, all other links are opened in the user's default browser. To override this behavior, add-ons have to register a `content script <https://bugzilla.mozilla.org/show_bug.cgi?id=1618828#c3>`__ , capture click events and handle them manually.",
15054
+ "description": "Creates a new content tab. Use the $(doc:messageDisplay) to open messages. Only supported in <var>normal</var> windows. Same-site links in the loaded page are opened within Thunderbird, all other links are opened in the user's default browser. To override this behavior, add-ons have to register a <a href='url-content-script-click-capture'>content script</a> , capture click events and handle them manually.",
14982
15055
  "async": "callback",
14983
15056
  "parameters": [
14984
15057
  {
14985
15058
  "type": "object",
14986
15059
  "name": "createProperties",
14987
- "description": "Properties for the new tab. Defaults to an empty tab, if no ``url`` is provided.",
15060
+ "description": "Properties for the new tab. Defaults to an empty tab, if no <var>url</var> is provided.",
14988
15061
  "properties": {
14989
15062
  "windowId": {
14990
15063
  "type": "integer",
@@ -15001,24 +15074,24 @@
15001
15074
  "url": {
15002
15075
  "type": "string",
15003
15076
  "optional": true,
15004
- "description": "The URL to navigate the tab to initially. If the URL points to a content page (a web page, an extension page or a registered WebExtension protocol handler page), the tab will navigate to the requested page. All other URLs will be opened externally after creating an empty tab. Fully-qualified URLs must include a scheme (i.e. <value>http://www.google.com</value>, not <value>www.google.com</value>). Relative URLs will be relative to the root of the extension. "
15077
+ "description": "The URL to navigate the tab to initially. If the URL points to a content page (a web page, an extension page or a registered WebExtension protocol handler page), the tab will navigate to the requested page. All other URLs will be opened externally after creating an empty tab. Fully-qualified URLs must include a scheme (i.e. <var>http://www.google.com</var>, not <var>www.google.com</var>). Relative URLs will be relative to the root of the extension. "
15005
15078
  },
15006
15079
  "active": {
15007
15080
  "type": "boolean",
15008
15081
  "optional": true,
15009
- "description": "Whether the tab should become the active tab in the window. Does not affect whether the window is focused (see :ref:`windows.update`). Defaults to <value>true</value>."
15082
+ "description": "Whether the tab should become the active tab in the window. Does not affect whether the window is focused (see $(ref:windows.update)). Defaults to <var>true</var>."
15010
15083
  },
15011
15084
  "cookieStoreId": {
15012
15085
  "type": "string",
15013
15086
  "optional": true,
15014
- "description": "The `CookieStore <|link-cookieStore|>`__ id the new tab should use. Either a custom id created using the `contextualIdentities API <|link-contextualIdentity|>`__, or a built-in one: <value>firefox-default</value>, <value>firefox-container-1</value>, <value>firefox-container-2</value>, <value>firefox-container-3</value>, <value>firefox-container-4</value>, <value>firefox-container-5</value>. **Note:** The naming pattern was deliberately not changed for Thunderbird, but kept for compatibility reasons."
15087
+ "description": "The <a href='url-cookieStore'>CookieStore</a> id the new tab should use. Either a custom id created using the <a href='url-contextualIdentity'>contextualIdentities API</a>, or a built-in one: <var>firefox-default</var>, <var>firefox-container-1</var>, <var>firefox-container-2</var>, <var>firefox-container-3</var>, <var>firefox-container-4</var>, <var>firefox-container-5</var>. **Note:** The naming pattern was deliberately not changed for Thunderbird, but kept for compatibility reasons."
15015
15088
  },
15016
15089
  "selected": {
15017
- "deprecated": "Please use ``createProperties.active``.",
15090
+ "deprecated": "Please use <var>createProperties.active</var>.",
15018
15091
  "unsupported": true,
15019
15092
  "type": "boolean",
15020
15093
  "optional": true,
15021
- "description": "Whether the tab should become the selected tab in the window. Defaults to <value>true</value>"
15094
+ "description": "Whether the tab should become the selected tab in the window. Defaults to <var>true</var>"
15022
15095
  }
15023
15096
  }
15024
15097
  },
@@ -15055,7 +15128,7 @@
15055
15128
  "parameters": [
15056
15129
  {
15057
15130
  "name": "tab",
15058
- "description": "Details about the duplicated tab. The :ref:`tabs.Tab` object doesn't contain ``url``, ``title`` and ``favIconUrl`` if the <permission>tabs</permission> permission has not been requested.",
15131
+ "description": "Details about the duplicated tab. The $(ref:tabs.Tab) object doesn't contain <var>url</var>, <var>title</var> and <var>favIconUrl</var> if the <permission>tabs</permission> permission has not been requested.",
15059
15132
  "$ref": "Tab"
15060
15133
  }
15061
15134
  ]
@@ -15078,7 +15151,7 @@
15078
15151
  "type": "boolean",
15079
15152
  "optional": true,
15080
15153
  "max_manifest_version": 2,
15081
- "description": "Whether the tab is a Thunderbird 3-pane tab. If specified, the ``queryInfo.type`` property will be ignored"
15154
+ "description": "Whether the tab is a Thunderbird 3-pane tab. If specified, the <var>queryInfo.type</var> property will be ignored"
15082
15155
  },
15083
15156
  "spaceId": {
15084
15157
  "type": "integer",
@@ -15144,13 +15217,13 @@
15144
15217
  }
15145
15218
  ],
15146
15219
  "optional": true,
15147
- "description": "Match tabs against one or more `URL Patterns <|link-match-patterns|>`__. Note that fragment identifiers are not matched."
15220
+ "description": "Match tabs against one or more <a href='url-match-patterns'>URL Patterns</a>. Note that fragment identifiers are not matched."
15148
15221
  },
15149
15222
  "windowId": {
15150
15223
  "type": "integer",
15151
15224
  "optional": true,
15152
15225
  "minimum": -2,
15153
- "description": "The ID of the parent window, or :ref:`windows.WINDOW_ID_CURRENT` for the current window."
15226
+ "description": "The ID of the parent window, or $(ref:windows.WINDOW_ID_CURRENT) for the current window."
15154
15227
  },
15155
15228
  "windowType": {
15156
15229
  "$ref": "WindowType",
@@ -15176,7 +15249,7 @@
15176
15249
  }
15177
15250
  ],
15178
15251
  "optional": true,
15179
- "description": "The `CookieStore <|link-cookieStore|>`__ id(s) used by the tabs. Either custom ids created using the `contextualIdentities API <|link-contextualIdentity|>`__, or built-in ones: <value>firefox-default</value>, <value>firefox-container-1</value>, <value>firefox-container-2</value>, <value>firefox-container-3</value>, <value>firefox-container-4</value>, <value>firefox-container-5</value>. **Note:** The naming pattern was deliberately not changed for Thunderbird, but kept for compatibility reasons."
15252
+ "description": "The <a href='url-cookieStore'>CookieStore</a> id(s) used by the tabs. Either custom ids created using the <a href='url-contextualIdentity'>contextualIdentities API</a>, or built-in ones: <var>firefox-default</var>, <var>firefox-container-1</var>, <var>firefox-container-2</var>, <var>firefox-container-3</var>, <var>firefox-container-4</var>, <var>firefox-container-5</var>. **Note:** The naming pattern was deliberately not changed for Thunderbird, but kept for compatibility reasons."
15180
15253
  }
15181
15254
  }
15182
15255
  },
@@ -15199,7 +15272,7 @@
15199
15272
  {
15200
15273
  "name": "update",
15201
15274
  "type": "function",
15202
- "description": "Modifies the properties of a tab. Properties that are not specified in ``updateProperties`` are not modified.",
15275
+ "description": "Modifies the properties of a tab. Properties that are not specified in <var>updateProperties</var> are not modified.",
15203
15276
  "async": "callback",
15204
15277
  "parameters": [
15205
15278
  {
@@ -15217,12 +15290,12 @@
15217
15290
  "url": {
15218
15291
  "type": "string",
15219
15292
  "optional": true,
15220
- "description": "A URL of a page to load. If the URL points to a content page (a web page, an extension page or a registered WebExtension protocol handler page), the tab will navigate to the requested page. All other URLs will be opened externally without changing the tab. **Note:** This function will throw an error, if a content page is loaded into a non-content tab (its type must be either <value>content</value> or <value>mail</value>)."
15293
+ "description": "A URL of a page to load. If the URL points to a content page (a web page, an extension page or a registered WebExtension protocol handler page), the tab will navigate to the requested page. All other URLs will be opened externally without changing the tab. **Note:** This function will throw an error, if a content page is loaded into a non-content tab (its type must be either <var>content</var> or <var>mail</var>)."
15221
15294
  },
15222
15295
  "active": {
15223
15296
  "type": "boolean",
15224
15297
  "optional": true,
15225
- "description": "Set this to <value>true</value>, if the tab should become active. Does not affect whether the window is focused (see :ref:`windows.update`). Setting this to <value>false</value> has no effect."
15298
+ "description": "Set this to <var>true</var>, if the tab should become active. Does not affect whether the window is focused (see $(ref:windows.update)). Setting this to <var>false</var> has no effect."
15226
15299
  }
15227
15300
  }
15228
15301
  },
@@ -15234,7 +15307,7 @@
15234
15307
  {
15235
15308
  "name": "tab",
15236
15309
  "$ref": "Tab",
15237
- "description": "Details about the updated tab. The :ref:`tabs.Tab` object doesn't contain ``url``, ``title`` and ``favIconUrl`` if the <permission>tabs</permission> permission has not been requested."
15310
+ "description": "Details about the updated tab. The $(ref:tabs.Tab) object doesn't contain <var>url</var>, <var>title</var> and <var>favIconUrl</var> if the <permission>tabs</permission> permission has not been requested."
15238
15311
  }
15239
15312
  ]
15240
15313
  }
@@ -15243,7 +15316,7 @@
15243
15316
  {
15244
15317
  "name": "move",
15245
15318
  "type": "function",
15246
- "description": "Moves one or more tabs to a new position within its current window, or to a different window. Note that tabs can only be moved to and from windows of type <value>normal</value>.",
15319
+ "description": "Moves one or more tabs to a new position within its current window, or to a different window. Note that tabs can only be moved to and from windows of type <var>normal</var>.",
15247
15320
  "async": "callback",
15248
15321
  "parameters": [
15249
15322
  {
@@ -15276,7 +15349,7 @@
15276
15349
  "index": {
15277
15350
  "type": "integer",
15278
15351
  "minimum": -1,
15279
- "description": "The position to move the tab to. <value>-1</value> will place the tab at the end of the window."
15352
+ "description": "The position to move the tab to. <var>-1</var> will place the tab at the end of the window."
15280
15353
  }
15281
15354
  }
15282
15355
  },
@@ -15365,7 +15438,7 @@
15365
15438
  "name": "executeScript",
15366
15439
  "type": "function",
15367
15440
  "max_manifest_version": 2,
15368
- "description": "Injects JavaScript code into a page. For details, see the `programmatic injection <|link-content-scripts|>`__ section of the content scripts doc.",
15441
+ "description": "Injects JavaScript code into a page. For details, see the <a href='url-content-scripts'>programmatic injection</a> section of the content scripts doc.",
15369
15442
  "async": "callback",
15370
15443
  "parameters": [
15371
15444
  {
@@ -15403,7 +15476,7 @@
15403
15476
  "name": "insertCSS",
15404
15477
  "type": "function",
15405
15478
  "max_manifest_version": 2,
15406
- "description": "Injects CSS into a page. For details, see the `programmatic injection <|link-content-scripts|>`__ section of the content scripts doc.",
15479
+ "description": "Injects CSS into a page. For details, see the <a href='url-content-scripts'>programmatic injection</a> section of the content scripts doc.",
15407
15480
  "async": "callback",
15408
15481
  "parameters": [
15409
15482
  {
@@ -15431,7 +15504,7 @@
15431
15504
  "name": "removeCSS",
15432
15505
  "type": "function",
15433
15506
  "max_manifest_version": 2,
15434
- "description": "Removes injected CSS from a page. For details, see the `programmatic injection <|link-content-scripts|>`__ section of the content scripts doc.",
15507
+ "description": "Removes injected CSS from a page. For details, see the <a href='url-content-scripts'>programmatic injection</a> section of the content scripts doc.",
15435
15508
  "async": "callback",
15436
15509
  "parameters": [
15437
15510
  {
@@ -15487,7 +15560,7 @@
15487
15560
  "status": {
15488
15561
  "type": "string",
15489
15562
  "optional": true,
15490
- "description": "The status of the tab. Can be either <value>loading</value> or <value>complete</value>."
15563
+ "description": "The status of the tab. Can be either <var>loading</var> or <var>complete</var>."
15491
15564
  },
15492
15565
  "url": {
15493
15566
  "type": "string",
@@ -15519,7 +15592,7 @@
15519
15592
  {
15520
15593
  "name": "onMoved",
15521
15594
  "type": "function",
15522
- "description": "Fired when a tab is moved within a window. Only one move event is fired, representing the tab the user directly moved. Move events are not fired for the other tabs that must move in response. This event is not fired when a tab is moved between windows. For that, see :ref:`tabs.onDetached`.",
15595
+ "description": "Fired when a tab is moved within a window. Only one move event is fired, representing the tab the user directly moved. Move events are not fired for the other tabs that must move in response. This event is not fired when a tab is moved between windows. For that, see $(ref:tabs.onDetached).",
15523
15596
  "parameters": [
15524
15597
  {
15525
15598
  "type": "integer",
@@ -15648,7 +15721,7 @@
15648
15721
  },
15649
15722
  "isWindowClosing": {
15650
15723
  "type": "boolean",
15651
- "description": "Is <value>true</value> when the tab is being closed because its window is being closed."
15724
+ "description": "Is <var>true</var> when the tab is being closed because its window is being closed."
15652
15725
  }
15653
15726
  }
15654
15727
  }
@@ -15669,12 +15742,12 @@
15669
15742
  "name": {
15670
15743
  "type": "string",
15671
15744
  "optional": true,
15672
- "description": "The <value>display-name</value> associated with the provided address or group, if available."
15745
+ "description": "The <var>display-name</var> associated with the provided address or group, if available."
15673
15746
  },
15674
15747
  "email": {
15675
15748
  "type": "string",
15676
15749
  "optional": true,
15677
- "description": "The <value>addr-spec</value> associated with the provided address, if available."
15750
+ "description": "The <var>addr-spec</var> associated with the provided address, if available."
15678
15751
  },
15679
15752
  "group": {
15680
15753
  "type": "array",
@@ -15726,7 +15799,7 @@
15726
15799
  {
15727
15800
  "name": "formatFileSize",
15728
15801
  "type": "function",
15729
- "description": "Returns the provided file size in a human readable format (e.g. <value>12 bytes</value> or <value>11,4 GB</value>).",
15802
+ "description": "Returns the provided file size in a human readable format (e.g. <var>12 bytes</var> or <var>11,4 GB</var>).",
15730
15803
  "async": "callback",
15731
15804
  "parameters": [
15732
15805
  {
@@ -15755,13 +15828,13 @@
15755
15828
  {
15756
15829
  "type": "string",
15757
15830
  "name": "mailboxString",
15758
- "description": "The string to be parsed (e.g. <value>User <user@example.com>, other-user@example.com</value>)"
15831
+ "description": "The string to be parsed (e.g. <var>User <user@example.com>, other-user@example.com</var>)"
15759
15832
  },
15760
15833
  {
15761
15834
  "type": "boolean",
15762
15835
  "name": "preserveGroups",
15763
15836
  "optional": true,
15764
- "description": "Keep grouped hierachies. Groups may be specified in a mailbox string as follows: <value>GroupName : user1 <user1@example.com>, user2@example,com ;</value>."
15837
+ "description": "Keep grouped hierachies. Groups may be specified in a mailbox string as follows: <var>GroupName : user1 <user1@example.com>, user2@example,com ;</var>."
15765
15838
  },
15766
15839
  {
15767
15840
  "type": "function",
@@ -15849,11 +15922,11 @@
15849
15922
  "$ref": "tabs.Tab"
15850
15923
  },
15851
15924
  "optional": true,
15852
- "description": "Array of :ref:`tabs.Tab` objects representing the current tabs in the window. Only included if requested by :ref:`windows.get`, :ref:`windows.getCurrent`, :ref:`windows.getAll` or :ref:`windows.getLastFocused`, and the optional :ref:`windows.GetInfo` parameter has its ``populate`` member set to <value>true</value>."
15925
+ "description": "Array of $(ref:tabs.Tab) objects representing the current tabs in the window. Only included if requested by $(ref:windows.get), $(ref:windows.getCurrent), $(ref:windows.getAll) or $(ref:windows.getLastFocused), and the optional $(ref:windows.GetInfo) parameter has its <var>populate</var> member set to <var>true</var>."
15853
15926
  },
15854
15927
  "incognito": {
15855
15928
  "type": "boolean",
15856
- "description": "Whether the window is incognito. Since Thunderbird does not support the incognito mode, this is always <value>false</value>."
15929
+ "description": "Whether the window is incognito. Since Thunderbird does not support the incognito mode, this is always <var>false</var>."
15857
15930
  },
15858
15931
  "type": {
15859
15932
  "$ref": "WindowType",
@@ -15879,7 +15952,7 @@
15879
15952
  {
15880
15953
  "id": "CreateType",
15881
15954
  "type": "string",
15882
- "description": "Specifies what type of window to create. Thunderbird does not support <value>panel</value> and <value>detached_panel</value>, they are interpreted as <value>popup</value>.",
15955
+ "description": "Specifies what type of window to create. Thunderbird does not support <var>panel</var> and <var>detached_panel</var>, they are interpreted as <var>popup</var>.",
15883
15956
  "enum": [
15884
15957
  "normal",
15885
15958
  "popup",
@@ -15895,7 +15968,7 @@
15895
15968
  "populate": {
15896
15969
  "type": "boolean",
15897
15970
  "optional": true,
15898
- "description": "If true, the :ref:`windows.Window` returned will have a ``tabs`` property that contains an array of :ref:`tabs.Tab` objects representing the tabs inside the window. The :ref:`tabs.Tab` objects only contain the ``url``, ``title`` and ``favIconUrl`` properties if the extension's manifest file includes the <permission>tabs</permission> permission."
15971
+ "description": "If true, the $(ref:windows.Window) returned will have a <var>tabs</var> property that contains an array of $(ref:tabs.Tab) objects representing the tabs inside the window. The $(ref:tabs.Tab) objects only contain the <var>url</var>, <var>title</var> and <var>favIconUrl</var> properties if the extension's manifest file includes the <permission>tabs</permission> permission."
15899
15972
  },
15900
15973
  "windowTypes": {
15901
15974
  "type": "array",
@@ -15903,7 +15976,7 @@
15903
15976
  "$ref": "WindowType"
15904
15977
  },
15905
15978
  "optional": true,
15906
- "description": "If set, the :ref:`windows.Window` returned will be filtered based on its type. Supported by :ref:`windows.getAll` only, ignored in all other functions."
15979
+ "description": "If set, the $(ref:windows.Window) returned will be filtered based on its type. Supported by $(ref:windows.getAll) only, ignored in all other functions."
15907
15980
  }
15908
15981
  }
15909
15982
  }
@@ -16026,7 +16099,7 @@
16026
16099
  {
16027
16100
  "name": "create",
16028
16101
  "type": "function",
16029
- "description": "Creates (opens) a new window with any optional sizing, position or default URL provided. When loading a page into a popup window, same-site links are opened within the same window, all other links are opened in the user's default browser. To override this behavior, add-ons have to register a `content script <https://bugzilla.mozilla.org/show_bug.cgi?id=1618828#c3>`__ , capture click events and handle them manually. Same-site links with targets other than <value>_self</value> are opened in a new tab in the most recent ``normal`` Thunderbird window.",
16102
+ "description": "Creates (opens) a new window with any optional sizing, position or default URL provided. When loading a page into a popup window, same-site links are opened within the same window, all other links are opened in the user's default browser. To override this behavior, add-ons have to register a <a href='url-content-script-click-capture'>content script</a> , capture click events and handle them manually. Same-site links with targets other than <var>_self</var> are opened in a new tab in the most recent <var>normal</var> Thunderbird window.",
16030
16103
  "async": "callback",
16031
16104
  "parameters": [
16032
16105
  {
@@ -16036,7 +16109,7 @@
16036
16109
  "default": {},
16037
16110
  "properties": {
16038
16111
  "url": {
16039
- "description": "A URL to be opened in a popup window, ignored in all other window types. This may also be an array, but only the first element is used (popup windows may not have multiple tabs). If the URL points to a content page (a web page, an extension page or a registered WebExtension protocol handler page), the popup window will navigate to the requested page. All other URLs will be opened externally after creating an empty popup window. Fully-qualified URLs must include a scheme (i.e. <value>http://www.google.com</value>, not <value>www.google.com</value>). Relative URLs will be relative to the root of the extension. Defaults to the New Tab Page.",
16112
+ "description": "A URL to be opened in a popup window, ignored in all other window types. This may also be an array, but only the first element is used (popup windows may not have multiple tabs). If the URL points to a content page (a web page, an extension page or a registered WebExtension protocol handler page), the popup window will navigate to the requested page. All other URLs will be opened externally after creating an empty popup window. Fully-qualified URLs must include a scheme (i.e. <var>http://www.google.com</var>, not <var>www.google.com</var>). Relative URLs will be relative to the root of the extension. Defaults to the New Tab Page.",
16040
16113
  "optional": true,
16041
16114
  "choices": [
16042
16115
  {
@@ -16094,12 +16167,12 @@
16094
16167
  "type": {
16095
16168
  "$ref": "CreateType",
16096
16169
  "optional": true,
16097
- "description": "Specifies what type of window to create. Thunderbird does not support <value>panel</value> and <value>detached_panel</value>, they are interpreted as <value>popup</value>."
16170
+ "description": "Specifies what type of window to create. Thunderbird does not support <var>panel</var> and <var>detached_panel</var>, they are interpreted as <var>popup</var>."
16098
16171
  },
16099
16172
  "state": {
16100
16173
  "$ref": "WindowState",
16101
16174
  "optional": true,
16102
- "description": "The initial state of the window. The ``minimized``, ``maximized`` and ``fullscreen`` states cannot be combined with ``left``, ``top``, ``width`` or ``height``."
16175
+ "description": "The initial state of the window. The <var>minimized</var>, <var>maximized</var> and <var>fullscreen</var> states cannot be combined with <var>left</var>, <var>top</var>, <var>width</var> or <var>height</var>."
16103
16176
  },
16104
16177
  "allowScriptsToClose": {
16105
16178
  "type": "boolean",
@@ -16177,12 +16250,12 @@
16177
16250
  "drawAttention": {
16178
16251
  "type": "boolean",
16179
16252
  "optional": true,
16180
- "description": "Setting this to <value>true</value> will cause the window to be displayed in a manner that draws the user's attention to the window, without changing the focused window. The effect lasts until the user changes focus to the window. This option has no effect if the window already has focus."
16253
+ "description": "Setting this to <var>true</var> will cause the window to be displayed in a manner that draws the user's attention to the window, without changing the focused window. The effect lasts until the user changes focus to the window. This option has no effect if the window already has focus."
16181
16254
  },
16182
16255
  "state": {
16183
16256
  "$ref": "WindowState",
16184
16257
  "optional": true,
16185
- "description": "The new state of the window. The ``minimized``, ``maximized`` and ``fullscreen`` states cannot be combined with ``left``, ``top``, ``width`` or ``height``."
16258
+ "description": "The new state of the window. The <var>minimized</var>, <var>maximized</var> and <var>fullscreen</var> states cannot be combined with <var>left</var>, <var>top</var>, <var>width</var> or <var>height</var>."
16186
16259
  },
16187
16260
  "titlePreface": {
16188
16261
  "type": "string",
@@ -16248,7 +16321,7 @@
16248
16321
  "items": {
16249
16322
  "$ref": "WindowType"
16250
16323
  },
16251
- "description": "Conditions that the window's type being created must satisfy. By default it will satisfy <value>['app', 'normal', 'panel', 'popup']</value>, with <value>app</value> and <value>panel</value> window types limited to the extension's own windows."
16324
+ "description": "Conditions that the window's type being created must satisfy. By default it will satisfy <var>['app', 'normal', 'panel', 'popup']</var>, with <var>app</var> and <var>panel</var> window types limited to the extension's own windows."
16252
16325
  }
16253
16326
  ],
16254
16327
  "parameters": [
@@ -16270,7 +16343,7 @@
16270
16343
  "items": {
16271
16344
  "$ref": "WindowType"
16272
16345
  },
16273
- "description": "Conditions that the window's type being removed must satisfy. By default it will satisfy <value>['app', 'normal', 'panel', 'popup']</value>, with <value>app</value> and <value>panel</value> window types limited to the extension's own windows."
16346
+ "description": "Conditions that the window's type being removed must satisfy. By default it will satisfy <var>['app', 'normal', 'panel', 'popup']</var>, with <var>app</var> and <var>panel</var> window types limited to the extension's own windows."
16274
16347
  }
16275
16348
  ],
16276
16349
  "parameters": [
@@ -16285,7 +16358,7 @@
16285
16358
  {
16286
16359
  "name": "onFocusChanged",
16287
16360
  "type": "function",
16288
- "description": "Fired when the currently focused window changes. Will be :ref:`windows.WINDOW_ID_NONE`, if all windows have lost focus. **Note:** On some Linux window managers, WINDOW_ID_NONE will always be sent immediately preceding a switch from one window to another.",
16361
+ "description": "Fired when the currently focused window changes. Will be $(ref:windows.WINDOW_ID_NONE), if all windows have lost focus. **Note:** On some Linux window managers, WINDOW_ID_NONE will always be sent immediately preceding a switch from one window to another.",
16289
16362
  "filters": [
16290
16363
  {
16291
16364
  "name": "windowTypes",
@@ -16293,7 +16366,7 @@
16293
16366
  "items": {
16294
16367
  "$ref": "WindowType"
16295
16368
  },
16296
- "description": "Conditions that the window's type being focused must satisfy. By default it will satisfy <value>['app', 'normal', 'panel', 'popup']</value>, with <value>app</value> and <value>panel</value> window types limited to the extension's own windows."
16369
+ "description": "Conditions that the window's type being focused must satisfy. By default it will satisfy <var>['app', 'normal', 'panel', 'popup']</var>, with <var>app</var> and <var>panel</var> window types limited to the extension's own windows."
16297
16370
  }
16298
16371
  ],
16299
16372
  "parameters": [