History log of /packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
78e2f412983f8f3732b87bfd794e04d3b20233bb 21-Jun-2012 Jake Hamby <jhamby@google.com> Add menu item to access Cell Broadcasts from MMS app.

Add a menu item to MMS to jump to the main activity of the
Cell Broadcast app when the "config_cellBroadcastAppLinks"
config item is set to true. This allows the Cell Broadcasts
launcher icon to be removed while still allowing the user to
view the list of previously received cell broadcasts.

The menu item will not be added if the CellBroadcastReceiver
package is disabled or not installed.

Bug: 6709985
Change-Id: Iaf6ec9106bbd2875da81c929945342c5649fbe6f
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
4a0d14c517c1968c0f1e59544a54277ede9a8fa4 04-May-2012 Tom Taylor <tomtaylor@google.com> java.lang.NullPointerException at com.android.mms.ui.ConversationList.onSearchRequested

Bug 6438366

Change-Id: I546a9758ae45989274f420657d3a46f6f959d7da
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
6bbfdd3cc9cbe6b31dc64f122f3308563d19e077 02-May-2012 Tom Taylor <tomtaylor@google.com> Messaging app crashed

Bug 6350665

There's a race condition in Telephony.Threads.getOrCreateThreadId when it
calls MmsSmsProvider.getThreadId. If a user deletes a thread and a message
for that thread arrives at the same time, it's possible for the delete
to remove the thread found in getThreadId. With this change, getOrCreateThreadId
is wrapped by a function that blocks if we're doing a delete. I tested this
technique by adding a 10 second sleep in onDeleteComplete. The SmsReceiverService,
which calls getOrCreateThreadId is fine being blocked, since it does all of
its work on a background thread.

Change-Id: Ia9fc04052adac15c2252034006dd6cdd5c02f108
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
b0ef8fc2738b210a2bb0490e75eedc1e7b7b491f 29-Mar-2012 Tom Taylor <tomtaylor@google.com> Calling MessagingNotification.updateSendFailedNotification results in a DB query on the UI thread

Bug 6248511

An AsyncTask comes to the rescue. Do the query in the
background and do the UI work on the UI thread.

Change-Id: Id27790e08ba763df30a86fd0d4c3a0531e01fb8e
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
28af0405f300b050bed3b4649ad777bde8f28971 19-Mar-2012 Tom Taylor <tomtaylor@google.com> Strict Mode violation: not closing cursor

Bug 6193456

There are a few places in onQueryComplete where the code isn't
closing the returned cursor.

Change-Id: I25fe762e12a4d020648edf4b7a3d3f016feb5de1
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
ddd31c4011b4191035bdfbba05a8edb1785f71af 13-Mar-2012 Todor Kalaydjiev <todor@google.com> Give names to all background threads we create. No logic changes.

Also, fix some warnings by adding @Overrides, etc.

Change-Id: I3d7306f25fb917817359bd46b9274e04d86f4e26
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
14d33d97ed762ec8f6398297b8ec04436d1acefc 05-Mar-2012 Todor Kalaydjiev <todor@google.com> Merge "Play sound at half-volume and don't show notification for new msgs in current thread"
c8d727902ff6976c45285a12aab176545a7848bb 28-Feb-2012 Todor Kalaydjiev <todor@google.com> Play sound at half-volume and don't show notification for new msgs in current thread

bug: 5928707
Change-Id: I6954f8f1700daa7d4bca971f72da55d153ab5d39
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
64989ecb6d0e4bea59487bade662915317b6b54b 02-Mar-2012 Todor Kalaydjiev <todor@google.com> Remove jank with title of ConversationList

bug: 5927494
Change-Id: I87bb14d626bc2a41025ea112f6335522b16a83d1
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
f168c442a50961a9f011a570c9de4040da111e29 29-Feb-2012 Todor Kalaydjiev <todor@google.com> Remove spinner that used to show up during async DB queries

bug: 5920233
Change-Id: I5bc04082c3c1718e46e3749f2776f05dd36240de
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
1b1af7c751218e380bd119629ff9a652157fbb21 10-Jan-2012 Tom Taylor <tomtaylor@google.com> Weird refresh in list of smses showing only numbers for a second

