1
0
mirror of https://github.com/moparisthebest/k-9 synced 2024-11-15 22:15:15 -05:00
Commit Graph

112 Commits

Author SHA1 Message Date
Jesse Vincent
9cac2cd5b7 applied compromise code reformatting:
find  src/com/android/email/ -name \*java|xargs astyle --style=ansi \
    --mode=java  --indent-switches --indent=spaces=4 --convert-tabs \
    --unpad=paren
2009-11-25 00:40:29 +00:00
Daniel Applebaum
694ba471d4 Eliminate race condition which causes multiple connections to IDLE
simultaneously
2009-11-23 03:16:44 +00:00
Daniel Applebaum
b551850827 Fixes Issue 188
Fixes Issue 394
Fixes Issue 763

Completely new Services architecture providing proper Service
lifecycle management.
  Long running tasks in MailService are executed in a separate thread,
  but the service is not stopped until the tasks are complete.

  SleepService for providing synchronous sleeps with proper WakeLock
  integration.

  Mail polling logic moved from MailService to PollService

  PushService to keep application from being killed while push is
  running.

Improved logging of IMAP protocol, including logging folder name,
thread and connection hashcode.

Don't put a failed connection back into the IMAP mConnections
storage. 

IMAP IDLE uses new SleepService for delaying between failed connection
attempts (allows phone to sleep and provides better reliability)

Use a ThreadLocal for ImapPusher wakelocks

Component enablement/disablement in Email is done only when components
are out of phase with desired state. (Issue 188)
2009-11-22 17:01:04 +00:00
Daniel Applebaum
a7a46ac6fa Fixes Issue 673 2009-11-19 15:19:23 +00:00
Jesse Vincent
fcd8ee9aeb Implement References/In-Reply-To/X-User-Agen. Fixes issue 42. Patch from e.w.stemle 2009-11-17 21:13:29 +00:00
Jesse Vincent
35ab566f43 Cleanup of the LocalFolder perf optimization from last night. 2009-11-17 19:25:46 +00:00
Jesse Vincent
c6b5a626bd Merge branch 'skip-deleted-in-sqlite'
* skip-deleted-in-sqlite:
  Create branch skip-deleted-in-sqlite
  First pass at doing our "don't show deleted messages in lists" filtering in SQL
2009-11-17 16:54:50 +00:00
Jesse Vincent
ae4af71379 remove dead code that someone commented out rather than delete. 2009-11-16 18:35:16 +00:00
Daniel Applebaum
f14ecdd66e Fixes Issue 574 2009-11-15 15:19:39 +00:00
Daniel Applebaum
22bfa74ddf Fixes Issue 733 2009-11-07 20:27:30 +00:00
Daniel Applebaum
0baf9d6134 Fixes Issue 722 2009-11-07 20:16:15 +00:00
Daniel Applebaum
90198382a4 Increase chance of Push mail picking up messages when connectivity is
restored.
2009-11-07 16:51:08 +00:00
Daniel Applebaum
8951363442 Fixes Issue 448
Fixes Issue 651
2009-10-28 12:45:22 +00:00
Daniel Applebaum
25e36da75d Fixes Issue 712. 2009-10-25 23:56:25 +00:00
Daniel Applebaum
f43b13446e Comment out intended comment. 2009-10-25 13:47:59 +00:00
Daniel Applebaum
75868b5aa4 Enhancements to WebDAV (Exchange) capabilities:
1) Automatically add / separators if not supplied by user.  Fixes
   Issue 290

2) Enable Move and Copy.

3) Enable setting a message to unread state.

4) Set authentication header for downloading and sending messages, so
   that those functions work with sites using Basic authentication.

5) Don't swallow log Exceptions.  Instead, allow Exceptions to
   percolate up to higher levels so that they can be logged into
   K9mail-errors.

6) Provide appendMessages function, so that Drafts get stored on the
   server.

7) Enable server-side message deletion, using user-selected Trash
   folder.
