Commit Graph

433 Commits

Author SHA1 Message Date
Ben Komalo 06dee204a0 Small fixes to attachments UI
Bug: 5102245
Change-Id: I71ccce885c563454672e18aa62eac4ab3996146e
2011-08-09 15:07:57 -07:00
Ben Komalo 03bc225d08 Show color chips in account spinner.
Bug: 5011742
Change-Id: I6aa3d24b83ee1378bf30fb8466a52c6787d27277
2011-08-09 11:27:47 -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 547cae3c8e Move reply/replyall/forward spinner to actionbar.
Bug: 5126487
Change-Id: I56cd8861d6d616d1c4590f06c6f949cd84e5a42b
2011-08-08 15:17:42 -07:00
Jorge Lugo cf8a36531f Remove done button from edit quick responses
Removes done button from edit quick resposnses fragment and
centers the "create new" button.

Bug: 5111173
Change-Id: Ia847725e5d3bdc67426f76dd386f2263befe4189
2011-08-08 14:56:47 -07:00
Ben Komalo 5b4a214240 Merge "Fix SSL certificate selection for exchange." 2011-08-07 15:04:57 -07:00
Ben Komalo 994343b14b Fix SSL certificate selection for exchange.
- Since the Email and Exchange processes do not share UID, we need to
ensure the call to the KeyChain to request the certificate happens in
the Exchange process
- Misc UI fixes so it's not so ugly

Bug: 5117682
Change-Id: If80698850902e0178eb0998493b4cf4b89e2a15c
2011-08-05 11:28:52 -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 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
Ben Komalo 0632f52c3c Fix spinner style.
- use proper theme attribute instead of hardcoded style

Bug: 5115264
Change-Id: Ieb0be8093a0a99655877389353ede4ed8d921262
2011-08-03 10:38:31 -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
Ben Komalo d9e8dcae2f Update assets
- updated checkboxes (new ones for sw600dp and phone)
  ones for phone)
- updated stars (new ones for sw600dp and phone)
- added existing cc/bcc icon to menu item
- updated reply/replyall/forward actions to dark themed items (renames
involved)
- update message list backgrounds (new ones for hdpi,xhdpi, renamed
  everything so that there is no message_ or conversation_
  suffixes, also added missing states for some of the selectors)

Change-Id: I1b4f49f206b846566870f5b430e3c6386e621a0c
2011-07-28 14:40:02 -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
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 2903be7f3e Always show from field in compose
This info used to be shown in the top right of the status bar in GB but
that is no longer there. So before this change there was no way to tell
who you were sending as.

Bug: 5069124
Change-Id: I10d687a5fd221e65ecfc71b61cccf306492e27b8
2011-07-22 15:52:38 -07:00
Jorge Lugo 7496b5ba2b Merge "Display message when no quick respones available" 2011-07-21 19:44:31 -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 80b817714f Optimizations to startup.
- don't inflate search views - inflate them on demand
- kill some unneeded containers

Bug: 4996847
Change-Id: I7747e194e7c0939ad6416f351096639b283f4899
2011-07-21 17:38:19 -07:00
Ben Komalo 7688300055 Fix sync window settings for EAS setup on phones
- the container is the one that should be visible/gone - individual
fields should just be visible
- also do drive by javadoc fixes

Bug: 5052310
Change-Id: I45c4b6b7f94b2b62ac94eeff0ab97bf34c9e117a
2011-07-20 11:27:11 -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
Jorge Lugo 1086830bae Merge "Improve accessibility for stars and settings" 2011-07-15 15:21:44 -07:00
Ben Komalo ffe1b29061 Merge "Fix UI issue with expanding details." 2011-07-15 15:15:26 -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
Jorge Lugo 7667632eb2 Improve accessibility for stars and settings
Adding and removing a star triggers the appropriate accessibility
In incoming/outgoing settings, added EditText contentDescriptions.

Change-Id: Ibab461f1425b3ebf3579ebc1d0b36d1a9a5efdb2
2011-07-14 12:01:02 -07:00
Ben Komalo 17501fc0ca Fix UI issue with expanding details.
- the show/hide details icon no longer jumps
- the expanded details now doesn't take up the entire screen on tablets

Bug: 5009046
Change-Id: If7f3451e28ba09928cc9b8aa156779f076948979
2011-07-12 17:20:13 -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 7a29fb97b1 Misc compose bug fixes.
- empty subjects should still be prepended with "Re:" and "Fwd:" when
replied/forwarded
- the compose body was being vertically centered