Bug 5649763
When deleting a thread, the code was rebuilding the whole contacts cache
and threads would only show numbers while the contacts were loading. This
is normally only visible for folks with a LOT of conversations. With this
change, deleting a single thread only removes the associated contact(s)
from the cache.

Change-Id: Ia31f9fdcb3654461d93ed5de205a28ab5389a865
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
e0dccd0713d9349dadef5f0b41ce7da5e970f541 09-Dec-2011 Tom Taylor <tomtaylor@google.com> Show "Loading conversations" instead of "No conversations" while querying

Bug 5717044
The empty view is shown when the adapter has no items. The empty view,
which used to read, "No conversations", can show up during a query. With
this change, we follow email's model and show "Loading conversations". If
the result of the query is no items, the message is changed to "No conversations"

Change-Id: I8e95eb134dd0ba73c2c2c0b60dc3a178302f1504
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
e131a53620fff000a08cf53d29313a3922328dc0 07-Oct-2011 Mark Wagner <mxw@google.com> bugfix 5425257 Search results are not displaying in landscape mode

Use the standard search widget.

Change-Id: I34d71a7067ea8e70be44498a8a0eb0cdc61e1d61
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
b04236e2977ac69e63cc0fa123399a584b606945 05-Oct-2011 Tom Taylor <tomtaylor@google.com> Delete wrong thread during multi-select

Bug 5399568.
If a new message comes in and creates a new thread while the user is
in multi-select mode, tapping delete will delete the wrong thread.
Keep track of threadIds rather than what the list thinks is selected.

Change-Id: Iafa066de9b40977bfa6b97bf320b074121ef994d
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
2ddc2c0585fec6fca59acc115e26dc51f69aacc5 28-Sep-2011 Tom Taylor <tomtaylor@google.com> Weird phone number stored in canonical_address table

Bug 5375782.
Very tricky bug. In the recipient editor, we always leave a trailing
comma to make it easy for users to add additional recipients. When a
user types (or chooses from the dropdown) a new contact Mms has never
seen before, the contact gets the correct trailing comma. But when the
contact gets added to the mms's contacts table, contacts sends out an
onUpdate to CMA. CMA would recompute the recipients and since the
recipient editor was still visible, call mRecipientsEditor.populate(recipients).
This would replace the recipient that had a comma with a recipient
without a comma. When a user manually added a new comma to add another
recipient, this would eliminate the span inside the text. The span contains the
number part of "Fred Flinstone <123-1231>". Hence, the whole
"Fred Flinstone <123-1231>" would be considered the number of
the first recipient and get entered into the canonical_addresses table.
The fix is very easy. All recipients have commas. There's also a change
to rebuild the contacts cache when we delete a thread. We do that because
the provider is now deleting stale contacts when threads are deleted.

Change-Id: I8fdde2ba64e934c9b539fa0fae433ef23fd254bc
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
5fd2543851375fc764495584ddd319f5e7d13cb9 22-Sep-2011 Tom Taylor <tomtaylor@google.com> A cleaner fix for draft saving

Eliminate the window of vulernability where a thread can get deleted
while saving a draft.

Change-Id: Idb5bf9860f39c59d9391176fd2f6c081086d0d76
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
2c935b601f693396cb1cccdb96cfc4599daa9be0 20-Sep-2011 Tom Taylor <tomtaylor@google.com> Draft message thread is not seen in thread view

The empty thread was getting deleted before the draft could be saved.
Bug 5333371

Change-Id: I49c694e5650bb137c046aa330e1b182974f5ea6e
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
77d01940e831865a05921cca0c6645904b55f891 19-Sep-2011 Tom Taylor <tomtaylor@google.com> Hide action bar while in search mode

Bug 5239304w

Change-Id: I69a36137927582827188b0a99643ca422fe4bd01
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
ebb3227c391ec7fd4686aadd3cb18d5f427fc17b 17-Sep-2011 Tom Taylor <tomtaylor@google.com> Add text to indicate when conversation list is empty

Might have to wait to check this in until it's ok to add strings.
Bug 5313899

Change-Id: If7c96f8d1f69ca9e195ae83dadb4220c62a02452
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
18d29eb95b2e692974b53655d4953accb6968570 13-Sep-2011 Tom Taylor <tomtaylor@google.com> Delete dialog icon is white-on-white

Bug 5265096

