Commit Graph

535 Commits

Author SHA1 Message Date
Ben Komalo 8466f79a06 Asset drop.
- this syncs up the UX repo with the developer repo so that the assets
now match. We should be able to do wholesale drops/diffs from now on.
- lots of changes to widget so that it is (mostly) up to spec now, and
matches the preview

Bug: 5225385
Bug: 5205578
Bug: 4320895
Change-Id: I8ccbadcfc17cdb406599497edc91165809f55d68
2011-08-30 12:57:38 -07:00
Mindy Pereira cc02d435b2 fix height of compose view fields
fixes bug:5223556 heights of compose view text fields are too tall on phone/ tablet

Change-Id: I1bbf570a66a424cffcabcae6cfdc2b6ca05be4b7
2011-08-29 08:45:47 -07:00
Mindy Pereira 89dd731a90 Update attachment ui to look like Gmail attachment ui; fix from padding.
Fixes Bug:5184434 Compose view doesn't match pixel perfects
Change-Id: I7217eb4a63beedfd0bc00dffe9e0f29a5af6214c
2011-08-19 15:36:23 -07:00
Mindy Pereira 7b41b374cc Style Email compose to look like gmail compose.
Change-Id: I8e1f0e9c4bbbbcd2463473da190bff88f2748905
2011-08-19 11:42:09 -07:00
Mindy Pereira 5b5a9b3f9e Fix alignment of to/cc/bcc fields.
Part of bug:5162602 Alignment of elements in compose screen seems off (master/tot/prime

Change-Id: Ica741328c687b68c8995a1e9fde4d6bb566407ba
2011-08-18 16:17:29 -07:00
Mindy Pereira 475a56fd0a Merge "Change the fonts / sizes of the chips labels to match the rest of the compose activity." 2011-08-18 15:58:37 -07:00
Ben Komalo 2ae341bfa1 Fix messagelistitem logic.
We had two separate "height" values in XML that weren't consistent - one
was used for the coordinates and one was used for the actual item i nthe
adapter. This made things off slightly when the values didn't match
(i.e. on tablet wide mode).

Also fixed an issue with paperclip icon not aligning with date on wide
mode

Bug: 5184169
Change-Id: I1d80bb9c685fdd8216fcaef26bf6ad715eb74c4c
2011-08-18 12:09:39 -07:00
Mindy Pereira d52ff88e89 Change the fonts / sizes of the chips labels to match the rest of the compose activity.
part of Bug:5162602 Alignment of elements in compose screen seems off (master/tot/prime)

Change-Id: Ie2125df9888198448d1503edc4cccf3537db016c
2011-08-17 16:52:01 -07:00
Ben Komalo 27348c7882 Revert "Make compose landscape(phone) go fullscreen"
This reverts commit 0108aeb5b1.

There are too many issues that crop up in this mode.

Bug: 5121640
Change-Id: I6264a63cada973a7ee327ff4c7e7af5df5a6fdb3
2011-08-17 11:13:07 -07:00
Marc Blank 8fe74e7899 Clean up SSL/TLS option text
* The previous text was confusing and potentially misleading.
* The new text is more standard (i.e. used by common clients)

Bug: 5011919
Change-Id: I645c7105ecb36cf58b6c78f6b5bc76f2a17858a3
2011-08-16 16:43:43 -07:00
Ben Komalo 4b75ac992d Update visuals for new fonts.
- tighten up action bar spinner
- fix up message list senders/padding

Bug: 5159050
Change-Id: I00033d994a23f7fbb81cd72f53b9d66faa7570f9
2011-08-12 15:01:51 -07:00
Mindy Pereira ce39730da0 Update styling of chips fields.
Fixes b/5122133 replace recipient background with new multiline background

Change-Id: Icbdb1e885526ccbe1bbbb5e332db8532988a749e
2011-08-11 15:56:31 -07:00
Ben Komalo fbf4b8045b Remove STOPSHIP and unused strings.
Bug: 5142183
Change-Id: I97df43eeb878f352cb09ccda2eafe8c4981b9346
2011-08-10 16:41:07 -07:00
Ben Komalo d3ced7cce9 Show helpful messages when no accounts configured
Bug: 5145213
Change-Id: I350d59e8afc72d1bad64cf7cf3d44750e8365a99
2011-08-10 15:33:47 -07:00
Ben Komalo 136dedbbd9 Update headers in message view.
- this uses the new gradient/drop shadows
- adds quick contact badge triangle thing
- also puts in contentDescriptions for the reply/all/forward/star
  actions that were lost
- also merges the headers in tablet and phone

Bug: 5144711
Change-Id: Ie2d14c26b7818aa4389731794a15be6c31f4981d
2011-08-10 10:24:24 -07:00
Ben Komalo 2468b54db5 Merge "Fix search styling." 2011-08-09 18:07:00 -07:00
Ben Komalo 06dee204a0 Small fixes to attachments UI
Bug: 5102245
Change-Id: I71ccce885c563454672e18aa62eac4ab3996146e
2011-08-09 15:07:57 -07:00
Ben Komalo ed494cd6bb Fix search styling.
This eliminates the excessive padding on the left and makes the hint
text behave according to the new spec (since it uses the new action view
expanded mode).

A later CL will actually change the item to use the action view
facilities of the framework (so we don't have to manage our own custom
views).

Bug: 5109953
Change-Id: Ia3e4a1e64e65b3b8bb3e708b31636f4186acfd46
2011-08-08 17:16:47 -07:00
Ben Komalo c42f09c05d Merge "Make compose landscape(phone) go fullscreen" 2011-08-05 16:26:28 -07:00
Ben Komalo 330b1273af Fix show pictures to not look broken.
- this still needs an asset for the "checkmark" button when showing
"always show pictures" prompt - using a checkbox on state as a
placeholder but it's probably not the best thing for it

Bug: 5037485
Change-Id: Iaa1d0f865bf0c01fde0b0cb37ea1c395345ed582
2011-08-05 10:02:30 -07:00
Ben Komalo 0108aeb5b1 Make compose landscape(phone) go fullscreen
Bug: 5121640
Change-Id: Ib7cc74c2ee494b69c7674d60960df83d6f0d9845
2011-08-04 17:59:03 -07:00
Ben Komalo 6be8cceadd Update sync settings UI to specs
- minor text changes
- use light holo theme
- slight order changes

Bug: 5110452
Change-Id: Icf558ee495860dc97048765d3b8d09d31161dd32
2011-08-03 17:25:10 -07:00
Ben Komalo f6348449fa Minor conversation header visual cleanups
- fix header bg on tablets
- fix font color in header
- make subject text wrap on phones

Bug: 5110992
Change-Id: I8c58271788f11251906d71073e6e03033c74f38f
2011-08-03 15:45:16 -07:00
Adam Powell 72fb0c8b2f Follow framework API changes
Change-Id: Idda69badd6405fe6ddff1d3f4b8ea06332ac3360
2011-08-02 17:00:11 -07:00
Ben Komalo 263d0ec707 Fix account spinner width.
- make it take up different size on phones and tablets (also landscape
  phone/portrait phone)
- move unread count outside of the spinner area

Bug: 5108972
Bug: 5111250
Change-Id: I2c16bbb52ce53bbf1c8fe08fd78f1a4b4afd4ccf
2011-08-02 15:04:48 -07:00
Ben Komalo 383279a1c5 Update message list item redlines.
- reduces number of "modes" to just two: normal and wide
- consolidate the normal/narrow modes for phone and tablet (as per spec)
  with the only diff on the tablet being side paddings
- fix issue with "white arrow" visual being shown in phone when tapping
  on a message
- make touch computations be resilient to padding values instead of
  assuming that the check/star icons are right at the left/right

Bug: 5103823

Change-Id: I23f967454f7744d9c59256625e302e54a353994a
2011-08-02 14:05:05 -07:00
Mindy Pereira b83ecdbb9f Merge "make shorter chips views for landscape where we are turning off extract mode." 2011-08-01 11:18:53 -07:00
Ben Komalo 391b9d4abd Search delay fixes.
- adds a loading state to search so the user isn't left with a blank
screen for several seconds
- adds a timeout so that a warning message is shown for results that
take over 10 seconds
- use default loading/no message views in ListFragment so we don't have
to manager our own stuff

Bug: 5014107
Bug: 5037618
Change-Id: I8b03fa0967055989156c7777901affc777c4fae7
2011-07-27 11:37:54 -07:00
Mindy Pereira 2fe624cf47 make shorter chips views for landscape where we are turning off extract mode.
per UX.
Also, uses the chips RecipientEditTextView style as a base
so that it automatically gets styling for no extract mode.
Change-Id: Icc60944880b1d104766faee18f05960dd5089394
2011-07-25 10:06:22 -07:00
Ben Komalo df4dfa570a Settings/Setup style cleanup.
This is not an attempt to cleanup the code that much - minimal amount of
work was done to reduce the copy/pasting that is rampant in this part of
the codebase.

This basically just does visual fixes to:
- not make the buttons illegibly tiny
- not make the buttons overlap
- make the padding consistent on phones

Bug: 5039509
Bug: 5011325
Change-Id: Id31dee84a54a5dce9644b6f37fb41ac2c2ce89b9
2011-07-22 20:26:00 -07:00
Ben Komalo 72a24f12a2 Misc settings UX fixes.
Bug: 5068602
Change-Id: I02acf3690e98ce747ddb4d3a745ac2fa59948c70
2011-07-22 16:04:10 -07:00
Jorge Lugo 4ca1ca8622 Display message when no quick respones available
When editing quick responses, displays an appropriate
message letting users know that there are no quick responses.
Additionally, the MessageCompose activity will only show "insert quick
responses" when at least one exists.

Bug: 4948180
Change-Id: I1191bd54d6e64f990b6d6830f0837579d7a6918c
2011-07-21 19:06:17 -07:00
Ben Komalo 0413edd626 Remove STOPSHIP
- ensure that the commitAllowingStateLoss is actually not dangerous - we
only had one case I could see where we were actually doing a transaction
from a loader callback and I fixed that just now to not do any
transactions.

Change-Id: I21e11138f70eb2ce953a5ba54119ca46555f465d
2011-07-19 17:28:58 -07:00
Ben Komalo dfff72f731 Misc attachment code cleanups
Change-Id: I612b3ed1280d4d057834d3d3e67c8ac17c2bafb6
2011-07-19 15:16:45 -07:00
Ben Komalo 776997e62e Update message compose to phone spec
- move cc/attachment to overflow menu
- misc layout fixes

Bug: 5011868
Change-Id: If17a36c9e7f13115828a957163af5969b6f8f93e
2011-07-18 17:08:35 -07:00
Ben Komalo 9f05f72ab3 Fixup settings entry points.
- include settings in menu in message view
- remove "show all mailboxes" from message view
- rename "Account Settings" to "Settings"

Bug: 5039294
Change-Id: Ic2dcbe8fe6e2bd10cc5d790a74c49a7159b59cab
2011-07-17 16:41:55 -07:00
Eric Fischer 1c810c3f09 Import revised translations.
Change-Id: I2b1a26c9ba36fadd7d4351350dd5322f66c30f6c
2011-07-15 16:48:48 -07:00
Jorge Lugo 8e779e627a Accessibility improvements
TalkBack functions properly with MessageList items, as well as
"reply," "reply-all," and "forward" buttons while viewing messages.
It is now also possible to switch accounts using only a dpad
or trackball. Finally, EditText fields in account setup also work
with TalkBack now.

Checkmarks don't work with Talkback, but this I have confirmed and
reported it as frameworks bug.

Change-Id: I7f72682a517eef4fa122241c675026fe7997ac64
2011-07-15 09:08:13 -07:00
Ben Komalo 08f068c9ce Update message header actions for phones.
- This creates a "more" icon in portrait and shows all three actions
(reply/replyall/forward) in landscape.
- also makes the star visible by default (hiding it in EML view)

Change-Id: Iefff7c0717cfda4dc91218b0d490775294c96103
2011-07-14 17:23:21 -07:00
Ben Komalo 9e8da783a8 Fix action bar text styles.
This makes custom styles in landscape,portrait, and tablet mode since
the action bar real estate differs in those modes.

Bug: 5010826
Change-Id: I2bd6bdcf9adc44a4d0084d4b2bfbffb472f03643
2011-07-11 18:29:18 -07:00
Ben Komalo e05f511a4e Add entry in settings to clear trusted senders
Bug: 5011682
Change-Id: I09a557e4bb0ce3e17f796bcc5693e405f23e8c7e
2011-07-11 12:14:26 -07:00
Makoto Onuki 1ddc2ca4a7 Per-mailbox settings
- Use PreferenceActivity, in the old style, meaning without PreferenceFragment.
- If setting Inbox, change the account settings instead of mailbox settings.
- Use the DialogWhenLarge theme, meaning it's a full-screen avitity on the
  phone and a dialog on the tablet.
- Also fixed the bug that we the menu items that are made invisible by
  UIControllerBase may be made re-visible by the 1-pane controller.

TODO The menu item shouldn't be shown for non-syncable mailboxes.

Change-Id: I02b2faf6f593e1e2eb370217c27801aa58ca7e6c
2011-07-10 12:09:51 -07:00
Ben Komalo d8ab562d0d Reduce startup time via Welcome.
In the common case, we don't need the "waiting for sync..." message, so
avoid inflation in those cases and just inflate on demand.

Also do a quick drive-by fix for the error message being pushed in way
too much on phones

Change-Id: Ie7a8472194659a52069d1ee21e0a0cb9b6fc91ba
2011-07-06 11:14:04 -04:00
Ben Komalo ad359c8fdf Quick fixes to unread count
Makes it consistent in the header and dropdown

Change-Id: Iec97678fa8704c6c4cf8c8eb129c94321f34949b
2011-06-30 16:26:02 -07:00
Ben Komalo 9b4f11a4ed Show a search results header.
The count will be wired in and shown in here.

Change-Id: I2f496dcd86d748ee1c17c8e819b65c61c098a8ba
2011-06-27 19:59:23 -07:00
Makoto Onuki 569083fab3 Merge "New account spinner" 2011-06-27 13:22:41 -07:00
Makoto Onuki 4689cb7100 New account spinner
- Don't use the action bar spinner.
  Instead use a custom view to show the current account.
  (It's not a spinner; now we show the dropdown list by ourselves,
  which gives us more detailed control.)

- Also show the current mailbox name/unread count with the account name.

- Removed the mailbox info loader in ABC.
  Instead, now the AccountSelectorAdapter loader loads the current
  account/mailbox name, and the unread count as extras.

- Now ABC.Callback.onMailboxSelected passed an account ID as well
  as a mailbox ID.

- There's new code paths that can cause the "fragment transaction in
  onLoadFinished" exception.  We need to fix this properly, but
  for now we just use commitAllowingStateLoss().

Bug 4948352

Change-Id: I73bb8b7530f8328ca1c86382ac0a54086ad061d7
2011-06-27 13:19:27 -07:00
Ben Komalo b1f3c2d73f Merge "Improved "show pictures" support." 2011-06-27 10:00:49 -07:00
Makoto Onuki 679ab33ed5 Fix log spew: Attempt to retrieve bag ...
Bug 4949998

Change-Id: I8b6c88b16ad7657c3e5c247c28fc026129cb86f3
2011-06-26 13:21:39 -07:00
Ben Komalo 66282fb6ff Improved "show pictures" support.
This is the UI part for remembering to show images based on senders.
It does not persist anything yet.

Change-Id: Iec40d9d1ace3661dabca2eed31ea6d0893be71e0
2011-06-25 16:54:09 -07:00
Ben Komalo 6f93d2edca Update notification text according to design
- "UNSEEN new messages" is the title for multiple new messages
- the small number in the right shows the unread count

Change-Id: I48f761b727ea8abc9277d737a08789fa63d10871
2011-06-23 17:48:25 -07:00
Makoto Onuki 846763bd68 Improve 1-pane message visual
Also fixed the text alignment in the tabs on the 2-pane message view.

We don't yet to have the full-spec for this, so it's still temporary.

Now we again wrap the webview in a scroll view, so we'll have the "message
keeps growing" issue again.  I'll file a bug for this.

It's still temporary, so I didn't remove the scroll views for the
each section (e.g. the attachment tab).  Also I had to make up some
colors/dimensions which were unspecified.  Also I didn't always define
styles when I should.  Let's clean up these things later when we
get more detailed spec.

Change-Id: Ibdb78543f5ec7300f92091d1f8b800ca5edc74b2
2011-06-22 15:56:34 -07:00
Ben Komalo 1116194d9f Fix search bar sizing.
On phones it was being pushed out beyond the width of the phone.
Make it so that it fits the whole width in phone portrait, and is fixed
size in landscape / tablets.

Change-Id: Ifc712002c4df38ceb4bd3577f0cbb48114b41115
2011-06-21 20:39:24 -07:00
Ben Komalo d17a85a2f2 Mailbox -> folder in user visible strings
Bug: 2293250
Change-Id: I61b58f594357f5a71bb0b50af43cba1e5fffbd8d
2011-06-21 20:12:41 -07:00
Makoto Onuki b8b560f315 Improve Welcome
- Show "Your email will appear shortly" during the initial sync
- Don't close self in onStop if it's because of configuration changes.

Change-Id: Ic60f25c58712c599c735b2bede1627d4e102eb6b
2011-06-21 17:17:08 -07:00
Jorge Lugo ae95fbf4d0 Merge "Added quick responses." 2011-06-20 15:10:06 -07:00
Ben Komalo e16d6d7f95 branch message list item XML
This separate the layouts for the message list item so that we can
change the phone and tablet independently.

The visuals weren't really updated except for easy to win padding
reductions.

Change-Id: I92ed6e1bf275551abd77fd788b5c7ac22f639843
2011-06-20 14:41:22 -07:00
Jorge Lugo 5a3888f35b Added quick responses.
Added "Insert quick response" button to MessageCompose's action bar. Clicking
it opens dialog with available quick responses. Selecting one of the responses
will insert it into message body at the current cursor location. Also added
menu in account preferences to create, edit, and delete quick responses.

Change-Id: I85f3f6b36801cf112ec9d7c31135a917456173d7
2011-06-20 13:31:50 -07:00
Ben Komalo cb24e515b7 Add one more error state to certificate process
When the KeyStore fails to give us back a certificate for any reason (it
was removed from the keystore perhaps), propagate the error back up.

Change-Id: I4f0ef783c1665589cc8ccb43d95da43a297a3e9a
2011-06-16 16:14:03 -07:00
Ben Komalo f4dbbf1099 Indicate to the user when a cert error happens.
This introduces an exception which needs to be thrown from a KeyManager
when it tries to establish a connection with a server requesting a
certificate.

Change-Id: I06dfad7789ed5d320b630e7e4380e15da42a48df
2011-06-16 11:37:23 -07:00
Ben Komalo b40bdb17df Merge "Introduce a cert selector in exchange settings UI." 2011-06-15 11:17:40 -07:00
Ben Komalo 7014f7d329 Introduce a cert selector in exchange settings UI.
This simply allows the user to select a certificate from the KeyChain to
use for credentials.

Text and UI not finalized.

Change-Id: Ib86abc3c2e899640218122caa12308dc9646dab6
2011-06-14 17:34:09 -07:00
Makoto Onuki 0f27632749 Add "search mode" to the action bar
- Instead of the search dialog, show the search widget on the action bar.
- Launches a new activity for search, but still uses the temporary search code
- Search still works only on two-pane.

Change-Id: I1d36ad3416c7dff9579cf37e40e49e31c9d99219
2011-06-14 15:13:32 -07:00
Todd Kennedy dc6928d798 Add recent mailboxes to the mailbox list
Change-Id: I84ee9d0da43ccac4d10e5122f57583c4b39cf65d
2011-06-07 16:40:12 -07:00
Todd Kennedy a09ac7d417 Implement account spinner recent list for one pane
This adds the default recent list and 'show all folders' to the one pane UI.

Change-Id: I877f854ff4f9c7440cbd40f2a9ded8aba4002656
2011-06-07 10:04:59 -07:00
Todd Kennedy e392418840 Add recent mailboxes to the account spinner
The ability to change mailboxes using the spinner is currently only implemented
for the two-pane UI. one-pane implementation will come in a future CL.

Change-Id: If72e9d9d607508553c918f5523e748e8a481ff84
2011-06-07 08:48:37 -07:00
Todd Kennedy 69461503fb Add "Accounts" header to the AB spinner
Change-Id: I35e4b7295db16db803ede084cf65fa3f2115f770
2011-06-06 14:11:09 -07:00
Ben Komalo cd1f3d33a9 Cherry-pick ff269c6d50 - Minor fixes to setup screen for 7"
(this conflicted and the automerger situation was a disaster, so I
  opted to skip immediately to help clear the backlog, now I'm
  cherry-picking manually)

 Using a TableLayout and large margins to shrink the input boxes causes
 weird artifacts when you type past the size of the input box. Fixing the
 padding is also not the right way, since stretching the input the whole
 screen length is ugly. Just use a width.

Change-Id: I3009e7c66f729a96f404263d79e77d3ab4d831ae
2011-06-03 18:06:46 -07:00
Makoto Onuki 03b863d68e Merge "Implement 1-pane navigation." 2011-06-03 14:16:49 -07:00
Makoto Onuki 3d9b8e76f0 Implement 1-pane navigation.
- Now that fragment useage is simplified (e.g. no new fragment
creation for nested mailbox navigation), most of the fragment
operation code for 2-pane is reuseable for 1-pane as well,
so moeved it to the base class.

- Temporarily added "Show all folders" as a menu option on 1-pane.

- Added "opener account id/mailbox id" to the message view fragment.
They are not used by the fragment itself, but they're used
by the UI controller for the back navigation.  (And now the UI
controller doesn't maintain the current IDs by itself; rather
it gets them from the currently-active fragment.)

- Use async fragment transaction on 1-pane too, now that it always
gets the current state from the active fragment.

- Changed the timing when we install fragments from onAttachFragment
to fragments' onActivityCreated.  So now all installed fragments are
created.

TODO Now that all installed fragments are guaranteed to be created,
remove all special trealment for the fragment argument accessor.
(They were meant be safe to call before onCreate, but it's not
necessary any more.)

Change-Id: I0ed100c3f0b460835b164c0dc908ea483a4e46ee
2011-06-03 13:59:50 -07:00
Todd Kennedy b19516e248 Add proper wording for "all accounts" picker item
Per discussion w/ UX.

Change-Id: Ida4a11828d2bb157c4bc0c66f84d877013f0e4d7
2011-06-02 11:54:25 -07:00
Todd Kennedy 2f5ee8e2d1 filter mailbox list for the widget
The mailbox list for widget configuration should only include two mailboxes --
1. an account's full inbox (both read & unread) and 2. an account's unread
inbox (similar to #1, but, only contains unread messages)

This also applies for the combined account view.

Change-Id: I5640fd8572d385703db04ca613f5b1f35f3952da
2011-06-02 10:36:29 -07:00
Todd Kennedy 0f84ff2c08 Add meta options in the picker
With this CL, we have "All accounts" in the account list and "Inbox" & "Unread"
in the mailbox list. "All" + "Unread" doesn't play very well, so, we should
seriously consider whether it's worth the effort to support it right now.

Change-Id: Ia1c07c89a535a68ffe6f3ae5009b5b6591a9acdb
2011-05-27 16:06:33 -07:00
Todd Kennedy 5675ea88d3 Add a second fragment to select the mailbox
After choosing the account, we need to select a mailbox for the shortcut.
In order to replace the fragment, we cannot hardcode it in the XML. Instead,
we need to dynamically create it.

Also, restructure the fragment class and rely on the class to "do the right
thing"

Change-Id: I752ad5bbdf2484332ec2b73852cae74a5d2092fa
2011-05-24 16:00:33 -07:00
Ben Komalo 87df8d7161 Simple change to use the new split action bar.
Change-Id: I51456822bdf1c6f75aeb0ced615e44b624b26460
2011-05-23 20:41:24 -07:00
Makoto Onuki 2ed7a86949 Support pre-HC style account shortcuts
Account shortcuts used to point at MessageList directly with a
content://com.android.email.provider/account/ACCOUNT-UUID URI.

Hook these intents and open Welcome instead.

On Eclair and before, we stored an account-ID directly as an extra,
but this style is no longer supported.

Bug 4208879

Change-Id: I9fecb0723743377a6d7c7e84626e8613f2356492
2011-05-19 13:47:25 -07:00
Marc Blank b221cbc785 Add messaging exception status for "attachment not found"
* Adding this enables 4409976 to be fixed in a user-friendly manner

Bug: 4409976
Change-Id: I4f5ce890b6957c27a0f59656467dbe23b480a7e3
2011-05-12 12:11:43 -07:00
Makoto Onuki 4ddc2f20c1 Remove unused strings
Change-Id: I19a0a2d165827240a1cc2dd6a2cb03cbaf0f99c7
2011-05-11 17:00:44 -07:00
Marc Blank 9d9b481a85 Add plumbing for disallowing attachment download per policy
Change-Id: I860dfb5c28933dcd4bf96c8e4bc890bff0f53c42
2011-05-10 18:26:00 -07:00
Ben Komalo 626ad1929d Support switching compose modes for the phone.
Not styled according to the UI quite yet, but functional

Bug: 3117253
Change-Id: I707e0254d142a54cd6e396fce63ebb00ba66048e
2011-05-10 15:31:51 -07:00
Makoto Onuki f5492ea991 Add 1-pane UI controller
Added the base class for the UI controllers and the 1-pane implementaion,
which is almost empty at this point.

The old phone activities still exist and will be used on the phone by default.
To use the new activity (1-pane EmailActivity) on the phone, use the following
comamnd.

adb shell am start -a android.intent.action.MAIN \
    -d '"content://ui.email.android.com/view/mailbox"' \
    -e DEBUG_PANE_MODE 1

Change-Id: Id1fe85d4517778afc967d7d5e17e1299dd1bfefd
2011-05-10 11:28:00 -07:00
Todd Kennedy 3d81e234d0 Remove deprecated strings
Removed the deprecated strings and brought back the permission strings
that were actually used.

Change-Id: Ie63a948522f7e11e1950969be5dfb26d7bc58e0a
2011-05-05 12:14:41 -07:00
Todd Kennedy 075feb4556 Implement new nested folder mocks
Change-Id: I7c0c1d41b7a40d83e1237ba31d5f7949945c7e1e
2011-05-05 10:26:54 -07:00
Marc Blank 335a724ee6 Implement "automatic" sync lookback (Email side)
* Update sync window options to include "Automatic" and "All"
* Make the default (for new accounts) "Automatic"

Change-Id: Icbc696f55abcfad79e66079ebb414ca50778dcaa
2011-05-05 08:16:44 -07:00
Marc Blank 265530723b Expose unsupported policies in the UI (account setup)
Change-Id: I75b650af92c87bd990009e54072ac4b58ed0895b
2011-04-26 18:12:45 -07:00
Marc Blank d2fd1252d5 Add status code(s) for disabled sync (needed for EAS 14.0)
Change-Id: Ie65141c4d83412274dbbc39dffed7c3be394bb84
2011-04-22 12:50:37 -07:00
Ben Komalo e36648697f Fix apk attachments so they can be installed
This introduces an in-memory cache of file paths for an attachment so
that we can install from a filepath instead of a content URI.
The cache also allows us to prevent duplicated files made if the user
hits save multiple times (the save button is disabled).

Bug: 3338997
Change-Id: I56651a55eef2f1a3f24b6d936c37736c4fc3d295
2011-04-21 12:07:32 -07:00
Ben Komalo 8b2109f047 Re-work the layout computation for MessageListItem
This now uses an XML layout that gets inflated and computed after a
layout pass. The drawing simply uses the coordinates stored after the
layout.

This makes it a lot easier to maintain the different views and allows us
to simply provide different XML files for different modes/views, isntead
of trying to hand tweak Java layout code.

Some TODOs - clean up the "paints" and optimize the layout/drawing
computation

Change-Id: I784919f726bd4d80aba8744a8f047fcfe79ad93a
2011-04-19 11:53:30 -07:00
Marc Blank d4a1500ae9 Temporary UI for setting mailbox sync frequency/lookback
* Just in MessageListXL for now, as with search
* This allows us to test functionality within EAS, and confirm that
  it's all working w/ unbundled Exchange (API 1)

Change-Id: I4f062ae871a28d2b57a23a269d6ec65903181d26
2011-04-07 14:53:08 -07:00
Todd Kennedy 007d0be4ed First pass at nested folder support
currently only really works for exchange accounts. legacy accounts (imap
or pop) do not build a folder heirarchy.

Change-Id: Idb7c622b64a599a0776233a076359869f4ab4a4f
2011-04-07 14:23:21 -07:00
Marc Blank 78684ccc79 Temporary search UI
Change-Id: Ia138ca93f0b28fd0915aa79c965f752f7c08ee90
2011-04-06 08:51:14 -07:00
Makoto Onuki 18f98261a4 Changed text color for phone
... assuming we're going to use the holo light on the phone as well.

Now the text on MailboxList is clearly visible.

Also updated/added some comments.

Change-Id: I280db2b82cbd1627c78a305dd31bbf1b1bb34d1d
2011-03-31 17:29:11 -07:00
Todd Kennedy 206109cf44 Disallow editing username after account creation
After the account is created, don't allow editing the user name. We want to
prevent this as the user name is core to the account and changing the user
name is tantamount to creating a new account.

bug 3502279

Change-Id: I1d89710fd48aca67ba13abea5bdbdc1d87941618
2011-03-30 08:54:34 -07:00
Todd Kennedy 6000d4b975 Fix build soju-eng build error
The phone build was missing one layout and a couple dimensions.

Change-Id: I7d48599e82066c2a293f7b442eed644185848c87
2011-03-16 13:49:17 -07:00
Todd Kennedy f42d5c6234 Implement UI tweaks
* Correct allignment of mailbox label
* Sender info & presence alignment fixed
* Header height corrected
* Sender header updated; new asset for background & remove the "fold" asset
* New asset icon and allignment for "show pictures"
* Selected rows have updated background; new assets
* New asset for checked items
* Update divider to be 2px high
* Update selected background for wide message list

bug 3510984

Change-Id: I028ed5619ea7127b0392d9f5b7b00c575b00f3c6
2011-03-07 18:18:30 -08:00
Makoto Onuki 19b2a7ebc9 New debug setting to enable strict mode logging.
For now it only enables it for the main process.  I've added a flag
to EmailServiceProxy for EAS, but it's not used in the exchange side.

Bug 3500292

Change-Id: I5b27c69fe7cc995a430e9def54b2463076032c78
2011-03-02 10:41:48 -08:00
Marc Blank dc78a769fc Email split, part dix
* The coup de grâce for Exchange in Email
* Remove Exchange bits from AndroidManifest
* Update Android.mk to create static jar for emailcommon
* Delete all com.android.exchange files
* Delete all exchange-only strings
* Change loadAttachment service method to take only attachment id and
  background flag
* Add code to AttachmentProvider.openFile() that opens an output file
  for attachment writes
* Make sure deviceId is determined in Email app (not Exchange)

Bug: 3442973
Change-Id: I775600252fd121f474d51cb26fefbfcc50e387af
2011-02-25 10:46:16 -08:00
Makoto Onuki 47bdd174dc Merge "SizeBoundingFrameLayout: framelayout with max width/height" 2011-02-23 15:12:41 -08:00
Makoto Onuki b3c3f1afc6 Pixel pefect: account spinner.
The expanded account spinner is completed, but the collapsed view
needs some more work.  (That'll probably be a rather large CL, so I'll
finish it in a separate CL.)

Bug 3434135

Change-Id: Ia732e6b57b8c0d3e1609c3134b26411539ab6a18
2011-02-23 13:59:11 -08:00
Makoto Onuki de9e706ed9 SizeBoundingFrameLayout: framelayout with max width/height
This will be used to set the max width to the account name spinner.

I gave up on writing tests for onMeasure.  It wasn't easy without adding
a dummy activity and layout.

It'll be used for a fix to bug 3439694.

Change-Id: Ie7569b0661eb732e270e4521fa0d3306f1bdd12c
2011-02-23 13:32:36 -08:00
Todd Kennedy 3f60e9312b Add "info" button to the attachment view
Whenever we remove the "load" and "view" buttons, we should add an "info"
button; where we will inform the user as to why we are preventing her from
seeing the attachment.

bug 3338997

Change-Id: Ic243f1542dec55f5b256eeb67ade50aa90e42009
2011-02-22 08:20:54 -08:00
Andy Stadler f489413142 Add contextual dialogs after notifications
* When security settings notification is clicked, inform user that
  they need to change settings (before dumping them in security
  settings.)
* On an authentication failure, present a dialog to the user explaining
  that the username or password may be incorrect.
* When the device pin/password is expiring or expired, present a dialog
  to the user explaining that it needs to be updated.

Bug: 3238657
Change-Id: I8fca446fa3c1bf87a95938553dbdc362c3df220e
2011-02-18 18:23:18 -08:00
Andy Stadler c6d344ad2a Refresh email notifications (part I)
* Use strings that fit properly in new notifications
* General cleanups & rewrites from Roy
* Remove showWarningNotification() and use postAccountNotification()

This is part I.  Part II will add dialogs triggered by some of these
notifications, to provide more explanation to the user of what's wrong
and how to fix it.

Bug: 3238657
Change-Id: Ib51bcb4412f8a09a6f97653f0b5f8642efe2ac1e
2011-02-16 16:38:18 -08:00
Andy Stadler e47af7698f Add summaries to incoming/outgoing preference items
Bug: 3380377
Change-Id: I81993adfea93f00c81655cda13e2ff46ec8ac20d
2011-02-16 14:19:34 -08:00
Andy Stadler 7d51b7a05b Remove all compatibility with pre-2.0 data
* Remove LocalStore (pre-2.0 mail database) and its unit test
* Remove UpgradeAccounts (converted pre-2.0 accounts to Provider)
* Remove FolderMessageList (receiver for pre-1.6 desktop shortcuts)
* Remove "upgrading" paths through LegacyConversions
* Clip out dangling references to everything above

Bug: 3292310
Change-Id: I5654d55a0879b00b05b63055b94651855a8ee3ef
2011-02-06 00:54:39 -08:00
Makoto Onuki e73bae12ed Revive "Send all messages" label.
Bug 3409375

Change-Id: I2368e6679cba496c58b31a4613fef6291d106de9
2011-01-31 16:02:49 -08:00
Andy Stadler 34512ba630 am 809cd769: am 0e3a0331: Widget: Max out message count at 999+
* commit '809cd769390aa503ad90e5b8bce1594f92a2479f':
  Widget: Max out message count at 999+
2011-01-30 12:53:16 -08:00
Andy Stadler 0e3a03317b Widget: Max out message count at 999+
Bug 3403158

Change-Id: I1daf0c62684bad83a69e19c39ffe1b8df899d077
2011-01-30 11:45:33 -08:00
Makoto Onuki 5907d39d2b Add debug setting for one-minute refresh
Bug 3377054

Change-Id: I7843fe82d66ab7896b8293b2fa16ca73f6711595
2011-01-28 14:16:56 -08:00
Andy Stadler 999199d49a Merge "Remove STOPSHIPs and a bit of debug logging" into honeycomb 2011-01-26 22:58:22 -08:00
Andy Stadler c540b57263 Remove STOPSHIPs and a bit of debug logging
Bug: 3396875
Change-Id: I3e874e28c3412aadd9851000a83d69fc8c06aeb9
2011-01-26 22:53:08 -08:00
Todd Kennedy a7f49a7c0b Update icons with latest drop from UI
Change-Id: Ic23f1bee28c8aef1974225f9c03edc92c845f8c7
2011-01-26 17:43:03 -08:00
Makoto Onuki c850485269 Remove STOPSHIPs
action_bar_current_mailbox: We'll ship with the current design.
colors.xml: Obsolete STOPSHIP.

Bug 3335095

Change-Id: Ic45ef3d0cafb55761b720e1e74c0633012f87e98
2011-01-25 16:37:40 -08:00
Roy West 45939a77b8 Remove erroneous extra space char.
Change-Id: I2a4f107bc7f9ab4d407ddd6740faa2454f9c593f
2011-01-20 13:22:24 -08:00
Roy West c8f6d57ca5 Change "status bar" to "System bar" for HC and future.
Change-Id: I8bc78dd5071e21cdaa67574994c27781437b2c27
2011-01-20 12:01:08 -08:00
Andy Stadler 373ccb1037 Cleanup account name, user name, and summary
* In AccountSetupNames:
  * Add "Field required" error tag to Names display
* In AccountSettings:
  * Improve IME behavior in text fields - auto-capitalization
  * Prevent empty username
  * Reset empty nickname back to default (email address)
  * Fix broken hint for signature
* Proper trimming in all fields

Bug: 3338435
Change-Id: I2720c4524303ada6dd228866756fc9c3aac173f3
2011-01-20 11:37:39 -08:00
Todd Kennedy 6bbc689efc Implement final drag & drop spec
Current specification calls for the following:
* Droppable targets: do nothing
* Not droppable targets: grey text (hex #999999)
* Hover over droppable: use label/folder list pressed state
* Hover over not droppable: do nothing
* Destructive targets: background (hex #f10000)

We need to copy the resource from the framework as there is no supported way to
fetch the pressed state drawable during runtime. Adam filed bug 3370043 so we
can specify a drag target state directly in the selector.

bug 3154986

Change-Id: Ifd5c24a3dc46b5a1c64a149904657dda297ed047
2011-01-20 08:41:24 -08:00
Todd Kennedy a33c0c74cc Revert string name change
to prevent churn for the translators, revert the string name change

Change-Id: I22710d810a5f3602ccd53a9cb4d2f31edca572f1
2011-01-19 16:23:42 -08:00
Todd Kennedy 3db3e4b795 widget combined inbox view only shows messages in inbox
instead of showing all messages (e.g. messages in drafts, etc...) the "combined
inbox" view now only messages in the inbox folder. This is now identical to
the "combined inbox" view available in the full email UI.

bug 3368613

Change-Id: I0080b56cd2718a3dce82b279277c63c4f43e86dc
2011-01-19 11:27:41 -08:00
Todd Kennedy 290fb65595 Update widget colours / assets according to spec
* Modified font colours for read/un-read emails
* Add chip colours when viewing mail from multiple accounts
* Add calendar icon if message has an invite attachment
* Update background of read/un-read emails

bug 3351761

Change-Id: Id59573d25a6988e9e869335f95778aad28b43912
2011-01-19 09:23:58 -08:00
Andy Stadler 98ea710d18 Add strings before string translation deadline
Bug: 3301398 Phone->Android device in device admin setup screen
Bug: 3296594 email widget doesn't have a "tap to configure"
Bug: 2981433 should not trim leading/trailing spaces from passwords
Bug: 3360873 Attachment pre-caching should be a per-account setting
Bug: 3362752 Malformed message can prevent sync (error while decoding)

Change-Id: Ibed653987ccd5e0e1bd4e195f044c5c1cc06368f
2011-01-18 18:41:24 -08:00
Andy Stadler 946239e8a0 Add per-account preference for bkgnd attachments
* Add flag to Account record
* Add checkbox to Account Settings (IMAP & EAS)
* Add checkbox to Account Setup (IMAP & EAS)
* Add flag to backup/restore logic
* Update Account & AccountSetupOptions unit tests

Bug: 3360873
Change-Id: I0c407776ede4110f33716644f6f027938f21130a
2011-01-18 10:53:37 -08:00
Makoto Onuki b3b7f01d66 Add missing CHAR LIMITs
Bug 2953798

Change-Id: I3beb4092ce8b8cfb4c445041d617177e080da93f
2011-01-13 10:21:51 -08:00
Makoto Onuki 82dd234f13 Improve "message details"
- Show subject/sender info
- Now all text fields are copyable

Bug 3342310

Change-Id: Ib9c4486aec36f192625c21602ea7406508ca0a49
2011-01-12 12:29:59 -08:00
Andy Stadler 3c7c8c9ef6 Finish incoming/outgoing/exchange layouts
* Standard values for overall layout & padding
* Standard button positioning
* Move all fragment padding to containers so setup/settings
  can be adjusted individually.
* Remove unnecessary banners in settings fragments

Bug: 3188940
Bug: 3188951
Change-Id: I9567988b388a8cf80f9d583be865091478b2404c
2011-01-12 00:40:34 -08:00
Andy Stadler 056d562d09 Final button spacing & colors for account setup
Removes all STOPSHIP notes for account setup.

Bug: 3335093
Bug: 3188940
Change-Id: I68f906f71cf2404fe626caac97ddf0dd789f6a64
2011-01-11 22:53:55 -08:00
Todd Kennedy 56ffd12fcd Update chips per UI design specification
bug 3335090

Change-Id: I4922621b14f10a2013f3a91c7d76f9c6482a327d
2011-01-11 14:03:21 -08:00
Makoto Onuki a826d3fb03 Pixel perfect: Message view
Still waiting for a few missing assets, but it's done other than that.

The divider change is already merged; new layouts all use the framework style.

It's basically all layout changes, except for:
- Now the recepient address line has "Show details", which shows a dialog with
  all to/cc/bcc addresses with the timestamp.
- Now invite response buttons are checkboxes.
  (But the basic behavior doesn't change -- once you check a response,
  the message will be gone, so you can't change the response later.)

Copied message_header_bg from gmail manuall.  It'll look silly without it.

Bug 3138021
Bug 3307021

Change-Id: I6f7eb91d6104c3143a5c58b0c4c6c19929cea477
2011-01-10 15:51:32 -08:00
Todd Kennedy 07f5f60b8f Implement proper drag-n-drop
Still some tweaks to be done, but, we're real close to what it should
look like.

Bug 3322756
Change-Id: I8549ab59677a344e8f259c88bed950169d7381a8
2011-01-10 15:23:40 -08:00
Todd Kennedy 285fac8554 Replace private divider with framework divider
The framework defines ?android:attr/dividerHorizontal. Instead of defining our
own divider by specifying some arbitrary RGB colour, utilize the framework's
divider.

bug 3335145

Change-Id: I64dd30a5a73b0884f82f6a2b9fbbd88c6782e0db
2011-01-10 13:16:10 -08:00
Andy Stadler a7b781b5dd Near-final layout tweaks to setup screens
* Dimensions, Colors, Paddings, Text styles, etc.
* Update AccountSetupBasics, AccountSetupAccountType,
    AccountSetupOptions, and AccountSetupNames
* Extracted shared layouts in AccountSetupOptions & AccountSetupNames
* Leave behind STOPSHIP entries for:
  - button positioning (primarily vertical)
  - colors of text & dividers
* Will do incoming, outgoing, exchange in a separate CL (because they
  are shared with settings)

Bug: 3335093
Bug: 3188940
Change-Id: Idf727e3b2b6a0293d6d41bf29f1c0c48d746ab7c
2011-01-10 00:42:26 -08:00
Andy Stadler a8ef07fabc Cleanup STOPSHIPs in strings.xml
* cleaned out old placeholders
* moved a bunch of unused strings into placeholders
* moved three strings into active status.

Bug: 3335092
Change-Id: Ibb0690f7cc9ddd1b8f7f337964faff6471be880c
2011-01-09 16:16:08 -08:00
Makoto Onuki 7523930d39 Pixel perfect: message compose
Layout & action bar icons.  Now I think it's close enough.

Bug 3138037

Change-Id: I0802f34ac23980e0faf8a0daffc016a012816d81
2011-01-06 15:01:29 -08:00
Todd Kennedy 64ac7a6cc8 Use new holo light icons
Use the new icons where appropriate. This is not a complete change as there are
still some icons missing.

Change-Id: I51d1458749343ddfc6456dc2a9853b8bc2540e26
2011-01-06 13:42:20 -08:00
Makoto Onuki 80a98fd939 Pixel perfect: mailbox list
Now it should be close enough...

Also fixed the "selected mailbox won't get hilighted" issue.

Bug 3137965

Change-Id: Ifba83783121e62363fac6428534394d2e0a4bee9
2011-01-05 15:33:31 -08:00
Marc Blank 66b6b95646 Put individual account inboxes in widget rotation
Change-Id: If1fddc107d9934849bbf273a67dd1db9c2063d99
2010-12-22 12:49:15 -08:00
Marc Blank 0fd8ae8808 Pixel perfect Email widget
* Functionally correct and pixel perfect
* All current assets in place

Bug: 3292507
Bug: 3284201
Bug: 3135118
Bug: 3255036
Bug: 3252913

Change-Id: I8fa6752748c74b3a9789a3675da12f6c0c11975f
2010-12-20 11:55:01 -08:00
Marc Blank 06a2f4a3b1 New message list formatting per pixel perfects
* Need icon assets (attachment, meeting, star on/off, and
  checkbox on/off)

Change-Id: I6780fb354584ce5ea398b555a8485cf600617586
2010-12-13 15:32:05 -08:00
Andy Stadler f983c75b44 Add preference for background downloading
* Defaults to false
* Placeholder text

Change-Id: I7c729eddb7b4d368a0ac47552c911d2ef11b3ee1
2010-12-08 12:28:02 -08:00
Marc Blank cb5f42dab9 Add CHAR_LIMIT to strings
Bug: 3197247
Bug: 3174971
Change-Id: If1307429cd2fee290d28f75d50b01d9c84534705
2010-12-07 11:09:13 -08:00
Makoto Onuki 74e094834c New style for the new message notification
Bug 3176956

Change-Id: Id7418fb8bb942230266815167f0a2e79062a9116
2010-12-06 14:51:19 -08:00
Andy Stadler 112ed496f8 Update server settings to current look
* For each of incoming, outgoing, exchange fragment, create a "settings
  mode" which slightly alters the layout for use in AccountSettingsXL.
  * Build a settings mode wrapper layout around the basic fragment
  * Add new constructor to set "settings mode" and select layout
  * Add wiring for cancel/next buttons in the fragment
* AccountSettingsXL configures each fragment in its settings mode
* Remove old actionbar "Next" options (no longer needed)

TODO: Pixel perfect adjustments, colors, fonts, etc.

Bug: 3188951
Change-Id: Iba26281b214333db301dd40d6c016b6c5a932c2d
2010-12-02 21:45:04 -08:00
Marc Blank 1b9337ea4f Wireframe email widget
* Formatting and assets are preliminary
* Functionality correct
* Needs cleanup, etc.

Change-Id: I75051df93d233ef529a616c7a9efae403d320bd2
2010-12-01 13:37:57 -08:00
Andy Stadler 1ca111c19c Add password expiration plumbing
* Set aggregated expiration values with DPM
* Fix min/max logic when aggregating, and fix unit test
* Add expiration tests when checking if policies are active
* Add expire-password to uses-policies set
* Handle password refresh (clear notifications and sec. holds)
* Handle password expiration (warning and/or wipe synced data)
* Unit tests for provider-level methods
* Refactor common security notification logic
* Placeholder notification strings (need final)

Bug: 3197935
Change-Id: Idf1975edd81dd7f55729156dc6b1002b7d09841f
2010-12-01 12:58:36 -08:00
Makoto Onuki d1ee5b8fa5 EML viewer: Set title, and show arrow next to the app icon
- Set "Viewing FILENAME" as title.
- Home icon now has "back" arrow.  Closes the activity when clicked.

Bug 3221312

Change-Id: I689499e10704d3c5d206df4aa12e21db9687c4c5
2010-12-01 11:35:09 -08:00
Makoto Onuki 2201b38fe3 Add error message UI
Show an error message in a yellow bar at the top of the activity.

Bug 3230116

Change-Id: I45dad233c1ab52de365c8caedb4eeff29aefac65
2010-11-29 16:07:38 -08:00
Andy Stadler d87f81e901 Update visual style shortcut picker and make it async
* Use dialog when in XL screen size
* Show different strings in launcher and in dialog/activity title
* Add cancel button to picker
* Move accounts query to AsyncTask
* Remove obsolete AccountsAdapter

Bug: 3093928
Change-Id: Ief771482c6db684c434c21cf92844c37a927d34a
2010-11-23 22:54:49 -08:00
Makoto Onuki 5b81690de1 Show color chips for combined view.
Show color chips for account rows and message items on the combined view.

Moved hard-coded color values to resource.

Bug 3138001

Change-Id: Ib93fb9d6e9592ebd0c297f83c3dee2358a80508f
2010-11-23 13:03:06 -08:00
Andy Stadler 49fac404e4 resolved conflicts for merge of 7af8cc5e to master
Change-Id: Ie7364895effcf63b0716682fe6ac24926d1e1da1
2010-11-19 18:46:39 -08:00
Andy Stadler 7af8cc5e26 am 8e126d64: Merge "Added/updated provider settings for Yahoo-related mail domains."
* commit '8e126d6407b0bae54c7b2a4a0bdf508c50e1b759':
  Added/updated provider settings for Yahoo-related mail domains.
2010-11-19 17:49:09 -08:00
Kristopher Giesing 25d4fa0269 Added/updated provider settings for Yahoo-related mail domains.
Specifically, added configuration settings for international Yahoo
domains (e.g. yahoo.ca, yahoo.de, yahoo.fr, etc), including partially
or wholly owned Yahoo subsidiaries; as well as partner domains from AT&T,
British Telecom, and Rogers whose email services are managed by Yahoo.

For domains supporting IMAP, changed to IMAP+SSL for mail handling to
support a better user experience on mobile devices.

Change-Id: If5bdc70f70820f3f8aada6d2ee9b0cdb115432b5
2010-11-19 13:37:54 -08:00
Makoto Onuki 6ffdecfbbb Merge "Add XL layout for message view" 2010-11-17 15:21:06 -08:00
Makoto Onuki 8e8e371260 Add XL layout for message view
- Added the xl layout
- Cleaned up the existing one

Bug 3138021

Change-Id: Ic6ab5e38c10ac12ffeeb6b12319d1e192ac2a40c
2010-11-17 15:19:00 -08:00
Marc Blank 937ea4fc87 Initial rewrite of MessageListItem for XL
* Drawing all done by MessageListItem, based on view width
* Completely functional, layout tweaks required

TODO: Consider caching drawing values for performance

Bug: 3137994

Change-Id: Ie3de79357bfe976b2fcebdedb71dea011252b445
2010-11-17 12:23:03 -08:00
Andy Stadler e6c6587b04 Create XL layouts for incoming, outgoing, exchange
* Create XL fragments (will be shared w/settings)
* Create XL landscape activities
* Create XL portrait activities
* Placeholders left for integration with settings - remove in settings CL
* Quick fixes (non shipping) for phone UX
* Update existing portait next/prev buttons per new wireframes

Bug: 3188940
Change-Id: Ied6e7fd1e968fd6db57607a68dabf7e00ba78ee6
2010-11-16 16:40:34 -08:00
Makoto Onuki 15f46cc715 XL layout for message compose
The layout is not final, but it's closer to the wireframe.
- All dimensions and colors are not final.  I just made them up.
- The "+cc/bcc" and "add attachment" buttons are in the wrong position.

I'll wait for the pixel perfect before addressing them.

Bug 3138037

Change-Id: I72fc7557c28e72df08a3751c3c93acfb35749d68
2010-11-16 11:28:58 -08:00
Andy Stadler 7fd78d8d61 Create XL layouts for AccountSetupOptions
* Landscape and portrait layouts
* Quick fixes to phone UX (not shippable)
* Added some CHAR_LIMIT values

Bug: 3188940
Change-Id: I093d5a6dcde2da96c173b5878900114802aead3e
2010-11-15 18:37:56 -08:00
Andy Stadler 17adb23fb4 Preliminary XL version of Account Names screen
* Add new account names layouts for XL devices
* Placeholder UX for phones

Bug: 3188940
Change-Id: I8c9d0793b004af5f5b66070fd18ecb46fc6f1612
2010-11-15 12:08:37 -08:00
Makoto Onuki 65b1eef31b Message view code change
- Show sender email address
- Show BCC for sent messages
- Don't show the default quick contact badge frame.
  (change QuickContact to ImageView)

Bug 1501239
Bug 3138021

Change-Id: I0e8d91ad3a6a3a021c8aff0945a1ce11d13b2728
2010-11-15 12:03:36 -08:00
Andy Stadler 27c70e3322 Preliminary XL version of Account Type screen
* Add new account type layout for XL devices

Bug: 3188940
Change-Id: I12ebe60075971fa14c7c55be65dccc0b7602f566
2010-11-14 21:37:41 -08:00
Andy Stadler 7988164ddf First pass of XL account setup
* AccountSetupBasics now has an XL version
* This is from prelim wireframes
* Final colors, text size, and positioning all TBD
* Fixed a StrictMode violation (counting #accounts in onCreate)
* Lightweight (non-shippable) fixes for functional phone UX

Bug: 3188940
Change-Id: Idf6cb514208eba07eaa20b20abfd5fcc3dae1751
2010-11-14 21:16:49 -08:00
Makoto Onuki 2ac1eaf8c3 Account selector rework.
- Show email address
- Show inbox unread message count

Initially I thought of using a join to get accounts with their unread
counts with one query, but there were enough subtle issues that I gave up
on the idea.

Instead it uses a MatrixCursor to build a completely new cursor,
based on a regular accounts cursor.

Change-Id: I09e8762f131cc2bd3637e1a3d302088a3b5b2479
2010-11-10 17:41:29 -08:00
Makoto Onuki fd8ee7bc50 Show confirmation dialog before discarding drafts.
1. This CL implements the most common case, which is pressing the discard
  button on MessageCompose.

2. This CL doesn't change the discard on message list, which is much trickier.
   (We need to check the message type of all messages in the selection,
   as selection can contain any number of any kind of messges in "All Starred")

Bug 3072556

Change-Id: Ib270cae726f8fd5abf7e0e7dfc34ce97019d5301
2010-11-10 14:13:05 -08:00
Makoto Onuki 77303a483b Merge "New message view command layout" 2010-11-10 14:09:38 -08:00
Makoto Onuki 931ca67a1f New message view command layout
UI Changes:
- "Move", "Delete" and "Mark as unread" became action bar commands.
- The message view bottom panel now only has "newer" and "older" buttons,
  with  the current position in the message list.  (shown as POS of TOTAL)
- The buttom panel is now shown only on portrait

Non UI changes
- MessageOrderManager now keeps track of the current cursor position
  as well as the total message count.

- Fixed the "move_action" string, which was wrongly marked as non-translatable.

Bug 3169454

Change-Id: I599543f9e11000a4ee283d31fbd407b2ab53ac44
2010-11-10 11:08:14 -08:00
Makoto Onuki 9c39deef4e Code change for new mailbox list layout
- Don't show a folder icon for regular mailboxes
- Change the count look
- Don't show counts for Sent/Trash.

Bug 3137965
Bug 3073147

Change-Id: I8fc0af8fc2d51968605fe4b570e5704453092ac7
2010-11-08 18:16:23 -08:00
Makoto Onuki 138abe82e6 Make "Send all messages" a menu option
- Now it's a menu command rather than a button.
- Also string changed from "Send outgoing messages".

Bug 3166218

Change-Id: I82f6188365f9f6bc5a6d40fb23d774eebe181445
2010-11-04 16:53:18 -07:00
Makoto Onuki bf678771b7 UI change: MassageCompose
Basic changes for the new UI.  At this point we don't know what the new phone
UI will look like, so I didn't bother trying to preserve the old behavior on
the phone UI.  The changes will affect both the phone UI and the tablet UI.

- Send, Save Draft, and Discard are now action bar commands.
- Add CC/BCC and Add Attachment are now regular buttons.
- Activity title changed to "Compose"
- Some string changes per new wireframe

Further changes (actual layout changes for the latest wireframe) should be made
only for the xlarge layout.

Change-Id: I68c9c37dfdca6736b1e35053e7f196800fcfce2e
2010-11-04 15:22:25 -07:00
Marc Blank c81bef6720 Drag & Drop "move to folder"
* Drag & Drop "move to folder" preliminary implementation
* Use "drag handle" button to initiate drag
* Use the message list item itself as the drag thumbnail for
  one item; "Move N messages" for multiple (not implemented)
* Disable MailboxList update during drag
* Use ListView itself as drag/drop target

Bug: 3138004
Change-Id: I9243e4f583cf91caa1b9dd04fd64d52e8b28fa30
2010-11-04 08:45:24 -07:00
Andrew Stadler ba0b1bbc8d Implement text zoom for Message View
* Add preference for default text size
* Move saveSettings logic into onPreferenceChange handler
* Per user tests, default setting is large (not "normal") for XL devices.
* Use setting in MessageView's WebView

TODO: Investigate zooming header (to/from/subject/etc) as well.

Bug: 2282390
Change-Id: If32ed3626244b046941a461f974b3dbdb535f592
2010-11-02 14:58:24 -07:00
Andrew Stadler cd09545b87 Provide runtime switch for GL acceleration
* new checkbox in debug fragment
* saved value in prefs so it's sticky
* each Activity calls a helper to enable/disable per that flag

Change-Id: I1af1ae9f401bc746cc97da00dfb0e06407b79d46
2010-11-01 16:16:27 -07:00
Makoto Onuki 730cc6724a Add "Combined view".
- Don't show combined mailboxes with regular mailboxes in the mailbox list.
- Add "Combined view" to the account selector instead.
- "Combined view" has all the combined mailboxes and accounts.
- Renambed these combined boxes.  (e.g. "Combined inbox" -> "Inbox")
- Regular account view still has "Starred" mailbox, but it's actually
  "combined" and not per-account.
- Re-order special mailboxes per latest wireframe.

Bug 3138004

Change-Id: I4c5860c6774b10c55ba0ca599373e51105432cf8
2010-11-01 11:51:51 -07:00
Eric Fischer b6fca2da16 Fix string formatting mistake that put "new" outside its <item /> block.
Change-Id: Ibab67771d76c8af9ffecb5f3729808d47a225b1e
2010-10-27 15:48:57 -07:00
Marc Blank 02d59d2194 Delete secured accounts if device admin is disabled
* Update unit test

Bug: 2817683
Change-Id: Ia7117c34e7bbba13ac4f2ff375d19b3ef94ef49c
2010-10-27 09:03:21 -07:00
Marc Blank d3e4f3ca7e Use notifications for login failures
* For now, clicking on the notification takes the user to the
  Welcome activity, as we don't have final flows for the new
  account setup UI
* Need comment on strings; the problem is that notification
  text must be rather short if we're to use the standard
  notification display.  It looks like newer UI will allow
  3 lines instead of 2, however.
* Tested w/ IMAP, POP3, EAS, and SMTP

Bug: 2322253
Change-Id: I7ed6fa5599179870cbcdb14af062e956eff37ec5
2010-10-27 08:56:37 -07:00
Makoto Onuki 6a2265eff2 Add checkbox to include original text or not.
Added the "Include text" checkbox according to the latest mock.

Before:
- We removed original message when the user pressed X.

Now:
- We save the original message all the way till the draft is sent.
- The "Include text" check state is saved in the db.  (to Message.mFlags)

Bug 3072414

Change-Id: Ie7bcca23bb6a02d676700027b0b6cb94b6627236
2010-10-20 14:21:17 -07:00
Makoto Onuki 9c293eb65a Show "No messages" when there's no items on message list
Show this when there's no messages, and no "Load more messages" footer.
i.e. Only Outbox, Drafts, and exchange mailboxes can show "No messages".

Also removed an obsolete comment.

Bug 2363624

Change-Id: If483d33cfacb186d0fe54b4f4382333a332be84c
2010-10-12 10:36:17 -07:00
Roy West 0be3fbe11b am 416fdc22: am 0639c6bd: Fix bug 3074186 limit check label to Inbox
Merge commit '416fdc22cadaed61377bf52d80b6052a81497ebf'

* commit '416fdc22cadaed61377bf52d80b6052a81497ebf':
  Fix bug 3074186 limit check label to Inbox
2010-10-11 10:03:34 -07:00
Roy West 0639c6bd4e Fix bug 3074186 limit check label to Inbox
Change-Id: Iec416a2112c98483372694e09f2375c9cf36ac09
2010-10-09 08:53:34 -07:00
Marc Blank 055e8358ed Add CHAR LIMIT as appropriate for newish strings
Bug: 2938090
Change-Id: I905c493f1214645da19e3f16d2781f106df09d04
2010-10-07 15:48:04 -07:00
Makoto Onuki f54e08eaee Introduce tabs to view message, attachment and invite separately
Added "tabs" to the message view according to the latset mock.
This removes the necessity of putting a WebView inside a ScrollView,
which caused the infinitely-growing email bug (issue 6882).

Right now the tabs are actually just Buttons.  Complete visual refresh
should follow it.

http://code.google.com/p/android/issues/detail?id=6882
Bug 2349275

Change-Id: I897a3a32e0dd7a90d637ac5ea1d47e5e65a1eabe
2010-10-05 16:53:59 -07:00
Makoto Onuki 1a0b0092e0 Add "Clear WebView cache" button to debug preference
Change-Id: I317b57cb06b071f9574077b58998aafcb5e0dff8
2010-09-30 15:41:40 -07:00
Marc Blank 14a5d8d947 Provide better information w/ 500 error in EAS validation
* HTTP error 500 occurs with Exchange 2003 when the user tries to
  authenticate with wrong credentials; we report this as "Cannot
  connect to server", which is wrong
* Error 500 is supposed to mean "internal server error", but since
  we know that an authentication error can cause this, we now put
  up a better error message

Bug: 2933381
Change-Id: I9319a5ed6fbf4c92739f305b42b6b1cad7036a4b
2010-09-30 11:47:20 -07:00
Eric Fischer 216a5eb4de resolved conflicts for merge of 2f580362 to master
Change-Id: If74e59216d368012115d422a40328a27a20ed74c
2010-09-30 11:22:05 -07:00
Makoto Onuki 899c5b8661 Switch to tablet style notification
- Now we show separate notification for each account
- New notification has sender photo, sender name, and subject
  of the latest email
- Added the NotificationController class, which is intended to manage
  all notifications besides "new message" eventually.

The framework doesn't seem to be 100% ready, and it's not clear how to
add the 3rd line in the expanded notification at this point.  Need to
revisit it later to verify UI details.

Change-Id: I40193ee372cb6b2b7245c1588890f238b2469699
2010-09-29 18:35:17 -07:00
Eric Fischer 5849608f5e Genericize strings that refer to the SD card.
Change-Id: Ia754540c7bfc0e9a97c1d9d386efd2b2d0642560
2010-09-29 12:09:05 -07:00
Makoto Onuki 9ffb4fa0ec Add CHAR LIMIT to new strings
Bug 2930858

Change-Id: I662e5ab16f32dc85ce4c7e5e851a017ce61674c1
2010-09-28 10:30:29 -07:00
Marc Blank a8ad80ee43 Add CHAR LIMIT to added string
Bug: 3012997
Change-Id: I3426ab2c69b480717082d71bd2abc8d8da3b482c
2010-09-24 11:01:07 -07:00
Andrew Stadler 5b2424bf6f Cleanup of Account setup flows
* Remove AccountSetupCheckSettings and related resources
* Remove all handling of EDIT flow in setup activities

Change-Id: I7b87d87978533b52b9c974d006920749389418d8
2010-09-13 14:39:36 -07:00
Marc Blank 6d51b7eb63 Properly report EAS protocol version failures
Bug: 2528554
Change-Id: I9ac2520528ebe23dc0d465aee65ab470f8f429a7
2010-09-10 08:33:40 -07:00
Makoto Onuki 0f52e546ef Implement General Preferences
- Removed the place holder setting
- Added "auto-advance" setting, which has "newer",
  "older" (original behavior, default) and "message list"
- Strings were copied from Gmail

This CL has preference change only (i.e. the setting isn't used yet).
The actual implementation will come later.

Change-Id: I9f90a723c67e066fdc536a73490101817a127933
2010-09-09 17:02:02 -07:00
Marc Blank e7b9e4ab94 Add snippets to messages
* Add 'snippet' column in Message table and handle upgrades to the
  new schema
* Generate a snippet from either HTML or plain-text message body,
  removing tags, extraneous whitespace, and other superfluous text
  along the way.  Store the snippet in the Message table
* Clean up MessagesAdapter to use the pre-existing list projection
  and constants
* Write unit tests for snippet creation
* The UI in this CL is always single-line, ellipsized

TODO: Handle two-line subject if portrait and XL

Change-Id: I84a2cbe10957975942edad6eb1255a726924a78a
2010-09-03 23:23:19 -07:00
Makoto Onuki 767f9fe2eb Implement batch move.
* UI is still temporary
* In this version, we check if the selected messages can be moved *after*
  you click "Move", rather than disabling the button beforehand.

Change-Id: Ief2864d2a513001847844963b2b0cb6b714e8667
2010-09-03 15:39:04 -07:00
Andrew Stadler 1a5e1e1593 Use real fragments for incoming/outgoing/exchange settings
* From account settings, switch to incoming/outgoing/eas fragments
* Show "Next" button in actionbar (may be dup'd in single-pane view)
* Common base class for in/out/eas fragments
* Depends on PreferenceActivity.startPreferenceFragment(), new API
* If the user clicks an account header while editing server settings,
  present a dialog before discarding the changes that haven't been
  checked yet.
* Confirm working (if a bit ungainly in appearance) on phone screen

Change-Id: I03591b9a8ffd11fe26fc6f58a5698740e61d0090
2010-09-03 14:30:21 -07:00
Makoto Onuki ed035c20a1 Remove some debug code from MessageListXL.
Change-Id: I26e373d2e570c49a812ffbee98095f9e84599335
2010-09-01 14:48:12 -07:00
Marc Blank 62f9c4d280 Temporary UI for "move to folder"
* Many TODOs left in code.
* Only supports moving 1 message. (from message view)

Change-Id: Ibdec3163382345a7096c2cba51f448d69a9720af
2010-09-01 11:40:44 -07:00
Andrew Stadler a14a24a5bc Add Add & Remove Account options to AccountSettingsXL
* Add account is a large (+) in the action bar
* Remove account is a new item at the bottom of the settings fragment
Note: Add account works, remove account just toasts for now.

Change-Id: I5b3b8ab8c7d328cb78d103c47b9eca866466f9df
2010-08-19 16:28:52 -07:00
Marc Blank 09fd4d0a18 New asynchronous attachment loading code
* Create AttachmentDownloadService to manage all attachment downloads
  1) User requested
  2) Required for email forwarding
  3) Opportunistic downloads to enhance offline use
* New attachment related UI (pending UX approval, of course)
  1) MessageView (attachment actions, progress bar, etc.)
  2) MessageCompose (attachments for forwarded messages)
  3) Associated toasts, notifications, etc.

TODO:
* Unit tests
* Cache Management (separate CL)

Change-Id: I7864a5fb1c3f4f2be68d98341a971edc6cbacfe1
2010-08-19 14:01:08 -07:00
Makoto Onuki d111cc70aa Add a debug parameter to Welcome to force 1-pane/2-pane
- Now Welcome takes an EXTRA_DEBUG_PANE_MODE to force the
  one-pane/two-pane mode.

Use this to open one-pane.
adb shell am start -a android.intent.action.MAIN \
  -n com.google.android.email/com.android.email.activity.Welcome \
  -e DEBUG_PANE_MODE 1

Use this to open two-pane.
adb shell am start -a android.intent.action.MAIN \
  -n com.google.android.email/com.android.email.activity.Welcome \
  -e DEBUG_PANE_MODE 2

Change-Id: I6e96f80f53f4488152935502c19d3dd8e0788150
2010-08-18 16:57:27 -07:00
Andrew Stadler 2ae2a12d6b Initial implementation of SettingsXL (checkpoint)
* Create AccountSettingsXL
* Build headers dynamically based on accounts
* Launch account settings per-account
* Temporary launch point from menu in AccountFolderList

TODO: Fragment flip to incoming/outgoing/checksettings not implemented yet
TODO: Use more recent updates to PreferenceActivity
TODO: Finish plumbing into account settings fragment
TODO: Something more real for app settings

Change-Id: I6f4c5bb8cf691f25517c25950ef2049084335ce3
2010-08-18 11:29:46 -07:00
Makoto Onuki 2127964d0f Implement "contextual" (selection) mode.
Now MessageListFragment itself takes care of the selection mode,
without help from activities.

Change-Id: Ia1a9942d0d3ca87b4f0938a3bf8172466f53b5d6
2010-08-17 13:22:36 -07:00
Makoto Onuki 52cd3c9a26 Revived removed string and moved up to the deleted section
Change-Id: I77d6fbcbb0d1d8fcb7fcaa94b6bf643cb00db368
2010-08-16 10:41:27 -07:00
Makoto Onuki 187d033484 Reworking MessageListFragment.
- Now MessageListFragment uses loaders to load data.

- Now that we use Loader's auto-requery with throttling,
  removed the throttling timer from MessagesAdapter.

- Simplified footer mode.  (now only "no footer" or "load more")

- Removed saving/restoring list state code.
  These method don't really look like working, or at least
  not always working.  Now that UI's lifecycle is changing,
  we'd better redo it from scratch.

- Removed MessageListUnitTests.
  It only has tests for onSaveInstanceState/restore of the fragment,
  which I virtually disabled.

And minor clean-ups
- Moved the code to save/restore selected state from the fragment
  to Adapter.

Bug 2911766
Bug 2897500

Change-Id: I16c7aefecc5409c57fc5fc8c59b5c80d9b7fc164
2010-08-12 15:06:37 -07:00
Makoto Onuki a88d9dbdbc translatable="false" for untranslatable strings.
Change-Id: Ifd70344fe8eb2ee7da742a406377c0a86193993a
2010-08-09 11:00:27 -07:00
Makoto Onuki 533e0f5beb Add "change orientation" menu command.
Unfortunately software-keyboard is disabled on master for some reason,
so we can't use the R key hack any longer...

Change-Id: Ide73e11742e5de70fec45009eee20a1a74fcbfd1
2010-08-07 18:16:14 -07:00
Makoto Onuki 191448b430 Make Welcome launch MessageListXL
Also added the "1 pane" activity to test the phone UI.

Change-Id: I1c86d2088a2298ada5028b7a266bd090b593593c
2010-08-05 13:58:20 -07:00
Makoto Onuki 833fe73b99 Aadd special boxes to mailbox list.
Change-Id: I36616f53555346ca7fbb6f3426a0c3196d7bacbc
2010-08-03 17:06:04 -07:00
Andrew Stadler 6d62d84aa0 Clean up string warnings.
* Provide unused placeholder for account_settings_exchange_summary
* Bulk cleanup all other placeholders (no longer required)

Change-Id: I55d502eb725d721c9a893c17cf76f227489bb89f
2010-07-21 22:42:42 -07:00
Marc Blank e6cc662abc Use AccountManager for POP/IMAP; refactor setup classes
There are two major, interrelated parts to this CL:

1) Clean up the activities to reduce the use of Intents to pass
   information between activities; instead, we use a common
   SetupData structure that automatically saved/restored as necessary
   during the setup flow.  A fair amount of code and inconsistent
   use of Bundle extras has been eliminated in the process.

   * Create SetupData structure, setters/getters, and initialization
     methods to simplify the preservation of state during setup flow
   * Remove all state/flow extras from Intents; Intents now only
     specify the Activity to be started, which should greatly simplify
     the transition to Fragments.
   * Remove all state/flow fields from Activities
   * Modify existing setup activity unit tests and confirm tests pass

2) Create AccountManager accounts for POP/IMAP email accounts to
   provide consistency in user experience.  Also, internal flows are
   now identical as between account types.

   * Move account reconciliation from SyncManager to MailService, so
     that reconciliation is consistent between email and exchange
     accounts; move unit tests as appropriate
   * Add a "Sync Email" setting for POP/IMAP/EAS
   * Change MailService to respect the "Sync Email" setting in
     Settings -> Accounts & sync
   * Create PopImapSyncAdapterService to handle manual POP/IMAP sync as
     requested by SyncManager; add EmailSyncAdapterService to perform
     the same function for EAS
   * Use new PopImapAuthenticatorService to add AccountManager accounts
     for POP/IMAP accounts; setup appropriate stanzas in AndroidManifest
     and add related xml files
   * Update AccountSettings to use SetupData