2009-10-25 02:58:26 +00:00
Daniel Applebaum
959404cc68 Issue 4: Implements Push Mail for IMAP accounts using IMAP IDLE
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
2009-10-22 00:41:06 +00:00
Bao-Long Nguyen-Trong
82491ab42b Fixed issue 671 by reverting the part of r788 that introduced it 2009-10-05 04:41:26 +00:00
Bao-Long Nguyen-Trong
02e41e6da0 Minor perf optimization using addHeader() instead of setHeader() 2009-09-26 22:47:13 +00:00
Bao-Long Nguyen-Trong
ac022ce467 . Fixed issue 626 and issue 528:
Date header was  not set properly
2009-09-25 19:12:37 +00:00
Bao-Long Nguyen-Trong
c2ca739293 . Added defensive code against empty self BCC address
This fixed issues 639 & 646
2009-09-25 17:02:50 +00:00
Daniel Applebaum
b4b1b081a7 Issue 624
Don't bother going to server while creating an ImapMessage from a UID
2009-09-24 01:06:24 +00:00
Bao-Long Nguyen-Trong
d61c7a192c Removed some logging (too verbose) 2009-09-15 05:20:12 +00:00
Bao-Long Nguyen-Trong
a4965f042c Fixed issue with encoding of email addresses in the header with non ascii characters. The way were doing it was only compatible with certain email clients (Thunderbird) but not with K-9 itself 2009-09-10 17:33:19 +00:00
Bao-Long Nguyen-Trong
c11c484718 Fixed issue 261:Commas within diplay names were considered as delimiters
--> Using built in Rfc822Tokenizer
2009-09-08 07:31:02 +00:00
Daniel Applebaum
f6c6012e11 Issue 553 2009-07-24 03:55:54 +00:00
Jesse Vincent
16a31428b5 patch from typester to fix UTF8 headers (such as subject) Resolves issue 534 2009-07-02 05:49:09 +00:00
Bao-Long Nguyen-Trong
c1ec077720 Added comment to document why we override MimeMessage.setRecipients() 2009-06-26 07:03:25 +00:00
Bao-Long Nguyen-Trong
6f8c83e8e3 Restored LocalMessage.setRecipients() and added checks for null and empty address list that allow to unset a recipient list 2009-06-26 06:55:32 +00:00
Bao-Long Nguyen-Trong
99562b8e01 Fixed issue 499 by removing LocalMessage.setRecipients() method to use the super implementation instead.
Anyone knows why was this method overridden in the first place?
2009-06-25 20:25:05 +00:00
Bao-Long Nguyen-Trong
b572c8e065 Fixed issue 497 2009-06-25 17:05:50 +00:00
Jesse Vincent
2cb5bdebb3 Set the MessageId header, rather than Adding it when restoring from the local store. Hopefully, this will fix issue 498 2009-06-18 14:54:06 +00:00
Bao-Long Nguyen-Trong
c6f6e995f6 . Fixed issue 77 and issue 489: It was a bug in Cc and Reply-To header parsing 2009-06-15 05:04:03 +00:00
Daniel Applebaum
10b9b0a05b Issue 117
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.
2009-06-09 03:11:35 +00:00
Jesse Vincent
a7d316ecdd Fix for Issue 328 and 332
Contributed by: Ludovic LANGE / ludovic.lange.android
2009-06-01 01:55:39 +00:00
Jesse Vincent
909f677f91 r62972@17h: jesse | 2009-05-07 10:49:32 -0400
First stab at a folderlist that doesn't know or care about messages
r62973@17h:  jesse | 2009-05-07 10:50:11 -0400
A very broken first stab at a message list that only knows about one folder.
r62974@17h:  jesse | 2009-05-07 10:50:44 -0400
When you go from an account list to an individual account, open a folderlist, not an fml
r62975@17h:  jesse | 2009-05-07 10:51:24 -0400
Update Welcome activity to open an ml instead of an fml
r62976@17h:  jesse | 2009-05-07 10:51:59 -0400
When setting up accounts is over, open an fl instead of an fml
r62977@17h:  jesse | 2009-05-07 10:52:51 -0400
Update MessageView to use folderinfoholders and messageinfoholders from the 'correct' classes.
r62978@17h:  jesse | 2009-05-07 10:59:07 -0400
MailService now notifies the fl instead of the fml. Not sure if it should also notify the ml. - will require testing
r62979@17h:  jesse | 2009-05-07 11:01:09 -0400
Switch MessagingController's notifications from notifying the FML to notifying an ML
r62980@17h:  jesse | 2009-05-07 11:25:22 -0400
Update AndroidManifest to know about the new world order
r62981@17h:  jesse | 2009-05-07 11:26:11 -0400
Try to follow the android sdk docs for intent creation
r62982@17h:  jesse | 2009-05-07 11:28:30 -0400
reset MessageList for another try at the conversion
r62983@17h:  jesse | 2009-05-07 11:47:33 -0400
This version doesn't crash and has a working 'folder' layer. now to clean up the message list layer
r62984@17h:  jesse | 2009-05-07 15:18:04 -0400
 move step 1