Change-Id: Ib80e7e909d3573899945c3983c227aa98590963c
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
9995f7fda121bbd84a2a8a3c5edfd9d2d60870e8 02-Sep-2011 Tom Taylor <tomtaylor@google.com> App name is missing from the action bar in the conversation list

The custom actionbar was covering the title. Bug 5248658

Change-Id: Ia0569a8c70eb760ef6b0b8cdfee9af96e5f24f16
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
b31f9b5666f424d4fe8551696f480be0c1f51926 01-Sep-2011 Tom Taylor <tomtaylor@google.com> In Talk search set field context to "Search"

Set the IME option on the search view so we get the search icon as
the action on the keyboard, rather than the label "Go". Convert
ConversationList to load its menus from an xml file rather than
building the menus in code. Bug 5235495

Change-Id: I465711fb4959d1e54534ab594d5d04658d4082a1
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
136fe3767b8cb5dc0575992f2f6951c8451ee5e2 25-Aug-2011 Tom Taylor <tomtaylor@google.com> Messaging search should follow new search patterns

Show home as up on search results. Remove search menu item when
in search mode. Bug 5080823

Change-Id: I4734f87e6893c6ed942f92f0b16dbbffde64fb3b
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
f9d706cfd0c46a74ba3d79e5543f13a225328d30 18-Aug-2011 Tom Taylor <tomtaylor@google.com> In multi-select mode, show a custom background

Harder than it seems! Only the ListView knows which items are
checked. The adapter doesn't know anything about list items.
The common bridge is the Conversation. Also, get rid of a useless
class of indirection, the ConversationListItemData. Bug 5151185

Change-Id: If263c95a32ddb9ac565355aac3fc58ad5e3ddacd
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
b3217a6ddcd9455968de7078bfbc0a901b4ff705 16-Aug-2011 Tom Taylor <tomtaylor@google.com> Merge debugging messages and tools to master

Merge the newly added debugging messages and database dump tools from
gingerbread into master. Bug 5133439

Change-Id: I191960a79c7dc60f7e5f731ab952f06c5c9383c4
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
7020f6b8fa387935ac2580c636360c2bbc39bffc 16-May-2011 Tom Taylor <tomtaylor@google.com> UI tweaks to match latest spec

Change-Id: I056215ec9d9ce0e1ab21d1cba81408647660ed1a
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
b51ea8318ca2e4019b666d938e3e7efdf6e643b3 13-May-2011 Tom Taylor <tomtaylor@google.com> Multi-select conversation delete

Change-Id: I78748c9881733caea18239e4bd807e7a0c2ae4bf
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
2426db8887f7f1c0c93dbab5a10663cb22575ccd 11-May-2011 Tom Taylor <tomtaylor@google.com> Add actionbar to ConversationList

Add the number of unread conversations in the action bar of the
ConversationList. Remove the static "New message" item from the list.
"New message" is now in the actionbar.

Change-Id: If417964118146bdef6d807cce71213674d809c44
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
a7ce913d3b55de6e5808e8b29e50e186a2d4e96a 04-Jan-2011 Wei Huang <weih@google.com> bug #3319036: fix one of the (severe) SMS bugs where the wrong conversation is opened.

- the code in ConversationList.onListItemClicked() was extracting the conversation data
from the ConversationListItem view passed in. However, ListItem views can be recycled
when rebound, so the view we got could now be reassigned to a different list position
and contain different data.

Intead of depend on ConversationListItem to store the conversation data, always load
the cursor at the position clicked, and get the conversation data from the cursor.

Change-Id: I4ce80a323771a3f0f91f2f62da17af9cc02a5084
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
858d59e9f4b0839ee014e52e0744ea910d9830ff 03-Jan-2011 Wei Huang <weih@google.com> bug #3057952: add bunch more debugging info to catch this bug.

Change-Id: I3ea9bd19adcf177697536cc56ab079957f863463
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
c4a34a0ccd414e2bba937e8abd105a0383afff35 09-Oct-2010 Tom Taylor <tomtaylor@google.com> Call dialog.dismiss()

In many of the click handlers, we neglected to dismiss the dialog.
Bug 3072307

Change-Id: Ie461492394c9f29ce2a7bb6e7f00a93068ea2bf8
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
d4ab73b7483ba8a92a96235474070fbf5c10244c 27-Aug-2010 Brad Fitzpatrick <bradfitz@android.com> Use new apply() instead of commit().

