Jesse Vincent
2a4792eb60
update a comment about an uncommon code path
2010-10-21 20:49:05 +00:00
Jesse Vincent
8d9c074a27
Add gmail-style "to me" and "cc me" indicators in messagelist
2010-10-21 20:48:45 +00:00
Jesse Vincent
d02ddda19b
When doing a message search, break it into "first 10" and "more" -
...
because a long SQL query takes more time before starting to return
results, K-9 was increasingly slow on large folders.
Doing two searches may take marginally more time but starts getting
results back to the UI much faster.
2010-10-21 20:48:28 +00:00
Jesse Vincent
e05784d41d
Running heavy operations on the UI thread makes K-9's UI slow and
...
freezy. addOrUpdateMessages is very heavy. and very common.
2010-10-21 20:48:12 +00:00
Marcus Wolschon
0933fad9b3
Update issue 7031
...
http://code.google.com/p/android/issues/detail?id=7031
added removeDialog() for every dismissDialog()
2010-10-18 09:53:22 +00:00
Jesse Vincent
b2a08d969b
Revert "For the common case of "getMessage" where we actually have the object in"
...
This doesn't work on initial sync, since the comparisons fail and you're
left with duplicates in the displayed mailbox
This reverts commit fa1c88bec348d0132acc60a320626bf0ca1170ec.
2010-10-16 08:27:58 +00:00
Jesse Vincent
496677dad4
Calculate preview for html-only messages
...
Fixes 2465
2010-10-16 08:27:47 +00:00
cketti
742db2ac62
Cosmetic code changes
2010-10-13 20:56:44 +00:00
cketti
4be781a749
Fix NullPointerException when saving account settings for non-IMAP accounts.
...
Fixes issue 2454
2010-10-13 20:49:34 +00:00
Jesse Vincent
28c9dfdcce
Delay formatting of dates in messagelist until we actually need them
...
-- it turns out they're very expensive.
2010-10-13 10:53:08 +00:00
Jesse Vincent
4e53ee12b6
For the common case of "getMessage" where we actually have the object in
...
the list, use a less painful equality check than iteration.
This works because messageInfoHolders compare to each other using the
same key as message they contain.
2010-10-13 10:52:53 +00:00
Fiouz
9db44bf4a9
MessageProvider: making sure exposed cursor gets dereferenced on close (and closed on finalization) to prevent memory leak
2010-10-11 20:41:59 +00:00
Jesse Vincent
e8fd9683e6
Optimize the new return-to-listview code. (Avoid a bug where we do far
...
too much work on first open of a message list)
2010-10-11 19:47:41 +00:00
Jesse Vincent
d07aca3008
"Preferences" -> "Settings" for consistency
2010-10-11 14:54:23 +00:00
Jesse Vincent
c5d68fb49d
Add preferences to enable pinch-to-zoom and single-column layout for
...
messages
2010-10-11 14:54:15 +00:00
Jesse Vincent
5fc78b4219
astyle
2010-10-11 00:08:54 +00:00
Jesse Vincent
a683186f6e
move 3 IMAP preferences out of the "wizard" flow to an advanced page
...
where they belong
2010-10-11 00:08:47 +00:00
Jesse Vincent
28388b235e
move "saveAllHeaders" to the account preferences screen.
2010-10-11 00:08:39 +00:00
Jesse Vincent
777c3e28b5
Disable theme in preferences to work around an android bug
2010-10-10 19:29:15 +00:00
Fiouz
296ab4f2be
Update issue 1623
...
Message retrieval:
- Use the given projection for the cursor result instead of always using a predefined projection. Extraction logic is now in dedicated classes for easy extension.
- Added BaseColumns._ID & BaseColumns._COUNT columns.
- Deprecated "id" column since it's not a reliable identifier (it's an incremential value generated at query() time)
2010-10-09 09:19:24 +00:00
cketti
3503355b2e
"Reply after quote" preference wasn't persisted.
2010-10-09 03:17:59 +00:00
cketti
385c34e190
Refactoring
...
- Moved ListPreference helper functions from FontSizeSettings to K9PreferenceActivity
- Used helper functions in Prefs
- Reordered preferences in Prefs to match the order in global_preferences.xml (display order)
2010-10-09 01:05:29 +00:00
cketti
96f18734f4
Minor rename
2010-10-09 00:48:46 +00:00
cketti
da7210d1db
Refactoring: Some variable, method, and id renaming.
2010-10-09 00:38:52 +00:00
cketti
7028a4c167
Fixes issue 2144
...
- Removed the contact names cache (memory leak)
- Changed Contacts.searchByAddress() to Contacts.getNameForAddress(). Cursor is now immediately closed.
- Only try to resolve contact names when "Global settings" -> "Show contact name" is checked
- Never resolve contact names if number of recipients exceeds a threshold
2010-10-09 00:24:43 +00:00
cketti
4f429ec3bc
Update issue 2144
...
Forgot to actually save the value when leaving global settings.
2010-10-09 00:13:46 +00:00
cketti
23b53bd660
Update issue 2144
...
Added option to show names from contacts to global preferences (value isn't used yet).
2010-10-08 23:50:33 +00:00
Jesse Vincent
72cb0bf7ec
remove debugging statement
2010-10-08 06:56:50 +00:00
Jesse Vincent
8c1eda3149
An attempt at cleaning up after the 3.00x and earlier bug that caused
...
K-9 to leave old headers hanging around in the database
2010-10-08 06:33:04 +00:00
Jesse Vincent
ccc9a99d94
make batch buttons behave correctly if the last selected item is deleted
...
while in a messageview
2010-10-08 06:18:45 +00:00
Jesse Vincent
b0de9913e0
more correct list updates after restore
2010-10-08 06:18:30 +00:00
Jesse Vincent
7881039cbf
astyle
2010-10-08 05:34:46 +00:00
Jesse Vincent
945bccd633
First pass at a sane "restore list state" behavior when going back to a
...
messagelist from a message view
2010-10-08 05:34:33 +00:00
Jesse Vincent
78f797dda8
A previous refactoring broke notification for messages from the user by
...
replacing a localized string with substitutions with a concatenation
in one of two places the string was used.
2010-10-08 05:09:38 +00:00
Fiouz
6feb483f36
Update issue 1623
...
Restored accidently dropped content resolver notification code (dropped during r2397 refactoring)
First pass at documenting exposed fields
2010-10-06 20:14:33 +00:00
Fiouz
f858c72482
Added @Override compile check
2010-10-06 17:51:35 +00:00
cketti
9b5436d23b
Removed (redundant) debug logging from the IMAP parser code.
2010-10-06 01:50:02 +00:00
Fiouz
548e6e7c77
Update issue 1623
...
Don't export the formatted date through the content provider: now exported as the raw Epoch value - date formatting is a UI concern. That makes MessageInfoHolder lighter.
2010-10-05 22:33:20 +00:00
Fiouz
58c80ad096
Update issue 1623
...
Added semaphore to prevent third party content resolver from exhausting K-9 resources: it won't allow more than 1 cursor to be active at the same time. Concurrent threads (other content resolver invocations) will be suspended until the previous cursor gets released.
2010-10-05 20:23:07 +00:00
Jesse Vincent
6061c42ea9
find src/com/fsck/ -name \*.java|xargs astyle --style=ansi --mode=java --indent-switches --indent=spaces=4 --convert-tabs
2010-10-05 06:04:28 +00:00
Jesse Vincent
58bb54a588
when quoting an html body part for forwarding, downrez it to plain text.
...
In the glorious future, we should be forwarding as an attachment. but
this is better than the previous behaviour
2010-10-05 06:04:16 +00:00
Jesse Vincent
ae53a0c5ff
broke addAttachmentView into its own sub
2010-10-05 06:03:51 +00:00
Jesse Vincent
524350a960
Replace our (incomplete) custom MIME type list with a call to webkit.
2010-10-05 06:03:24 +00:00
Fiouz
4d24101e13
MessageProvider:
...
- Prevented from handling queries while K-9 isn't ready
- Added more log output
2010-10-05 05:09:17 +00:00
cketti
00ffc4f7fe
Reverted "shortcut" to global settings in menu for search results (message list) as this led to display problems with Android 2.2.
...
Fixes issue 2347
2010-10-04 00:01:59 +00:00
Fiouz
a3f4429963
Switch to UNIX EOL style
2010-10-03 11:08:42 +00:00
Fiouz
f1d413ce77
Optimization: extracted populate() outside MessageInfoHolder in order to properly cache DateFormat (avoid useless DateFormat costly lookup at each population)
2010-10-03 10:56:16 +00:00
Fiouz
9347409e14
Changed case of CheckboxListPreference class to match the Android framework naming pattern
2010-10-03 09:26:30 +00:00
Fiouz
8bb6eb146b
Optimizations:
...
- Don't instantiate an empty Address array just to throw it away (less gabarge collection)
- Use a StringBuilder rather than a StringBuffer (faster as it isn't synchronized)
2010-10-03 08:28:56 +00:00
Fiouz
ef1d958092
Optimization: don't invoke Cursor.getXXX(int) more than necessary
2010-10-02 18:45:51 +00:00
Fiouz
75984939d1
Don't embed helper instance inside a data transfer object (ideally, the populate() method should be moved outside that DTO to an external service/helper) as this might lead future development to introduce unwanted dependency graphs (= memory leaks)
2010-10-02 09:07:14 +00:00
Fiouz
bb64a0ab01
Update issue 2379
...
Status: Fixed
Extracted Intent.ACTION_SENDTO handling in a separate block to extract data from URI (as opposed to ACTION_SEND which uses Intent extras to pass data)
2010-10-02 08:14:12 +00:00
Fiouz
f6064ff19f
Use a thread pool to optimize resource usage instead of always firing up new threads (less garbage collection).
...
Note: this is not a complete revert of r2153 since the pool is now automatically expanded as needed (different implementation).
2010-10-02 07:45:11 +00:00
Fiouz
71dbdf3417
Update issue 1623
...
Removed dependency from K9 to MessageProvider (and added ability for components to register themselve for being notified when K9 instance is ready)
Moved Intent broadcast code from MessageProvider to K9
Made query() easily extensible using strategy pattern, the discriminant still being the Uri path
2010-10-01 19:41:39 +00:00
Fiouz
01f961c058
Update issue 1623
...
Fixed severe design flaw where the message provider would accumulate messages, causing an OutOfMemoryError even when the message provider isn't explicitely invoked.
query() is now synchronized with message retrieval
2010-09-26 16:01:41 +00:00
Koji Arai
2a39cd5206
Fixes issue 2282
...
Added an option whether the registered name color is change or not
Avoid "Connection error" when MessageView is opened. The contacts.getName() might return null.
2010-09-26 14:39:52 +00:00
Jesse Vincent
a2fe3bda34
When a new mail alert is alerting about a specific mailbox rather than
...
inbox, default to having it open that mailbox. Patch from thardie
2010-09-22 15:43:43 +00:00
Jesse Vincent
b6124fb397
deleteHeaders deleted message headers by id when it should have been
...
deleting by message_id. I believe this was our last serious leak in
our flash storage
deleting message headers was....just wrong. we've fixed other similar
bugs inherited from android 1.0 before.
2010-09-22 02:46:20 +00:00
Fiouz
4cb2d52c9c
Refactored message sorting code by extracting the sort code from the sorted object (this was a bad design, worsened by the MessageProvider patch). Ideally, new Comparator classes should get promoted to top-level classes and not be enclosed in MessageList.
...
Subject stripper backported from issue258 branch (Utility.java)
The result is a cleaner MessageInfoHolder class.
2010-09-21 22:12:45 +00:00
Marcus Wolschon
9ef306413b
MessagingController not propagating provided listener
2010-09-20 11:47:02 +00:00
Fiouz
0990609727
Don't forget to remove some Preference entires when deleting Account
2010-09-19 21:10:56 +00:00
Fiouz
e28e6d8817
Added ability to disable LED notification for new messages (new account setting)
...
Extracted notification related settings in separate class (see Issue 2268)
Update issue 371
Status: Fixed
Added ability to disable LED notification for new messages
2010-09-19 20:54:43 +00:00
Fiouz
e16a79d08c
Javadoc comment
2010-09-12 06:11:08 +00:00
Fiouz
c8a5de7abd
Intent.ACTION_SENDTO.equals(action) was tested twice in the same if/else if statement causing the last one to never match, removed the first one in order to properly enable intent-based activity population
...
Fixes issue 2110
"Intent.ACTION_SENDTO.equals(action)" removed from first condition
See r1712
2010-09-12 05:26:13 +00:00
Fiouz
bbd664ad3c
Optimization: don't use bytes and related byte/char conversion when we're actually working on string only
2010-09-11 11:20:50 +00:00
cketti
8cf2655dd8
Reverted r2332 and r2333 because the cause of the problem reported in issue 2078 seems to be different than initially thought.
2010-09-09 23:52:06 +00:00
Fiouz
5aa56e1569
Code cleaning: remove unused imports/variables
2010-09-04 06:57:25 +00:00
Jesse Vincent
3291c585e8
Improve Volume navigation settings, fix a bug when a list view is in
...
touch mode.
Patch by fiouzy.
2010-09-03 21:41:32 +00:00
Fiouz
de31886f44
Fixes issue 2230
...
Owner: fiouzy
Synchronize access to designated list to prevent concurrency issue
2010-09-03 20:32:12 +00:00
cketti
a85ea2ee53
- Reworked the previous patch with suggestions by jessev to be as runtime/memory efficient as possible without being useless.
...
- Output debug message when invalid responses are encountered.
2010-09-03 15:32:25 +00:00
cketti
b9b15295cd
Added yet another work-around for an IMAP server implementation with a creative interpretation of the specification. Sanity check results returned for a SEARCH command.
...
Fixes issue 2078
2010-09-03 13:58:09 +00:00
cketti
9d9e669d65
Code cleanup
2010-09-03 02:15:57 +00:00
cketti
b44bed2596
Fix NullPointerException
...
Fixes issue 2261
2010-09-03 01:16:41 +00:00
cketti
0c27a1ab0e
Avoid division by zero.
...
Fixes issue 2259
2010-09-03 00:56:19 +00:00
cketti
525d9a2ef9
Don't choke on malformed UIDL responses (POP3).
...
Fixes issue 2252
2010-09-02 23:59:20 +00:00
Jesse Vincent
6573f27cec
do our messagelist updates from sync on the ui thread rather than the
...
sync thread. copy the incoming message list to deal with concurrent
access issues. Patch by cketti++
2010-09-02 03:45:16 +00:00
Fiouz
08f10f1fe5
Issue 1711 (don't display subject when phone locked)
...
Modified code so that subject is still visible after unlock when notification bar is expanded
2010-09-01 22:37:11 +00:00
Fiouz
f43db5235c
Fixes issue 1711
...
Owner: fiouzy
Don't display message subject in notification bar when keyguard is active (system locked)
2010-09-01 22:26:36 +00:00
Fiouz
f21d86d8ce
Fixes issue 1945. Toast debug location when enabling debug logging.
2010-09-01 21:27:11 +00:00
Fiouz
9b285ae3fc
Fixes issue 939
...
Heavily inspired from Gmail implementation. Currently implemented only for MessageView delete operation.
2010-09-01 20:59:09 +00:00
Koji Arai
842a5ee123
Update issue 2144
...
Use setSpan() instead of Html.fromHtml()
Should clear cached name of contacts at MessageView#onClickSender().
2010-09-01 01:35:20 +00:00
Jesse Vincent
a83fd2d548
Kill an insanely chatty log message
2010-08-31 05:01:26 +00:00
Jesse Vincent
a1496bd839
Revert the clever runonuithread hack from the previous commit, as it
...
leads to concurrent modification exceptions. "oops" :/
2010-08-31 04:29:56 +00:00
Jesse Vincent
7030967fa7
astyle
2010-08-31 03:58:33 +00:00
Jesse Vincent
7bd8fc3599
When we sync messages and are displaying a messagelist, do the listview
...
updates on the UI thread rather than the sync thread. This is a huge
performance boost (based on simple empirical testing) for initial syncs
as we now do more work as we add messages to message lists
2010-08-31 03:57:02 +00:00
Jesse Vincent
db1b86a296
Better visibility toggling as k-9 switches between messages in
...
MessageView
2010-08-31 03:55:30 +00:00
cketti
7f72da93e0
Added missing bit of achen.code's patch for issue 2211 (reply below quote)
2010-08-30 21:27:07 +00:00
Koji Arai
b1074329e4
On the MessageList and the MessageView, prefer to use the display name registered in the Contacts rather than raw addresses.
...
Update issue 2144
2010-08-30 14:37:34 +00:00
Koji Arai
e5c4f35737
Correct loading the alternated font size preferences.
2010-08-30 14:14:43 +00:00
Jesse Vincent
4bf233fba5
next and previous were reversed from K-9's standard interpretation of
...
them in the previous patch to add volume button navigation
2010-08-30 03:05:41 +00:00
Jesse Vincent
12eb866370
Remove a temporary variable
2010-08-30 02:16:38 +00:00
Jesse Vincent
65f0d22355
Add Volume button navigation in MessageView, MessageList and all
...
K9ListActivity subclasses.
The MessageView code is a patch from paulkilroy@gmail.com .
Fixes Issue 2112
2010-08-30 02:16:20 +00:00
Jesse Vincent
0f1a1baa89
Add a preference to use volume up / volume down to navigate items.
...
From a patch by paul.kilroy@gmail.com . Partial resolution of Issue 2112
2010-08-30 02:15:59 +00:00
Jesse Vincent
be8ac83198
A first pass at letting users choose not to top-post their message
...
replies. Code By achen.code@gmail.com
Fixes Issue 2262
2010-08-30 00:00:34 +00:00
Jesse Vincent
6e2c5be84c
simplify a boolean in isMoveCapable
2010-08-29 23:40:14 +00:00
Jesse Vincent
1f399f5904
Simplify a boolean conditional
2010-08-29 23:40:00 +00:00
Jesse Vincent
7d2804549e
Remove redundant "return" statements from the end of void methods (with
...
help from intellij)
2010-08-29 23:39:45 +00:00
Jesse Vincent
4f0bce1569
Simplify many, many boolean conditions with help from IntelliJ
2010-08-29 23:39:26 +00:00
cketti
3d27cf220a
Removed some code/string duplication.
2010-08-29 18:46:51 +00:00
Jesse Vincent
89dcc3646b
Database version bump to clear bogus cached attachments
2010-08-29 16:58:04 +00:00
Jesse Vincent
6031862bad
Before we delete messages earlier than the earliest acceptable date, make sure we also delete their attachments.
2010-08-29 16:57:57 +00:00
Jesse Vincent
fe62812ff2
Delete the attachments from disk before we delete them from the database, so we know what to delete.
2010-08-29 16:57:49 +00:00
Jesse Vincent
994ed6653c
simplify some of our flagging logic and remove duplication using ternary operators
2010-08-29 16:57:40 +00:00
Jesse Vincent
6d38c1c71a
Comments to better explain what's really going on on delete of messages
2010-08-29 16:57:31 +00:00
Jesse Vincent
a5b7aa97dd
typo fix
2010-08-29 16:57:24 +00:00
Jesse Vincent
e0447e32cc
astyle
2010-08-29 16:57:13 +00:00
Jesse Vincent
7300aca2b8
Remove a call to deleteHeaders since headers are deleted implicitly by
...
an SQLite trigger.
Call our new variant of deleteAttachments() to avoid an extra lookup
2010-08-29 16:57:02 +00:00
Jesse Vincent
31613e15c7
extract the method for "delete a message" from the "Set flags" method
2010-08-29 16:56:54 +00:00
Jesse Vincent
54a4c84afa
Split out deleteAttachment to avoid an extra SQL call if we can.
2010-08-29 16:56:45 +00:00
cketti
38c31db8f6
Don't open a connection to the server if the protocol doesn't support flags and the flag to be changed isn't the deleted flag. This avoids unnecessary connections to POP3 servers.
...
Fixes issue 2046
2010-08-28 21:15:23 +00:00
Koji Arai
015666b657
Fixed issue 2174
...
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.
2010-08-28 14:00:34 +00:00
cketti
41ebeb3498
Don't show K9mail-errors as move/copy destination folder.
...
Fixes issue 2219
2010-08-27 01:02:29 +00:00
Thialfihar
a93da0ed80
decoupled PgpData from CryptoProvider, moved the crypto provider into Account
2010-08-22 09:51:17 +00:00
cketti
df0ae4e4bf
Update Issue 2168
...
Respect "Return to list after delete" after pressing on "Archive", "Move", or "Spam" button.
TODO: Change strings to reflect this change (e.g. "Return to list after move/delete")
2010-08-19 03:14:27 +00:00
cketti
90ee194d0f
Fixes issue 387
...
Applied patch by achen.code (thanks!) to word wrap the quoted text on replies.
2010-08-19 02:49:13 +00:00
Marcus Wolschon
00d30f1b8a
NullPointerException and TODO-Marker on a strange code-line
2010-08-18 14:27:39 +00:00
Marcus Wolschon
726b472330
set context before using it
2010-08-18 14:13:37 +00:00
Jesse Vincent
0b62640eac
Provisional initial commit of MessagingProvider code by
...
stephane.lajeunesse and koxx33
We're going to try it out in the 3.1 dev series. if it ends up looking
good, it'll be in 3.2
2010-08-18 02:49:13 +00:00
Jesse Vincent
ff5024eaec
astyle
2010-08-18 02:48:55 +00:00
Jesse Vincent
86dc82f916
Merge branch 'ideal-screenreader'
...
* ideal-screenreader:
The IDEAL Group have joined the K-9 dogwalkers and submitted their code to be part of K-9!
Initial import of the Ideal K-9 branch which adds support for screenreaders.
2010-08-18 02:01:10 +00:00
Jesse Vincent
8832933a60
It turns out that if you're only fetching the bodystructure, the mime4j
...
parser can't parse the message.
2010-08-17 04:21:22 +00:00
cketti
02aad5945a
Added null pointer check.
...
See issue 2154
2010-08-16 19:34:48 +00:00
cketti
ba95150a31
Use IP address for SMTP EHLO if hostname contains invalid characters, e.g. underscore.
...
Fixes issue 2143
2010-08-15 19:26:44 +00:00
Koji Arai
7964c34dbd
Fixes issue 2145
...
Cannot show the emoji icon on Android 1.6 at least. Replaced all "< img" to "<img".
2010-08-15 14:52:59 +00:00
cketti
da90792fa7
Don't call MimeUtility.unfoldAndDecode() on the message body when scanning for external image references. Also cleaned up the code a bit.
2010-08-15 04:05:39 +00:00
Jesse Vincent
73c3872dd0
Improve our display of inline images in HTML mail to not also offer
...
themselves up for download.
To do so, we need to start storing the original content-id and
content-disposition for attachments - this includes a database upgrade.
Based on a patch from @achen.code
2010-08-15 02:37:06 +00:00
Thialfihar
95fd605b0e
default account setting cryptoApp to APG
2010-08-14 19:30:37 +00:00
cketti
0e4c1dfacb
Added helper class to access contacts. Uses the old contacts API for SDK/API 3+4 devices and the new API for SDK/API 5+ devices.
...
All places that accessed the contacts have been updated to use this helper class.
2010-08-14 13:59:33 +00:00
cketti
0eb342ef5a
Code cleanup (Removed unused imports, added @Override annotations)
2010-08-13 14:06:13 +00:00
Marcus Wolschon
97001b6edb
filter on folder-selection
2010-08-13 06:37:00 +00:00
Thialfihar
b839866e17
removed some unused APG constants, added an APG Intent API version to be sent along with all Intents
2010-08-12 17:39:50 +00:00
Fiouz
1e67fc4cde
Update issue 1290
...
Update issue 1916
Added support for country/region specific locales
2010-08-12 11:03:19 +00:00
Jesse Vincent
a0238904b6
Update our emoji implementation to support docomo, softbank and kddi
...
(with the exception of 3 kddi glyphs that overlap with softbank).
As of this commit, emoji sent by iPhone users are visible in K-9
2010-08-12 02:22:35 +00:00
Jesse Vincent
d123aa2a39
Add a hook for hinting charset conversions to Java, since Android's java
...
doesn't know about all conversions.
2010-08-12 02:22:25 +00:00
Jesse Vincent
54633a4e16
Improvements to "more from this sender" - hopefully this should search
...
only on actual addresses, not their local parts.
2010-08-12 02:22:08 +00:00
Jesse Vincent
ece68bae5d
Off-by-one error in the recent IMAP fetch work :/
2010-08-12 02:21:56 +00:00
Jesse Vincent
de16b21124
Add debug logging when K-9 doesn't enable push because the user has
...
configured push to be off.
2010-08-11 03:36:49 +00:00
Jesse Vincent
0229d8a1fe
Implement windowing for IMAP UID FETCH
...
Our previous implementation of UID FETCH didn't ever take into account
maximum command line lengths. When fetching, say 800 messages from a
GMail IMAP server, we could easily overflow the max line length leading
to a fetch that didn't get all the messages we wanted to and was
truncated before the description of which fields we want. That caused
K-9 to fetch complete messages, exhaust memory and ultimately fail,
even when we were just trying to get message lengths.
An equivalent fix needs to be made to seach by UID.
2010-08-11 03:36:40 +00:00
Jesse Vincent
9ebf16e3d9
Finish removing the ThreadPool / ExecutorService Left over from when the
...
code was actually in the view class
2010-08-10 04:29:18 +00:00
Jesse Vincent
490ab6b8c0
Try harder to make message loading feel responsive and scroll correctly.
...
We're still not there.
2010-08-09 03:16:40 +00:00
Jesse Vincent
a724df79d4
To date, "loadMessageForView" competed for threads in a thread pool with
...
all of our mail syncing code. This led to very choppy UI experience.
This change doesn't entirely fix message load lag, but the _worst case_
I see is now better than the best case I saw last week.
2010-08-08 23:49:27 +00:00
cketti
2e6a67c2a7
Better text filter for ChooseFolder (folder is displayed if search term is found anywhere in the folder name, not just at the beginning)
...
Heavily based on a patch provided by Marcus.Wolschon
Fixes issue 2098
2010-08-08 20:27:39 +00:00
Jesse Vincent
1f725a2d5c
increment the new message count if the message is in a notifiable folder
...
and the account wants notifications. (even if we don't
notify for a message from ourselves, we DO increase the notification
count.)
2010-08-08 19:43:01 +00:00
Jesse Vincent
ce9a84e8fd
Quick updates from a code review pass by cketti
2010-08-08 19:35:18 +00:00
Jesse Vincent
d2e3061f20
Lift our initial unread counter up higher so that it happens before
...
called code starts resetting the unread count again.
2010-08-08 19:14:52 +00:00
Jesse Vincent
06a3d5985b
Avoid allocating two temp variables on sync
2010-08-08 19:14:47 +00:00
Jesse Vincent
f5a399f6c6
extract out "should we notify" from "notify";
...
rather than calculating the number of pre-existing new messages for this
sync twice, do it once, a bit earlier.
2010-08-08 18:50:31 +00:00
cketti
43fb202d43
Fixes issue 1522
...
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.
2010-08-07 22:38:08 +00:00
cketti
9d45470b40
Fixes issue 1076
...
Remember "Show pictures" button state when changing orientation.
2010-08-07 21:37:57 +00:00
cketti
5c588992a0
Fixes Issue 2076
...
Remove german version of the "Re:" prefix when replying to messages. So instead of "Re: AW: subject" we get "Re: subject".
2010-08-07 19:25:47 +00:00
Fiouz
dfb8f9e0f2
Memory management optimisation: help garbage collection by avoiding repeated instantiations of immutable arrays (empty arrays of String, Message, Flag, Address)
2010-08-07 15:10:07 +00:00
Thialfihar
54e0ad5ce0
added some comments to explain some cryptography-related classes and to-dos
2010-08-05 10:55:59 +00:00
Thialfihar
11e28698e1
hide the decrypt signature layout in MessageView if no signature exists, fixes the wrong display of signatures from another message
2010-08-05 10:45:58 +00:00
Fiouz
380452355c
MessageListAdapter:
...
- Use of a single View.OnClickListener for all messages.
- Extracted method to bind message item views (from MessageInfoHolder to MessageViewHolder).
2010-08-03 07:46:31 +00:00
Fiouz
ad9c315cf4
No longer need to extend Handler since r1126: we're using Activity.runOnUiThread()
2010-08-03 06:09:39 +00:00
Fiouz
2a476dc92c
Additional @Override compile check
2010-08-03 05:46:35 +00:00
Jesse Vincent
f15101420e
Revert "I like this idea, but it's not ready for 3.000"
...
This reverts commit f812a3485445c7db4024f84865aaa5d8e6b7b3a0.
(Now that 3.0 is branched, this can be on trunk again for further work)
2010-08-02 22:34:21 +00:00
Jesse Vincent
58c5afc77b
I like this idea, but it's not ready for 3.000
...
Revert "It turns out that a big part of our perceptible message switching time"
This reverts commit 06f9bb5b7f3064e646b43148d188cec06cd14d11.
2010-08-02 22:32:57 +00:00
Fiouz
44cef83e0b
Use of constants for immutable empty arrays (prevent useless memory allocation)
2010-08-02 11:55:31 +00:00
Jesse Vincent
d4695636f3
It turns out that a big part of our perceptible message switching time
...
was loading the "loading..." file into the WebView. Since it doesn't
take that long to load the real content, replacing the "Loading..." file
with "blank the view" seems to actually feel a heck of a lot faster.
2010-08-02 03:03:58 +00:00
Jesse Vincent
f2729fc58b
Don't show "To: " if the only recipients were ccs and bccs.
2010-08-02 03:03:53 +00:00
Jesse Vincent
cd6b64d88f
Experimental changes to tell WebView that the HTML versions of messages
...
we generate from ascii are "mobile-optimized"
2010-08-02 01:27:50 +00:00
Jesse Vincent
d78e7a0d69
Switch from the incomplete (but compatible with java 1.3) mime4j charset
...
alias resolver to the core java nio version with a better charset
database;
rather than falling back to not showing the user a failing message, fall
back to showing the user the message as ascii -- it makes it possible
to get _something_ out of an unknown-charset message, rather than just a
"ha ha. no." error.
2010-08-02 01:27:46 +00:00
Jesse Vincent
7fc921c0b7
astyle
2010-08-02 01:27:40 +00:00
Jesse Vincent
a4381696f9
Support Emoji for DoCoMo.
...
Emoji icons are derived from http://start.typepad.jp/typecast/
2010-08-02 01:24:40 +00:00
Fiouz
3bbb6ae050
Don't display Archive/Spam batch operations when corresponding folders are unset
2010-07-30 09:58:26 +00:00
Jesse Vincent
d8a73b195d
Factor out the decision about whether a part is "viewable" for purposes
...
of fetching ; remove broken "inline" check from the same.
2010-07-30 00:58:33 +00:00
cketti
0c67f1f4cf
Only ask for POP3 capabilities before authorization if TLS should be used. Always ask after authorization.
2010-07-30 00:58:22 +00:00
cketti
91e55f6fa1
Don't log POP3 passwords by default.
2010-07-30 00:53:46 +00:00
Jesse Vincent
d8a757faaf
Try to avoid a bunch of reallocations as we grow the temporary output stream by defining its size if we can get it
2010-07-29 22:17:35 +00:00
Jesse Vincent
134c0b23dd
Backport a bit of memory efficiency I'm not sure I believe from AOSP
2010-07-29 22:17:32 +00:00
Jesse Vincent
0bb115ca42
Actually catch an OOM in getTextFromPart
...
Backport an update to getTextFromPart from AOSP as of 290348 - dealing with OOM as we import large messages
2010-07-29 22:17:29 +00:00
Jesse Vincent
c6aa505ffe
improve the method docs on getTextFromPart
...
Backport an update to getTextFromPart from AOSP as of 290348 - dealing with OOM as we import large messages
2010-07-29 22:17:26 +00:00
cketti
4c1060ecae
Only show "save or discard" dialog before leaving the message compose activity if the message needs saving.
2010-07-28 23:17:46 +00:00
Thialfihar
3d5fb524ef
set account setting crypto app to "APG" by default
2010-07-28 21:28:51 +00:00
Thialfihar
5e30c3dab1
removed two extra lines from the merge in r2055
2010-07-28 12:10:08 +00:00
Jesse Vincent
2ca76e3db0
Fix for Issue 1956
...
A race condition made the outgoing certificate being compared to the old
incoming mHost,
throwing an exception with an untrusted certificate dialogue to accept
or decline.
2010-07-27 18:59:41 +00:00
Jesse Vincent
7a4d12b53b
Merge from apg-integration
2010-07-27 12:10:09 +00:00
Jesse Vincent
bae8a9736d
Clean up some inverted logic
2010-07-27 01:28:03 +00:00
Jesse Vincent
b1fb92034a
clean up some weird inverted logic (as recommended by intellij)
2010-07-27 01:27:54 +00:00
Jesse Vincent
c541a07ed2
Don't fire off a notification about new mail before we finish
...
initializing an account.
2010-07-27 01:27:45 +00:00
Jesse Vincent
766a115155
Remove URLs from message previews. Suggested by Kevin Falcone
2010-07-24 02:09:12 +00:00
Jesse Vincent
19a06d39a1
With all the other performance work we've been doing, getting a message
...
into the messagelist is now much, much faster. Intentionally loading the
whole mailbox before we let the user interact with the list is
increasingly painful. A 250 message mailbox takes 2+ seconds to "unlock"
on a modern phone.
Consequently, this commit switches us _back_ to progressive loading of
mailboxes from the synchronous version.
Based on user feedback, we may or may not keep this for the production
release.
2010-07-22 04:17:13 +00:00
Jesse Vincent
80e134c03c
astyle
2010-07-22 03:40:30 +00:00
Jesse Vincent
eb21807384
Moving sendMessage and saveMessage into AsyncTasks to make the send/save
...
buttons much less janky
2010-07-22 03:40:22 +00:00
Jesse Vincent
8182b8a8ee
Split out sendmessage and savemessage - the sendorsavemessage method
...
didn't actually have them sharing code.
2010-07-22 03:40:14 +00:00
Jesse Vincent
338919a9a0
Merge remote branch 'remotes/issue814'
...
* remotes/issue814:
Changed the appearance of the ChooseAccount activity to better match the look of the account list.
svn:eol-style set to LF (UNIX style)
Update issue 814 Status: Started Cc: +fiouzy Reuse of res/layout/accounts_item.xml to match account list Automatically expand/scroll to Intent-presented account
- Patch provided by fiouzy (ability to choose identity from other accounts) - Modifications in MessageCompose by cketti (use MessageReference to replace mFolder and mSourceMessageUid)
Created branch for issue 814 (Feature to select account to send from in compose screen)
2010-07-22 03:15:28 +00:00
Jesse Vincent
75b8487024
First bits of infrastructure for not showing HTML-mail inline images as
...
downloadable attachments
2010-07-19 06:13:41 +00:00
Jesse Vincent
65e318a80e
mark thumbnails as .tmp files that should be explicitly gced on start.
2010-07-19 05:32:45 +00:00
Jesse Vincent
7de3aeb740
Actually, clearing the tempdir from attachmentprovider stomps on our
...
binary download usage of the temp directory. Reverted!
2010-07-19 05:32:37 +00:00
Jesse Vincent
f9a24cb123
astyle
2010-07-19 01:57:49 +00:00
Jesse Vincent
a75bf8668e
K-9 wasn't properly clearing the thumbnail/tmpfile cache. We now
...
properly clear it up on start, which causes K-9 to leak less flash
memory AND
fixes the "Wrong thumbnail" bug.
2010-07-19 01:55:23 +00:00
Jesse Vincent
f7032c4161
Android is growing up a bit. artificially limiting the user to
...
attachments of only 5MB is counter-productive, bump the artificial limit
to 128M
2010-07-19 01:55:09 +00:00
Jesse Vincent
6ef923be91
After we download attachments, get rid of the "old" attachment views
2010-07-19 01:54:55 +00:00
Jesse Vincent
2ee5b49cf2
When marking a message as read as we're opening it from the message
...
list, don't "bother" sorting the messagelist again before opening the
message, it adds a _bit_ of slowness when we don't need it and
we'll sort again when we get back to the message list.
2010-07-19 01:54:38 +00:00
Jesse Vincent
0fcae025b2
per a bunch of complaints, it looks like my new notification counting
...
code was off-by-one
2010-07-19 01:54:23 +00:00
Jesse Vincent
819692e025
refactor one of the versions of 'getAttachmentUri' in terms of one of
...
the others. less code == fewer chances to screw up
2010-07-19 01:54:09 +00:00
Jesse Vincent
6d20c65778
remove the old "isdownloading" notification for the current message.
2010-07-19 01:53:49 +00:00
Jesse Vincent
ad7839e46e
remove debugging statement
2010-07-19 01:53:30 +00:00
Jesse Vincent
a63beda64b
Finish backing out the "sort by received date" patch until we get the
...
recieved-date support sorted out
2010-07-19 01:53:14 +00:00