r62985@17h:  jesse | 2009-05-07 15:18:37 -0400
move step 1
r62986@17h:  jesse | 2009-05-07 15:22:47 -0400
rename step 1
r62987@17h:  jesse | 2009-05-07 17:38:02 -0400
 checkpoint to move
r62988@17h:  jesse | 2009-05-07 17:40:01 -0400
checkpointing a state with a working folder list and a message list that doesn't explode
r62989@17h:  jesse | 2009-05-07 17:40:26 -0400
Remove debugging cruft from Welcome
r62990@17h:  jesse | 2009-05-07 22:00:12 -0400
Basic functionality works.
r62991@17h:  jesse | 2009-05-08 04:19:52 -0400
added a tool to build a K-9 "Beta" 
r62992@17h:  jesse | 2009-05-08 04:20:03 -0400
remove a disused file
r62993@17h:  jesse | 2009-05-09 06:07:02 -0400
upgrading build infrastructure for the 1.5 sdk
r62994@17h:  jesse | 2009-05-09 06:22:02 -0400
further refine onOpenMessage, removing more folder assumptions 
r62995@17h:  jesse | 2009-05-09 20:07:20 -0400
Make the Welcome activity open the autoexpandfolder rather than INBOX
r62996@17h:  jesse | 2009-05-09 20:14:10 -0400
MessageList now stores the Folder name it was working with across pause-reload
r62997@17h:  jesse | 2009-05-09 20:14:26 -0400
Removing dead code from FolderList
r63060@17h:  jesse | 2009-05-10 00:07:33 -0400
Replace the old message list refreshing code which cleared and rebuilt the list from scratch with code which updates or deletes existing messages.
Add "go back to folder list" code
r63061@17h:  jesse | 2009-05-10 00:07:50 -0400
fix message list menus for new world order
r63062@17h:  jesse | 2009-05-10 00:08:11 -0400
Remove message list options from folder list menus
r63063@17h:  jesse | 2009-05-10 00:10:02 -0400
remove more message list options from the folder list
r63064@17h:  jesse | 2009-05-10 00:10:19 -0400
fix build.xml for the new android world order
r63065@17h:  jesse | 2009-05-10 00:39:23 -0400
reformatted in advance of bug tracing
r63066@17h:  jesse | 2009-05-10 05:53:28 -0400
fix our 'close' behavior to not leave extra activities around
clean up more vestigal code
r63067@17h:  jesse | 2009-05-10 18:44:25 -0400
Improve "back button / accounts" workflow from FolderList -> AccountList
r63068@17h:  jesse | 2009-05-10 19:11:47 -0400
* Add required code for the 'k9beta' build
r63069@17h:  jesse | 2009-05-10 19:12:05 -0400
Make the folder list white backgrounded.
r63070@17h:  jesse | 2009-05-10 19:12:26 -0400
* Include our required libraries in build.xml 
r63071@17h:  jesse | 2009-05-10 19:13:07 -0400
Added directories for our built code and our generated code
r63072@17h:  jesse | 2009-05-10 19:13:36 -0400
Added a "back" button image
r63073@17h:  jesse | 2009-05-10 20:13:50 -0400
Switch next/prev buttons to triangles for I18N and eventual "more easy-to-hit buttons" win
r63074@17h:  jesse | 2009-05-10 20:17:18 -0400
Tidy Accounts.java for some perf hacking.
r63081@17h:  jesse | 2009-05-10 22:13:33 -0400
First pass reformatting of the MessagingController
r63082@17h:  jesse | 2009-05-10 23:50:28 -0400
MessageList now correctly updates when a background sync happens
r63083@17h:  jesse | 2009-05-10 23:50:53 -0400
Tidying FolderList
r63084@17h:  jesse | 2009-05-10 23:51:09 -0400
tidy
r63085@17h:  jesse | 2009-05-10 23:51:27 -0400
tidy
r63086@17h:  jesse | 2009-05-11 00:17:06 -0400
Properly update unread counts in the FolderList after sync

