use Loader when conversation is updated instead of requery

// FREEBIE
This commit is contained in:
Jake McGinty
2014-09-24 13:54:56 -07:00
parent f3f173f653
commit a88fbba49f
6 changed files with 108 additions and 23 deletions

View File

@@ -2,26 +2,24 @@ package org.thoughtcrime.securesms.database.loaders;
import android.content.Context;
import android.database.Cursor;
import android.support.v4.content.CursorLoader;
import org.thoughtcrime.securesms.contacts.ContactAccessor;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.util.AbstractCursorLoader;
import java.util.List;
public class ConversationListLoader extends CursorLoader {
public class ConversationListLoader extends AbstractCursorLoader {
private final String filter;
private final Context context;
public ConversationListLoader(Context context, String filter) {
super(context);
this.filter = filter;
this.context = context.getApplicationContext();
this.filter = filter;
}
@Override
public Cursor loadInBackground() {
public Cursor getCursor() {
if (filter != null && filter.trim().length() != 0) {
List<String> numbers = ContactAccessor.getInstance()
.getNumbersForThreadSearchFilter(filter, context.getContentResolver());

View File

@@ -2,23 +2,20 @@ package org.thoughtcrime.securesms.database.loaders;
import android.content.Context;
import android.database.Cursor;
import android.support.v4.content.CursorLoader;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.util.AbstractCursorLoader;
public class ConversationLoader extends CursorLoader {
private final Context context;
private final long threadId;
public class ConversationLoader extends AbstractCursorLoader {
private final long threadId;
public ConversationLoader(Context context, long threadId) {
super(context);
this.context = context.getApplicationContext();
this.threadId = threadId;
}
@Override
public Cursor loadInBackground() {
public Cursor getCursor() {
return DatabaseFactory.getMmsSmsDatabase(context).getConversation(threadId);
}
}