Add split pane UI for add group members screen.

This commit is contained in:
jeffrey-signal
2025-11-18 13:11:17 -05:00
committed by Cody Henthorne
parent 16d5db3639
commit c851387f57
12 changed files with 544 additions and 26 deletions

View File

@@ -1,6 +1,7 @@
package org.thoughtcrime.securesms.components.settings.conversation
import org.thoughtcrime.securesms.groups.GroupId
import org.thoughtcrime.securesms.groups.SelectionLimits
import org.thoughtcrime.securesms.groups.ui.GroupChangeFailureReason
import org.thoughtcrime.securesms.recipients.Recipient
import org.thoughtcrime.securesms.recipients.RecipientId
@@ -13,9 +14,7 @@ sealed class ConversationSettingsEvent {
class AddMembersToGroup(
val groupId: GroupId,
val selectionWarning: Int,
val selectionLimit: Int,
val isAnnouncementGroup: Boolean,
val selectionLimits: SelectionLimits,
val groupMembersWithoutSelf: List<RecipientId>
) : ConversationSettingsEvent()

View File

@@ -955,9 +955,8 @@ class ConversationSettingsFragment : DSLSettingsFragment(
requireContext(),
addMembersToGroup.groupId,
ContactSelectionDisplayMode.FLAG_PUSH,
addMembersToGroup.selectionWarning,
addMembersToGroup.selectionLimit,
addMembersToGroup.isAnnouncementGroup,
addMembersToGroup.selectionLimits.recommendedLimit,
addMembersToGroup.selectionLimits.hardLimit,
addMembersToGroup.groupMembersWithoutSelf
),
REQUEST_CODE_ADD_MEMBERS_TO_GROUP

View File

@@ -30,6 +30,7 @@ import org.thoughtcrime.securesms.database.model.StoryViewState
import org.thoughtcrime.securesms.dependencies.AppDependencies
import org.thoughtcrime.securesms.groups.GroupId
import org.thoughtcrime.securesms.groups.LiveGroup
import org.thoughtcrime.securesms.groups.SelectionLimits
import org.thoughtcrime.securesms.groups.ui.GroupChangeFailureReason
import org.thoughtcrime.securesms.groups.v2.GroupAddMembersResult
import org.thoughtcrime.securesms.keyvalue.SignalStore
@@ -435,9 +436,7 @@ sealed class ConversationSettingsViewModel(
internalEvents.onNext(
ConversationSettingsEvent.AddMembersToGroup(
groupId,
capacityResult.getSelectionWarning(),
capacityResult.getSelectionLimit(),
capacityResult.isAnnouncementGroup,
SelectionLimits(capacityResult.getSelectionWarning(), capacityResult.getSelectionLimit()),
capacityResult.getMembersWithoutSelf()
)
)