feat: disable background io per account, available apis in rust and jsonrpc #5314
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
api: rust: add
set_disable_background_io
andget_disable_background_io
to aAccounts
(the account manager)api: jsonrpc: add
set_disable_background_io
method andAccount::Configured.background_io_disabled
propertyapi: select account now starts and stops io for "background disabled" accounts
This is partly a port of the desktop "disable sync all" option, the other part is making it per account.
So you can define that an account should be excluded from background syncing.
Using this will remove the start/stop io call code complexity from desktop.
This will be useful for advanced users that want to control their network traffic:
Do not connect to a specific email account in the background unless it is actively selected:
References:
TODO:
Note that this feature for earliest 1.45, so not priority currently.
Closes #4296