Provides for storing Folder Settings in the central Preferences
Storage as a back-up to the settings stored on each folder. In this
way, even if the LocalStore DB is recreated or otherwise lost, Folder
Settings can be recovered.
1) Does not change the methodology used to read settings while
running, nor the changes in r3107 & r3116 which tremendously improve
Accounts list loading time.
2) Loads Folder Settings from Preferences and stores on the folder
only when creating a new LocalFolder
3) Saves Folder Settings to Preferences and the DB row every time the
Folder Settings are changed.
4) When upgrading from DB version 41 to 42 or later, copies all
settings for existing folders from the DB storage to the Preferences
Storage.
5) Transactional bulk folder creation and single pass local folder
existence check during "Refresh folders" operation drastically reduces
time spent when refreshing folders from the remote store.
6) Uses prepared statement during Editor commit to reduce Preference
storing time.
Probably needs a reversion of r3239, but I'm unfamiliar with
translations, so am leaving that to others' discretion.
This revision respects the intention of r3011 that when K-9 Mail is
set for pushing only no message is displayed, as that condition is a
normal state. However, it provides valuable feedback in other cases
that synchronization is off-line, as was done in r1433.
Although the case when the user has intentionally set no account for
polling or pushing can be considered "normal" and therefore unworthy
of a message, it turns out to be a significant burden to detect that
situation when the network is offline, since we normally do not even
try to figure out the account configurations in that case. Therefore,
without making substantial, otherwise unwarranted, changes to
MailService.java, "Syncing off" would be displayed sometimes to such a
user, and sometimes not. Since it is presumably a rare case, and
there is minimal harm to display the "Syncing off" message, the
message will be consistently displayed when no account is set for
polling or pushing.
Note to translators:
"Syncing off" is different than "Polling off". The new phrase "Syncing
off" means that K-9 Mail is not performing any synchronization with
any mail server. The prior non-English phrases for "Polling off" are
currently in-place as translations for "Syncing off", as it seems that
the meanings are close enough that it would be better to show the
obsolete translations that to fallback to the English "Syncing off".
However, better translations of "Syncing off" would be welcome.
"smaller" (and smaller) fonts by allowing the Accounts and Folder List
items to have a height smaller than the normal Android minimum. This
option is off by default to maintain existing behavior for
uninterested parties. The preferences text is not especially
compelling so could certainly be changed if better phrasing is found.
This reverts commit 9fc94115adb58dcd8a64227a93d0e6e707d7752d.
It turns out that disabling the "View attachment" button (rather than
giving a useful error message telling the user what mime type the app
needs to support) was confusing to users.
Refactor forwarding header (header-style quote header) into individual string pieces that are assembled in code to accommodate future HTML version of headers.
Introduced four new strings for translation.