mirror of
https://github.com/oxen-io/session-android.git
synced 2024-11-28 20:45:17 +00:00
3a8d29e279
Mostly, the inheritance graph for MessageRecord/MmsMessageRecord was all messed up, and each class was overloaded for things it shouldn't have been. 1) Broke MessageRecord/MmsMessageRecord up into: DisplayRecord, ThreadRecord, MessageRecord, SmsMessageRecord, NotificationMmsMessageRecord, and MediaMmsMessageRecord. 2) Updated all the adapters/views to keep pace with that change.
80 lines
1.9 KiB
Java
80 lines
1.9 KiB
Java
package org.thoughtcrime.securesms.contacts;
|
|
|
|
import android.annotation.SuppressLint;
|
|
import android.content.Context;
|
|
import android.database.Cursor;
|
|
import android.net.Uri;
|
|
import android.provider.ContactsContract;
|
|
import android.provider.ContactsContract.Contacts;
|
|
import android.provider.ContactsContract.PhoneLookup;
|
|
|
|
import java.util.LinkedList;
|
|
import java.util.List;
|
|
|
|
class ContactIdentityManagerICS extends ContactIdentityManager {
|
|
|
|
public ContactIdentityManagerICS(Context context) {
|
|
super(context);
|
|
}
|
|
|
|
@SuppressLint("NewApi")
|
|
@Override
|
|
public Uri getSelfIdentityUri() {
|
|
String[] PROJECTION = new String[] {
|
|
PhoneLookup.DISPLAY_NAME,
|
|
PhoneLookup.LOOKUP_KEY,
|
|
PhoneLookup._ID,
|
|
};
|
|
|
|
Cursor cursor = null;
|
|
|
|
try {
|
|
cursor = context.getContentResolver().query(ContactsContract.Profile.CONTENT_URI,
|
|
PROJECTION, null, null, null);
|
|
|
|
if (cursor != null && cursor.moveToFirst()) {
|
|
return Contacts.getLookupUri(cursor.getLong(2), cursor.getString(1));
|
|
}
|
|
} finally {
|
|
if (cursor != null)
|
|
cursor.close();
|
|
}
|
|
|
|
return null;
|
|
}
|
|
|
|
@Override
|
|
public boolean isSelfIdentityAutoDetected() {
|
|
return true;
|
|
}
|
|
|
|
@SuppressLint("NewApi")
|
|
@Override
|
|
public List<Long> getSelfIdentityRawContactIds() {
|
|
List<Long> results = new LinkedList<Long>();
|
|
|
|
String[] PROJECTION = new String[] {
|
|
ContactsContract.Profile._ID
|
|
};
|
|
|
|
Cursor cursor = null;
|
|
|
|
try {
|
|
cursor = context.getContentResolver().query(ContactsContract.Profile.CONTENT_RAW_CONTACTS_URI,
|
|
PROJECTION, null, null, null);
|
|
|
|
if (cursor == null || cursor.getCount() == 0)
|
|
return null;
|
|
|
|
while (cursor.moveToNext()) {
|
|
results.add(cursor.getLong(0));
|
|
}
|
|
|
|
return results;
|
|
} finally {
|
|
if (cursor != null)
|
|
cursor.close();
|
|
}
|
|
}
|
|
}
|