Miscellaneous other changes:

   * Only allow valid port numbers in incoming/outgoing setup

Bug: 1712475

Change-Id: Ibdac52fb2c5578b86bf3992ddb1acd10f162391a
2010-07-21 19:01:41 -07:00
Makoto Onuki d6a2978857 First cut of two pane activity.
How to launch:
- Kick "Email 2 Pane" in the app drawer.

Major known issues:
- When you launches "Email 2 Pane", it starts directly; the logic in Welcom
  won't be executed.
- There's no UI to add accounts.  Use the old UI.
- There's no way to select non-default accounts.
- The on-screen buttons except for older/newer don't work.
- No contex menus work.

Change-Id: I38374acafafbae62e46f84294a7677e54686cfc2
2010-07-21 16:30:52 -07:00
Makoto Onuki 16a60dca84 Fragmentize MessageView.
This version is hybrid of the old design and what Andy's suggested.
- MessageViewFragment is responsible to show a single message at a time.
- Call MVF.openMessage() to tell it to open another message.
  No need to re-create a new MVF to do this.
- MessageView manages the message list, and handles "move-to-newer/older"
  buttons.

Reason for not re-creating a fragment when opening another message is:
- Re-using the same fragment doesn't make it as complecated/ugly as I
  was initially afraid.
  It's basically cancelling all running tasks, re-initializee some views,
  and load a message.