apply() starts an async disk write and doesn't have a return
value but is otherwise identical in observable effects.

Change-Id: I126fa7cb5d02a2c30721eb702ecf5bd9d9376b17
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
f899bce945a70990c9511ce4d26f856d8adf1e04 28-Apr-2010 Tom Taylor <tomtaylor@google.com> Fix cursor null-refs

Found by the devious and relentless monkey. Bug 2631640

Change-Id: If45ce4f5e42b25b2b0e69cedfd03f1b4c359c2b5
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
63e395258ae33a101b9634a68b55ec89fac8b580 24-Mar-2010 Tom Taylor <tomtaylor@google.com> Fix an ANR in ConversationList

ConversationList.onStart() was trying to delete old conversations
on the UI thread. Now do the delete via an asyncHandler after we've
completed the initial conversation query. Bug 2538095

Change-Id: Ia9498d61c49244f0354c7d5a1e23ad490c1eaf6b
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
3b21f6ab04db5936d73e9f53032f1587389380ff 22-Mar-2010 Tom Taylor <tomtaylor@google.com> Fix DB query on the UI thread

Move a notification query on the UI thread to a worker thread.
Any calls from UI threads (which includes receivers) are made
nonblocking. Calls from non-UI threads (which includes services)
are blocking. Tested various scenarios and checked threads in the
debugger. Bug 2524765 and bug 2533501.

Change-Id: I38213b7202957bdb103058b657be04bfe6b085dc
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
0f1fb760aa6a1ae040703b8ce405c96923e40603 09-Mar-2010 Tom Taylor <tomtaylor@google.com> Fix race condition

After deleting a thread in ConversationList, the onDeleteComplete function
would call Conversation.init() to update the threads and make the
conversation cache match what was on disk, then call
startAsyncQuery() to get the new state of the threads. Then it called
onContentChange(), which was a mistake. onContentChange() caused the
list to redraw based on the old cursor. The code would reinsert
the deleted conversation back into the cache as a result of doing
a Conversation.get. Later on when looking up a thread by thread id,
the cache could easily return the deleted conversation from the cache.
With that onContentChange() removed, the async query takes place
and the conversation list gets rebuilt with the new cursor.
Fixes bug 2492283.

Change-Id: I901e774dd341a3ed1a39f9a47e8026555f853566
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
f7e8281a223af6228e6399055a6197a1edd9bc3a 09-Mar-2010 Tom Taylor <tomtaylor@google.com> Remove mms-common

Get rid of the mms-common library and move the mms files back into the
framework where they originally came from.

Change-Id: I8ce2b0a2a3cfc6b7da13ce0e791173c09dd8f0f5
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
627007213deb59ef938c80353c8f3598b01478b3 26-Feb-2010 Wei Huang <weih@google.com> Bug 2030420: fix SMS/MMS statusbar notification.

- don't show statusbar notification for sms/mms based on whether there are unread messages or not. Instead, add a "seen" column for the SMS and Mpdu (mms) table. Each SMS and MMS message will now have a "seen" flag in the db. If there are unseen messages, we'll show the statusbar notification. Once the user reads a thread, we'll mark a thread (and all messages in the thread) read and seen. If the user goes to the conversation list activity, we'll mark all messages "seen", but won't touch the read flag for the messages.

So now the user can have many unread messages, but still have seen all the messages, thus won't get notified repeatedly just because there are unread messages.

we'll mark a message "seen" flag to 0 for incoming SMS and MMS (pdu) messages.

to-do: mark all messages as seen when the user hits the clear notification button in the window shade.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
5c692bf6ab8df5145f377a2adb769d085500d91a 02-Feb-2010 Tom Taylor <tomtaylor@google.com> Update ConversationList backgrounds

Now going with a light background theme, instead of a dark one.
Take the opportunity to rename several files to names that are
more standard across Android apps. This will make it easier to
find the listitems that belong to the conversation list. The old
names always trip up those browsing the sources for the first, second,
and tenth times. Fixes bug 2406873.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
fd644551e8506266aad2b76463b51b44154ed62f 29-Jan-2010 Tom Taylor <tomtaylor@google.com> Update refs now that MMS is removed

Move MMS to mms-common library. Update imports.

