Adds support to set the badge text color for all our action buttons.
Also adds tests for the badge text, badge text color and badge
background color, which have not been tested before.
The tests for label and title only existed for the browser action
button, which was acceptable since all action buttons once shared
the same implementation. However, with the introduction of the unified
toolbar, the implementation for the browser action button changed
and the original implementation used by the compose and message
display action button became untested. Adding these missing tests here
as well.
Differential Revision: https://phabricator.services.mozilla.com/D210372
--HG--
extra : amend_source : 14674da4953a99683966aa307290fb53fcc57b8f
This partially reverts a change introduced by adding support for unified
folders and virtual folders in general. We usually do not expose the
search folders of virtual folders in the UI, except for unified folders.
The original implementation however did expose them for all virtual
folders, which caused infinity loops in FolderManger.traverseSubfolders(),
if such a virtual folder searched its parent.
This patch stops exposing search folders as subfolders, except for
unified folders.
Differential Revision: https://phabricator.services.mozilla.com/D210298
--HG--
extra : amend_source : cea65727c1bef01c3f5cf02a040a08b9a50b40c4
The two patches will not be needed with v0.17.1.
Adding the rnp_symbols script to pick up any export changes.
"libsexp" is renamed to "libsexpp", so the vendoring will need
to account for that.
Differential Revision: https://phabricator.services.mozilla.com/D204665
--HG--
extra : amend_source : fa66f10d8be42268acae9bcbb09da7b8885c67fa
In this version of sync, we'll only store the data that's absolutely necessary to recreate things.
Non-essential data, such as the colour of a calendar, will be added later.
I've almost completely rebuilt the code for creating and applying sync records. All records are
now cached in the user's profile so that we don't destroy information we don't understand yet
(forward compatibility). This isn't backwards-compatible, existing data will be wiped from the
server automatically because the engines' version numbers have been incremented.
I've also overhauled the tests. They are very repetitive but cover almost 100% of the code.
Differential Revision: https://phabricator.services.mozilla.com/D205784
--HG--
rename : mail/services/sync/modules/engines/accounts.sys.mjs => mail/services/sync/modules/engines/servers.sys.mjs
rename : mail/services/sync/test/unit/test_account_store.js => mail/services/sync/test/unit/test_server_store.js
rename : mail/services/sync/test/unit/test_account_tracker.js => mail/services/sync/test/unit/test_server_tracker.js
extra : amend_source : 54e3f0d713980172b02585b0de36278390379b87
When the view gets hidden, the resize observers are informed that its height is 0. Consequently
when it becomes unhidden, some calculations are performed using a cached height of 0, before the
resize observers are updated.
When the header itself is hidden, we DO cache a height of 0, because that is the actual height.
Differential Revision: https://phabricator.services.mozilla.com/D210245
--HG--
extra : amend_source : 28fb039d266f9884f4c3cd768e003f23a28fd6ec
When a user has multiple POP3 accounts, instead of trying to run
them all at the same time, this causes them to be run sequentially
so that staggering the check for new message time is not needed
to avoid slow-downs/freezes.
This also changes the logging "prefix" to include the account's
server key (e.g., "server5") along with the run sequence number to
make it easier to distinguish each account's logged entries. E.g.,
prefix is now "pop3.server5.22": info for server 5, 22nd check
for new mail during session.
This still contains serveral dump calls for tracing that will be
removed before final approval. There are also some overly verbose
comments that explain the changes that probably need editing/removal
but are left in for now.
Differential Revision: https://phabricator.services.mozilla.com/D206738
--HG--
extra : amend_source : 64ec6867ffe0f04893a0533cc7f9670a1486772a
Thunderbird has two special content script types (one for the editor of
the compose window and the other for messages being displayed) for which
we have the dedicated composeScripts API and messageDisplayScripts API.
Manifest V3 moved content script related methods into the scripting API
and applied the following changes:
* no longer allows to use code strings as content scripts
* dropped its child implementation
* has a dedicated unregister function (the register function no longer
returns an object with an unregister() method)
* has a getRegisterdScripts() function
To adjust to these changes, we deprecate both our current content script
APIs and add new ones to the scripting API.
This patch only updates existing tests to work with the new
implementation. A follow-up will add tests for the new features of the
added APIs
Differential Revision: https://phabricator.services.mozilla.com/D210241
--HG--
rename : mail/components/extensions/parent/ext-extensionScripts.js => mail/components/extensions/parent/ext-scripting-tb.js
extra : amend_source : b676ef477ffaa03baf33d79eacb7800ee67e0797
The scripting API was added for Manifest V3. This adds tests for this
new API.
Differential Revision: https://phabricator.services.mozilla.com/D210103
--HG--
rename : mail/components/extensions/test/browser/browser_ext_composeScripts.js => mail/components/extensions/test/browser/browser_ext_composeScripts_mv3.js
rename : mail/components/extensions/test/browser/browser_ext_contentScripts.js => mail/components/extensions/test/browser/browser_ext_contentScripts_mv3.js
rename : mail/components/extensions/test/browser/browser_ext_messageDisplayScripts.js => mail/components/extensions/test/browser/browser_ext_messageDisplayScripts_mv3.js
extra : amend_source : 4eece16a87e9f5e1c61d360d43f9de9cf522429e
Mozilla supports the scripting API (which was introduced for Manifest V3)
already in Manifest V2. This adds tests for the scripting API in Manifest V2.
Differential Revision: https://phabricator.services.mozilla.com/D210102
--HG--
extra : amend_source : 324b77a8b52693e63844c2e3fb3431de04a79744
We do not support the method to hide tabs, so we do not need to list the
permission, which shows up the in the documentation and may be
confusing.
Differential Revision: https://phabricator.services.mozilla.com/D210282
--HG--
extra : amend_source : a9c3b6e36e8e9df9c67c4b217a92a2ad0a9209be
- Fix a recent regression (from bug 1892074) by restoring the thread state when all messages have been loaded in any view searching one or more folders.
- Enable DBViewWrapper._threadExpandAll and threadPane.restoreThreadState() for synthetic views as well. This is necessary to use Grouped-By-Sort in Expand-All state without performance impact.
Differential Revision: https://phabricator.services.mozilla.com/D209493
--HG--
extra : amend_source : 3b08301bd81c8743cae1b9a60c8af1ff143204e3
We disable JavaScript by other means.
Differential Revision: https://phabricator.services.mozilla.com/D210275
--HG--
extra : rebase_source : 50fc62c077f0b2c5bd9446ab4fcac8e20e0bd29e
extra : amend_source : 51302a4c49a5b83a3f544d2b9141d647772fdc5c
After we introduced the unified toolbar, the action manifest property
`default_area` was removed for Manifest V3. This however introduced
an incompatibility with Firefox, and a simple WebExtension using an
action button would throw. This patch re-adds support for the property,
but ignores it.
Differential Revision: https://phabricator.services.mozilla.com/D210127
--HG--
extra : amend_source : bab78c4511cfa33f4738a89dac4ac8c486f74495
- Implement the `mail.identity.default.archive_recreate_inbox` preference and the corresponding `nsMsgIdentity` attribute `archiveRecreateInbox`. This defines how the inbox folder is handled when archiving while preserving the folder structure. If the pref is `false`, the inbox is treated like the root folder, if `true`, it is recreated like any other folder.
- Make this preference available in the account archive options. Update and fix the example shown there.
Differential Revision: https://phabricator.services.mozilla.com/D208350
--HG--
extra : amend_source : a17e36bde568e13d2735587e8a54255b9d68bca9
Really a Windowx XP thing...
Differential Revision: https://phabricator.services.mozilla.com/D210022
--HG--
extra : rebase_source : 2de0e3e970367bbcb1528e2310ba5bf68e3095ad
extra : amend_source : 5213eceaddb12b829352c406c1603c7099ec607e
Resorting the messages is only necessary when changing from threaded or grouped to unthreaded.
Differential Revision: https://phabricator.services.mozilla.com/D208830
--HG--
extra : amend_source : 81cc22b8e615e0959a36b214a4e590d47e370a07