- We don't have to run MVF.onCreate() over and over again when moving through
  messages.
We may change the strategy later, but I think it's suffice for now.
(Changing this might affect how the back key works, so let's revisit it
when the fragment manager supports back.)

Basically this CL is all about internal changes.
No UI should have changed except for:
- Moved "Move to newer/older" buttons to the bottom.

Also fixes:
Bug: 2849129

Change-Id: I00c05069231afded9d98d3d52dd9a7925ebdee9d
2010-07-19 18:34:40 -07:00
Makoto Onuki 44b5242edd Cleaning up MessageView
- Removed dead code/dead comment.
- Moved static utility methods to Utility.
- Renamed some methods.
- Changed the timing to call super methods.

Also:
- Internationalized formatSize()
- Added unit tests for createUniqueFile() and formatSize()
- createUniqueFile now uses File.createNewFile() instead of exists().

Change-Id: Ibc30e15b029ed5088954bd6fc9032e25dddf176e
2010-07-02 13:26:05 -07:00
Marc Blank 391ae25c43 Handle viewing of attachments that are, themselves, emails
* Add intent filter for application/eml and message/rfc822 mime types,
  launching MessageView with a Uri
* Modify loadMessageTask to handle the Uri by parsing the attachment's
  input stream with Pop3Message.parse(), and then creating an
  EmailProvider message in a special Mailbox created to hold
  "attachment" messages