Bug: 5008785
Change-Id: I28e4fac8457c4fd18c764daa35d9deea1646474b
2011-07-11 14:07:12 -07:00
Ben Komalo faff1fab83 Merge "Fix actionbar text alignment" 2011-07-11 10:47:37 -07:00
Ben Komalo a920a33cce Fix actionbar text alignment
Workaround a bug in the framework where an explicit gravity=left
seems to actually mean right. We probably shouldn't explicitly set it to
left anyways, and let it be the default, since the framework will do the
right thing when RTL locales are supported.

Bug: 5002512
Change-Id: I9090a676849d3b6f5e1abc812ef6fc2e049ac6bf
2011-07-10 18:10:31 -07:00
Ben Komalo adbe08fb6a Fix compose body alignment.
Bug: 5012017
Change-Id: If54cb3dc0c7888437a344b41fdaa4199653426a1
2011-07-10 18:07:56 -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 b8dc7beca2 Merge "Quick fixes to unread count" 2011-07-04 07:38:48 -07:00
Jorge Lugo e2f6f18396 Added "replied to" and "forwarded" icons in message list
When a message has been replied to or forwarded by the user in
Exchange or IMAP, it now displays the appropriate symbol in the
message list view. (Right now it's just a test image based on the
reply/forward/replyall images until the assets come in.)

Bug: 4313491
Change-Id: I525e55179d62b6ab08df37cb9bfe9fdd9fefb908
2011-07-01 14:43:17 -07: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
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 5cba9c10ac Replace details dialog with expando subheader
Change-Id: I7b0f63b7b5ce7172ac32b8c00891005b9f2e28ee
2011-06-25 16:34:37 -07:00
Jorge Lugo d6efb08c4d Merge "Quick response clean-up" 2011-06-23 10:52:36 -07:00
Jorge Lugo bc42ab7706 Quick response clean-up
Highlighting now appears when selecting a quick response. On "insert
quick response" dialog has exactly two lines of quick response shown.
Done also works properly now on the phone.

Known bug: text is not ellipsized. However, this is dependent
on bug 3389545 being fixed by frameworks team.

Change-Id: I7490e139267963d1508fa0573144a10c9190e11c
2011-06-22 20:58:54 -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
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
Ben Komalo f69bcd0123 Some fixes to the action bar.
This hides the main navigation controls when the search view is shown.
It also fixes issues with rotation when in search mode.

Change-Id: I5ffed8eb7549fc603fc4e4d1868d114be65112c3
2011-06-21 12:28:57 -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
Mindy Pereira 87763f0ae8 Integrate chips into Email.
Change-Id: Ice037a55a169037f725a667fad7714c7e9580b86
2011-06-16 17:41:04 -07:00
Ben Komalo b40bdb17df Merge "Introduce a cert selector in exchange settings UI." 2011-06-15 11:17:40 -07:00
Ben Komalo e4ca576ab0 Low-cost minimal fixes to make phone UI usable
This is a stopgap fix prior to getting designs in to at least make the
various message view components visible on screen so people can at least
use the app.

Note that this also removes reply all/forward, as per the design (the
idea is you can switch in the compose view, so we don't want to waste
real estate in the message view).

Bug: 4644072
Change-Id: I86f041678373a0fbc79a2e135a47cd1e5b1357c7
2011-06-14 18:07:32 -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 da3d04ea31 Add ability to create headers in the mailbox list
Change-Id: I9d1054056db7b6ac993570adcc4adc4cc6699e9c
2011-06-07 12:01:35 -07:00
Todd Kennedy 69461503fb Add "Accounts" header to the AB spinner
Change-Id: I35e4b7295db16db803ede084cf65fa3f2115f770
2011-06-06 14:11:09 -07:00
Makoto Onuki cc881b744b Remove the hidden newer/older buttons from 1-pane.
We'll implement swipe and this view is not used on 1-pane anyway.

Change-Id: Ib1d9b44dd530159377f3e5f883188832de30482f
2011-06-03 14:25:10 -07:00
Ben Komalo 761390a041 Step 1 in - Email support for 7" devices.
This is a cherry-pick of 9f976e29a0 from
honeycomb-mr2. This is still using the old w600 qualifiers but the next
CL will cherry-pick the fix for that.

Change-Id: I40ab6717575cdfd02d5f7d05409f0355e96f2085
2011-05-25 12:52:00 -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
Todd Kennedy 87f9b376a8 Only use one line of text for the shortcut list
The list used to contain both the display name (whatever special name the user
chose during account creation) and the email address. The new mocks only use
the display name.

Change-Id: I97f4f16af9865207f26e67aed5d07340775ea37c
2011-05-24 09:23:43 -07:00
Todd Kennedy 1e3c6d9788 use a fragment for the shortcut picker
instead of using an activity (which will be hard to manage multiple screens in
the 'back' stack), use a fragment. we can easily manage multiple fragments with
a fragment transaction.

