Commit Graph

2950 Commits

Author SHA1 Message Date
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
Jorge Lugo
8f54b2f135 Merge "Fixed reply-all bug" 2011-06-03 10:23:35 -07:00
Jorge Lugo
15842c522e Fixed reply-all bug
Upon hitting reply all, all email addresses except that of the source message sender
go in the CC: field. Previously they all went in the TO: field. Updated 3 tests
in MessageComposeTests.java (testReplyAllAddresses1(), testReplyAllAddresses2(), and
testReplyAllAddresses3()) to reflect this new behavior.

Bug: 4534058
Change-Id: I852daebdd8843a45f685eecc67f757c87925bb6c
2011-06-03 10:16:05 -07:00
Todd Kennedy
4c4b088a21 Merge "Add "lastTouchedTime" column to the mailbox table" 2011-06-03 09:26:14 -07:00
Todd Kennedy
9dcb72e1ec Add "lastTouchedTime" column to the mailbox table
The last touched time will track the last time a message within that mailbox
was read. This will be used for the recent list.

Change-Id: I97a5fda52fd09b416fc3278a11a87b807da05c9c
2011-06-03 08:51:25 -07:00
Marc Blank
aaf12a5e75 Merge "Update searchMessages API" 2011-06-03 08:39:45 -07:00
Marc Blank
75a754660e Update searchMessages API
* Store various search parameters in a new parcelable class

Change-Id: Iadec6a803b1bf17d89cd401c3fca1cb0ad3340d4
2011-06-02 21:41:17 -07:00
Todd Kennedy
bc7cd16ec2 Fix NPE if message displayName is null
the spannable string builder assumes the given char sequence is non-null.
we now ensure that's always the case.

Change-Id: I12e7081e5348d797feab6ad17452b73a52feaf13
2011-06-02 15:27:48 -07:00
Todd Kennedy
cf772cc8ad update UX according to specs
Display the mailbox name as the widget title and the account name
as the secondary title.

Change-Id: Ibb36d4897e02b8cbc501eae9b27ee8381fe91e1a
2011-06-02 12:03:40 -07:00
Todd Kennedy
b9afe5760c Merge "Fix NPE accessing fragment arguments" 2011-06-02 12:02:50 -07:00
Todd Kennedy
8121876fef Merge "Add proper wording for "all accounts" picker item" 2011-06-02 11:56:05 -07:00
Todd Kennedy
f47255f6fc Fix NPE accessing fragment arguments
Change-Id: I417927568c2407f1d183f3d112d0761f57b5bb12
2011-06-02 11:55:24 -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
Makoto Onuki
5dc07ad26c Merge "Rework on inbox lookup" 2011-06-02 11:01:09 -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
Makoto Onuki
f015cc00ed Rework on inbox lookup
- Moved MailboxFinder logic to UIControllerBase so it can be reused for 1-pane.
- Make sure MailboxFinder runs only while the activity is resumed.
  (we don't want to get callbacks when it's not, because we can't perform
  fragment transactions.)
- Make sure MailboxFinder is restarted if the activity gets re-created
  while it's still running.

Bug 4522010

Change-Id: I4486ecfa44dd700d28c424bc5eb7104d3043cf7d
2011-06-01 19:25:14 -07:00
Makoto Onuki
47d6f782de Merge "Switch to async fragment transaction for two-pane" 2011-06-01 19:16:15 -07:00
Makoto Onuki
61b0605a0b Merge "Change on the mailbox list item background." 2011-06-01 19:16:07 -07:00
Makoto Onuki
2912bed923 Merge "Remove unused method." 2011-06-01 18:41:18 -07:00
Makoto Onuki
3a8a1b451d Change on the mailbox list item background.
- The drawable for the active drop target background was static, and
  shared between items.  But StateListDrawable has inernal state and
  shouldn't be shared.

- Also make sure not to set the same background more than once.

For some reason, they will cause visal glitches when we switch to synchronous
fragment transaction.

Change-Id: I10fede2ad4e595f74d61768907b5b70fd5d4da21
2011-06-01 18:40:50 -07:00
Todd Kennedy
7f4cf3c46b Hook account/mailbox picker to widget
now when adding a widget to the desktop, you can pick the account
and mailbox.

Change-Id: Id3d2c21b349af58459304ac5a068402d67f4d0f7
2011-06-01 18:24:47 -07:00
Makoto Onuki
c7024f73ec Switch to async fragment transaction for two-pane
One-pane will follow too, but not soon.

Change-Id: Ie018f728273e9fa4a7e6cf3116a2a2afebcaecc5
2011-06-01 18:11:12 -07:00
Makoto Onuki
147e41d00a Remove unused method.
This should have been removed in I2c23651d.

Change-Id: I8dd90a0ba55e701225cdaf2e5b7c5fe92a417525
2011-06-01 17:56:16 -07:00
Todd Kennedy
60abc35a72 Merge "Loader query should use mailbox key" 2011-06-01 16:01:51 -07:00
Todd Kennedy
0b4602b5d9 Loader query should use mailbox key
The loader query should be testing against the mailbox key and not the message
id.

Change-Id: Idcc31b4e84db55c8c6a95e1141740371e1390c81
2011-06-01 15:52:15 -07:00
Todd Kennedy
5c453db639 Merge "Save widget config to shared preferences" 2011-06-01 15:19:53 -07:00
Todd Kennedy
fa1b3a8f37 Save widget config to shared preferences
The way the config activity communicates with the widget will be through
shared preferences. We now read / write shared preferences for widget
configuration. One step closer to the configuration activity...