* Delete all "attachment" messages after the parent message is closed
* Add unit tests

Change-Id: I20276ee006b9f05b889f3c808d3dc407cde26d49
2010-06-22 18:39:18 -07:00
Andrew Stadler 572c06f91b DO NOT MERGE - Revert workaround for KeyguardLock problem
This reverts commit 3ee0cad5f5.

Because commit 284b62e1b8c3419bfd02c6fea5ba0a68146c06f8 fixes the underlying
conflict between DeviceAdmin policies and apps attempting to disable the
Keyguard Lock, this patch is no longer required.

Accounts with a server policy requiring a device PIN or Password will
now work properly.

Bug: 2737842
Change-Id: I533c27a01a8a331dc11a0cb84bcc78f48edf621c
2010-06-11 11:21:41 -07:00
Makoto Onuki afa85bb102 Fix typo on exchange server setting screen.
Bug 2742113

Change-Id: I43bd3d6328745169bacb1fd750cce0a08dc18742
2010-06-04 13:10:58 -07:00
Andrew Stadler 3ee0cad5f5 DO NOT MERGE Workaround for KeyguardLock problem
* The device policies that enforce the use of a device PIN or password
  can be sidestepped by apps that implement KeyguardManager.KeyguardLock
* This renders the policies unuseable
* To prevent this, the email app now scans for any packages holding the
  DISABLE_KEYGUARD permission.  The existence of any non-system app
  with this permission will put all security-enabled EAS accounts into
  a security hold, and post a dialog describing the problem.
