The importers for accounts and mail can't have worked from Thunderbird 68 onwards, as they depend
on a component that was removed. The only useful part remaining is the address book importer, and
Becky stores address book data in vCard files. We have a vCard file importer.
Differential Revision: https://phabricator.services.mozilla.com/D211968
--HG--
extra : rebase_source : 05924b50eb4ad3d5fa59590e8d458aaddfa53aa1
extra : amend_source : b5f84e9b83ea74865dc3718c2923abefebcc2a24
This is a cosmetic change. I implemented `viewType` as one of my first
tasks for the Thunderbird project and naming things is always difficult.
It turned out (and I was correctly called out on it), that the name is
not correct. The property which can be set to `ungrouped`,
`groupedByThread` and `groupedBySortType` should be named `groupType`.
I would like to correct that for Manifest V3.
Differential Revision: https://phabricator.services.mozilla.com/D211861
--HG--
extra : rebase_source : 96d970d42fec6100051b0abf0b66a18d9a042d05
extra : amend_source : 97239550162fe05c9ca8a77c8f0f0f0b40b7af6b
We stopped using this with the mail tabs rebuild.
Differential Revision: https://phabricator.services.mozilla.com/D211958
--HG--
extra : amend_source : a4cbe7fdfe4d379eae65d2cd70658159d3650294
In order to find an identity which supports encryption, we are exposing
the encryption capabilities. This is a read-only property and cannot be
changed by extensions.
Differential Revision: https://phabricator.services.mozilla.com/D211823
--HG--
extra : moz-landing-system : lando
This is adding methods to get and modify the encryption settings of a
given compose window.
Differential Revision: https://phabricator.services.mozilla.com/D211558
--HG--
extra : moz-landing-system : lando
This fixes an untested edge case, whose behavior has changed after
switching to the MimeTreeEmitter. Following Thunderbirds
behavior, messages which are forwared inline and do not have a dedicated
filename are named `ForwardedMessage.eml`.
Differential Revision: https://phabricator.services.mozilla.com/D211649
--HG--
rename : mail/components/extensions/test/xpcshell/messages/nestedMessages.eml => mail/components/extensions/test/xpcshell/messages/nestedMessageInline.eml
extra : moz-landing-system : lando
This is a basic test of only some of the command-line flags. It's more of an exploration of what I
can and can't do in a Marionette test.
Differential Revision: https://phabricator.services.mozilla.com/D211798
--HG--
rename : calendar/test/browser/data/import.ics => mail/test/marionette/data/import.ics
rename : mail/components/addrbook/test/browser/data/import.vcf => mail/test/marionette/data/import.vcf
extra : moz-landing-system : lando
This code hasn't been used since we replaced the CSV address book importer, except for adding
fields to imported Outlook contacts, and it's unclear to me whether that was even working.
Differential Revision: https://phabricator.services.mozilla.com/D211684
--HG--
extra : moz-landing-system : lando
These tests have been importing contacts using XPCOM to find an importer, then using it to do the
importing. Thunderbird doesn't actually import contacts in that way – it uses AddrBookFileImporter,
so the tests should do that too. The importers are dead code.
Differential Revision: https://phabricator.services.mozilla.com/D211682
--HG--
extra : rebase_source : 46eff510cf6b0705e4690f1454be585ea6882d22
extra : amend_source : dcc8c872dea7b74f01ee1e128763c23b920958d9
This test was failing because layout happened and the document was resized after the test started
clicking on things. I also refactored the test a bit.
Differential Revision: https://phabricator.services.mozilla.com/D211689
--HG--
extra : rebase_source : 62b2fe264a75761904bcb86e21414abc92aa0164
We morphed the folders API into a true id-based API (deprecating the
usage of an object with `accountId` and `path` as input parameter) and
we enforce the new `folderId` as the only supported input parameter in
Manifest V3. This adjusts the documentation accordingly.
Differential Revision: https://phabricator.services.mozilla.com/D208108
--HG--
extra : rebase_source : c8dfc80be4ee656b0618b21a3e5cc89ef471e425
This looks larger than it really is. For contacts, we currently return a
property bag, which includes flat properties like "PrimaryEmail" or
"FirstName", which is how the old address book stored contact data. We
kept supporting these properties even after the internal storage was
moved to vCard. The vCard was just another property in said property bag
and we applied some voodoo to allow extension developers to continue
to set the flat properties, or the vCard.
In MV3 we stop doing that and just work with the vCard. This affects
the functions `contacts.create()` and `contacts.update()`, and also the
events `contacts.onCreated` and `contacts.onUpdated`.
This patch is not changing MV2 behavior.
Since we no longer expose the internal property bag, this also removes
access to things like `preferDisplayName`, which is still a property of
the internal card. I believe it is bad practice to expose these
internals. If there is a request to be able to access such values,
they should be moved as X-Properties to the vCard (which would sync
these settings with the vCard between Thunderbird instances).
Differential Revision: https://phabricator.services.mozilla.com/D209384
--HG--
extra : rebase_source : c2075a8657eee795609319b78ad5a7ea3764dfd0
The methods to retrieve accounts and folders may return a lot of folder
and subfolder data. In review I saw that most add-ons do not use the
information and it may have unnecessary performance implications.
The initial implementation always returned all folders and the optional
flag was added only later after such performance implications have been
reported. We however could not change the default in Manifest V2 without
breaking add-ons. Doing that now for Manifest V3.
Differential Revision: https://phabricator.services.mozilla.com/D208312
--HG--
extra : rebase_source : b82e5eada4906752ebd26f03e18637d0cfd7ee6a
We haven't used this code in production since the import UI was rebuilt in Thunderbird 102.
Differential Revision: https://phabricator.services.mozilla.com/D211476
--HG--
extra : rebase_source : d553518ef699780f44ff8727cae6223c7e17f68a
extra : __touch-noise__ : 1298631866
extra : amend_source : 88c627256d825fc22f2a36a81ca4230c9f867b3e
Introducing a `selectedFolders` property for the `OnShowData` and
`onClickData` of the `menus` API. Removing the old `selectedFolder`
property for Manifest V3.
The UI currently does not yet support to select multiple folders, but
the API is now ready to actually provide multiple values.
This also removes the `selectedAccount` property for Manifest V3, since
we return the rootFolder now.
Differential Revision: https://phabricator.services.mozilla.com/D210764
--HG--
extra : moz-landing-system : lando
This adds the function to convert HTML snippets to plain text. It was not
added as an option of `messages.listTextParts()`, because it can be used
in other scenarios as well. Introducing it as a stand-alone function
without being bound to a specific message increases its usefulness.
Differential Revision: https://phabricator.services.mozilla.com/D211001
--HG--
extra : moz-landing-system : lando
The MimeTreeDecrypter has some calls to `Services.prompt.*` which need
to be supressed when used from a WebExtension API (because they do not
interact with the UI).
This adds a new option `promptUser` which defaults to true, and is
disabled for the WebExtension API.
Differential Revision: https://phabricator.services.mozilla.com/D211168
--HG--
extra : moz-landing-system : lando