Change-Id: Ibf75dd45941a0c1c6b6b6add8de78146cdae7c65
2011-05-24 07:35:22 -07:00
Makoto Onuki 03b0870ae2 Remove more unused resources
Change-Id: Ib50d0e4114349fcbcad6924b1f0aa82c33428e28
2011-05-11 15:58:47 -07:00
Makoto Onuki 94331c96d9 Remove phone activities and implement one-pane
The primary purpose of this CL is to remove phone activities, so the
one pane implementation is very much temporary and primitive, but it
should offer minimal operations.

Change-Id: If57f81db7c605c95664d49044a5cc082beda59c0
2011-05-11 15:35:27 -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 075feb4556 Implement new nested folder mocks
Change-Id: I7c0c1d41b7a40d83e1237ba31d5f7949945c7e1e
2011-05-05 10:26:54 -07:00
Ben Komalo 6d75ae39f0 Expose cc/attachment actions on UI directly
This is a simple change to move +cc/bcc and +attachment action buttons
from the options menu to the visible UI (like honeycomb).

No attempt was made at styling the actual fields yet.

Change-Id: Ia1de8dbcf5e9ec9f7d3be3787cab657a2df72d70
2011-04-28 16:38:05 -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
Ben Komalo 238f837844 Merge "Kill old message_list_item." 2011-04-16 18:36:24 -07:00
Ben Komalo 1fdfdc51a1 Kill old message_list_item.
E-mail uses a custom view now and this XML layout has bitrotted.

Change-Id: I8e358d941bb56174cd4f8fcb74a106107363e557
2011-04-15 15:15:26 -07:00
Todd Kennedy 49786fbe2a Remove extra padding from expanded icon
Change-Id: I1e351dc0978a5e2d576a7c0c84625d66b3ebbbbc
2011-04-15 09:20:02 -07:00
Makoto Onuki edeca22ac3 Merge "Make two pane layout (more or less) useable on phone" 2011-04-14 14:26:04 -07:00
Makoto Onuki b32704dae5 Make two pane layout (more or less) useable on phone
Now the two pane activity survives longer on the phone, as opposed to
crash immediately.
(It still crashes when you open the message view.)

I'd like to submit this because:
- It'll make my experiment easier
- It wouldn't do any harm to the tablet UI.

Change-Id: Id716a42c63026cf09b30ff6a63e0e58311aa53ed
2011-04-14 14:25:05 -07:00
Todd Kennedy 9eb697c657 Fix layout of chip in combined view
the chip was part of the sub-layout when it should not have been.

Change-Id: Ie3a547bdf6d6ae4a3b458eaf4c30b57463b8ec34
2011-04-14 10:19:13 -07:00
Todd Kennedy 2b82c3f0a3 Add columns to cursor to allow for proper layout
The layout requires different indentation. Although the exact layout may
change, we will likely always need to differentiate between the different
mailbox types.

Change-Id: Ia2ff84b552873f92fa45563b2dc0868c29bec3e3
2011-04-12 15:09:51 -07:00
Makoto Onuki 96332096ca Fix message view for phone
- All layouts are still temporary, but at least they're usable now.
- Removed reply/forward button from the bottom panel.
  There're buttons in the layout.
- Switched to getView().
- removed the unnecessary LinearLayout from the xlarge layout.
- removed some backgrounds that'll probably not be used.

Change-Id: I3aa27c63ab139ae30e5714ac3d9a1eadce74b0e8
2011-04-05 19:20:41 -07:00
Makoto Onuki bd5933d4a1 Merge "Clean up MessageCompose for phone" 2011-04-04 09:56:00 -07:00
Makoto Onuki 2d380e4504 Clean up MessageCompose for phone
- +cc/bcc and "add attachment" are now menu options.
- layout clean up
- switch to getView()

Change-Id: I5efb6d0fd7b6d1265fed0173463adce2c6d652ba
2011-04-01 15:37:10 -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
Makoto Onuki 44f45f4221 Merge "Don't use findViewById (part 1 -- account setup)" 2011-03-31 11:06:15 -07:00
Makoto Onuki 2fbb3db5d8 Don't use findViewById (part 1 -- account setup)
Added two new functions:
- UiUtilities.getView()
  is a fail-fast version of findViewById().  Crashes when there's no view
- setVisibilitySafe()
  same as View.setVisibility, but doesn't crash even if a view doesn't exist

Let's try to avoid the use of findViewById(), and instead use getView(), *right
after* the layout is inflated, so that we'll always fail-fast if a layout
doesn't have a required view.  (Rather than getting a NPE only when the view
is really accessed, which can be in a code path which is rarely executed--e.g.
only when there's a protocol error.)