Change-Id: I28fa24a68c27977eba58cb62f2667596d3abe2c4
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
6be18bedb5b87dbbcdb54f37d5a0945bd0f71377 17-Dec-2009 Tom Taylor <tomtaylor@google.com> Unbundling work

This is the first step in unbundling the Mms app. Some of the changes include:
- moving some of the Mms code from the framework into the app itself.
- same with emoticons
- remove dependency on internal drawables and add local copy to mms
- some dependencies on various internal classes now moved to android-common library
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
4bda353f4af00b2f399394b4b730f20306aeb691 07-Nov-2009 Tom Taylor <tomtaylor@google.com> am 445fb5ab: Speedup contact name resolution

Merge commit '445fb5abf8804279e591d1c35657c9162625135e' into eclair-mr2

* commit '445fb5abf8804279e591d1c35657c9162625135e':
Speedup contact name resolution
445fb5abf8804279e591d1c35657c9162625135e 07-Nov-2009 Tom Taylor <tomtaylor@google.com> Speedup contact name resolution

The first time Messaging is launched, a background thread loads
the conversations threads, which loads the contact info cache. While
this is happening, the ConversationList activity starts and the
first thing it does is clear the contact cache that is being built
in the background. Don't clear the cache if it's currently being
built. Fixes bug 2167799.

Change-Id: Id8a9345caaf7905d1f4bcc18ee45d11cb860d293
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
79014c1c8fb73f261616bbbda7d1d319a8b7cbf7 13-Oct-2009 Tom Taylor <tomtaylor@google.com> Handle low space on startup

Graceful exit out of ConversationList when we try and start up when
there's no storage space.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
67b794480aaad0e1958df2988671b78ea03b76e1 28-Sep-2009 Tom Taylor <tomtaylor@google.com> Don't use auto-requery

The default behavior with CursorAdapter is to do an automatic requery when
the content has changed. This happens on the UI thread and can cause ANR's.
Handle the content change notification ourselves and do a new query asychronously.
Update ConversationList to handle content changes and do a background query,
rather than relying on the auto cursor requery. The rarely used ManageSimMessages
can still do an auto-requery, but it's less likely because we don't write to nor
change messages on the SIM. Also, a different content observer is already registered
to notice SIM changes and update the message list in the background.

Change-Id: I42ac518b315ea55ff6edbe0a912bf60c7f868ea5
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
012970b3d50851d147318527a9a872108b0ab9c7 18-Sep-2009 Tom Taylor <tomtaylor@google.com> Add mobile type

When adding a new contact from the Messaging app, set the
number to mobile.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
dc58429bf08e9d5ba8c43f0ac21e7cd18ea8cb06 16-Sep-2009 Tom Taylor <tomtaylor@google.com> Add start activity flag

When launching external activites (e.g. youtube, contacts, dialer, etc.) from
the Messaging app, use a particular launch flag. When a user goes back to home
from that external app and then back into Messaging, they won't end up in
the external app again.

Change-Id: I5b6158d381e4eac3b6d5c6bfcda97814b2f6d029
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
d9d7479a8c9e10b7b3f39137e28ed0f283e4a257 11-Sep-2009 Wei Huang <weih@google.com> fix memory leak in MMS (bug 2021095); don't rebuild Contact cache and draft cache as frequently.

- fix a memory leak reported by Motorola. We weren't registering a Recycler listener, so weren't getting called back for onMovedToScrapHeap() when done with the ConversationHeaderViews, and thus not exercising unregistration for contacts changed listener.

- moved some tasks from ConversationList.onResume() and onPause() to onStart(). We were rebuilding the draft cache and contact cache in onResume(), which was too aggressive. Also, we no longer rebuild the draft cache anymore. I think it was defensive to do so, and I think draft cache is getting updated correctly in the right places (in CMA.onStop and onNewIntent) so we don't have to to play safe by doing unnecessary work.

- don't register for presence and contacts changed. We don't display presence directly in CMA ourselves anymore, and instead use ContactHeaderWidget, so we don't need to listen for presence changes there; for contact changed observer, I think it's too much to rebuild the contact cache for any contacts changes in the contacts provider. Instead we compromise and rebuild the contact cache in ConversationList.onStart(). This is a tradeoff, as when sitting on the CMA or ConversationList screen, we won't update if Contact changed. However, re-entering ConversationList will trigger the update if there is any.

