nsImapMailFolder is the sole caller of CreateFileForDB().
Differential Revision: https://phabricator.services.mozilla.com/D224176
--HG--
extra : rebase_source : c0ef4d8feda4da9124469ea5907457ccaa9c4cc2
No functional change, but ensures no charset garbling across xpcom boundaries.
Differential Revision: https://phabricator.services.mozilla.com/D224198
--HG--
extra : rebase_source : bcce1cf0b75b547ad15204079eb7560968a036cc
Backing out bug 1907691 and fixing it without any additional cleanup.
Differential Revision: https://phabricator.services.mozilla.com/D224103
--HG--
extra : rebase_source : 5b3841d2d57fb27ec2f1c4bfd926c37ce594ea3e
extra : amend_source : 44a584aa7e58d3f749ded8821f4ddc23920b6d11
This file doesn't do anything, it's not included in the parent directory's moz.build.
Differential Revision: https://phabricator.services.mozilla.com/D223905
--HG--
extra : amend_source : 15bdf5d0265acb59820753044062263ccef4148a
Since https://phabricator.services.mozilla.com/D193762 has landed, multiple selected contacts with display names that are dragged into the compose window are treated as attachments. This patch excludes dragged items containing the "text/x-moz-address" flavor from being checked for valid attachments and handles them directly.
Differential Revision: https://phabricator.services.mozilla.com/D222539
--HG--
extra : moz-landing-system : lando
Using `isSupersetOf` makes the intention of the code clearer, and hopefully prevents future mistakes.
Differential Revision: https://phabricator.services.mozilla.com/D223076
--HG--
extra : rebase_source : fcc0f5a47d2898e1586de2e9b2c4c6c34aa20192
extra : amend_source : 0f4e9afe01790928bf17d8d760d16fc2ed3343c1
This clarifies the type of a few variables.
Ensure header value+length are not out of sync in a couple of places.
Differential Revision: https://phabricator.services.mozilla.com/D221032
--HG--
extra : amend_source : 490f9bec75dd288cb20be42f1b74ae6df6fe3b38
If no sender or timestamp are provided, then defaults will be used:
"-" for sender, in line with previous versions of TB.
Current time for received timestamp.
Differential Revision: https://phabricator.services.mozilla.com/D221748
--HG--
extra : moz-landing-system : lando
- Introduce m_filterTargetFoldersMsgMovedCount to track moved messages
- Set msgIsNew to false for filter-moved messages to decrease inbox new message count
- Update filter target folders new message counts and fire notification at the end of message download
Differential Revision: https://phabricator.services.mozilla.com/D220509
--HG--
extra : moz-landing-system : lando
Very few users will have this, as it's not been shown in the UI for many many years.
Differential Revision: https://phabricator.services.mozilla.com/D221865
--HG--
extra : moz-landing-system : lando
These test sending messages from the compose window with a variety of connection/authentication
problems. They are closely related to the tests named browser_getMessages with the same suffixes.
Sending a message presents a variety of prompt windows to the user, particularly when something
goes wrong. I've tried to avoid writing tests that lock in this behaviour in the hope that one day
somebody will overhaul it.
Differential Revision: https://phabricator.services.mozilla.com/D220857
--HG--
extra : moz-landing-system : lando
Instead, use <key>.invalid as hostname.
For CreateIncomingServer(), error out directly.
Differential Revision: https://phabricator.services.mozilla.com/D219747
--HG--
extra : rebase_source : d4e2a1ea642a50cc39f2ec6b1be77c3b85269e20
Not strictly a comment change, but purely cosmetic. Doesn't affect generated code.
Differential Revision: https://phabricator.services.mozilla.com/D218278
--HG--
extra : moz-landing-system : lando
This patch removes all the support for the various generic PropertyBag interfaces.
It adds a new interface, nsIMsgTxn, which extends nsIMsgTxn to add msgWindow and txnType read-only attributes.
Methods in nsMessenger that previously QIed to nsIPropertyBag2 now just QI to nsIMsgTxn instead to access the dedicated txnType attr.
Differential Revision: https://phabricator.services.mozilla.com/D218399
--HG--
extra : amend_source : bd62cadadb35599190f310ed619a585d4ae3c3c5
== How to Test ==
- Delete profile
- Add new & authenticate O365 account with EWS enabled
- Close & reopen Client
- [Should NOT be prompted again for credentials]
- Add new Google IMAP account
- At granular Google permissions prompt, choose at least email
- [Account should be set up and email should be downloaded]
If testing with an existing account, after successfully re-authenticating once on first restart, subsequent restarts should not prompt for authentication.
[[ https://treeherder.mozilla.org/jobs?repo=try-comm-central&revision=1e6580b1922db87dab6fb64a11b8f19f95d209ca | Try run here ]]
Props to darktrojan for the help here!
Differential Revision: https://phabricator.services.mozilla.com/D219157
--HG--
extra : amend_source : f88afe28c12a0cc779b6030ea79ff0ce5cb67be0
The order is unimportant as long as we have all of the scopes we are looking for.
Differential Revision: https://phabricator.services.mozilla.com/D219046
--HG--
extra : rebase_source : 04c793b00965be517fed3e0b3970584d6491bf97
- Refactor and fix `nsMsgSearchDBView::DeleteMessages()` to apply the correct deletion method for messages from different accounts.
- Enable undeleting of messages marked as deleted.
- Mark messages as read before deleting them (see bug 1859677)
- Update `m_totalMessagesInView` correctly when messages are moved or marked as deleted.
Differential Revision: https://phabricator.services.mozilla.com/D215380
--HG--
extra : amend_source : 30d4ad367f74641b67f2e61c2eb86c3bb668274b
This essentially backs out the changeset for bug 519687 to fix the regression regarding Quick
Filter and adds the functionality for multi-folder search views.
Differential Revision: https://phabricator.services.mozilla.com/D218496
--HG--
extra : amend_source : 4c820786f2d3bd9149dd986bf2377f9ce022c947
## Setup needed
- Go to this function: https://searchfox.org/comm-central/rev/78281e3c069c538140edb1b86dd975f7cf423bbf/mailnews/base/src/OAuth2.sys.mjs#121
- And add `params.append("enable_granular_consent", "true");` to enable granular consent.
### How to test
**When setting up a mail account, and**
1. Granting all permissions,
- does the mail account work?
- can address books and calendars be set up in the mail setup wizard?
- can address books and calendars be set up separately after the mail setup wizard?
2. Granting only the mail permission,
- does the mail account work?
- can address books and calendars be set up in the mail setup wizard? (no automatic attempt should be made)
- can address books and calendars be set up separately after the mail setup wizard?
3. Not granting the mail permission,
- do we handle this like a cancellation of the prompt?
4. Not granting any permissions but accepting the prompt,
- do we handle this like a cancellation of the prompt?
5. If we set up an address book or calendar first, can we still set up mail?
Differential Revision: https://phabricator.services.mozilla.com/D217659
--HG--
extra : moz-landing-system : lando
To set the secondary sort, `DBViewWrapper` lets the view sort itself twice in many cases such as
entering/leaving Quick Filter or leaving Grouped By Sort, as well as just changing the sort type
itself. Since `nsMsgDBView::Sort()` already takes the secondary sort into account, these
additional calls can be removed, which can significantly improve performance depending on the
individual sort types.
When leaving Grouped By Sort, the secondary sort type will always be set to Order Received, which
prevents having a comparably slow sort type such as by From, Recipient, or Correspondents as
secondary sort in place.
Differential Revision: https://phabricator.services.mozilla.com/D217971
--HG--
extra : amend_source : 734d4576517f02968371cd35bad740906afabbfa
Please ignore the backout commit in the previous push - it was mistakenly targetting the wrong patch.
--HG--
extra : amend_source : 3c5374b9bbbdb81a8469a120c47a1db58ae7137e
nsIMsgMailNewsUrl carries significant semantic and behavioral load beyond the
functionality of a URI. It's undesirable to continue its use, and step one is to
not use it in new code.
Differential Revision: https://phabricator.services.mozilla.com/D215982
--HG--
extra : moz-landing-system : lando
This initial version of the system tray crate is geared specifically for use on Linux
via the Status Notifier Item specification. However in the interests of collapsing similar
codepaths we've left just enough space to allow expanding this into a more general purpose
entry point for all supported platforms.
Note that it was very difficult to support x86 (32-bit) builds due to needing build environment changes
with regards to libpthread, so at this point the feature is explicitly requiring a 64-bit build of Thunderbird.
This can be alleviated in time with future iterations to ksni and experimenting with
`zdbus` to drop the `libdbus-sys` dependency, opening up the door to many other D-BUS
services in Thunderbird.
Note that this is a collaborative effort between Heather Elssworth and myself,
with Heather having completed the original groundwork and research. I focused more
on the integration aspects and threading model. This feature wasn't possible without
Heather's work.
Differential Revision: https://phabricator.services.mozilla.com/D215249
--HG--
rename : third_party/rust/dbus/examples/adv_server.rs => third_party/rust/dbus-0.6.5/examples/adv_server.rs
rename : third_party/rust/dbus/examples/server.rs => third_party/rust/dbus-0.6.5/examples/server.rs
rename : third_party/rust/dbus/src/connection.rs => third_party/rust/dbus-0.6.5/src/connection.rs
rename : third_party/rust/dbus/src/connection2.rs => third_party/rust/dbus-0.6.5/src/connection2.rs
rename : third_party/rust/dbus/src/crossroads/crossroads.rs => third_party/rust/dbus-0.6.5/src/crossroads/crossroads.rs
rename : third_party/rust/dbus/src/crossroads/handlers.rs => third_party/rust/dbus-0.6.5/src/crossroads/handlers.rs
rename : third_party/rust/dbus/src/crossroads/info.rs => third_party/rust/dbus-0.6.5/src/crossroads/info.rs
rename : third_party/rust/dbus/src/crossroads/mod.rs => third_party/rust/dbus-0.6.5/src/crossroads/mod.rs
rename : third_party/rust/dbus/src/crossroads/stdimpl.rs => third_party/rust/dbus-0.6.5/src/crossroads/stdimpl.rs
rename : third_party/rust/dbus/src/dispatcher.rs => third_party/rust/dbus-0.6.5/src/dispatcher.rs
rename : third_party/rust/dbus/src/matchrule.rs => third_party/rust/dbus-0.6.5/src/matchrule.rs
rename : third_party/rust/dbus/src/objpath.rs => third_party/rust/dbus-0.6.5/src/objpath.rs
rename : third_party/rust/dbus/src/signalargs.rs => third_party/rust/dbus-0.6.5/src/signalargs.rs
rename : third_party/rust/dbus/src/stdintf.rs => third_party/rust/dbus-0.6.5/src/stdintf.rs
rename : third_party/rust/dbus/src/tree/factory.rs => third_party/rust/dbus-0.6.5/src/tree/factory.rs
rename : third_party/rust/dbus/src/tree/leaves.rs => third_party/rust/dbus-0.6.5/src/tree/leaves.rs
rename : third_party/rust/dbus/src/tree/methodtype.rs => third_party/rust/dbus-0.6.5/src/tree/methodtype.rs
rename : third_party/rust/dbus/src/tree/mod.rs => third_party/rust/dbus-0.6.5/src/tree/mod.rs
rename : third_party/rust/dbus/src/tree/objectpath.rs => third_party/rust/dbus-0.6.5/src/tree/objectpath.rs
rename : third_party/rust/dbus/src/tree/utils.rs => third_party/rust/dbus-0.6.5/src/tree/utils.rs
rename : third_party/rust/dbus/src/watch.rs => third_party/rust/dbus-0.6.5/src/watch.rs
rename : third_party/rust/dbus/src/tree/factory.rs => third_party/rust/dbus-tree/src/factory.rs
extra : moz-landing-system : lando
Stop using the tb. prefix, and put the probes in component relative metrics.yaml files
Differential Revision: https://phabricator.services.mozilla.com/D217002
--HG--
extra : rebase_source : ba46a84da2a78c3e00a36c94de63e45eb07afb6d
extra : amend_source : c3dc50206c65e5d3cf74605af24cf453d4dbc1e0
When --disable-mapi is set in mozconfig, the build fails with a Python KeyError due
to buildconfig.substs not having a "MOZ_MAPI_SUPPORT" key.
Using defined() here correctly handles non-present key.
Differential Revision: https://phabricator.services.mozilla.com/D216882
--HG--
extra : amend_source : 1fb1ee525555ad9525ce07d96384692a0580d383
Since `nsMsgDBView::findIndexFromKey` is only used by `threadPane.restoreSelection` (and doesn't work properly for cross-folder views anyway), I suggest replacing it with `nsMsgDBView::FindIndexForMsgURI`. This new function does everything needed to restore a selected message by its URI and doesn't throw, so `threadPane.restoreSelection` can be simplified quite a bit.
This also includes a change to `threadPane._jsTree` to allow nested batch processing to prevent a performance regression when using quick filters on views with selected messages.
Differential Revision: https://phabricator.services.mozilla.com/D214677
--HG--
extra : rebase_source : 3620f45e4dc9cd392314af7c6b1ae9000306fb60
EWS requires Bcc recipients to be passed separately from the others. This is
because non-Bcc recipients are included in the MIME content, and therefore don't
need to be included separately in the request. But for compliance and privacy,
we don't include Bcc recipients in the MIME content.
I've also used this opportunity to make the type of the recipients a bit more
structured, which isn't a huge flow change since we would end up doing the same
parsing on the SMTP server side. So this is a small change that ends up saving a
bit of complexity on the server implementation's side.
Differential Revision: https://phabricator.services.mozilla.com/D212838
--HG--
extra : rebase_source : 77dc5f1821633c46b1c053fcce294fae088a4dcc
On top of removing the burden on server implementations for ensuring the
Message-ID exists, this change also fixes a potential issue with sending MDN
replies with a Message-ID that differs from the one in the reply's header.
Differential Revision: https://phabricator.services.mozilla.com/D212696
--HG--
extra : rebase_source : cc6b9e9fe36fa950c96994ebd2adb4b5af4eec7b
EWS requires Bcc recipients to be passed separately from the others. This is
because non-Bcc recipients are included in the MIME content, and therefore don't
need to be included separately in the request. But for compliance and privacy,
we don't include Bcc recipients in the MIME content.
I've also used this opportunity to make the type of the recipients a bit more
structured, which isn't a huge flow change since we would end up doing the same
parsing on the SMTP server side. So this is a small change that ends up saving a
bit of complexity on the server implementation's side.
Differential Revision: https://phabricator.services.mozilla.com/D212838
--HG--
extra : moz-landing-system : lando
On top of removing the burden on server implementations for ensuring the
Message-ID exists, this change also fixes a potential issue with sending MDN
replies with a Message-ID that differs from the one in the reply's header.
Differential Revision: https://phabricator.services.mozilla.com/D212696
--HG--
extra : moz-landing-system : lando
These migrations have been in version 102, 115, and now 128.
Differential Revision: https://phabricator.services.mozilla.com/D215708
--HG--
extra : rebase_source : 9f417349b75f8dba2aa9132ddf27be0c6a7da36c
extra : amend_source : fafcc9cf3debcddd0e12a55bc018f0230c3a557a