Change-Id: I7c54259d84ad8d304a61652af5b3edff4c7d67db
2011-06-01 15:14:55 -07:00
Makoto Onuki
3bfd5734b8 Merge "MailboxListFragment: In-place nested mailbox navigation" 2011-06-01 15:11:09 -07:00
Makoto Onuki
844bf74504 MailboxListFragment: In-place nested mailbox navigation
Now we reuse the same instance of the fragment for nested mailbox
navigation.  (Don't use fragment transaction)

"CursorWithExtras" now only has the child count, so I removed the
bundle version and added a concrete class to MailboxFragmentAdapter.

With this CL the nested mailbox navigation on 1-pane should work, but
not back navigation.  (Back press event isn't connected to the
fragment yet.)

Change-Id: I2c23651d9c8edb5fe062c68bbb9b462c8949ded4
2011-06-01 15:06:42 -07:00
Marc Blank
9634d2d88c Merge "Workaround bug 4520517" 2011-06-01 13:21:20 -07:00
Makoto Onuki
e50a6fb48b Workaround bug 4520517
To test bug 4490341

Change-Id: I93127a8ed1579184b0ae9c1fc0ce51bae7927f76
2011-06-01 13:18:36 -07:00
Todd Kennedy
44f5cd67c9 Remove widget views
The new widget UX allows for a single display mode for the widget. This can
be configured when the widget is added or at a later time during widget
re-configuration.

We don't have the configuration activity (yet). We first need to restructure
the widget to take a single account / mailbox combination. Hooking up the
configuration activity will occur in a future CL.

Change-Id: I38a5796c44938a6abd0d2bb50ac77241cc86a497
2011-06-01 10:46:32 -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
dc6f61a4c2 Merge "Use standard widget call backs" 2011-05-27 12:16:05 -07:00
Todd Kennedy
98108f2e0e Use standard widget call backs
Instead of overriding onReceive() and processing messages ourselves, we should
be overriding the standard widget call back methods, onUpdate(), etc...

Also added a deleteWidgets() method in the widget manager to maintain beter
symetry between create & delete.

Change-Id: Idc84bf220a1e14776a080cfee0b28df39f9a1450
2011-05-27 12:15:09 -07:00
Makoto Onuki
88b5e296e0 Merge "MessageViewFragment: Preparing to use back stack." 2011-05-27 10:44:22 -07:00
Todd Kennedy
7956e76e18 Merge "Make callbacks from shortcut picker" 2011-05-27 10:40:58 -07:00
Todd Kennedy
ae8e612ed5 Make callbacks from shortcut picker
We need to move some of the calls from shortcut picker to the activity (such
as creating the actual shortcut and terminating the activity). This should
let us to reuse the picker fragment from the widget code.

Maybe other callbacks are needed, but, this is a first pass to get something
that "should" work.

Change-Id: I6467979951ad73b5817ba543683f62f831ac73a4
2011-05-27 10:36:10 -07:00
Ben Komalo
6d44569356 Merge "Prevent NPE in MessageCompose." 2011-05-27 10:33:29 -07:00
Todd Kennedy
6d4f0d8fa0 Merge "Make it clear that args are immutable" 2011-05-26 16:51:10 -07:00
Todd Kennedy
90e08781ca Make it clear that args are immutable
Change-Id: I54657648fc7fcd145689a51acd8f3c27d3611a97
2011-05-26 16:45:33 -07:00
Makoto Onuki
262d18971a Merge "MessageListFragment: Preparing to use back stack" 2011-05-26 16:23:49 -07:00
Makoto Onuki
7cb2376aed MessageListFragment: Preparing to use back stack
with some clean-ups.

Change-Id: Ifd0ce888c6387013bc51237528980605c929279c
2011-05-26 16:22:11 -07:00
Todd Kennedy
b59b9d04d5 Merge "Don't navigate to a shortcut mailbox" 2011-05-26 14:56:50 -07:00
Makoto Onuki
3a505d8d96 MessageViewFragment: Preparing to use back stack.
Do all the clean-up stuff in onDestroyView() rather than onDestroy(),
so that no callbacks (such as the controller callbacks and
AsyncTask.onPostExecute()s) will work when it doesn't have views.

Change-Id: Ic4aa771d28209ee7b56ac4d228488768ae998dd8
2011-05-26 14:47:13 -07:00
Todd Kennedy
ca6eca0466 Don't navigate to a shortcut mailbox
All shortcuts now have a mailbox associated with them. When launching
the app via shortcut, we want to show the messages within that mailbox, but,
we do not want to navigate into the mailbox; unless the mailbox has children.
Since we don't want to put too much informatin into the shortcut, we must
perform these checks at runtime. So, if ever we try to load a mailbox that
doesn't contain children, we load it's parent instead.

Change-Id: Idb5dbc7cd740b270a0068811abe685f963ca2c0b
2011-05-26 14:21:42 -07:00
Marc Blank
67fefe21b6 Remove change made to workaround DPM issue
Change-Id: I88a9663d513e13ecca5957c61e2e817a8bd847d5
2011-05-26 12:06:28 -07:00
Ben Komalo
fdfeb8d3c3 Prevent NPE in MessageCompose.
New actionBar code makes removeAllTabs() not safe when there are no
tabs.

Change-Id: I9ac09c71872c5f2aaad7b8e3cf5dbe0caac6f8ef
2011-05-26 11:14:05 -07:00
Makoto Onuki
4ade29d6b0 Merge "MailboxListFragment: Preparing to use back stack" 2011-05-26 10:18:14 -07:00