mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-23 18:30:20 +01:00
Add sent story syncing.
This commit is contained in:
@@ -27,10 +27,8 @@ import org.thoughtcrime.securesms.R;
|
||||
import org.thoughtcrime.securesms.database.GroupDatabase;
|
||||
import org.thoughtcrime.securesms.database.SignalDatabase;
|
||||
import org.thoughtcrime.securesms.database.ThreadDatabase;
|
||||
import org.thoughtcrime.securesms.database.model.DistributionListPartialRecord;
|
||||
import org.thoughtcrime.securesms.database.model.ThreadRecord;
|
||||
import org.thoughtcrime.securesms.phonenumbers.NumberUtil;
|
||||
import org.thoughtcrime.securesms.stories.Stories;
|
||||
import org.thoughtcrime.securesms.util.FeatureFlags;
|
||||
import org.thoughtcrime.securesms.util.UsernameUtil;
|
||||
|
||||
@@ -57,7 +55,6 @@ public class ContactsCursorLoader extends AbstractContactsCursorLoader {
|
||||
public static final int FLAG_HIDE_NEW = 1 << 6;
|
||||
public static final int FLAG_HIDE_RECENT_HEADER = 1 << 7;
|
||||
public static final int FLAG_GROUPS_AFTER_CONTACTS = 1 << 8;
|
||||
public static final int FLAG_STORIES = 1 << 9;
|
||||
public static final int FLAG_ALL = FLAG_PUSH | FLAG_SMS | FLAG_ACTIVE_GROUPS | FLAG_INACTIVE_GROUPS | FLAG_SELF;
|
||||
}
|
||||
|
||||
@@ -88,7 +85,6 @@ public class ContactsCursorLoader extends AbstractContactsCursorLoader {
|
||||
addRecentGroupsSection(cursorList);
|
||||
addGroupsSection(cursorList);
|
||||
} else {
|
||||
addStoriesSection(cursorList);
|
||||
addRecentsSection(cursorList);
|
||||
addContactsSection(cursorList);
|
||||
if (addGroupsAfterContacts(mode)) {
|
||||
@@ -167,19 +163,6 @@ public class ContactsCursorLoader extends AbstractContactsCursorLoader {
|
||||
}
|
||||
}
|
||||
|
||||
private void addStoriesSection(@NonNull List<Cursor> cursorList) {
|
||||
if (!Stories.isFeatureEnabled() ||!storiesEnabled(mode)) {
|
||||
return;
|
||||
}
|
||||
|
||||
Cursor stories = getStoriesCursor();
|
||||
|
||||
if (stories.getCount() > 0) {
|
||||
cursorList.add(ContactsCursorRows.forStoriesHeader(getContext()));
|
||||
cursorList.add(stories);
|
||||
}
|
||||
}
|
||||
|
||||
private void addNewNumberSection(@NonNull List<Cursor> cursorList) {
|
||||
if (FeatureFlags.usernames() && NumberUtil.isVisuallyValidNumberOrEmail(getFilter())) {
|
||||
cursorList.add(ContactsCursorRows.forPhoneNumberSearchHeader(getContext()));
|
||||
@@ -240,16 +223,6 @@ public class ContactsCursorLoader extends AbstractContactsCursorLoader {
|
||||
return groupContacts;
|
||||
}
|
||||
|
||||
private Cursor getStoriesCursor() {
|
||||
MatrixCursor distributionListsCursor = ContactsCursorRows.createMatrixCursor();
|
||||
List<DistributionListPartialRecord> distributionLists = SignalDatabase.distributionLists().getAllListsForContactSelectionUi(null, true);
|
||||
for (final DistributionListPartialRecord distributionList : distributionLists) {
|
||||
distributionListsCursor.addRow(ContactsCursorRows.forDistributionList(distributionList));
|
||||
}
|
||||
|
||||
return distributionListsCursor;
|
||||
}
|
||||
|
||||
private Cursor getNewNumberCursor() {
|
||||
return ContactsCursorRows.forNewNumber(getUnknownContactTitle(), getFilter());
|
||||
}
|
||||
@@ -320,10 +293,6 @@ public class ContactsCursorLoader extends AbstractContactsCursorLoader {
|
||||
return flagSet(mode, DisplayMode.FLAG_GROUPS_AFTER_CONTACTS);
|
||||
}
|
||||
|
||||
private static boolean storiesEnabled(int mode) {
|
||||
return flagSet(mode, DisplayMode.FLAG_STORIES);
|
||||
}
|
||||
|
||||
private static boolean flagSet(int mode, int flag) {
|
||||
return (mode & flag) > 0;
|
||||
}
|
||||
|
||||
@@ -9,8 +9,6 @@ import androidx.annotation.NonNull;
|
||||
|
||||
import org.thoughtcrime.securesms.R;
|
||||
import org.thoughtcrime.securesms.database.GroupDatabase;
|
||||
import org.thoughtcrime.securesms.database.SignalDatabase;
|
||||
import org.thoughtcrime.securesms.database.model.DistributionListPartialRecord;
|
||||
import org.thoughtcrime.securesms.phonenumbers.PhoneNumberFormatter;
|
||||
import org.thoughtcrime.securesms.recipients.Recipient;
|
||||
import org.whispersystems.signalservice.api.util.OptionalUtil;
|
||||
@@ -86,16 +84,6 @@ public final class ContactsCursorRows {
|
||||
""};
|
||||
}
|
||||
|
||||
public static @NonNull Object[] forDistributionList(@NonNull DistributionListPartialRecord distributionListPartialRecord) {
|
||||
return new Object[]{ distributionListPartialRecord.getRecipientId().serialize(),
|
||||
distributionListPartialRecord.getName(),
|
||||
SignalDatabase.distributionLists().getMemberCount(distributionListPartialRecord.getId()),
|
||||
ContactsContract.CommonDataKinds.Phone.TYPE_CUSTOM,
|
||||
"",
|
||||
ContactRepository.NORMAL_TYPE,
|
||||
""};
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a row for a contacts cursor for a new number the user is entering or has entered.
|
||||
*/
|
||||
@@ -130,10 +118,6 @@ public final class ContactsCursorRows {
|
||||
return matrixCursor;
|
||||
}
|
||||
|
||||
public static @NonNull MatrixCursor forStoriesHeader(@NonNull Context context) {
|
||||
return forHeader(context.getString(R.string.ContactsCursorLoader_my_stories));
|
||||
}
|
||||
|
||||
public static @NonNull MatrixCursor forUsernameSearchHeader(@NonNull Context context) {
|
||||
return forHeader(context.getString(R.string.ContactsCursorLoader_username_search));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user