Let's only use findViewById() only when we're sure no all the variants of a
layout have the view in question and leave a comment to make it clear it's on
purpose.

(UiUtilities has been moved from com.android.email to
com.android.email.activity)

Change-Id: I36e0bab65a989f5d34cf636f13e1eaee084547af
2011-03-30 13:47:13 -07:00
Makoto Onuki 9e53322ee7 First path of MessageList cleaning up
- Menu now works
- Removed a lot of unnecessary/soon-to-be-unnecessary code.
  Especially,
  - multi-selection panel is now replaced with CAB
  - SetTitleTask will be replaced with a loader
- Removed the option menu xml for magic mailboxes
  (The regular one should work for them as well)

Bug 4184142

Change-Id: I52adff6d711232d536b6f00367a240e1faeea14b
2011-03-28 16:36:01 -07:00
Makoto Onuki 511d378777 Fix NPE in message view
Message view layout is still unusable with this fix, but it's a start...

Bug 4163869

Change-Id: Ifa88c758b7945b4e58d5ca9f1d618a4402227c7b
2011-03-23 17:24:09 -07:00
Makoto Onuki 39745c3dc0 Fix AccountSetupOptions for phone UI
Bug 4157050

Change-Id: I1addca05b9c56266b28e7449c87b3a5010ed671b
2011-03-23 11:17:46 -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 46b8ea4b53 "final" tweaks to widget
* Add the background to the widget
* Updated background to a stretchable 9-patch
* Shift "Tap icon to change" text up a couple pixels

bug 3510984

Change-Id: I5ea65b802098c1af08e865f85fb5470e0a00b76b
2011-03-11 10:54:29 -08:00
Todd Kennedy e63337e78b DO NOT MERGE: Update assets
Also tile the widget header.

bug 3500861

Change-Id: Ic8a6a0a8a83974f7c653d9c78450bada7947773a
Backport-Id: I4288c4dd0c71843e18ee370102c2112626a90f50
2011-03-07 16:21:43 -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
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
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
Todd Kennedy 9262f20f5d Remove border from the email widget
bug 3402206

Change-Id: I2d1e04cee69459f5afe6df530925e137c1163f63
2011-01-31 10:11:03 -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
Todd Kennedy 6c5ee59c4f Add "tap to configure" text to widget
If there are no email accounts defined, the widget should show a single string
that allows the user to create a new account. Whenever there are changes to
the defined accounts, the widget(s) will update their headers to ensure they
are only displaying valid information.

bug 3296594

Change-Id: I156c20cfc90692174297a2aededd85775e0ea196
2011-01-26 17:58:51 -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 3fd2513a18 Merge "Make the "refreshing" progress icon smaller" into honeycomb 2011-01-26 15:02:19 -08:00
Makoto Onuki 75ebb59c71 Make the "refreshing" progress icon smaller
Bug 3388138

Change-Id: I0c329de5c2d2e39f34262df15363399ed2fd99e8
2011-01-26 13:49:11 -08:00
Makoto Onuki 3af94be477 Make account name on action bar narrower
... to give the mailbox name more space.  Otherwise it can be too
small in portrait.

Bug 3387730

Change-Id: I0301fd696dc2c4dfa3654a235b9e95aa7db4b885
2011-01-26 13:26:14 -08:00
Makoto Onuki 484d220b6e Make the refresh button animate in-place.
Turn the refresh button into an indeterminate progress icon
while refreshing.

Bug 3388138

Change-Id: Ic0406ff5b857243c3e1e475ddb8b305441eddbb0
2011-01-25 19:09:32 -08:00
Makoto Onuki 931370a340 Remove STOPSHIP for error banner
We'll go with the current design for now.

Bug 3335095

Change-Id: Iaac0e5933fb534d547ebbf90315cea628e8f49cc
2011-01-25 10:19:03 -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
Todd Kennedy f264ea638d Fix widget alignment
bug 3349605

Change-Id: Ia56f588067080c13716ff2fe6ffe623c6a940b05
2011-01-18 09:45:15 -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
Makoto Onuki f7b8bc1ed7 Show newer/older in landscape as well, below message list
Now the button area is owned by the 3-pane layout, rather than the message view
fragment.

Bug 3327153

Change-Id: I9c262086c5a001cfe6e81b788c27d05d490c9830
2011-01-11 16:02:19 -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 92b50897d6 Merge "Pixel perfect: newer/older buttons" into honeycomb 2011-01-11 13:04:45 -08:00
Makoto Onuki b6171541b6 Pixel perfect: newer/older buttons
We haven't gotten all dimensions yet, but this is what I inferred from
the latest redlines.