- beefed up logging a bit more...

Change-Id: I97f1d7eae3ca5d3d069977e2c9fa0d7b0500dc3e
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
3e10898d774b0005fc776865216651346503024b 10-Sep-2009 Tom Taylor <tomtaylor@google.com> Confirm delete locked messages

Allow a user to delete a locked message, but show a different
dialog alert so the user will know they're specifically deleting
a locked message. Also, fix deleting a thread. Use the same code
for deleting a thread as used in ConversationList where we check
to see if the thread contains locked messages and if so, present
a different UI.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
923c4c7e9afb8e364d4a93afa0eb6394485d3637 08-Sep-2009 Dmitri Plotnikov <dplotnikov@google.com> Upgrading to new Contacts email filter APIs.

Also showing avatars for email-based messages.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
a1af734418c5578483f3387e5e0bf6128c963dfa 02-Sep-2009 Tom Taylor <tomtaylor@google.com> Handle SMS Rejected message

Add a receiver to handle the SMS rejected intent. Put up a notification
and take the user the conv list when selected.

Change-Id: Iaebb09d13e0b98b36d2c118328a4c47dad684ec5
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
85fbc94e34688455c3f2f36271ba65b90ceb2542 27-Aug-2009 Tom Taylor <tomtaylor@google.com> Fix delete threads dialog

When deleting a thread with locked messages, show a checkbox that allows
a user to delete even locked messages.

Change-Id: I544fc0188bf9e96af671bd2e4321dba4356ebf81
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
b2de23b71c774412d228d20ff4b941f082df3725 01-Sep-2009 Mark Wagner <mxw@google.com> fit and finish.
1) reorder search in the menu
2) use correct window title in search results
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
475d780550e0034379ed821a90fdbc96d810b72d 26-Aug-2009 Tom Taylor <tomtaylor@google.com> Handle delete all vs. delete unlocked

For the various options of deleting a thread, ask the user to choose
between deleting all messages or just the unlocked ones.

Change-Id: I04c9d7ddc220ec5bb61e0fb487bfd13a1a7aeb66
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
7542864dfb78a58d056e26c9f12e48842324a849 25-Aug-2009 Wei Huang <weih@google.com> bug 1987402: update draft cache when deleting thread/all_threads in the ConversationList activity.

Change-Id: I3eb35169f2ea9c627835b27ba8e45b0195262c8c
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
812391ad832f3fdac054ad3a50af563da16e99b5 25-Aug-2009 Wei Huang <weih@google.com> Add onNewIntent() to ComposeMessageActivity, and add the launchmode="singleTop" to AndroidManifest.xml. Just specifying the intent flag Intent.FLAG_ACTIVITY_SINGLE_TOP doesn't make the activity single top.

(cc: Dianne only for the activity launch mode flags in AndroidManifest.xml)

- the singletop launch mode is needed for the case when we receive a new message notification for the same contact that's on CMA already. If CMA has a MMS draft on screen (but not saved to db yet), not going thru. onNewIntent() would cause the following bad sequence.

- onCreate() would load any draft saved in db, but in this case there isn't draft saved in db yet because we only save draft in CMA.onStop(). So loadDraft() would load the empty draft.
- onStop() on the old CMA activity would now save the in-memory MMS draft to db.
- the new CMA lost the MMS draft that's there before clicking on the notification. But resulting db has the MMS draft, which is now orphaned and not associated with the conversation. From here on out, entering and exiting the CMA for this conversation would not see the MMS draft, but it's there in the part table in db. VERY BAD!

so with onNewIntent(), we can check if the new intent's recipient is the same as the old one, and skip the whole shenanigan.

- add debug logging for draft cache. Changed the log tag for draft cache to "Mms:draft", and CMA to "Mms:compose".
- guard against null cursor returned from Contacts query. Contacts is very flaky right now, and I am getting a null cursor from it all the time.
- reorg logging. Add new LogTag class. Log MMS app logs using "Mms:app" and transaction logs using "Mms:transaction".

Change-Id: I5e12c87ab378ff9b6ff326e136598f64bd423129
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
f766f33b774cfb6dd4100a6522ffa23c0a0dae35 11-Aug-2009 Tom Taylor <tomtaylor@google.com> One-time storage limit check

