* For each attachment we add, check the DB for an existing attachment
with similar metadata (name, mime type, content id, etc.)
* Skip adding them if already held
* Unit tests
Originally fixed in 5b0a12c199 / CL I036f39c6
Fixes bug http://b/2084704
* For each attachment we add, check the DB for an existing attachment
with similar metadata (name, mime type, content id, etc.)
* Skip adding them if already held
* Unit tests
Fixes bug http://b/2084704
Merge commit 'e3e02adac681790ff4bea653e273f7e2b0eea35b' into eclair-mr2-plus-aosp
* commit 'e3e02adac681790ff4bea653e273f7e2b0eea35b':
Do not trust server-provided content type for attachments
Merge commit 'dee4e25320c5154a5626446e1aa37f63ae97c48c' into eclair-mr2
* commit 'dee4e25320c5154a5626446e1aa37f63ae97c48c':
Do not trust server-provided content type for attachments
Merge commit 'dee4e25320c5154a5626446e1aa37f63ae97c48c' into eclair-plus-aosp
* commit 'dee4e25320c5154a5626446e1aa37f63ae97c48c':
Do not trust server-provided content type for attachments
* Fixes a bug that caused some attachments to be labeled with the
wrong content type and thus unable to be opened by local apps.
* When the attachment code was written, MimeTypeMap had very few
entries, so we tried to get the mime type of Exchange attachments
from the stream when the file was read off the server. It turns
out that the server's idea of mime type is unpredictable
* In the meantime, MimeTypeMap has been fleshed out, so we really
do know the type in the vast majority of cases (and including all
common document types)
* The fix is to remove the lines related to reading the mime
type from the attachment stream
* Content type is set (properly) when attachment record is created. See
EasEmailSyncParser.getMimeTypeFromFileName() for details.
Fixes bug http://b/2182955
Change-Id: Iebb3de529df4548327d7112e1dedb3bd448462a4
Merge commit 'a745f9ae44de50208919e5e11b5be163d04648b3' into eclair-mr2-plus-aosp
* commit 'a745f9ae44de50208919e5e11b5be163d04648b3':
Import revised translations. DO NOT MERGE
* If we close the activity while a requeryList() is pending in the
handler queue, we'll eventually try to operate on a closed cursor
when we get to testMultiple().
* The fix: Return immediately if the cursor is not available.
Fixes bug http://b/2180416
Followup for bug http://b/2149083
Merge commit '2bc47f24a4db464f58977ae808f754e2a9191daa' into eclair-mr2-plus-aosp
* commit '2bc47f24a4db464f58977ae808f754e2a9191daa':
MessageView: use FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET when viewing attachments.
* Relates to a number of bugs related to ANR's and slow behavior
when addressing mail
* Call changeCursor(null) on the Adapter when the activity is destroyed
* Call getCount() in the background thread to force data there rather
than in the UI thread
* If this change is accepted, something equivalent should be
used in the Gmail app as well
* Addresses #2180237 (P1, target Eclair_Sholes) as well as
#2180976 and #2146926, the latter two of which were fixed
with workarounds.
Change-Id: I7503c5fbe091dbc5e784d5a7bebeb3d60226d57d
Merge commit '89966059c997a410c0b54be2d56e1259ed99940f' into eclair-mr2-plus-aosp
* commit '89966059c997a410c0b54be2d56e1259ed99940f':
MessageCompose: corretly set initial mSourceMessageProcessed=true for the cases where there's no source message, to avoid duplicated email addresses on orientation change.
Merge commit '1a377f096f3a263bba536355823290db4bba7434' into eclair-plus-aosp
* commit '1a377f096f3a263bba536355823290db4bba7434':
MessageCompose: corretly set initial mSourceMessageProcessed=true for the cases where there's no source message, to avoid duplicated email addresses on orientation change.
Merge commit '1a377f096f3a263bba536355823290db4bba7434' into eclair-mr2
* commit '1a377f096f3a263bba536355823290db4bba7434':
MessageCompose: corretly set initial mSourceMessageProcessed=true for the cases where there's no source message, to avoid duplicated email addresses on orientation change.
Merge commit '8be9b8937be04cc50e7fd2e79d2d91c99aace1b5' into eclair-mr2-plus-aosp
* commit '8be9b8937be04cc50e7fd2e79d2d91c99aace1b5':
Make sure we hold WakeLock during mail sending (fixes#2180551)
Merge commit '0fd132d26c0846c00419cae124fb7f881331418b' into eclair-mr2-plus-aosp
* commit '0fd132d26c0846c00419cae124fb7f881331418b':
Allow photo changes to be uploaded to Exchange (fixes#2179082)
Merge commit 'ea878be11729cd793d9183fc264118241cd5a5b6' into eclair-plus-aosp
* commit 'ea878be11729cd793d9183fc264118241cd5a5b6':
Make sure we hold WakeLock during mail sending (fixes#2180551)
Merge commit 'ea878be11729cd793d9183fc264118241cd5a5b6' into eclair-mr2
* commit 'ea878be11729cd793d9183fc264118241cd5a5b6':
Make sure we hold WakeLock during mail sending (fixes#2180551)
* Don't runAsleep unless this is a Ping
* Relates to #2178288 in that it's possible that the system could
sleep while we're trying to send (not sure if this is possible;
will check), so we prevent it by holding a WakeLock in this case
Change-Id: Ib3f8786501b942e1cfcb7a0bbb07b8e3084e2a86
Merge commit '479b22a2f8966b63789c89e878b615ebd53708c0' into eclair-plus-aosp
* commit '479b22a2f8966b63789c89e878b615ebd53708c0':
Make multiselect buttons update when the list state changes
Merge commit '479b22a2f8966b63789c89e878b615ebd53708c0' into eclair-mr2
* commit '479b22a2f8966b63789c89e878b615ebd53708c0':
Make multiselect buttons update when the list state changes
Merge commit '4b59cfc8ed4054ffb5ad85cea8aba94a430cc2cb' into eclair-plus-aosp
* commit '4b59cfc8ed4054ffb5ad85cea8aba94a430cc2cb':
Fix problem with timeouts and sending attachments (#2178288)
Merge commit '4b59cfc8ed4054ffb5ad85cea8aba94a430cc2cb' into eclair-mr2
* commit '4b59cfc8ed4054ffb5ad85cea8aba94a430cc2cb':
Fix problem with timeouts and sending attachments (#2178288)
* Standard Exchange command timeouts are 20 seconds
* For sending, however, these need to be significantly longer to
handle the case of sending large attachments, as sending (of any
length) happens in a single HTTP Post command
* Having an infinite timeout leads to the (small) possibility of the
Outbox hanging for a long time, holding up the sending of other
mail, so we set a long, but not infinite timeout for this case
* Timeout now set for 15 minutes
* Prevent sync of Outbox and Drafts (the UI triggers these by changing
the contents of these boxes, but we need to ignore the pings that
are generated this way)
Change-Id: I5b830d6b4e94525d95138b2112be12898a37882e