mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-21 17:29:32 +01:00
Support selecting multiple threads to add to chat folder.
Resolves #13973
This commit is contained in:
@@ -380,15 +380,17 @@ class ChatFolderTables(context: Context?, databaseHelper: SignalDatabase?) : Dat
|
||||
/**
|
||||
* Adds a thread to a chat folder
|
||||
*/
|
||||
fun addToFolder(folderId: Long, threadId: Long) {
|
||||
fun addToFolder(folderId: Long, threadIds: List<Long>) {
|
||||
writableDatabase.withinTransaction { db ->
|
||||
db.insertInto(ChatFolderMembershipTable.TABLE_NAME)
|
||||
.values(
|
||||
ChatFolderMembershipTable.CHAT_FOLDER_ID to folderId,
|
||||
ChatFolderMembershipTable.THREAD_ID to threadId,
|
||||
ChatFolderMembershipTable.MEMBERSHIP_TYPE to MembershipType.INCLUDED.value
|
||||
)
|
||||
.run(SQLiteDatabase.CONFLICT_REPLACE)
|
||||
threadIds.forEach { threadId ->
|
||||
db.insertInto(ChatFolderMembershipTable.TABLE_NAME)
|
||||
.values(
|
||||
ChatFolderMembershipTable.CHAT_FOLDER_ID to folderId,
|
||||
ChatFolderMembershipTable.THREAD_ID to threadId,
|
||||
ChatFolderMembershipTable.MEMBERSHIP_TYPE to MembershipType.INCLUDED.value
|
||||
)
|
||||
.run(SQLiteDatabase.CONFLICT_REPLACE)
|
||||
}
|
||||
|
||||
AppDependencies.databaseObserver.notifyChatFolderObservers()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user