When running the Messaging app for the first time, specifically the
ConversationList, check to see if we can auto-enable the storage limits
setting. If any of the conversation threads have more messages than
the storage limit settings, show an activity that will tell the user how
to turn on the storage limits. Otherwise, just enable the setting.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
e64a39148677dfae433185af5a63f9a9f8687b48 23-Jul-2009 Tom Taylor <tomtaylor@google.com> Fix a monkey crasher

The monkey is apparently able to click an empty listitem
or one that gets deleted immedately after the click. Protect
a couple of methods from trying to build a conversation out
of an empty cursor. Bug 1995821.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
07ce1878a36d2df1707dd4bbd9cd7235679bdc94 16-Jul-2009 Tom Taylor <tomtaylor@google.com> Fix a problem with drafts

This is a fix for bug 1973603. If you go into SMS from contacts and create a draft
and in the meantime receive a message from that same contact, we'd crash in the
conversation cache trying to add the new conversation. This crash occured because
the draft conversation wasn't getting cleared out of the cache after thread was
deleted on disk. Since conversations in the cache are "equal" by recipients, the
incoming recipient matched the stale conversation in the cache. It gets even more
tricky. Bottom line: anytime a thread is deleted from the database, the equivalent
conversation has to be removed from the cache.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
331864544ec51ba6807fc5471cc6d537b7fef198 08-Jun-2009 Mark Wagner <mxw@google.com> add search capability
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
95817b166d415114bac89ca0946c3717ae229526 06-Jun-2009 Tom Taylor <tomtaylor@google.com> Fix bug 1794914: Message not downloaded notification leads to "compose message" UI.

With this change, the thread id gets correctly passed in extras so ComposeMessageActivity
knows to load the thread. Also, added code to be able to detect and dismiss the notification.
Otherwise, the notification would stay up forever.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
71bbae69cee0da902032743d0702e283cfe31504 28-May-2009 Ficus Kirkpatrick <ficus@android.com> Fix a race condition in Conversation.get().

Missed entering a monitor on the cache when doing a get-or-create
operation.

Also remove a bunch of trailing whitespace and some dead code.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
33a87f96f8c625aa10131a77a3968c97c4ec5a62 27-May-2009 Ficus Kirkpatrick <ficus@android.com> Remove all references to ContactInfoCache except those in Contact.

This is in preparation for moving the database logic from ContactInfoCache
into Contact and removing the old cache.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
20b79e068c8aebff46f24fd3803cf7697df4eac4 27-May-2009 Ficus Kirkpatrick <ficus@android.com> Remove RecipientList, whose functionality has been subsumed by ContactList.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
1d98ae0b203e01034ddead4214d1520ce863a23b 22-May-2009 Ficus Kirkpatrick <ficus@android.com> New data model for contact information.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
70c73e05a792832aa28da751cdaf3fa83a7b8113 23-Apr-2009 Ficus Kirkpatrick <ficus@android.com> Begin moving all conversation data behind a data model with a cache.

Remove some unused code like the stale concept of "common threads" vs.
"broadcast threads", old references to search, etc.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
cb5481d8b2a15ba206520b76a48bca140bc9efdc 22-Apr-2009 Tom Taylor <tomtaylor@google.com> Fix bug 1734302: Auto refresh of Contact names fails.

Need to invalidate the id->address cache in the adapter when a contact
changes. The old phone URI registered with the content resolver didn't
seem to be the right one. The observer's onChange never got called when
adding/deleting/changing a contact. I changed the uri to People.CONTENT_URI
and now onChange is getting called appropriately. Could this account for
missing presence updates?
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
48da875f1beea835c6771977e5bd8a9aa3d4bc10 13-Apr-2009 Tom Taylor <tomtaylor@google.com> Begin adding UI unit tests to the Mms app.

Start with a couple preliminary tests and go through the GIT workflow.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
e995b84b783c4a430bf3899372a337cc9c896b38 17-Apr-2009 Ficus Kirkpatrick <ficus@android.com> Scrub the MMS app for dead code.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
66dde9460badebf8e740275cabde9cca256006eb 16-Apr-2009 Ficus Kirkpatrick <ficus@android.com> Stop requiring a Context to be passed in to ContactInfoCache.