* The user must uninstall any such app(s) in order to sync their EAS data.

Bug: 2737842
Change-Id: I4c96d76b12d9242b5c755dd60d7578a825fae597
2010-06-04 11:10:03 -07:00
Andrew Stadler f38b927534 am ae432137: am be611500: am 27e75533: Merge "Fix format string ordering" into froyo 2010-05-28 12:14:46 -07:00
Andrew Stadler 5b90a9b604 Fix format string ordering
* Three format strings had multiple replacement tokens, but the ordering
  information was missing.
* In five languages, the translations reverse the order, and the formatter
  crashes (because of types mismatching).
* This patch adds in the ordering information where needed

Bug: 2719864
Change-Id: I084e9c9ddab54901a5142710e8ef986223902c17
2010-05-27 17:27:59 -07:00
Makoto Onuki cfe95a8333 Added a label to Exchange device ID.
Bug 2610257

Change-Id: Ie065514e942a01dc5ae3c81bc79a2501f67390e1
2010-05-17 14:30:15 -07:00
Makoto Onuki a1863f263a Remove ">>" from "View in Caendar" button
bug 2579306

Change-Id: I1c086a8567d57d18e901dbe173df58c4c381e3fa
2010-05-07 12:55:55 -07:00
Makoto Onuki 5ab7ec7123 Move a bare string to a resource.
Bug 2637666