r63087@17h:  jesse | 2009-05-11 01:38:14 -0400
Minor refactoring for readability. replace a boolean with a constant.
r63090@17h:  jesse | 2009-05-11 02:58:31 -0400
 now that the foreground of message lists is light, we don't need the light messagebox
r63091@17h:  jesse | 2009-05-11 17:15:02 -0400
Added a string for "back to folder list"
r63092@17h:  jesse | 2009-05-11 17:15:24 -0400
Added a message list header with a back button
r63093@17h:  jesse | 2009-05-11 17:15:54 -0400
Remove the "folder list" button from the options menu. no sense duplicating it
r63094@17h:  jesse | 2009-05-11 17:17:06 -0400
Refactored views, adding our replacement scrollable header 
r63184@17h:  jesse | 2009-05-12 07:07:15 -0400
fix weird bug where message lists could show a header element for a child
r63185@17h:  jesse | 2009-05-12 07:08:12 -0400
Add new-style headers to folder lists. reimplement "get folder by name" to not use a bloody for loop
r63211@17h:  jesse | 2009-05-12 18:37:48 -0400
Restore the former glory of the "load more messages"  widget.  it still needs an overhaul
r63296@17h:  jesse | 2009-05-12 23:23:21 -0400
Get the indeterminate progress bar to show up again when you click "get more messages"
r63297@17h:  jesse | 2009-05-13 02:40:39 -0400
Fixed off-by-one errors in click and keybindings for messagelist
r63298@17h:  jesse | 2009-05-13 06:04:01 -0400
Put the folder title in the name of the folderSettings popup
r63299@17h:  jesse | 2009-05-13 06:04:49 -0400
Reformatting. Removing debug logging
r63300@17h:  jesse | 2009-05-13 06:05:32 -0400
Fixing "wrong item selected" bugs in the FolderList 
r63328@17h:  jesse | 2009-05-13 13:20:00 -0400
Update MessageView for 1.5
r63329@17h:  jesse | 2009-05-13 13:50:29 -0400
A couple fixes to "picking the right item"
Titles on the message context menu
r63330@17h:  jesse | 2009-05-13 13:58:37 -0400
Added an "open" context menu item to the folder list
r63347@17h:  jesse | 2009-05-13 18:00:02 -0400
Try to get folderlists to sort in a stable way, so they jump around less in the ui
r63349@17h:  jesse | 2009-05-13 20:37:19 -0400
Switch to using non-message-passing based notifications for redisplay of message lists, cut down redisplay frequency to not overload the display
r63432@17h:  jesse | 2009-05-16 13:38:49 -0400
Android 1.5 no longer gives us apache.commons.codec by default and apache.commons.logging by default. Import them so we have em.
There's probably something smarter to do here.
r63438@17h:  jesse | 2009-05-16 14:12:06 -0400
removed dead code
r63439@17h:  jesse | 2009-05-16 14:30:57 -0400
Minor tidy
r63440@17h:  jesse | 2009-05-16 14:39:34 -0400
First pass implementation making MessageList streamy for faster startup
r63441@17h:  jesse | 2009-05-16 21:57:41 -0400
There's no reason for the FolderList to list local messages
r63442@17h:  jesse | 2009-05-16 21:58:57 -0400
Switch to actually refreshing the message list after each item is loaded
r63450@17h:  jesse | 2009-05-16 22:34:18 -0400
Default to pulling items out of the LocalStore by date, descending. (since that's the uneditable default ordering)
This makes our messages come out of the store in the order the user should see them
r63451@17h:  jesse | 2009-05-16 22:34:44 -0400
Set some new defaults for the FolderList
r63452@17h:  jesse | 2009-05-16 22:35:43 -0400
set some new message list item defaults
r63456@17h:  jesse | 2009-05-17 12:56:10 -0400
It's not clear that Pop and WebDav actually set us an InternalDate. I'd rather use that so that spam doesn't topsort. But I also want this to _work_
r63457@17h:  jesse | 2009-05-17 12:56:47 -0400
actually check to make sure we have a message to remove before removing it.
r63458@17h:  jesse | 2009-05-17 13:10:07 -0400
Flip "security type" to before the port number, since changing security type is the thing more users are likely to know/care about and resets port number
r63469@17h:  jesse | 2009-05-17 18:42:39 -0400
Provisional fix for "see the FoldeRList twice" bug
r63471@17h:  jesse | 2009-05-17 20:47:41 -0400
Remove title bar from the message view
r63544@17h:  jesse | 2009-05-20 23:53:38 -0400
folderlist tidying before i dig into the jumpy ordering bug
r63545@17h:  jesse | 2009-05-20 23:56:00 -0400
Killing dead variables
r63546@17h:  jesse | 2009-05-21 00:58:36 -0400
make the whole title section clicky
r63556@17h:  jesse | 2009-05-21 01:48:13 -0400
Fix where we go when someone deletes a message 
r63558@17h:  jesse | 2009-05-21 22:44:46 -0400
Working toward switchable themes
r63563@17h:  jesse | 2009-05-21 23:53:09 -0400
Make the MessageList's colors actually just inherit from the theme, rather than hardcoding black

r63567@17h:  jesse | 2009-05-22 10:14:13 -0400
Kill a now-redundant comment
r63571@17h:  jesse | 2009-05-22 19:43:30 -0400
further theme-independence work
r63572@17h:  jesse | 2009-05-22 19:55:23 -0400
gete -> get (typo fix)
r63573@17h:  jesse | 2009-05-22 22:48:49 -0400
First cut of a global prefs system as well as a theme preference. not that it works yet
r63577@17h:  jesse | 2009-05-24 14:49:52 -0400
Once a user has actually put in valid user credentials, start syncing mail and folders in the background instantly.
This gives us a much better "new startup" experience
r63578@17h:  jesse | 2009-05-24 14:55:00 -0400
MessageList doesn't need FolderUpdateWorker
r63579@17h:  jesse | 2009-05-24 17:57:15 -0400
Fix "get message by uid"
Switch to showing messages 10 by 10, rather than 1 by 1 for huge loadtime performance improvements
r63587@17h:  jesse | 2009-05-24 19:19:56 -0400
Cut down LocalMessage creation to not generate a MessageId or date formatter.
r63589@17h:  jesse | 2009-05-24 22:22:32 -0400
Switch to null-escaping email address boundaries, rather than a VERY expensive URL-encoding
r63590@17h:  jesse | 2009-05-24 22:23:21 -0400
Clean up our "auto-refresh the list when adding messages after a sync"
r63593@17h:  jesse | 2009-05-24 22:53:45 -0400
replace isDateToday with a "rolling 18 hour window" variant that's more likely to give the user a useful answer and is 30x faster.
r63595@17h:  jesse | 2009-05-24 23:54:14 -0400
When instantiating messges from the LocalStore, there's no need to clear headers before setting them, nor is there a need to set a generated message id
r63596@17h:  jesse | 2009-05-24 23:54:39 -0400
make an overridable setGeneratedMessageId
r63597@17h:  jesse | 2009-05-24 23:54:55 -0400
Remove new lies from comments
r63598@17h:  jesse | 2009-05-24 23:55:35 -0400
Replace insanely expensive message header "name" part quoting with something consistent and cheap that does its work on the way INTO the database
r63605@17h:  jesse | 2009-05-25 17:28:24 -0400
bring back the 1.1 sdk build.xml
r63606@17h:  jesse | 2009-05-25 22:32:11 -0400
Actually enable switchable themese and compilation on 1.1
r63692@17h:  jesse | 2009-05-29 23:55:17 -0400
Switch back to having titles for folder and message lists.
Restore auto-open-folder functionality
r63694@17h:  jesse | 2009-05-30 18:50:39 -0400
Remove several off-by-one errors introduced by yesterday's return to android titlebars
r63696@17h:  jesse | 2009-05-30 23:45:03 -0400
use convertView properly for performance and memory imrpovement in FolderList and MessageList
r63698@17h:  jesse | 2009-05-31 19:42:59 -0400
Switch to using background shading to indicate "not yet fetched"
r63701@17h:  jesse | 2009-05-31 21:28:47 -0400
Remving code we don't actually need these bits of apache commons on 1.1
2009-06-01 01:35:05 +00:00
Bao-Long Nguyen-Trong
93b95b85b2 Fixed NullPointerException when trying to send message with to text body (attachment only for example). The message would end up being stuck in the outbox. 2009-05-22 05:42:16 +00:00
Bao-Long Nguyen-Trong
49426f3107 Removed some logging that should not have made it to SVN 2009-05-21 18:53:27 +00:00
Bao-Long Nguyen-Trong
f4d7b54fb6 Bumped back FETCH_BODY_SANE_SUGGESTED_SIZE to 50K 2009-05-21 18:49:39 +00:00
Bao-Long Nguyen-Trong
bae5fba355 Better HTMLization of plain text emails using <pre>: spaces / identation are now properly displayed 2009-05-20 04:44:45 +00:00
Bao-Long Nguyen-Trong
d8724784dd . Minor memory usage optimization of how we HTMLize plain text emails 2009-05-20 04:39:51 +00:00
Bao-Long Nguyen-Trong
23797b62ee . Fixed issue 423:
. HTMLized version of plain text email is not loaded up as a MIME part of the message anymore. We use a custom seperate variable in the text body class.
2009-05-20 04:36:20 +00:00
Bao-Long Nguyen-Trong
435e2c3532 Fixed issue 404:
. Free up memory as we go in MessagingController.synchronizeMailboxSynchronous()
  . IMAP: We only do a partial fetch of the text body of large messages during background sync. This allow for faster syncs and avoid expensive parsing that lead to OutOfMemoryError
2009-05-20 04:27:51 +00:00
Bao-Long Nguyen-Trong
42194562c1 Minor optimization to avoid the OutOfMemoryError we have been getting 2009-05-17 05:59:28 +00:00
Bao-Long Nguyen-Trong
724c0aed31 Minor optiomization to help with the OutOfMemoryError pbs we have been getting 2009-05-12 05:31:21 +00:00
Bao-Long Nguyen-Trong
bb8629abe8 . Potential fix for issue 404: now doing all HTMLization in one pass to minimize the amount of String objects 2009-05-10 07:05:24 +00:00
Bao-Long Nguyen-Trong
5b0dee8cc0 . Large messages are now only retrieved once for POP3 servers that don't support the TOP command 2009-05-10 05:47:26 +00:00
Daniel Applebaum
97a4f97b64 Issue 234
Fix POP3 deletes.  Verizon uses - in their POP3 UIDs, and K9 was
assuming that only Local UIDs have -.  Removed that assumption.  Also,
after issuing DELE on POP3 connection, need to also issue a QUIT.  The
delete code in MessagingController now closes the folder after
deleting a message, which will slow down IMAP deletes, but also
conserve connections, so is probably a net benefit.
2009-05-09 15:22:36 +00:00
Jesse Vincent
718e27dab9 WebDavStore updates to fix authentication issues - based on design and counselling from ismarc31 2009-05-07 03:17:26 +00:00
Daniel Applebaum
96c98e3070 Reformat executeSimpleCommand 2009-05-06 00:16:47 +00:00