Eliminate ghost thread when all messages deleted in a thread.

Fixes #2262
Closes #2842

// FREEBIE
This commit is contained in:
Rhodey Orbits
2015-03-31 13:36:04 -07:00
committed by Moxie Marlinspike
parent dbc28746c0
commit 9ba19df2af
5 changed files with 28 additions and 10 deletions

View File

@@ -482,13 +482,14 @@ public class SmsDatabase extends MessagingDatabase {
return cursor;
}
public void deleteMessage(long messageId) {
public boolean deleteMessage(long messageId) {
Log.w("MessageDatabase", "Deleting: " + messageId);
SQLiteDatabase db = databaseHelper.getWritableDatabase();
long threadId = getThreadIdForMessage(messageId);
db.delete(TABLE_NAME, ID_WHERE, new String[] {messageId+""});
DatabaseFactory.getThreadDatabase(context).update(threadId);
boolean threadDeleted = DatabaseFactory.getThreadDatabase(context).update(threadId);
notifyConversationListeners(threadId);
return threadDeleted;
}
/*package */void deleteThread(long threadId) {