a31f51757729c398165682f3107aa17a6e03eb94 |
|
30-Jan-2013 |
Bin Li <libin@marvell.com> |
Send mms read report if it is required. Change-Id: I35be42545f000c51ebe71444ab591c42b33160cc Signed-off-by: Bin Li <libin@marvell.com>
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
8cc338d324dc4c92b686029064882147e9054f17 |
|
18-Oct-2012 |
Tom Taylor <tomtaylor@google.com> |
Empty draft created on deleting a group MMS message Bug 7360609 Don't save an mms draft for a group message when there's no text. When the last message in a thread is deleted, automatically go back to the ConversationList. Earlier when my deletes were failing because of the NULL threadId in the pdu table, I noticed an exception thrown from Conversation.startDelete: "startDeleteAll already in the middle of a delete". startDelete was being called in a loop and of course sDeletingThreads would be true if the delete hadn't completed in between iterations. Fix by having startDelete do all the deleting of multiple threadIds. Change-Id: Idfb8c0d54d8bb1875bbe7c5163e75bbb0dfbf14d
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
ff3e6009a8180701d8f344f9c128c79610e8bcfb |
|
11-Oct-2012 |
Tom Taylor <tomtaylor@google.com> |
"No Subject" string is different for incoming and outgoing MMS Bug 7328074 One line change to "cleanse" the subject snippet for the conversation. Change-Id: Ia08c65550b4ae53a5bb17bf87c3f78ec6a93045e
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
d2f67cfca13a6e415636dc253c371fb76974f5fa |
|
03-Oct-2012 |
Tom Taylor <tomtaylor@google.com> |
STOPSHIP: Turn off MessagingNotifications DEBUG flag Bug 7131792 Undo the debug logging of several CL's. The debug logging tracked notifications, setting the active thread, creating threadIds, and deleting threads. I left four debug messages active in the log: 1) cancel notifications, 2) create a new notification with sound, 3) an sms message was just received, and 4) a new mms message was just received. After debugging various notification oddities over the last few weeks, those four messages will allow us to continue to track notifications without a lot of log spew. Change-Id: I96b599658432fa98f1f06df0d9113449c615dc2a
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
d645c8b53ae904bc059ee1ca7232916637c223e5 |
|
25-Sep-2012 |
Tom Taylor <tomtaylor@google.com> |
Notifications ring many times Bug 7190093 markAsRead() was causing multiple sound notifications. The code for playing a half sound notification needed to check whether one of the outstanding notification was actually for the focused conversation. I'll add this CL to the list of CL's to turn off logging in. Change-Id: I84ddc2434630ee60f2eabc273d40195c95cd6061
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
74edcd117fce5097b2eee4e7b3260203257e7959 |
|
20-Sep-2012 |
Tom Taylor <tomtaylor@google.com> |
Merge "SMS delete behavior odd" into jb-mr1-dev
|
fef537959e6beb02279e4994934ec88df080846f |
|
20-Sep-2012 |
Tom Taylor <tomtaylor@google.com> |
SMS delete behavior odd Bug 7175606 Add more logging to see if we're trying to create a thread during delete. Change-Id: If39845c370fd15a7641dc36db074ff0ef6b19c85
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
c6be7e1a81769764ce0b51ce03406ad96944d8e5 |
|
19-Sep-2012 |
Tom Taylor <tomtaylor@google.com> |
Notification beep sounds every time I open a previously viewed SMS Bug 7192246 Bug 7117451 Only beep it there are outstanding notifications. Also, there was a race condition between receiving an sms and putting up a notification and the conversation getting marked as read. Change-Id: Ib3050582cbcef2986214fcb82c8c64aa9948211f
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
bc7f97ae7d3661a44211d404fe4e187c35afadce |
|
18-Sep-2012 |
Tom Taylor <tomtaylor@google.com> |
Notification goes to new message instead of existing thread Bug 7169881 blockingUpdateAllNotifications() gets called from Conversation.markAsRead(). markAsRead gets called often, on every DB change (see CMP.mDataSetChangedListener) and on every user interaction (see CMP.onUserInteraction()). The call to blockingUpdateAllNotifications() wasn't passing in the threadId. As a result, the code would build a notification for an incoming message even though CMP was looking at that thread. This caused the messaging notification icon to flash in notification bar as notification were created then quickly dismissed. This change fixes that by not creating notifications (other than a soft beep) for incoming messaging on the thread the user is looking at. It also fixes the empty notification that would take the user to a new conversation. Change-Id: Ic0177cdd05d198abc85eae9077688c360573c879
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
01303749a722c0e8c8be740166bf4858c12eb7ec |
|
09-Sep-2012 |
Tom Taylor <tomtaylor@google.com> |
Old thumbnail shown Bug 6602473 When a message is deleted, remove the uri from the pdu cache. When a thread is deleted, clear the pdu cache. Change-Id: Idb4476c35271180f4faca0f8dbaefd5cff8b8fac
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
d64419030e1fec1e751695dab3bd7236e2fb0214 |
|
02-Aug-2012 |
Roger Chen <cxr514033970@gmail.com> |
Clean and format all imported packages Change-Id: I2e45f5ba1d56b9b17314a8b0f4c0fc1a5d8fc4d9 Signed-off-by: Roger Chen <cxr514033970@gmail.com>
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
7b6fe946f2e1020432e3600c8863f72449cd4e68 |
|
16-May-2012 |
Tom Taylor <tomtaylor@google.com> |
Old thumbnail shown Bug 6490001 DO NOT MERGE hen a message is deleted, remove the uri from the pdu cache and clear the thumbnail cache. When a thread is deleted, clear both the pdu and thumbnail caches. Change-Id: I361d48fe5430cbf9885656e2fe91ee2f566a25b9
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.java
|
49e599163acc3200e9bda4fb7825c041b67960f1 |
|
13-Jan-2012 |
jshin <jgsin@samsung.com> |
Fix for Arabic digit issue in MMS app. Change Arabic and other Unicode digits to ASCII digits. bug: 5615791 Change-Id: I22b32aabf3433df6381451bb4989812344e84d6c Signed-off-by: Jake Hamby <jhamby@google.com>
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
fd36e337347b5f9a945806961d61f1c0b8b3514e |
|
06-Apr-2012 |
Tom Taylor <tomtaylor@google.com> |
Notifications do not dismiss Bug 6298996 A line of code got eliminated in Conversation.markAsRead(). Fixed! Change-Id: I528930f5dd8424147d97aa0ad3da9bf0590a8f28
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
a56495caea392de00eea50fb84ffdc06537110ba |
|
03-Apr-2012 |
Tom Taylor <tomtaylor@google.com> |
Multiple Recipient Failure in MMS Bug 6062623 The following command fails: adb shell am start -a android.intent.action.SENDTO -d “sms:+15178923456,+15174356789?body=MessageText” The app needs to replace commas with semiscolons. Change-Id: I2c5c349065079f0dcbb12817fec5fe6d3b1a85df
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
6a53d30825817a8e70a3da0e591449377306959a |
|
29-Mar-2012 |
Tom Taylor <tomtaylor@google.com> |
Messaging App crashes/phone becomes unresponsive Bug 6175605 Threads were getting created out of control. Greatly simplify markAsRead and associated code. Use an AsyncTask (which uses a thread pool) than a bare naked thread. Change-Id: Icd1b56a36f45c5d47f30d071fb967b3dca8a6c9b
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
c7aa632be8e7d3ebe71f236f534ea2f0af71e04a |
|
19-Mar-2012 |
Tom Taylor <tomtaylor@google.com> |
Add a widget for SMS/MMS Bug 5935857 Change-Id: I1246487d974fef9de0f26e7b55fad2a940b084d5
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
8112b6847de98297068915e7d95a87a8dc842c64 |
|
17-Mar-2012 |
Todor Kalaydjiev <todor@google.com> |
Run ContactsCache's worker thread at a lower priority. Same with the thread that marks all conversations as seen. This gives us another 30% improvement in the remaining startup time. Needed for b/5928517 Change-Id: Ia06eb30d4c320e3eb43133658a9a1f0475e9abad
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
ff013e77fd2e30fe98f8935ae04802a2b7fbf714 |
|
16-Mar-2012 |
Todor Kalaydjiev <todor@google.com> |
Do Conversation.init in a low-priority thread. This alone gives us an improvement of about 30% in startup time on Crespo. Needed for b/5928517 Change-Id: Ib6382a3772c11c3fceda51ca7a6f058ce2dd28f9
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.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/data/Conversation.java
|
b6b2ee07c9261504376401070fcfdf09879e7eeb |
|
31-Oct-2011 |
Tom Taylor <tomtaylor@google.com> |
PduBodyCache.getPduBody cache not cleared Bug 5526870 The PduBodyCache was never getting cleared. If you deleted a message and then added a message and they had the same id, we'd return the old pdu of the deleted message. It turns out that the PduBodyCache is redundant because the pdu is already getting cached at a lower level in the PduCache. Make sure we delete the cache entries associated with individual messages and threads when those messages and threads are deleted. While stepping through the change in the debugger to verify it, I found that the new temp file names that start with '.' stripped the filename incorrectly. Change-Id: Ice4e453470eb1186ea69ebe6eca750bb230c5205
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
7a063cb79843369325645ce059ec0f4676e0ca83 |
|
25-Oct-2011 |
Tom Taylor <tomtaylor@google.com> |
Turn off database log dumps Bug 5512341 If we run into a recipient inconsistency while sending, log it but don't dump the user's database into the log. Use a direct method when printing out the db. The nice LogTag functions use format and if any of the strings have format characters, this causes a crash. Change-Id: I597c1b7ac72b346b3b8b3b05843132c243c6fd6d
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
5a9381876ce766cc761c3e6ed2ea9a67e19bd716 |
|
13-Oct-2011 |
Tom Taylor <tomtaylor@google.com> |
Sound name on slides not getting updated Bug 5446866 The name of the sound on a slide wasn't getting updated on any slide past the first. Also, change a bunch of LogTag.debug calls back into Log.d calls. The LogTag.debug calls were crashing when a recipient name contained formatting characters such as & or (). Change-Id: Icfe3703d0d84ffb4f10090a59a9fcd994bf62b52
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.java
|
b736686638eca62aa89cb15184711ef38413cb3e |
|
28-Sep-2011 |
Tom Taylor <tomtaylor@google.com> |
SMS messages being delivered to wrong contact Bug 5319828 Last ditch escape hatch at detecting an sms being sent to a wrong contact. From what we've seen of a database where sending to the wrong contact had taken place, the in-memory Conversation cache had the correct threadId, but the wrong recipient. With this change, we do two checks to verify that the recipients for a particular thread match the recipients associated with the thread in the database. Change-Id: I8f7c194243e6da093461c1aaae4119f05390582d
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
c1342c003f027f564b44b4f4f93d6a6e780aa1c7 |
|
18-Sep-2011 |
Tom Taylor <tomtaylor@google.com> |
SMS messages being delivered to wrong contact When we observe the conversation cache is out-of-date, update the conversation in the cache. Also, fix a bug removing an attachment. The old pdu wasn't getting deleted. Bug 5319828 Change-Id: I46dbc698a76d4f8bc8fe2a93a967df410a4f557a
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
fcca7b38fcc90a781f1507a0a135a64e3ae8f6d8 |
|
14-Sep-2011 |
Tom Taylor <tomtaylor@google.com> |
Attached picture is not saved in drafts when a received message is opened from notification bar Our mConversation.sameRecipient() code didn't work on uri's from notifications that contained a threadId instead of a number. Therefore, an incoming message never matched a new draft that had a threadId of zero, even when the recipients matched. When we decided a conversation matched, the code didn't update itself or the working message with the updated conversation that has a valid threadId. Bug 5250265 Change-Id: I6c97d5c53cf75d97b652b7635020c2cb30855761
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
836c85f29abef77ebca6185cd5f537c166074b35 |
|
02-Sep-2011 |
Tom Taylor <tomtaylor@google.com> |
NPE at com.android.mms.data.Conversation.cacheAllThreads NPE in printing an error message in an unusual situation. Bug 5249850 Change-Id: I15fc275bcf336838018dd21b3a1a2a9e95c5e7d9
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
10ca1d3969305df50fb07a17f5d23b0ed59f7868 |
|
31-Aug-2011 |
Tom Taylor <tomtaylor@google.com> |
Lots of visual tweaks to ConversationList Draw vertical rules around items. Move attachments to the bottom of the message. Use new divot from Talk. Bug 5151145 Change-Id: Ib04ff0105990baab990137cd72eabf3d4399aebf
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
d4e997a8f0e03688143d1a50b381c6f363a204ca |
|
22-Aug-2011 |
Tom Taylor <tomtaylor@google.com> |
Tweak debug code Direct users to send bug reports to buganizer. Only dump 8 chars of the message. Only dump the last 20 messages. Change-Id: I65c9d632c50397f39050ab1e3f53eda4ac304186
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.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/data/Conversation.java
|
6d38b19aa9aef46afa855187f23e44d4c06f8878 |
|
11-Aug-2011 |
Tom Taylor <tomtaylor@google.com> |
Add new send sms intent Add a new intent to send an sms message without any UI interaction. Presently, the Messaging app can already respond to intents with the android.intent.action.SENDTO action, but this brings up the ComposeMessageActivity primed with a destination and message. It's up to the user to review the message and hit send. This new intent will send the message to the user without the user seeing the compose screen and having to hit send. Apps could already send sms's by talking directly to the SmsManager. Using this new intent, however, has the benefit of adding the outgoing message to a thread so the user will be able to see what was sent. In addition, sending a message via the Messaging app compare to the SmsManager will add automatica retry when there's no connection, etc. This new feature could be used by the phone app so the user could easily respond to an incoming phone call by sending a canned sms that reads, "I'm busy, but I'll call you right back." A caller of this new intent must have android.permission.SEND_SMS_NO_CONFIRMATION. An accompanying CL adds the private permission to the framework. An included test app tests the feature. Bug 4563486 Change-Id: I9292ea6d52e135cdabcfe68091d4d24d15524c97 Signed-off-by: Tom Taylor <tomtaylor@google.com>
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
c06913a292eba0dc9c17ca312f837f009b8e46f5 |
|
03-Aug-2011 |
Tom Taylor <tomtaylor@google.com> |
Blank messaging thread is displayed after locking/unlocking the screen The conversation was getting wiped out because the message count in the conv was 0. Bug 5088276 Change-Id: Id1af5e862eb7679bfc0328134d61c1949fe08f3c
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
85d5c5d852355248b98c43305bd950b432754755 |
|
03-Jun-2011 |
Ben Dodson <bjdodson@google.com> |
am 4f28ef33: am 59249b63: am 1149674a: Improved support for rfc 5724 * commit '4f28ef33ca021f8560b50e90427e0c3b67a05c9a': Improved support for rfc 5724
|
1149674a2a3c13c7b3b41e5057880e011a45b4b4 |
|
19-May-2011 |
Ben Dodson <bjdodson@google.com> |
Improved support for rfc 5724 Change-Id: I0b8a07de4af64173ef431ade3bf2dca6c4fb9ba6
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
b51ea8318ca2e4019b666d938e3e7efdf6e643b3 |
|
13-May-2011 |
Tom Taylor <tomtaylor@google.com> |
Multi-select conversation delete Change-Id: I78748c9881733caea18239e4bd807e7a0c2ae4bf
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.java
|
e2986af492c30ad92c96bcb7adf8092d4d948565 |
|
27-Apr-2011 |
Tom Taylor <tomtaylor@google.com> |
Add a test case for creating thousands of conversations The test case found a bug. The conversation cache's delete function wasn't synchronized and resulted in a ConcurrentModificationException while looking up an existing thread. Change-Id: I668361e457df3ab4ca4bdc527c4872b014bb370d
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
ef1e257cbaa7f7085eda3a9b075eca79075aab89 |
|
12-Oct-2010 |
Wink Saville <wink@google.com> |
Remove some PII. Change-Id: I846866881d79b985ea0bc6fa647f8e7a38e63a9b
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
6bbfd941885c588cc5d94e345d2cfc4197134a19 |
|
23-Apr-2010 |
Tom Taylor <tomtaylor@google.com> |
Fix unread notifications Reading one thread would mark all messages read. The expression read=0 OR seen=0 was getting combined with the thread_id in the provider like this: read=0 OR seen=0 AND thread_id=N, which was evaluated as read=0 OR (seen=0 AND thread_id=N). The expression needs parens so it will get evaluated correctly. Bug 2615680 Change-Id: Ib495a74e41346b835a576a8d6d53e809b839f93d
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
e14b79584cca1bf7ba60c53bd7e3d6386adbfc59 |
|
09-Apr-2010 |
Wei Huang <weih@google.com> |
bug #2582343: attempt to fix the sticky notification bug. - when going to the compose screen, we query to see if there are unread messages, and if so, update both read and seen columns to 1. So in the chance that read=1 and seen=0 (not sure how that can happen), we wouldn't update seen to 1. change the query to check for (read=0 OR seen=0) instead of just (read=0). - add selective verbose logging in case this isn't the real fix. Change-Id: I978ba3a83be227cd924d0c4c85d090bf42be1c8d
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
09a75ac1d3710e60dbe78ead3dee6863ffb380ca |
|
08-Apr-2010 |
Wei Huang <weih@google.com> |
bug #2438230: more logging for Conversation and Recipient cache. - add more logging to try to catch the mismatching contact/thread bug. - add selective checking to make sure thread id and recipients are not compromised. Change-Id: I038dca4f7b32bf822ef68e344c7a6eaf8990e328
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.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/data/Conversation.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/data/Conversation.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/data/Conversation.java
|
6a78e60e584cb440c63198b87f8aba6b4c07f8ca |
|
03-Mar-2010 |
Tom Taylor <tomtaylor@google.com> |
Don't delete draft unless we need to Don't even look for a draft unless the conversation says we've got a draft. Don't delete the draft unless the draft is the only message in the conversation. Excess drafts will get deleted at send time (or in various other places where we save the draft or discard). Fix one of the Conversation constructor's to use the cache. Otherwise, ConversationList activity was updating all the conversations, but all the other activities were retrieving old conversations from the cache. Bugs 2483022 and 2329323.
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.java
|
436042159134e8ecbc57097340a5bd81f2912574 |
|
27-Feb-2010 |
Tom Taylor <tomtaylor@google.com> |
Avoid unnecessary DB updates Making database updates at the same time we're trying to read the list of messages in a conversation causes any further queries to block until the updates are complete. This results in taking a long time to display a new message when the user selects the sms notification. With this change, we block marking a thread as "read" until we've completed the query for a conversation's list of messages. Also, every delete causes several DB updates inside the provider. We can avoid one of these deletes that causes so many updates if the thread has no drafts. Now responding to a new message notification only results in two updates (one to the sms table and one to the pdu table) and that happens after the messages are loaded. Bug 2467382. Change-Id: I2a78023e3ba7dee72c110d2023f4c79b1b816565
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.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/data/Conversation.java
|
5163798dea35fb12fa7892120d39605a1f3c175e |
|
01-Dec-2009 |
Tom Taylor <tomtaylor@google.com> |
Fix conversation loading After loading a thread with an exact set of recipients, the code called setRecipients() which resets the threadId to zero. As a result, a new conversation was created and displayed, rather than the existing conversation with all of its messages. Fixes bug 2284007.
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
e692b9dcf5742e7a3ef3a7e64b44bb9d08f05b57 |
|
01-Dec-2009 |
Tom Taylor <tomtaylor@google.com> |
Don't load contacts on UI thread There's a route through a Conversation constructor that will result in the conversation's contacts getting loaded on the UI thread. Add an explicit "allowQuery" parameter to give callers the ability to throttle this behavior. Fixes bug 2280762.
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
e37a39111cf1e43107308e607c1c955989887c40 |
|
18-Nov-2009 |
Wei Huang <weih@google.com> |
clean up synchronized block usage.
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
715e32f97bd9d8ce4b5ba650b97ba4b137150456 |
|
18-Nov-2009 |
Tom Taylor <tomtaylor@google.com> |
Fix ANR from calling Contact.get() The Contact.get() API allows the caller to specify whether the operation can block (looking up contact info in the DB) or not. There are about 10 places where various callers were passing "true" to canBlock, all coming from the UI thread. We've previously fixed Contact.get() to always return a Contact, with the number filled in, even if we don't have the contact in the cache. With this change, never block the UI thread getting a contact. The worst side-effect should be showing a number, instead of a name. Fixes bug 2265631.
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
5544f47dbe1ffd4af73b9b9dde0e35cd257cd795 |
|
10-Nov-2009 |
Tom Taylor <tomtaylor@google.com> |
Fix ANR deadlock When the Mms app starts up, Conversation starts a background thread to load all the conversations into a cache. It had a lock on the cache. Meanwhile, the ComposeMessageActivity started up and tried to load its conversation, but was blocked and eventually ANR'd. Make the sync lock cover a much smaller scope and don't hold the lock during the slow operation of looking up the contact info. Also, remove the unused SuggestionsProvider. It was causing the Mms app to spin up needlessly. Fixes bug 2220565. Change-Id: I0f8260338a5368dc4b8ef11249361ca0716a2887
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
fae5cfc585e0a68ed7ed62909bb83abf53212aef |
|
09-Nov-2009 |
Wei Huang <weih@google.com> |
bug 2248168: populate the recipient field when texting from the fast track. - need to call Conversation.setRecipient() when creating a new Conversation object.
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
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/data/Conversation.java
|
67ec6c54e11c19caf894b4ffce7250fb3fd96d30 |
|
06-Nov-2009 |
Wei Huang <weih@google.com> |
bug #2236553: catch NPE thrown by SmsManager.sendMultipartTextMessage(). - need to catch the NPE and deal with it, like clean up and delete the queued message. Otherwise we not only get a crash in the app, but the queued message would keep getting retried, therefore grow the conversation thread everytime it retries. - also catch a RuntimeException when we try to insert an existing conversation into the Conversation cache. That caused an app crash too! Change-Id: Iba081955e19d7a5eb517c3a3aea5186534787c15
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
56e77a576e452f26da6941f01746435fe4b3011b |
|
05-Nov-2009 |
Wei Huang <weih@google.com> |
bug #2236535: when entering MMS compose screen via an address in an intent, replace the matching contact cache with the intent address. - this is basically another path in which we have the actual dest address (in the intent). When the compose screen finds the matching cached contact, it should replace the contact's address with the specified address in the intent, in case the cached contact has a bad address. Change-Id: Id55500e212df5dcd47ff7a1858bc99d4b4656df1
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
25b939e5a7ecb1e0879b684dc5bc55183cf468b4 |
|
04-Nov-2009 |
Wei Huang <weih@google.com> |
bug #2236535: use an initial bad address (from a merged contact) would lead to permanent failure for the messaging thread even after a good number is used. - when the user selects/types a new number in the recipients editor, and we find a cached contact, set the contact's number to be the newly selected number. This will allow the user to correct the address, at least until the next time MMS rebuilds the contact cache with the bad number stored in the database. This will get us to par with the Cupcake behavior. Unfortunately, after MMS app is relaunched, the thread would use the bad initial adddress again (loaded from the 'canonical_address' table in the db). That's a much harder, riskier fix, so deferring to later. Change-Id: If32958482b14848bd770cff50e4736457c47ac8a
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
d62ef06699b3ca5048c5642bd50300e9a2eb04a1 |
|
23-Sep-2009 |
Tom Taylor <tomtaylor@google.com> |
Fix draft bug Fix a special case of working on a draft and then getting a new intent for that same draft. Recognize we've got the same conversation rather than trying to save the draft and reload the same draft. Add more logging to Conversation and WorkingMessage and move the common logging code into LogTag. Change-Id: I1388967f3f2e7520e08730036243f958574a6001
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
13dbe96fc54f9b7190fd415d737f9a56dc409d10 |
|
23-Sep-2009 |
Wei Huang <weih@google.com> |
Fix bug #2100169: include the from address (line1 + "/TYPE=PLMN") when sending a pdu. Change-Id: I212a03b963ae868d7d69e3841e6a88ab7217b2e3
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
6cba8248f3e41921b03cc74a823a6347016e69ba |
|
11-Sep-2009 |
Tom Taylor <tomtaylor@google.com> |
Fix monkey crasher If the monkey sends an intent with uri to a non-existing thread, the messaging app would crash.
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.java
|
59be3105fb43b5e9fcb363981dfa3de31c1bc2a8 |
|
26-Aug-2009 |
Wei Huang <weih@google.com> |
support intent extra parameter "address" for launching ComposeMessageActivity. If the intent has no "thread_id", and doesn't contain a data uri, then look for the "addrss" field. - this is to support testing of adb shell am start -a android.intent.action.VIEW --es address <number> --es sms_body <body> -t vnd.android-dir/mms-sms Change-Id: I38c0dff2f0cc20ba0a0dbafdb17660c5eacb4b49
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.java
|
5893069282b516db7da5e16eef051cd02508eb2a |
|
30-Jul-2009 |
Tom Taylor <tomtaylor@google.com> |
Fix a notification bug. Marking a conversation as read wasn't clearing the notification. The conversation's cached "read" state didn't match that on disk because newly received messages don't update the conversation's state. Now we always mark a conversation as read and always update the notification state.
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
baf7fec7d1a5b8d52ae7be04865f9e869742c261 |
|
27-Jul-2009 |
repo sync <dxn738@motorola.com> |
SMS to own number creates two threads and crashes Send an SMS from a test phone to itself (say the number is 9243176013). A thread gets created. But when this SMS gets received (of course from the test phone itself), the number gets received as '09243176013'. And one more thread is created. But in the conversation list, 2 threads are shown with the same number (9243176013). When it is tried to add this new conversation thread to the cache, it throws an Exception which is not caught. From this time onwards, everytime we launch Messaging, we keep getting the Uncaught Exception, and the application closes. To fix, in Conversation.java handled the exception by catching it from wherever this function is called. In files Conversation.java and SmsReceiverService.java did changes to consider 9243176013 and 09243176013 as a same 'from address', so that only one thread id gets created.
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.java
|
338855e07bb9c998705d4e6680f696888ca3d0e5 |
|
15-Jul-2009 |
Tom Taylor <tomtaylor@google.com> |
Read a long instead of an int Thread ID Bug 1973603 is throwing an exception when adding a new conversation. Immediately before, the code checks to see if the conversation exists, by thread id, and if not, creates and adds the new conversation. I'm not able to duplicate the bug, but found a problem where we're reading the threadid as an int, rather than a long. Also added the threadid to the exception so we'll be able to look at the database.
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
d0480376fabb519abb703acb42209d2e0d9dfa7a |
|
24-Jun-2009 |
Madhav B <ridhishguhan@motorola.com> |
Changes to stop locked messages from getting deleted Specific list of changes that are made as a part of this patch are: 1. When a user tries to delete a locked message. The locked message doesn't gets deleted and it pops a toast that locked messages cannot be deleted. 2. When a user tries to delete a thread containing locked messages. Only the unlocked messages present in the same thread are getting deleted. The locked message which are part of the thread are not deleted.
/packages/apps/Mms/src/com/android/mms/data/Conversation.java
|
926da0d5c27e8d0e4246ea975c2226b83a81a5d3 |
|
29-Jun-2009 |
Tom Taylor <tomtaylor@google.com> |
Fix bug 1930462: Draft message disappears in Conversation List when editing a draft. When a user creates a draft and then backs out, a thread is created for the draft. When the user re-edits the draft, the thread is deleted after loading the conversation. When the user backs out again, we still have a valid threadId (but no actual thread) and the message is saved without a corresponding thread. The fix is simple. When the thread is deleted, the threadId has to be reset in the Conversation to match. Then when the user backs out again (or in any other code path, e.g. send), the thread will get created.
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.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/data/Conversation.java
|
1d98ae0b203e01034ddead4214d1520ce863a23b |
|
22-May-2009 |
Ficus Kirkpatrick <ficus@android.com> |
New data model for contact information.
/packages/apps/Mms/src/com/android/mms/data/Conversation.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/data/Conversation.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/data/Conversation.java
|