Change-Id: I59cf5d2b30846604049d3f988b1003dd7d91ad6f
2010-04-30 09:21:04 -07:00
Marc Blank 78021cbbf8 Don't add "Invitation: " to meeting invitations
* Turns out that most other clients omit this.
* This has the pleasing effect of fixing the referenced bug
* Update unit tests

Bug: 2561821
Change-Id: I39f7db7e05be590373cd5f3d9b23c7ee21bde4f7
2010-04-01 14:42:10 -07:00
Jim Shuma 9e2ddca59d Add "vibrate when silent" mode to notifications
* Add "vibrate when silent" choice in UI
* Add storage for it in Email's provider.  Existing accounts default to
  their current settings (always vibrate / never vibrate).
* Respect new mode when notifications are posted
* Updated existing unit tests

Bug: 2457183
Change-Id: I5c933ac39dbef8b2028255f330e0b084a445421a
2010-03-18 13:57:25 -07:00
Andrew Stadler 7b94940c66 Use proper formatting strings for GAL lookup status
* Searching bigcompany.com...
* 12 results from bigcompany.com
* First 20 results from bigcompany.com

Bug: 2249514
Change-Id: Ib3fba9d1ba755d3550235a437f60449bf3c312c3
2010-03-16 23:07:40 -07:00
Marc Blank 587d39ea75 Revise meeting_recurring string
Change-Id: I7a909cb966bc92831fe2add358a31fdeb2556dd2
2010-03-15 18:15:45 -07:00
Marc Blank da209a98b6 Add string to indicate a recurring event in meeting invites
Bug: 2515474
Change-Id: I67142c7bb74afa854f6435b452ca87254aa8e9bb
2010-03-15 14:32:52 -07:00
Marc Blank 0243c5fc2b Minor update to recent string addition
Change-Id: I071fc58adaac7b9533247b935738f616b7091374
2010-03-10 15:19:58 -08:00
Marc Blank ec5d2ce2f9 New strings required for Exchange calendar sync
* These are the remaining strings needed for Exchange calendar sync,
  as far as I can tell.

