In the AOSP version of the email app, we don't by default
have any oauth providers. We should not display option
to set up your account with OAuth.
Change-Id: I6fc55ae4852ec76b7c34c09ac58a0e06e89affa7
Make Email GeneralPreferences subclass GeneralPrefsFragment.
Only contains a minimum of code to strip out archive-related prefs,
which are not relevant to the current state of Email back-ends.
(These actions could be relevant for Gmail IMAP extensions if support is added for them)
b/9566150
Change-Id: Ie8e26379ed504c7d96c2a2f8e1c843bbe0582cc7
Allow the compose activity, that the account reconciler attempts
to enabled/disable, to be able to be specified via resources.
This allows the various build targets to change the activity that is
enabled/disabled, or to not attempt to do this at all
Change-Id: I7c91c2c179316a3aac910a38d7dd0025076b085a
For Email the order key is the message timestamp, Gmail sortMessageId. The
order key is then used as the sort key for notificatin api, and because it is
stable, notification bridger can avoid bridging duplicate notifications and
reodering the email card bundle on the watch.
Bug 15563260
Change-Id: Ie68f45de91cc42c58238b7cdc0ae828048e22a46
Fix re-displaying the dialog on orientation change b/5622284
Add host/port when available b/4988512
Disambiguate intent between AOSP and EmailGoogle
Change-Id: Ideeda20dfd9bd0070998ccf42d8042765866ca0e
b/14239989
We take advantage of ListView's feature that displays an entirely different
view in place when the backing Adapter is empty. The empty view is simply a
TextView displaying "No quick responses available".
Change-Id: I244ffd21fc4c1557c73979d4bb7c99306b11ebb2
Removed unused functions, 'final'ed variables and parameters,
revisited some thread synchronization. Effectively no new code
introduced so no unit tests for this CL.
Change-Id: I714724a98d31a231ab10b0ad468b8efaa460bd1d
Check for null returned by Account.restoreAccountWithId as with other places
where it is called.
Bug:15286267
Change-Id: I56d59564a1fa814f5c52b44c12303014eea2b0b0
This doesn't need to be part of the service because the
implementation doesn't need to be different between any
of the different protocols.
Change-Id: Ifddf16dd3ccaf397029f08f6d4283d9a5630f717
b/14567151
Sanitizes HTML email bodies on demand as they are requested from
EmailMessageCursor. Also alters Account settings to indicate that emails can be
assumed to be sanitized and transform scripts can be applied to the email
bodies.
Change-Id: I789e6de3569ae8c7d2c21f0b5aa590d7638a1467
Moved testing code to the bottom of the file. The next CL
should be the removal of the DownloadSet. Also fixed b/15003801,
so that the test will not fail.
Change-Id: Ie8320782d6b292d5a367af95d7c58d70a4213ead
b/14914981
The framework may make copies of the URI objects before they're passed in,
so we should use .equals() instead of pointer equality.
Change-Id: Ia443e96c81d53829ac6cfce70cebc098861f1c78
(cherry picked from commit e8a3c14f28)
EmailConversationCursor eagerly marks all messages in the current mailbox
as being seen. Most of the time it is a redundant operation, but nothing
prevents the provider from broadcasting notifications and all of the
observers from dutifully reacting to the notification. A good deal of
work is avoided now that we only notify when rows in our database have
actually been altered.
Change-Id: Ie91e6aebaf9c2899510f3818586d582073954d16
b/14914981
The framework may make copies of the URI objects before they're passed in,
so we should use .equals() instead of pointer equality.
Change-Id: Ia443e96c81d53829ac6cfce70cebc098861f1c78
- Don't loop on the confirmation dialog
- Do a deep copy of the initial hostauth state
- Save the initial hostauth state on configuration changes
- Collect the user input before comparing the old state with the new
b/14285245
Change-Id: Ibc033fac525be2a4cb03c6a0d1e92254a2236b4c
(cherry picked from commit 294593c5f5)
This avoids a potential thread starvation issue if all running threads
in the default parallel executor are stalled waiting to read from the
threads created here.
Change-Id: I32f030b3e7ff3d8f69453ae5946704efb19ee25f
Detect fully qualified and abbreviated date/time stamps in parseDateTime.
Previously parsed fully qualified forms like 20090211T180303Z; now also
parses 20090211.
Bug:14279251
Change-Id: I9a99ae16a5c1fe87b977fbebdba307baa653d539
This is a straight up copy of the AttachmentDownloadService and
a rename. All the future Attachment work will be done in this
class and we'll flip the switch when it is ready.
Change-Id: I2990cbfd1f7c8e2946c155ea1c124223d0f47ff9
- Don't loop on the confirmation dialog
- Do a deep copy of the initial hostauth state
- Save the initial hostauth state on configuration changes
- Collect the user input before comparing the old state with the new
b/14285245
Change-Id: Ibc033fac525be2a4cb03c6a0d1e92254a2236b4c
b/14187851
Now the bars on the sides for tablet landscape setup are actually
in the activity, not the fragment. The setup fragment template
is identical between tablet and phone, with any differences between
them contained in different styles or dimensions.
Change-Id: Id7005f73aa29ed6010e629873155eb5fdc8e818f
b/14169396
Swap the positions of the headline text and email image
on account setup basics
b/14257403
Swap the positions of the password and "signed in with XXX"
button on the credentials fragment
b/14255447
Adjust padding to fix a number of alignment issues.
Change-Id: I011e259a86123cf205d86407def2ff774744e005
b/11998344
This solution covers these use cases:
1) Inline images in the Email app.
2) Inline images in .eml attachments in the Email and Gmail apps.
The solution here was to override shouldInterceptRequest(...) in
the WebViewClients and resolve any cid urls that are encountered
within the email body.
EmailProvider and EmlAttachmentProvider both gained the ability to
query for an Attachment object using a message ID and cid (which
is stored in the database column: contentId).
With this new query in place, it was straightforward to fetch the
Attachment in the WebViewClient and then obtain an InputStream to
the file that backs the Attachment to return back to the WebView.
Change-Id: I865a74fc291915c0d66a7492763a5f5682365b92
make sure that we split the code that reads the HTML vs text body into
seperate try-catch blocks because they can fail seperately.
Change-Id: I55bdac469840e8ff84f7c00ccb34d188da072a8e