It already has a perfectly good one sitting around in its instance.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
ab6141d9c98f1a6024fac52fe3c897076d8549c0 16-Apr-2009 Ficus Kirkpatrick <ficus@android.com> Add a new Conversation class for protecting access to conversations/threads.
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
955c0f019e90703bae311f31af18631764a8ba60 09-Apr-2009 Tom Taylor <> AI 145481: am: CL 145459 am: CL 145075 Fix bug: 1774564 - [Top10-VF-10667] "Name" field gets clobbered when adding phone # or e-mail address to existing contact from SMS app.
When creating the intent to Add a contact, we'd pass the number or email for the name in the intent, so the name field would get filled
in when the user chose "Add contact" in Contacts. Unfortunately, that had the unintended side-effect of replacing the name when a user
chose to associate the SMS/MMS info with an existing contact. With this simple change, the code no longer tries to pre-populate the
contact name.
Original author: tomtaylor
Merged from: //branches/cupcake/...
Original author: android-build

Automated import of CL 145481
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
27c3ed4432d0acc92919aabd269b115f54a42268 28-Mar-2009 Ficus Kirkpatrick <> AI 143353: am: CL 143202 am: CL 142984 Don't cancel failed message notifications from ConversationList.
They will (and should only be) cancelled from ComposeMessageActivity
when the failed message has been reviewed by the user.
Original author: ficus
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143353
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
59cd1f499645badf8df9e2820b29d28fc1835e79 28-Mar-2009 Ficus Kirkpatrick <> AI 143325: am: CL 143175 am: CL 142882 Rework the way ConversationList interacts with its adapter.
Stop caching its cursor, stop making an entirely new adapter with every query. Hopefully
fixes the long-lurking HeaderViewListAdapter crash.
Original author: ficus
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143325
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
598ca14f5d7d26d6d5125d8fe0d07e50f066ff98 28-Mar-2009 Ficus Kirkpatrick <> AI 143315: am: CL 143166 am: CL 142862 Allow anonymous (recipientless) draft messages to be saved when we have no choice but to
either save the message or throw it out and can't give the user a choice with a dialog.
More aggressive refresh of draft cache to catch cases where the thread ID may have changed.
Avoid losing track of proper MMS state in image attachment add failure on resize.
Original author: ficus
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...

Automated import of CL 143315
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
b530437ceaad97151be691067191f48e1e93b87e 25-Mar-2009 Ficus Kirkpatrick <> Automated import from //branches/master/...@142742,142742
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
19be5b3fbe66749f6bc030c9776936b0602ed62f 25-Mar-2009 Tom Taylor <> Automated import from //branches/master/...@142741,142741
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
07e7775d5a792334b89436bf5479bfd5abeeb8c4 25-Mar-2009 Ficus Kirkpatrick <> Automated import from //branches/master/...@142058,142058
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
1bb6975b0a9a5a4b38aef689305b1e7eb5b61b08 25-Mar-2009 Tom Taylor <> Automated import from //branches/master/...@141950,141950
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
7d3e1caa6000b0bbab0716b1815c2c7177d67948 25-Mar-2009 Tom Taylor <> Automated import from //branches/master/...@140862,140862
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
5d2d0046ada7b53205e537d8675d32a8785e8d1d 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@140373
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
591d17e9a51bb9f829d6860dc7aa0bad25062cd5 13-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@138607
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
72b7fda4ff5e94ba1a13c41601ac1cd61c0d6663 09-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@137197
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
72735c62aba8fd2a9420a0f9f83d22543e3c164f 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
892f2c5bf965b1431ae107b602444a93f4aad4a3 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
153ae99e0a7d626a24d61475eeb133249deb448c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
abd7b2d90f7491075f1daba4b4cccdfc82f8ddd1 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
121083d1d2046ec3f7c50c19366303c797833a4a 20-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132569
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
59d72c57ce9c319b6cd43ce2ab36b7076c9e821f 19-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@132276
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
44cea74dc55e2459262d0d765ef4a69267dd09b0 13-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@131421
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
61c5973c3cda88d614b5c8491982f1d3c3ded897 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
1a4b3a26659d034b9df52fc6a0e184cffe7451ae 20-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127101
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
e82e62f94d4ba4ac139faf055f40fbbc2b99b551 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
0f236f55349f070ac94e12cca963847173393da8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java
8eed706474910ccb978acda03e85d3261037da6e 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/packages/apps/Mms/src/com/android/mms/ui/ConversationList.java