Also fixed a margin above the message area on message view.
(Keep the margin even if there's no tabs.)

Bug 3138021

Change-Id: Iafff578f499737674ec10206b75566377cf2383b
2011-01-11 12:31:51 -08:00
Makoto Onuki 107093056f Add ScrollView to "Message Details"
Bug 3340780

Change-Id: I9d5935ae7c9beb0e4f39b4bef5f2287f52897dd3
2011-01-11 11:15:55 -08:00
Makoto Onuki 84c4ec4aef Merge "Remove STOPSHIPs" into honeycomb 2011-01-10 16:03:16 -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
Makoto Onuki 42c6881494 Remove STOPSHIPs
Bug 3335094
Bug 3335069

Change-Id: I307a762a83ca7fa94cf62f1d80f32a2b3f30b27a
2011-01-10 14:36:17 -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 7fcc12f799 Prevent display of incorrect widget title on orientation change
Change-Id: Ib43e3d4e261a65f0c7a49b8595131e0b0150484a
2010-12-10 10:04:00 -08:00
Andy Stadler 3dedc8b191 Defragment AccountSetupBasics
* This was an early attempt at fragmentation
* But it turned out that no fragment was needed here - it is
  not shared or reused in any way.
* Precursor to doing final layouts for the activity.
* Tested working:
    Automatic provider lookup
    Manual
    POP/IMAP and EAS flow modes (from accounts & sync)
    Force account creation intent
    Provider note
    Duplicate account detection

Change-Id: I434edd4b152391d36e70440873932db3ec1a1c99
2010-12-09 11:05:34 -08:00
Makoto Onuki 45e04b009d Update error banner
1. Error banner now pushes down the entire screen, rather than covers it.
2. Switch to the new ObjectAnimator for the animation to achieve #1.
   (Traditional Animation doesn't do this)
3. Dismiss the banner when getting any callback with MessagingException == null
   and progress > 0, only when the account is the one that caused the last error.
4. MessageListXL now registers its own ControllerResult to detect
   connection errors, and more importantly, when they're cleared.

Bug 3240874
Bug 3240406

Change-Id: I07f8e2f589bb1d312859824f9ec398879003ba16
2010-12-07 16:49:26 -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
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
Makoto Onuki 54513ed740 Merge "pixel-almost-perfect: mailbox list" 2010-11-24 13:47:04 -08:00
Makoto Onuki 9d6d5b3091 pixel-almost-perfect: mailbox list
Bug 3137965

Change-Id: Ic5aa3327ddbd456024e1938b74c7da0452b682f5
2010-11-24 13:40:58 -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
Makoto Onuki b715ea1d76 Fix & cleanup on EML viewer (MessageFileView)
- Fix the XL layout: Don't refer to "GONE" views in RelativeLayout.
- Don't always (re-)load message on onResume().
  This will make it lose all state (e.g. webview's zoom level) when coming
  back from other activities.
- Change the default visibility of some views so that it'll look okay
  while loading the message.
- Remove the use of obsolete fragment APIs.
- And some other minor cleanups...

Bug 3221066

Change-Id: I475bc229f4ea9e0e480f528389f5180e1d63fcd6
2010-11-22 17:02:48 -08:00
Makoto Onuki 4ca7580e5d New portrait look for 3-pane
- Removed opener/collapser
- Now the "fogged glass" is 100% transparent
- Move the landscape layout to layout-land

Bug 3137919

Change-Id: I4918f905aca698c78489e340dd330c7d4da8b106
2010-11-17 15:25:58 -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
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
Makoto Onuki 17670b1194 Merge "Small code change on MessageCompose" 2010-11-15 11:03:21 -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 4977ce62f0 Small code change on MessageCompose
Change how we show/hide CC/BCC.  The new way will work for the tab UI too,
where we show the labels to these fields as well.

Also hide the "+Cc/Bcc" button when they're visible.

Bug 3138037
Bug 3192841

Change-Id: Ic78b3200c418430c8eade3ca1238b0d0f1ee4731
2010-11-12 16:19:26 -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 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 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
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
Makoto Onuki 31a2fdbe87 Make "invite" tab visible
Bug 3072235

Change-Id: I5e4f353905b8f980e258635be8a77f278f2a3342
2010-10-07 10:56:21 -07:00
Makoto Onuki 60c6dc4711 Sparse message list item layout for XL
- Tested on N1 as well
- Also fixes bug 2546662 -- show both invitation & attachment icons

Change-Id: Ic2f42370be32a0beb43f9018cefdce86028e8189
2010-10-07 10:17:58 -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 7bfa32dbc5 Merge "Move reply/forward buttons to header" 2010-10-05 11:05:51 -07:00
Makoto Onuki 01b7e67f78 Move reply/forward buttons to header
Moved the buttons to the header.  All other buttons below the message view
go away, so I just hid the old buttons.

Also now we stop trying to hide these buttons when entering contextual mode,
which fixes bug 3044284: Message view buttons get disabled when closing
quick contact

Assets were temporarily copied from gmail.

Change-Id: Ib178c6221dfab02832a10d0c0441044e4969fb70
2010-10-05 11:04:10 -07:00
Makoto Onuki 1a0b0092e0 Add "Clear WebView cache" button to debug preference
Change-Id: I317b57cb06b071f9574077b58998aafcb5e0dff8
2010-09-30 15:41:40 -07:00
Makoto Onuki 61eec98d39 Switch to static fragments
- Now we declare all fragments in the layouts.
- Added clearContent() to MessageList/MessageView to keep them calm when not
  used.  (e.g. MessageView.clearContent() will be called when closing message
  view and going back to the mailbox list+message list screen.)

- Some of the processes have moved from onStop to onPause.
- Now that we don't use the fragment transaction, the "restored fragments"
  has been removed, and the separation between selectXxx() methods and
  updateXxx() methods are gone.

Bug 3045555
Bug 3041502

Change-Id: I958897a8a38bccea1dfed7cfcd900e6dd52d2eed
2010-09-30 11:03:33 -07:00
Makoto Onuki 8818a658a1 Three pane layout
Implement basic behavior of the new layout.  Supports collapsing/expanding
message list on portrait.

TODO Collapsing the middle pane should cancel the selection mode on
     message list
TODO Implement animation
TODO On STATE_PORTRAIT_MIDDLE_EXPANDED state, right pane should be pushed out,
     rather than squished.

Change-Id: I0306516845de3a1f05a102864c3dc4aba809a49a
2010-09-29 13:38:32 -07:00
Makoto Onuki 58843f0dc3 Highlight selected message on message list
Also make sure the highlighted mailbox is always visible on the mailbox list.

MessageListFragment now just uses the default background color, which means
it no longer changes background color for unread messages or checked messages.
This should be re-implemented if necessary with the newer wireframe.

Change-Id: I9bfbe9f0711ea4ab56be27778b00298d3033123b
2010-09-22 14:44:23 -07:00
Makoto Onuki 250ca15b88 Show MessageList with MessageView, rather than MailboxList
In message view mode, show MessageListFragment on the left pane.

TODO: Highlight opened message on message list
TODO: If the opened message is moved/deleted/starred/etc, update
message view
TODO: Collapsible left pane on portrait

Change-Id: I9b26f7291648da0e08bc526b79305ab65ce4d926
2010-09-22 13:13:59 -07:00
Makoto Onuki 0af92c0c39 Use the default theme for selected mailbox.
The latest framework change made it very easy to do this.
We no longer need to implement Checkable by ourselves.

Change-Id: I9264b157b6600659597ca8d525a4288d7bb9c470
2010-09-17 15:05:32 -07:00
Makoto Onuki 0435a0775e Let MessageViewFragment own bottom buttons.
Create a custom view containing the bottons below MVF
(delete, move, reply, etc) and let MVF own this.

These buttons used to be owned by the XL activity itself, because
the UI for these commands will most likely be totally different
from the tablet UI, so the fragment having them looked wrong.

However, this made it harder to make changes suggested by the latest
mock, such as "put reply/forward in the message header".
I think the buttons are semantically part of the message view anyway,
so the fragment owning UI for these commands is probably the way to go.
(And let's worry about the phone UI later.)

Reason for the use of a custom view is that it will make it easier
to make non-trivial UI changes, e.g. "combine reply, reply-all and
forward and make it dropdown."

Also removed obsolete TODOs from MessageListXL.

Change-Id: Ibf93f4c70fe07bdbbe33d2adb6bbd2b96812830d
2010-09-17 14:23:56 -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
Makoto Onuki 4c5aaaecef Merge "Add quick contact badge to MessageView." 2010-09-09 16:55:08 -07:00
Andrew Stadler c164444784 Cosmetic cleanup of exchange setup
* Remove nonfunctioning Next button
* Enable Next button on name screen

Bug: 2988925
Change-Id: I9de7d8dc5b6f48b6c11676b7eef478495afcc889
2010-09-09 15:49:21 -07:00
Makoto Onuki b1ea9c3c12 Add quick contact badge to MessageView.
- Added "quick contact badge" to MessageView
- Removed PresenceUpdater, and added new implementation based
  on Loader, which is much simpler.
- Changed some text color, so they're visible now.

Bug 2988625

Change-Id: I688a3217178ee8fd0b7245c0ab36a633687ea525
2010-09-09 13:57:31 -07:00
Andrew Stadler 8bcb572ccf Convert setup to actionbars, and holo theme
* All setup activities given UI makeover:
  * Remove legacy themes from manifest - exposes default holo theme
  * Remove bottom row button(s)
  * Replace with action bar button(s)
* No change to workflow or activity/fragment organization

Change-Id: I07ce11a0a2b4b767b5ac111d466e68400fe0f30b
2010-09-08 23:27:05 -07:00
Makoto Onuki e8629a8744 Enable the splitMotionEvents mode
Change-Id: I3b98eae6ee0dcda2a47285b37469692e06fbd85f
2010-09-01 16:41:44 -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
Dmitri Plotnikov 42739b112d Minor UI tweaks
Change-Id: Ibd5ffc54fffce33af8e7472af8b865ccbdc590d7
2010-08-31 16:20:25 -07:00
Dmitri Plotnikov 9d74207039 Integration with Directory API for autocomplete
The UI changes a bit - there is no separator
between the local contacts and directories.
Will bring the separator back if asked, but
most likely simply as a thick line.

Change-Id: Idfc990deff41b30d63bd8289731694e3d9a00fb6
2010-08-27 14:02:06 -07:00
Makoto Onuki bdf84d57e6 Revive checkboxes to select messages on MessageList
It's basically a partial revert of I3cb6c45c, with some clean-ups.

Also removed mHandler, which was unused.

Bug 2949762

Change-Id: Ib4e673c5829b99ba45fec449bffb62df84555a01
2010-08-27 13:39:06 -07:00
Makoto Onuki 2f4e87c223 Switch to Light Holo theme, clean up menu options.
- Changed the default theme to Light.Holo
- MessageCompose now has ActionBar.
- Removed unnecessary MessageCompose menu items.

- Also removed "Add Account" menu from MessageListXL.
  (Use the + button on account settings)

- Fixed "calender response section invisible" bug.

Bug 2926517

Change-Id: Id27632ec82dad158f43b0903dbc2cb219188400d
2010-08-25 17:09:59 -07:00
Makoto Onuki c8502dd194 Highlight selected mailbox on mailbox list
* Use ListView's CHOICE_MODE_SINGLE mode to select list item.
* Added a view that implements Checkable to change background
  for selected item.

Change-Id: Id55999b3d024ad1852e2b8c6436cd22ef255cf95
2010-08-24 16:55:44 -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 715a19be28 Show "Send outgoing mesasges" button in outbox.
It works for regular outboxes.  Unfortunately it doesn't for
Combined Outbox, due to a bug in RefreshManager, which I'll fix
in a separate CL.  (The fix might be rather large.)

Change-Id: Ib904e2c672801debe3dd64e4bb0a464564d098da
2010-08-18 14:23:09 -07:00
Makoto Onuki 6956533103 Deal with fragment API change.
- Use the class attribute instead of android:name in fragment tags.
- Use FragmentManager rather than openFragmentTransaction.

(There's a change on the PreferenceHeader tag too, but seems like we're
not using it.)

Bug 2922220

Change-Id: If604a97ac73b9ad7d84e453d36beb84bf31ff98f
2010-08-16 14:10:47 -07:00
Andrew Stadler 641ae45358 Fragmentize Exchange setup
Change-Id: Ib331d9a7f7be7acbfe355d6a03d9ae07af0cc627
2010-08-11 16:07:26 -07:00
Andrew Stadler faaa115e1a Fragmentize outgoing settings (SMTP)
Also fix a small NPE in AccountSetupIncoming

Change-Id: I5728a10889a3f0f35d31962f4a13ccae4ec0393b
2010-08-10 17:45:57 -07:00
Andrew Stadler 1b156352f3 Fragmentize Incoming settings (IMAP/POP server)
Also, extract DuplicateAccountDialogFragment for reuse.

Change-Id: I042a158e264d949024347d477d6e9ec999c244d3
2010-08-10 14:28:20 -07:00
Andrew Stadler a75bab5504 Fragmentize AccountSetupBasics
Change-Id: I99eb4cd4f8aa80d25a01d720244ccee599cba1d8
2010-08-09 22:44:41 -07:00
Andrew Stadler 71cc035c55 Fragmentize AccountSettings
This is phase 1, which simply replaces the phone UX with a fragment-based
equivalent.  A subsequent CL will convert it to a large-format multi-pane
version.

Also fix a latent bug in the signatures of the Incoming & Outgoing
settings, both in the reflection code and in the proguard flags.

Change-Id: I86e857af8b9573c0d6070bb21053ce65bb7fe8a0
2010-08-09 10:36:50 -07:00
Makoto Onuki 7ef278202e Clean up MailboxListFragment.
- Remove AsyncTasks, and use CursorLoader to load data.
- Get message counts for the drafts/trash mailboxes directly from
  the db column.
- Remove obsolete code from MailboxesAdapter.

Change-Id: I93c72977c19b60581e1169ba9bd429912ba3e68f
2010-08-02 16:33:23 -07:00
Makoto Onuki 2a9f783e34 Fix crash in one-pane message view
Forgot to fix the resource file.

Two-pane is okay because we don't put the class name in layouts.
(We create fragments at runtime.)

Bug 2887134

Change-Id: I033c2283be4b104941af34a1fbb5e4663337ef68
2010-08-02 11:47:10 -07:00
Makoto Onuki 206d4e842d Split up MessageViewFragment like we did to MessageView.
Break MessageViewFragment up into two fragments, MessageViewFragment, which
is used to show regular messages, and MessageFileViewFragment, which shows
EML messages.  (And their base class, MessageViewFragmentBase.)

MessageViewFragmentBase's javadoc has a class diagram.

MessageViewFragment is actually named MessageViewFragment2 at this point
so that GIT correctly finds out the rename from MessageViewFragment to
MessageViewFragmentBase.  I'll rename it back in a following CL.

Also added very basic unit tests for MessageView and MessageFileView.
At this point, they just make sure the activities really open and show
messages without exceptions.

I feel like the current naming schema for the activities/fragments is
kinda confusing.  Let me know if you come up with better names.

Change-Id: Iff948f4b68cfdb7c1e68f225927b0ce58d34766b
2010-07-30 15:38:53 -07:00
Makoto Onuki e105fbe510 Break MessageView into 2 separate activities.
MessageView for regular messages and MessageFileView for EML files.

I'll break down MessageViewFragment too.

Change-Id: Iae66f33d8fb5de58084ab4aef31588e9743c5a18
2010-07-27 15:45:58 -07:00
Makoto Onuki 3918b0dbfc Merge "Renaming message_view_header.xml to message_view_fragment.xml" 2010-07-22 10:33:12 -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 411314990d Renaming message_view_header.xml to message_view_fragment.xml
Change-Id: Id0ccc13bfd8dfa63b450d46989938295ba8e78e0
2010-07-21 17:23:39 -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 7daacf83a4 Switch to ListFragment, and use its default layout.
Change-Id: If8dead170a3662cbde87e6ead244363b11db01f6
2010-07-09 13:22:53 -07:00
Makoto Onuki 42e3f10a95 Use "*#*#36245#*#*" to activate the debug screen.
Dial *#*#36245#*#* on the dialer to activate the debug screen.
"36245" = "email"

It's useful when
- There's no keyboard.
- There's no account set up yet.
  (You can do it by entering the special username/password on new account
  screen, but that's a bit of a pain.)

It's also easier to tell to people.

Also, removed "sensitive logging", which should never be used.

Change-Id: Id692f8b216f2d85abe1880c452d2067f170dac83
2010-07-01 16:15:07 -07:00
Andrew Stadler d5b2da3716 Add ActionBar to MailboxList
Note: This does not appear in UX wireframes, this activity is going
away eventually, but it's a good testbed for ActionBar to be tried out.

Open issues:
1.  Waiting for progress indicator support, using unattractive hack
2.  Subtitle doesn't seem to work so putting account name in title
    (which is the wrong font size for phone portrait mode).

Change-Id: Iee3cac7d4f30ea210bd8f3838b69ed12cd498375
2010-06-29 16:49:47 -07:00
Makoto Onuki 91093ee6e8 MessageList: Introducing "selection mode".
- Long-press an item to go into the selection mode.
- In the selection mode, tap items to toggle selected/non-selected.

This also means:
- No checkboxes any more.
- No context menu any more.

Color scheme hasn't been updated yet, so it looks a bit ugly for now.

Change-Id: I3cb6c45c1dc5461a234c9e9ab9e038c90a9fe8b2
2010-06-23 16:23:41 -07:00
Andrew Stadler e4ecb50091 Convert AccountFolderList to use a Fragment
* Introduce AccountFolderListFragment and its layout
* Extract all list-related UI into it
* Fix leaking cursor in AccountsAdapter and add unit test

Change-Id: Ica566847d97927b736f515d434c6691c82343290
2010-06-18 15:32:10 -07:00
Makoto Onuki 4df94867b4 Don't use internal resources.
Change-Id: I0edce125b3544724ad74e72d91b4abd40c244b09
2010-06-16 14:07:17 -07:00