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.
where you're unlikely to even have access to them the first time you
walk through into the "Folders" preferences.
At the same time, move toward using a list preference widget, rather
than a custom activity.
* mail-on-sd: (40 commits)
Added more comments to explain how the locking mecanism works for LocalStore
Fixed wrong method being called during experimental provider initialization (since provider isn't enabled, that didn't harm)
Add more comments about how the various StorageProviders work and how they're enabled
find src/com/fsck/ -name \*.java|xargs astyle --style=ansi --mode=java --indent-switches --indent=spaces=4 --convert-tabs
French localization for storage related settings
Remove unused SD card strings (replaced with storage indirection)
Merge mail-on-sd branch from trunk
Reset mail service on storage mount (even if no account uses the storage, to be improved)
find src/com/fsck/ -name \*.java|xargs astyle --style=ansi --mode=java --indent-switches --indent=spaces=4 --convert-tabs
Migraion -> Migration
move the Storage location preference into preferences rather than the wizard.
Made LocalStore log less verbose Added @Override compile checks
Added ACTION_SHUTDOWN broadcast receiver to properly initiate shutdown sequence (not yet implemented) and cancel any scheduled Intent
Be more consistent about which SQLiteDatabase variable is used (from instance variable to argument variable) to make code more refactoring-friendly (class is already big, code extraction should be easier if not referencing the instance variable).
Added transaction timing logging
Factorised storage lock/transaction handling code for regular operations.
Use DB transactions to batch modifications (makes code more robust / could improve performances)
Merge mail-on-sd branch from trunk
Update issue 888 Added DB close on unmount / DB open on mount
Update issue 888 Back to account list when underlying storage not available/unmounting in MessageView / MessageList
...
Extracted notification related settings in separate class (see Issue 2268)
Update issue 371
Status: Fixed
Added ability to disable LED notification for new messages
When selecting one of the five vibrate patterns or the number of repetitions, we should demonstrate to the user what the vibrate pattern feels like. (Thanks to achen.code)
use the ListPreference instead of the EditTextPreference to set vibrate times.
Added option to automatically show images in message view (always, if sender is in contacts, never).
Patch by paulkilroy (thanks!)
Includes bugfix for the "Show pictures" on orientation change code introduced earlier.
Implements new setting "Sync remote deletions" which is checked by
default. When unchecked, K-9 Mail will no longer remove messages from
local storage just because the message was removed from the server.
This functionality works for all account types. Messages will still
be removed from the local store in order to stay within the limit
imposed by the "Number of messages to display" setting.
Fixes Issue 772
Fixes Issue 852
Issue 300: Handle incoming IMAP tokens in a case-insensitive manner
Issue 772: Add Yahoo workaround
Issue 852: Add configurable IMAP IDLE refresh frequency in Incoming
server settings
Also:
Add configuration option for whether push system executes a poll on
each connect.
Move the configuration for the maximum number of push folders to the
Incoming server Settings.
Not done, yet, but available for developers to use.
Definite things to be done in the short term:
1) Allow user to hide canned searches in Accounts Activity
2) Make newly arrived mail immediately appear in search results.
Possible improvements:
3) User-definable searches
4) Make newly deleted mail immediately disappear search results.
5) Make message with flag changes immediately appear/disappear from
search results.
6) Show search result size in Accounts Activity.
global config option rather than a per-account one. (But with a new
implementation.) - As we now have views that show messages across
accounts, this needed to become a global)
push technology. This provide a layer of safety in case of
misconfiguration (accidentally setting too many folders to push using
classes), which can bog down the device till it is unusable. On a G1,
25 folders is a very large load. Fixes Issue 871.
Also, move some pending commands to the background to make way for
more important user interface activity.
On each IMAP account, the expunge behavior can be set to expunge
messages in a folder as soon as a move or delete is performed on the
folder ("immediately"), each time the folder is polled, or only when
executed manually.
In the Message List, there is now an Expunge action in the option
menu.
In the Folder List, there is now an Expunge action in the context
menu (long-press on the folder).
For IMAP accounts, it is also possible to disable the copying of deleted messages to the
Trash folder, by setting the Trash folder to -NONE-.
Fixes Issue 536.
Separately, in WebDAV accounts, the user can now choose the
server-side equivalents of the special folders, just like for IMAP.
Make our use of email/mail consistent. It's "mail" except for "Email address"
Rephrase a number of unclear or oddly phrased messages (many dating from AOSP)
This commit contains the entirety of the changes performed in the
issue4-1.X branch from revision 718 through revision 851. Because the
issue4-1.X branch was up-to-date with trunk revision 847 at revision
849, the source of this commit was not an "svn merge". Instead, it is
merely a copy of all changed files from the issue4-1.X branch to my
trunk working copy and a straight commit.
Also:
Issue 551
Issue 628
Issue 650
Issue 654
Issue 656
Issue 682
Issue 696
Issue 30
Provide support for multiple identities. Identities can be managed in
the Account Settings. While composing a message, an identity can be
chosen for sending. Identity information and signature edits are
saved in a header field, so that they survive being synced to the
server and back.
Provide support for editing the quoted text, either for replies or
forwards. The quoted text is immediately editable, in a separate
editor from the main body. When saved in a draft, the two are
contatenated, but the length of the main body is saved with the
identity information, and is used to split the two parts again, when
opening the draft.
Provide preference for which folder is automatically expanded when
entering the Folder/Message list.
Can be set to -NONE-, so that no folder is automatically expanded.
Defaults to Inbox, which is like the default behavior of the core
Android Email.
Fails to move the automatically opened folder to the top of the
screen. This needs more work.
The already selected folder should be highlighted (or otherwise
indicated) in the ChooseFolder Activity. This needs more work.
3.
Each remote Store (IMAP, POP3, WebDAV) can provide indications to the
higher level classes as to whether copy and move are implemented.
Currently, copy and move are only provided by ImapStore.java. When
the facilities are not available, the user interface suppresses the
menu options.
The available destination folders can be configured using folder
classes.
Copy results in null message bodies in the destination copy of the
message until the next sync. This is a problem that occurred with
deletes previously, and is likely a fault with the copyMessages method
of LocalStore.java.
Utilizes a modified version of the ChooseFolder.java Activity that
debuachedsloth contributed in a patch attached to Issue 285 on 16 Feb
2008.
Account settings) for scrolling the navigation buttons with the
message, or keeping the buttons on screen. Scrolling mode can be
automatically switched based on availability of keyboard. (Issue 197
and Issue 194)
Add ability to flag/unflag message from options menu
1) Eliminate the top row Next Message and Previous Message
2) In the bottom buttons for portrait mode, replace Reply and Forward
with Prev and Next
Justification: if you're going to be replying or forwarding, you're
about to embark on a lot of typing, anyway. Having to hit Menu
isn't an undue burden.
3) Prev goes to the adjacent *older* message, next goes to the
adjacent *newer* message
4) In the bottom buttons for landscape mode, added Prev and Next as the
outer buttons
5) Add Account option for hiding the bottom buttons when the keyboard
is available.
Also, temporarily (hopefully!) reverted the instant delete from the
MessageView because it isn't working right. The method here is slower
but safer.
features are added to K9mail:
1) Show unread message count on each folder
2) Sum unread count of all shown folders in an account to the account display
3) Periodically check selected folders for new mail, not just Inbox
4) Don't refresh folder when opened (unless folder is empty)
5) Show date and time of last sync for each folder
6) Fix timer for automatic periodic sync (use wakelock to assure completion)
7) Optimize local folder queries (speeds up account and folder lists)
8) Show Loading... message in status bar indicating which folder is being synced
9) Eliminate redundant sync of new messages (performance enhancement)
10) Improve notification text for multiple accounts
11) Do not automatically sync folders more often than the account-specific period
12) Use user-configured date and time formats
13) Select which folders are shown, using configurable Classes
14) Select which folders are synced, using configurable Classes
15) Added context (long press) menu to folders, to provide for Refresh
and Folder Settings
16) Status light flashes purple when there are unread messages
17) Folder list more quickly eliminates display of deleted and out-of-Class folders.
18) Delete works
19) Mark all messages as read (in the folder context menu)
20) Notifications only for new unread messages
21) One minute synchronization frequency
22) Deleting an unread message decrements unread counter
23) Notifications work for POP3 accounts
24) Message deletes work for POP3 accounts
25) Explicit errors show in folder list
26) Stack traces saved to folder K9mail-errors
27) Clear pending actions (danger, for emergencies only!)
28) Delete policy in Account settings
29) DNS cache in InetAddress disabled
30) Trapped some crash-causing error conditions
31) Eliminate duplicate copies to Sent folder
32) Prevent crashes due to message listener concurrency
33) Empty Trash
34) Nuclear "Mark all messages as read" (marks all messages as read in
server-side folder, irrespective of which messages have been downloaded)
35) Forward (alternate) to allow forwarding email through other programs
36) Accept text/plain Intents to allow other programs to send email through K9mail
37) Displays Outbox sending status
38) Manual retry of outbox sending when "Refresh"ing Outbox
39) Folder error status is persisted
40) Ability to log to arbitrary file
Fixes K9 issues 11, 23, 24, 65, 69, 71, 79, 81, 82, 83, 87, 101, 104,
107, 120, 148, 154