Change-Id: I01bc69dc96dfb6e3808f9931726800b7bdef75ef
2010-03-10 09:26:57 -08:00
Marc Blank 29c38d2c84 Send cancellation email when user-created event is deleted
Bug: 2465496
Change-Id: I49bf9951e816a4500b7622cbca84fb75edfdb76c
2010-03-01 18:58:47 -08:00
Makoto Onuki c18f8f615f Enable calendar sync for Exchange accounts when upgrading.
On the first boot after upgrade from Eclair, enable calendar sync for all the
existing Exchange accounts, if any, and show notification.

Note on this version, nothing happens when you click on the "Calendar added"
notification.  We're waiting for an API (action or something) to launch
calendar.

Bug 2428718
2010-02-26 13:28:59 -08:00
Mihai Preda 794f29176d MessageView: EAS calendar meeting invite answer buttons. 2010-02-26 21:12:24 +01:00
Eric Fischer ab02fcb3d3 Remove xliff tags that kept the word "deleted" from being translated.
Bug 2463678
2010-02-25 14:20:31 -08:00
Marc Blank 89be77eaea Send replies to exchange meeting requests
* When the user selects accept/decline/tentative in MessageView, we now send
  an email to the organizer, with an iCalendar attachment indicating the reply
* Added a unit test for the reply case, but more tests to be added to handle
  other circumstances

