summaryrefslogtreecommitdiff
path: root/src/com/android/email/provider/Utilities.java
Commit message (Collapse)AuthorAgeFilesLines
* Move email bodies to filesTony Mantler2014-05-141-0/+39
| | | | Change-Id: Icfd0c4ab2ad25cc02b45cf41e7a205c17948ef2c
* Fetch email bodies using ContentResolver#openInputStreamTony Mantler2014-05-081-1/+1
| | | | | | | This brings us further along the path to storing email bodies outside of the database. Change-Id: I96296114ade0d561df724878ed92999306bcd176
* Purge unused/obsolete body fieldsTony Mantler2014-04-171-3/+0
| | | | Change-Id: Idafa09b58f5753e4cb3cad754c861cc8e3d80c34
* Quit dropping inline attachments on the floorTony Mantler2014-02-211-0/+1
| | | | | | | | | | | | If we have image/* attachments with "Content-Disposition: inline" we would fetch the images immediately, then drop them on the floor instead of saving them to the DB. Add code to catch these attachments and save them. b/13132802 Change-Id: I5203bb1aa518aa46cdb3a38ead6f79af63b521ac
* Fix attachments in search resultsMartin Hibdon2013-11-061-7/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b/11294681 We had some really broken logic about handling search results. In IMAP search, we would request, in a single pass, FLAGS, ENVELOPE, STRUCTURE, and BODY_SANE. BODY_SANE means the first N bytes of message content, whether it be from the message text or attachments. This is different from how sync works: In sync, we get FLAGS and ENVELOPE in one pass, and in a later pass get STRUCTURE and first body part text for each message. If the total size of the message exceeded the maximum limit for BODY_SANE, then we'd mark the message as partial, which would cause us to create a dummy attachment in copyMessageToProvider(). This is a weird solution to the problem of POP messages not being completely loaded, because in POP message body and attachments can't be requested separately, so the dummy attachment just signified that we needed to fetch more data. This system fails completely on IMAP, because just fetching the rest of the body will not get you the attachments. But even if that code is disabled, attachments in search results still didn't work properly. For reasons I don't yet understand, if we requet both STRUCTURE and BODY_SANE at the same time, either we don't received the full attachment metadata, or we ignore it, and only use the attachments whose contents could actually fit in the limit imposed by BODY_SANE. So attachments that didn't fit, or didn't completely fit, would either be missing or corrupt and unretriveable. So, end result: It's not clear why we were trying to load BODY_SANE all in one pass, unlike how it works for sync. In fact, the way sync does it now makes a lot of sense: We load FLAGS and ENVELOPE data (small) and put the in the DB immediately so they can be displayed. In the second pass we load the (potentially large) structure and message body. If this is the right solution for sync, it's probably the right solution for search. So now, that's what we do. There is cleanup I'd like to do post MR1: Some code is duplicated between sync and search that could be consolidated, but we're in low risk mode now so I only changed search code. Change-Id: I11475e290cda04b91f76d38ba952679e8e8964d5
* Improve display of attachments in popMartin Hibdon2013-09-201-2/+12
| | | | | | | | b/10714298 This is related to this CL in UnifiedEmail https://googleplex-android-review.git.corp.google.com/#/c/363626/1 Change-Id: Idea2827791ed52e7558b11aaea07b1f3f1764db5
* Load large POP attachmentsPaul Westbrook2013-07-291-1/+3
| | | | | | | | | | Load large attachments from a partial POP message There will be a new change that improves the UI for loading the rest of the message Bug: 8651782 Change-Id: I075de1e82e27cf2018607eef50143850e8fecaf2
* Unify LogTagScott Kennedy2013-06-051-4/+4
| | | | | | | | | | | | | | | | | | | | There is now only one LogTag class. The static initializer of GmailApplication (existing) and EmailApplication (new) will now set the log tag to "Gmail" and "Email", respectively. Up until that code is run, it will be "UnifiedEmail". "setprop log.tag.Gmail VERBOSE" (or .Email) will trigger all logs to be printed as long as they go through LogUtils, regardless of what tag is used by that individual log. This lets us still turn on logging everywhere in one command, but also lets us use more descriptive tags (like the class name). And since we no longer have three com.android.mail.utils.LogTag classes, builds will be much easier. Also, we now use LogUtils everywhere. Change-Id: I55f1c7a66ce50ead54877a13e40256422a56dc39
* Refactoring to support eml viewer in UnifiedEmail.Andrew Sapperstein2013-06-041-3/+11
| | | | | | | | | Moved two files out of Email into UnifiedEmail and removed their dependencies on EmailContent. As a result, those classes now return the data directly via a data only class. Change-Id: Iaf0618dd6879c9dc2a41943d3d15428904b65768
* POP3 renovationMarc Blank2012-08-021-10/+31
| | | | | | | | | | | | | | | | * Much, much faster * Remove message length pass and lots of other useless code * Create pseudo-attachment for long messages (click to download) that includes size (so user can determine whether it's worth it) * Handle download of message via pseudo-attachment; real attachments are then created as necessary. TODO: Add real UI with UX input (or modify existing to clean up the loose ends) TODO: Optimizations for loading the whole message TODO: Get server delete working (isn't working currently anyway) Change-Id: I31f3809fc5a2f9fd490d33cfed70d2930654e71d
* Add a bunch of stuff missed earlierMarc Blank2012-06-281-0/+150
| | | | Change-Id: I7f707446a963912fe5786dacb5569e68db572d1c
* Revert to old Email appMarc Blank2012-04-251-150/+0
| | | | | | * These are the last sources in the ICS-MR1 tree Change-Id: Ida4651bddd92a06a518d00f3e1f275ab3a80c8ae
* Convert POP3 to serviceMarc Blank2012-02-161-0/+150
* Remove MessagingController and (almost all of) MailService Change-Id: I8953b58b237de6a71fda770f1727bd94081fec55