Daniel Applebaum
f4ceb8d2bc
Fixes Issue 673
...
Fixes Issue 806
Make sure to close opened folders in finally blocks in
MessagingController.
Don't make another connection when deleting or copying a
message. (Nicely speeds up copy and delete, as well.)
Another connection is still created for creating a folder while
copying or deleting (a pretty rare event), and the IMAP IDLE
connections are not re-used for user initiated activity.
2010-01-16 16:22:20 +00:00
Daniel Applebaum
a89bd8e081
Only use the IDLE timeout for the folder while actually in IDLE state.
...
May help with Issue 1022, Issue 952, Issue 895
2010-01-16 14:14:12 +00:00
Daniel Applebaum
f3e06b4ef5
Adjust imports for new location of remote control classes
2010-01-15 05:05:41 +00:00
Daniel Applebaum
d245e81679
Reorganize remote control pieces.
...
Automatically build jar file for external applications.
Create convenience functions in K9RemoteControl so that external
applications do not need to know the details of handling the Intents
and broadcasts.
Send a permission string in the broadcasts so that unauthorized
applications cannot intercept communication to authorized
applications, such as K-9 Mail.
2010-01-15 05:02:27 +00:00
Daniel Applebaum
6c22507dfb
Implementation of a Receiver and Service to provide for the capability
...
to accept control from other Android applications. Allows for
changing both Account-level and global settings. Account-level
settings can be applied to a single Account or to all Accounts.
The file class file derived from src/com/fsck/k9/K9RemoteControl.java
will be bundled into a JAR file for use by external applications.
This facility will be used for:
Issue 215
Issue 730
Issue 864
Issue 884
2010-01-14 04:33:50 +00:00
Jesse Vincent
d95705af4d
Speed up the page-flip animation now that we load message views so much faster.
2010-01-14 01:26:09 +00:00
Jesse Vincent
64469e4b4e
ran artistic style against src/com/fsck/k9/
2010-01-14 01:07:28 +00:00
Jesse Vincent
34379dc9be
Improved batch button behavior for touch view
2010-01-14 01:07:13 +00:00
Jesse Vincent
25b9f41491
Don't automatically show the batch buttons when entering multiselect mode
2010-01-14 00:33:13 +00:00
Jesse Vincent
e7807e0cf7
"Advanced" account context menu now works right
2010-01-14 00:00:38 +00:00
Jesse Vincent
9bfc01ca32
Add a preference for the new "touch friendly" view.
2010-01-13 03:37:13 +00:00
Jesse Vincent
d5c185545b
Add a "done" to the batch buttons.
...
Make the "done" entry in batch buttons only show up in touch mode
2010-01-13 03:37:04 +00:00
Jesse Vincent
6343f3af5a
If we're in touch mode and have selected items, any item click is now a select
2010-01-13 03:36:49 +00:00
Jesse Vincent
7ab9b8ee3c
Added a first-pass view optimized for high-rez devices with both select and star
2010-01-13 03:36:43 +00:00
Jesse Vincent
5617b629d3
Added a "preview" column to messages containing a brief summary of the message
2010-01-13 03:36:36 +00:00
Jesse Vincent
23e46b82ce
Batch-update buttons now show up when you actually have selected items.
2010-01-13 03:36:30 +00:00
Bao-Long Nguyen-Trong
1c5d240564
Made batch op button's text sensitive to which messages are selected
2010-01-12 19:39:20 +00:00
Daniel Applebaum
14587c3f30
Eliminate pointless, useless, deprecated, NOOP, incorrectly commented call.
2010-01-12 19:28:21 +00:00
Daniel Applebaum
64525028de
Move execute into a re-usable location
2010-01-12 14:09:30 +00:00
Bao-Long Nguyen-Trong
11b7157772
Guess mime type (when not specified) of attachments of received messages using file name extension so that we can open them
2010-01-12 02:06:46 +00:00
Bao-Long Nguyen-Trong
f965417479
Exclude deleted messages from search results
2010-01-12 00:59:13 +00:00
Bao-Long Nguyen-Trong
230428d16a
Fixed issue 1017: Added 'Search' menu option in account list screen
2010-01-12 00:56:51 +00:00
Jesse Vincent
0bdb02dc24
Minor reformatting
2010-01-09 23:49:44 +00:00
Jesse Vincent
e49fdc9913
Added a comment about why we're setting a click handler
2010-01-09 23:49:36 +00:00
Jesse Vincent
fb223ea61d
rename a paremeter to better reflect its use: nextWidget->showWidget
2010-01-09 23:49:31 +00:00
Jesse Vincent
553625b72b
Comment an attribute
2010-01-09 23:49:25 +00:00
Jesse Vincent
497ca01586
swap the order of compared values for a bit more logical sanity
2010-01-09 23:25:15 +00:00
Jesse Vincent
5802b84e16
Reorder methods for better logical grouping
2010-01-09 23:25:10 +00:00
Jesse Vincent
9db97e214d
Restore Bao-long's original design for "widgets on the left" being a
...
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)
2010-01-09 23:02:40 +00:00
Jesse Vincent
512177cded
Remove more of the old messagepassing ui update code in favor of 'runonuithread'
2010-01-09 21:47:10 +00:00
Daniel Applebaum
e0b98cac21
Correct Exception text
2010-01-09 19:49:54 +00:00
Jesse Vincent
19adadae11
actually specify the size of our BufferedOutputStream as 1k to parallel
...
other implementations and quiet down a consistent warning in our android
logs
2010-01-08 23:47:34 +00:00
Jesse Vincent
e1c686d40d
Fix NullPointerException when the user clicks on a "new mail"
...
notification. Resolves Issue 1001
2010-01-08 23:18:44 +00:00
Daniel Applebaum
81fd4749cc
Properly synchronize some new methods
2010-01-08 16:55:36 +00:00
Daniel Applebaum
f29f5adc4b
Eliminate carriage returns from reply and forward text.
...
Fixes Issue 518
2010-01-08 04:27:58 +00:00
Jesse Vincent
8285766506
Now that messageview is faster, don't start displaying the new message
...
until _after_ we flip.
2010-01-07 01:29:59 +00:00
Daniel Applebaum
57acd3232e
Don't show account-level chips until unread count is known.
2010-01-06 14:12:19 +00:00
Daniel Applebaum
9c761419c9
Preparatory code for providing move/delete/copy/setFlag capabilities
...
across multiple folders.
2010-01-06 05:41:19 +00:00
Daniel Applebaum
56a4b94748
Put the color chip with read/unread controlled brightness at all
...
levels except MessageView
2010-01-06 05:23:32 +00:00
Daniel Applebaum
a5166e3c2d
Fixes Issue 963
...
MessagingController was calling the MessagingListener twice for
deleted messages. By the time the second call was made, some
Activities already had removed the message holder, so a null holder
was being put on the list.
This change should prevent the double calls, and adds protection
against have the MessageList MessagingListener called with a message
that is no longer in the MessageList.
Also, some logical cleanups.
2010-01-06 04:54:24 +00:00
Daniel Applebaum
2b37fe6864
Restore long-lost debugging line
2010-01-06 03:44:23 +00:00
Daniel Applebaum
29947ef3c9
Delete obsolete commented out code.
2010-01-06 03:40:24 +00:00
Jesse Vincent
a4510696aa
It turns out that blindly enabling/disabling views is _Very_ expensive.
...
Now we only do it when switching messageview entries if it's actually
necessary
2010-01-04 02:11:33 +00:00
Jesse Vincent
a926086f4b
Replace old message passing code with more modern runonuithread code
2010-01-04 02:06:40 +00:00
Daniel Applebaum
60a2ceb604
Fixes Issue 934 by removing excess calls to finish()
2010-01-04 00:50:19 +00:00
Daniel Applebaum
d58d1c60c0
Proper super call
2010-01-04 00:48:33 +00:00
Daniel Applebaum
c86a46deb1
Preparatory for more BroadcastReceivers
2010-01-04 00:47:11 +00:00
Daniel Applebaum
33495135ac
Respect account ring setting for notifications
2010-01-04 00:41:26 +00:00
Daniel Applebaum
41729af9b2
Add explicit ring setting for notifications
2010-01-04 00:40:41 +00:00
Jesse Vincent
6caec1100c
Incorrect (and ancient code) would accidentally clobber the wrong attachment
...
(and only one, rather than all) when deleting a message.
2010-01-03 23:23:13 +00:00
Jesse Vincent
483655fa20
Log.w shouldn't be wrapped in an "if debug" statement.
2010-01-03 20:34:22 +00:00
Jesse Vincent
6a8ea924c9
Further log cleanup
2010-01-03 02:07:21 +00:00
Jesse Vincent
eb54a99aab
EOLs got twisted by something. fixing
2010-01-03 02:07:14 +00:00
Jesse Vincent
0e273893bd
Further log tweaking
2010-01-03 02:00:20 +00:00
Jesse Vincent
a926911e7f
rerun astyle
2010-01-03 01:50:51 +00:00
Jesse Vincent
1c5073039a
Further debug/info/verbose logging cleanup
2010-01-03 01:50:41 +00:00
Jesse Vincent
875dc31d5a
Log message cleanup
2010-01-03 01:50:32 +00:00
Jesse Vincent
f9e8c877ff
Wrap looging in if (DEBUG) statements.
2010-01-03 01:50:25 +00:00
Jesse Vincent
953b784fb9
First pass at fixing Issue 963 (explosions when trying to iterate over a
...
remotely deleted message) introduced in r1204.
(Before my all-day meeting)
2009-12-29 17:06:13 +00:00
Jesse Vincent
fb6d11222a
Switch from old, scary message passing to more modern "run on ui thread" for Accounts.java
...
40 fewer lines of code.
2009-12-29 17:05:44 +00:00
Jesse Vincent
2ef3b15c87
make sure we don't accidentally open the context menu on a message when we're in multiselect mode.
2009-12-29 17:05:17 +00:00
Jesse Vincent
3e3b4d447d
Fix reversed color chip alpha
2009-12-28 12:56:59 +00:00
Daniel Applebaum
60b02909a3
Announce folder status changes when syncing gets updated unread count.
...
Adjust logging levels for folder sync.
2009-12-27 20:19:41 +00:00
Jesse Vincent
bbd9e56770
Actually display 250/500/1000 options for "number of messages to sync"
2009-12-27 17:47:30 +00:00
Jesse Vincent
794f515bc8
Numerous small fixes to search results
2009-12-27 17:22:57 +00:00
Jesse Vincent
a53e9d1b89
on search, only fire one start event and one end event
2009-12-27 17:22:51 +00:00
Jesse Vincent
6c383256a2
Remove duplicate code from onCompose. make starting message composition without an account actually work
2009-12-27 17:22:44 +00:00
Jesse Vincent
0a2d9b9c9f
make sure search results aren't updated incorrectly on incoming messages
2009-12-27 17:22:38 +00:00
Jesse Vincent
bfaba499fe
Fix the Search header on search results
2009-12-27 17:22:32 +00:00
Jesse Vincent
63b6f6bf62
Refactoring to better propagate "folder" along with messages as they're instantiated
2009-12-27 17:22:26 +00:00
Jesse Vincent
d60521f06f
further push down our "is this message for us" logic.
2009-12-27 17:20:56 +00:00
Jesse Vincent
6c7782b4bd
remove another alternate calling convention for addOrUpdateMessage. Code
...
will get still cleaner when we start propagating back message folders as objects
2009-12-27 17:20:50 +00:00
Jesse Vincent
c608ffb672
Eliminate a variant of addOrUpdateMessage that was only called once
2009-12-27 17:20:28 +00:00
Jesse Vincent
1c4a0be0da
enable searching of messages
2009-12-27 17:20:21 +00:00
Jesse Vincent
21238a3084
If we get a message from listLocalMessages and we're doing a search,
...
assume it's for us. Later, we may want to be smarter about that.
2009-12-27 17:20:13 +00:00
Jesse Vincent
a736a4267c
Only trigger our "loading" indicator if the account matches "our" account
2009-12-27 17:20:06 +00:00
Jesse Vincent
204289a4ff
when opening a message for display or edit, use its notion of account, not the folder's.
2009-12-27 17:19:56 +00:00
Jesse Vincent
f6756879ef
Temporarily disable "left-handed" controls if we're doing a search.
...
view configuration needs to move to be global for this to work right.
2009-12-27 17:19:49 +00:00
Jesse Vincent
bc61c90e1a
make the auto-open folder not trigger if we're doing a search
2009-12-27 17:15:46 +00:00
Jesse Vincent
81d72a2d8c
make the color chip genuinely calculated per message
2009-12-27 17:15:38 +00:00
Jesse Vincent
ed19a8284e
Propagate per-message account info into MessageInfoHolder and FolderInfoHolder
2009-12-27 16:54:23 +00:00
Jesse Vincent
302deea53e
addOrUpdateMessage calls now propagate the account of the found message
2009-12-27 16:54:12 +00:00
Jesse Vincent
3ad69c799d
When listing off messages, make sure that our "refresh the list" fires,
...
even if we didn't start off empty.
This could have prevented updated messages from showing up
2009-12-27 16:54:06 +00:00
Jesse Vincent
1b74c176a2
Add multi-account search to the MessagingController
2009-12-27 16:53:59 +00:00
Jesse Vincent
70f35a537e
If we loaded a message from the local store without an associated folder, load up its folder.
2009-12-27 16:53:51 +00:00
Jesse Vincent
da45b81866
minor query reformatting
2009-12-27 16:53:45 +00:00
Jesse Vincent
580a562085
Lift the generic getMessages and searchForMessages up to the "store"
...
level from the "folder" level so we can search for messages across
folders
2009-12-27 16:53:37 +00:00
Jesse Vincent
6dcb10add6
Lift our column list for "load messages" out to the LocalStore, as the
...
first part of lifting "get messages" out of "folder" for search
2009-12-27 16:53:31 +00:00
Jesse Vincent
ddd6db3a7c
Made our search activity actually exist
2009-12-27 16:53:24 +00:00
Jesse Vincent
09ecd2bc9a
Make it possible to instantiate a localFolder by id.
2009-12-27 16:53:16 +00:00
Jesse Vincent
4cec247699
Make it possible to populate a MessageInfoHolder without a FolderInfoHolder
2009-12-27 16:53:09 +00:00
Jesse Vincent
fe67f0a40c
temporarily disable new unfinished search code
2009-12-27 16:53:03 +00:00
Jesse Vincent
47b338fb94
Move message population to the message class.
2009-12-27 16:52:57 +00:00
Jesse Vincent
0005a8ea60
Remove lies from a comment
2009-12-27 16:52:50 +00:00
Jesse Vincent
54ad16edb8
Push a "is this the right folder?" check into our "add/remove messages from the message list, to better support search
2009-12-27 16:52:45 +00:00
Jesse Vincent
81a5820e5d
swap the order of two methods for readability
2009-12-27 16:52:39 +00:00
Jesse Vincent
7c8a7b1f27
Remove an old comment/obsolete code
2009-12-27 16:52:33 +00:00
Jesse Vincent
2a77001acc
First steps toward adding search results
2009-12-27 16:52:26 +00:00
Jesse Vincent
9a40457a2a
Remove giant commented out method - that's what we have version control history for
2009-12-27 16:52:17 +00:00
Jesse Vincent
854da2664c
Unify our "guard" against syncing the outbox or errors folder
2009-12-27 16:52:06 +00:00
Jesse Vincent
e2f84c4fa8
wrap a debug message in a debug-mode check; eliminate a temporary variable
2009-12-27 16:51:59 +00:00
Jesse Vincent
94e61ab62c
Extract out the listener we're using when we ask for new messages.
...
It may eventually get further extracted.
2009-12-27 16:51:45 +00:00
Jesse Vincent
9d417133b5
reduce duplication of code
2009-12-27 16:51:38 +00:00
Jesse Vincent
c953ff2c1b
Bulletproof MessageList against not having a folder loaded
2009-12-27 16:51:32 +00:00
Jesse Vincent
5c8a0a908c
Remove a lie from a comment
2009-12-27 16:51:25 +00:00
Jesse Vincent
5e0bbf18aa
Extract parts of title setting code into their own methods
2009-12-27 16:51:19 +00:00
Jesse Vincent
5b907c2d94
Remove an overridden subroutine that's now a noop
2009-12-27 16:51:13 +00:00
Jesse Vincent
c8bcad6a21
Refactor and reverse logic to be a bit cleaner
2009-12-27 16:51:06 +00:00
Jesse Vincent
721e298542
Invert some logic to clean up MessageList a bit
2009-12-27 16:51:00 +00:00
Jesse Vincent
56cdfa88c9
tiny grammar fix
2009-12-27 16:50:44 +00:00
Jesse Vincent
151ae5a2a3
First pass at adding "Searchable" infrastructure
2009-12-27 16:50:37 +00:00
Jesse Vincent
9ba102599f
Fix SQL statmeent
2009-12-27 16:50:28 +00:00
Jesse Vincent
9bcc991ec8
Extract out the code to "load mesages from SQL" from inside our "load messages in this folder" code
2009-12-27 16:50:21 +00:00
Jesse Vincent
9796cb6487
First rouind of extracting the "load messages from the db" column list
2009-12-27 16:50:14 +00:00
Daniel Applebaum
1ea96796d6
Add a global preference for enabling animations, beyond those that are
...
necessary. Defaults to "enabled."
2009-12-27 00:54:19 +00:00
Daniel Applebaum
ea65007b99
Disable inter-message animations, except when initiated by a swipe.
...
Fixes Issue 926.
2009-12-26 18:31:55 +00:00
Daniel Applebaum
070fd635d4
Allow user to set a limit on the number of folders to be handled with
...
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.
2009-12-24 18:08:23 +00:00
Jesse Vincent
8fca99bef4
Fixes to unbreak incoming account setup after CRAM_MD5 implementation
2009-12-21 17:49:16 +00:00
Daniel Applebaum
4859ff7e8f
Add wakelocks for calling between MailService and Push/PollServices.
...
I don't know if these are truly necessary, but they should not be
harmful and might be a big reliability boost.
2009-12-21 01:48:15 +00:00
Daniel Applebaum
41d7ca51a3
Implementation of complete IMAP two-phase "delete/expunge" behavior.
...
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.
2009-12-20 23:13:49 +00:00
Jesse Vincent
e82bb72a97
non-downloaded messages once again have a grey background.
...
Fixes Issue 899
2009-12-20 06:54:30 +00:00
Jesse Vincent
7e967c6110
removed now-unused subject coloring code
2009-12-20 06:54:23 +00:00
Jesse Vincent
b8b9e20e81
Hang onto our messaging controller rather than constantly reacquiring
...
it.
2009-12-20 06:14:10 +00:00
Jesse Vincent
2c9fc8b997
Backwards compatibility for the CRAM-MD5 implementation
2009-12-20 06:14:04 +00:00
Jesse Vincent
3914a78b53
xargs astyle --style=ansi --mode=java --indent-switches \
...
--indent=spaces=4 --convert-tabs --unpad=paren
2009-12-20 05:41:43 +00:00
Jesse Vincent
5a85446779
Initial implementation of CRAM-MD5 support for IMAP and SMTP.
...
Patch contributed by Russ Weeks <rweeks@gmail.com> in
<605ac1c0-808a-4f67-8c4d-736eec9587f8@e27g2000yqd.googlegroups.com>
2009-12-20 05:15:20 +00:00
Daniel Applebaum
921b022fb5
Enhanced header in Accounts, MessageList and Folder to show the unread
...
count, scoped for the Activity, the in-progress operation, the account
on which the operation is in progress, the folder for the operation,
when appropriate, and the progress of the operation, when it applies
to multiple items. For the MessageList, also use the determinate
progress bar to show progress for synchronization of the folder being
displayed.
Fixes Issue 924.
Also, a minor change that might help with Issue 913, by putting the
insertion of the pending command into a background thread.
2009-12-20 00:02:46 +00:00
Jesse Vincent
4f42907315
preferences doesn't actually tie to an account. it shouldn't be in the account context menu
2009-12-18 03:49:52 +00:00
Jesse Vincent
462d4098e0
Removed debugging log messages that clutter and slow the runtime app
2009-12-18 03:49:19 +00:00
Jesse Vincent
91ad70cd5d
Killed a bunch of debug logging that clutters (and slows) production apps
2009-12-18 03:48:24 +00:00
Jesse Vincent
83409d78fa
remove a bunch of debug logging that was cluttering production logs
2009-12-18 03:46:46 +00:00
Jesse Vincent
3f841d1494
removing debugging messages
2009-12-18 03:46:05 +00:00
Jesse Vincent
f94823cba4
Enable the new synchronous messagelist population. Perhaps
...
counter-intuitive, but it's a whole lot faster
2009-12-18 02:39:41 +00:00
Jesse Vincent
25306fad83
unify the synchronous and asynchronous codepaths for listlocalmessages
2009-12-18 02:36:37 +00:00
Jesse Vincent
157455f26b
As part of a refactoring move the "start" callback into the subthread.
2009-12-18 02:35:46 +00:00
Jesse Vincent
dc543fa9e3
now that we have more messages coming out of the database faster,
...
there's less use in special-casing the first 5
2009-12-18 02:34:50 +00:00
Jesse Vincent
c3e903942d
we no longer need to check the deleted flag at this layer as we do it further in.
2009-12-18 02:34:13 +00:00
Jesse Vincent
5789b385a8
first pass at working around messaging controller perf insanity
...
port listLocalMessagesSynchronous back into the MessagingController
revert some stuff
2009-12-18 02:33:18 +00:00
Jesse Vincent
48e1f31b43
Revert commit 829 @gcode - it was a performance optimization which added
...
nontrivial code complexity for what's now a nil performance gain
2009-12-18 02:32:17 +00:00
Jesse Vincent
c8bd377e76
minor refactoring to cut down on repeated method calls
2009-12-17 05:24:48 +00:00
Jesse Vincent
ce44165634
Fix our auto-expand folder behavior - Fixes issue 918
2009-12-17 03:45:37 +00:00
Jesse Vincent
9ae7934cad
improve the MessageList->FolderList flow. Should fix Issue 916
2009-12-16 05:26:43 +00:00
Jesse Vincent
85b4c43e10
Revert "Initial implementation of loading only 25 rows from the message list"
...
This reverts commit 7056cb918e3bc71465053bff4070b8d3b28761a7.
2009-12-16 05:26:21 +00:00
Bao-Long Nguyen-Trong
18ea30d00f
More fix for issue 810: Delete intents are not also broadcasted when we delete a message because it was deleted on the server
2009-12-15 19:43:46 +00:00
Jesse Vincent
dc2f752f11
Bulletproofing against running IMAP Copy/Move commands with null messagelists. Fixes Issue 914
2009-12-15 17:40:04 +00:00
Jesse Vincent
bf4e37d3b5
Revert "An attempt to make message lists start displaying messages earlier by precomputing a list item."
...
Sadly, it caused explosions
This reverts commit 5b321f4d0893ad5538d229b1c84f6806d0d8cbfe.
2009-12-15 04:26:53 +00:00
Jesse Vincent
34c111eb47
Kill the no-op Welcome activity to improve startup performance
2009-12-15 04:06:32 +00:00
Jesse Vincent
a1302afe75
Initial implementation of loading only 25 rows from the message list
...
from SQLite at once. The hope is that this will improve perceived
performance on large folders by starting message display sooner.
In the case of a background sync while we're loading, we _may_ end up
doing more work than necessary, since we implement paging by "date
received"
2009-12-15 02:52:01 +00:00
Jesse Vincent
aa4f3535eb
When we load up the "Accounts" activity as K-9 starts up, jump straight
...
to either the FolderList or the MessageList rather than always going
through the FolderList
2009-12-15 02:51:52 +00:00
Jesse Vincent
5d34ef2f19
An attempt to make message lists start displaying messages earlier by precomputing a list item.
2009-12-15 02:51:44 +00:00