Change-Id: Iff799d88a92b6546735bf4965b22febf3a82b56f
2010-02-24 15:13:57 -08:00
Mihai Preda dc348ea94b Email: remove unused strings and resources.
Bug 2456796.
2010-02-22 21:53:50 +01:00
Andrew Stadler 643ca675b6 Placeholder invite-accept UI
This is a lightweight placeholder so calendar functionality can be
tested.  Simply presents a message about the invitation, and a set of
yes/maybe/no buttons to click.

The UI is shown whenever the message appears to contain an invite.

There are many elements left to be done here:
TODO: response code (EAS protocol) doesn't seem to work
TODO: use real assets & design
TODO: provide a click-link into calendar event
TODO: show calendar icon in messagelist too
TODO: (if possible) persist user's response in button state?
2010-02-16 22:02:50 -08:00
satok dffe2f486d Make "Message deleted" be plural
Bug: 2264751
2010-02-15 15:31:30 +09:00
Mihai Preda b052885ea3 Email: husky title for MessageList & MailboxList.
Bug: 2419716
2010-02-11 17:59:00 +01:00
Andrew Stadler 842ac04828 Legacy account migration
* Create new activity to encapsulate account upgrade
* Populate it with a list of legacy accounts, and progress bars for each
* Sidestep Welcome when there are legacy accounts to convert
* Super lightweight account migration:
  - Account login info only
  - no folders, messages, or attachments
* Scrub out old data
* Return to Welcome screen

As noted, the copies working (useable) POP & IMAP accounts, but does
not try to deal with folders, messages, or attachments.

Bug: 2065528
2010-02-10 23:18:19 -08:00
Andrew Stadler 3d2b3b3b35 Logic to move phone into security-admin mode
* Create notification to display when syncs fail due to security
* Create psuedo-activity (no UI) to manage device admin state transitions
* Clean up and flesh out SecurityPolicy APIs'
* Add placeholders in EasSyncService showing how to react when policies
    are not met and sync cannot continue.

Note:  There are some STOPSHIP todo's at the top of SecurityPolicy.java.
These should explain any code that you might think is "missing".
2010-02-05 11:10:39 -08:00
Andrew Stadler a1550678af Integrate policies into account setup process
* Rename SECURITY_POLICIES_REQUIRED to SECURITY_POLICIES_UNSUPPORTED
* Create new pathway for SECURITY_POLICIES_REQUIRED, making it advisory
* Cleaned up strings for account setup error dialogs
* Refactored AccountSetupExchange.onActivityResult() to split up the
  three primary use cases, making them more readable.
* Always finish() in AcccountSetupAccountScreen, because it's usually
  cleaner to return to the previous screen (enter username & password).
2010-02-04 15:04:48 -08:00
Marc Blank a1c997a2b6 Add calendar sync checkbox to account settings screen
Bug: 2414157
Change-Id: I60ead139552f3e7c86b113f8b8b10ef3cf57abbf
2010-02-04 10:28:37 -08:00
satok d9080ed32e Add UI for Signature in Email Application
Bug: 1323618

- changed summary of signature to show hint if signature is not set
2010-02-04 10:28:55 +09:00
Makoto Onuki b854d05a89 Change EAS authenticator's label according to the vendor policy.
Our original plan was to disable both authenticators by default, and enable
one of then on boot.  However, it turned out existing exchange accounts will
be removed if there's no enabled authenticators for the account type.
So, instead, in this patch we initially enable only the default one, and switch
to the other one on boot if the vendor policy indicates so.

(If a device has a vendor policy apk, it should also have the email app
preloaded, so changing the label at boot time isn't too late.)

Bug: 2382710
2010-02-02 16:25:29 -08:00
Andrew Stadler d62860821c Additional SecurityPolicy functionality
* Begin wiring into system DevicePolicyManager requirements
* Semi-real implementations of isSupported() & isActive()
* Added new API (placeholder) updatePolicies()
* Updated existing unit tests as needed

Bug: 2387961
2010-02-01 16:48:16 -08:00
Makoto Onuki e5c3c98e9a Fix confusing setup screen title.
Change the title of the screen for adding an exchange account from "Set up email" to "Add an Exchange account".

Bug: 2159019
2010-02-01 14:24:38 -08:00
Marc Blank f3fcb8929e Implement Exchange calendar sync support
What should be working:
* Events sync down from server and appear in calendar
* Recurrences and exceptions appear in calendar
* Changed events on server should be reflected in calendar
* Deletions on server should be reflected in calendar
* Push of new/changed/deleted events should work
* Changes on device are NOT synced back to server
* New, single events on device are synced back to server
  (no time zone, attendee, or recurrence support)
* Checkbox for syncing calendar added to setup flow
* System sync glue in manifest, etc.
* Bugs are to be expected
* A few unit tests; needs more

Change-Id: I7ca262eaba562ccb9d1af5b0cd948c6bac30e5dd
2010-01-28 09:18:48 -08:00
Makoto Onuki f613489663 Add "vendor policy" loader, and alternate exchange descriptive text.
- Dynamically switch to the alternate exchange strings to substitute overlays.
- Added the mechanism to load the "vendor policy", which tells you when the
  alternate strings should be used.

Bug: 2382710
2010-01-27 17:40:56 -08:00
Andrew Stadler 7d8d18cd6d am 1889528e: am 68011bdd: Revised strings in corporate mail settings screen.
Merge commit '1889528e72f0d001c43f3aaea5dc2716326a4bfd'

* commit '1889528e72f0d001c43f3aaea5dc2716326a4bfd':
  Revised strings in corporate mail settings screen.
2009-12-16 16:38:10 -08:00
Andrew Stadler 68011bddf0 Revised strings in corporate mail settings screen.
Bug: 2324042
2009-12-16 14:02:28 -08:00
Andrew Stadler fdfdd73ceb DO NOT MERGE. Improve colors of read/unread messages.
Backport of 47da97527b547da97527b5bbecba972e0c6a5d382cd7b0768e9.
Original comment:
  Improve visible difference between read and unread messages
  BUG: 2168155
2009-12-07 13:58:41 -08:00