Do not collapse list to hide only one entry.

master
Christian Ascheberg 2020-07-29 12:02:12 +02:00 committed by Greyson Parrelli
parent e153b0ab78
commit 4271700046
2 changed files with 10 additions and 8 deletions

View File

@ -48,7 +48,8 @@ import java.util.List;
public class ManageGroupViewModel extends ViewModel {
private static final int MAX_COLLAPSED_MEMBERS = 5;
private static final int MAX_UNCOLLAPSED_MEMBERS = 6;
private static final int SHOW_COLLAPSED_MEMBERS = 5;
private final Context context;
private final ManageGroupRepository manageGroupRepository;
@ -89,7 +90,7 @@ public class ManageGroupViewModel extends ViewModel {
: title);
this.isAdmin = liveGroup.isSelfAdmin();
this.canCollapseMemberList = LiveDataUtil.combineLatest(memberListCollapseState,
Transformations.map(liveGroup.getFullMembers(), m -> m.size() > MAX_COLLAPSED_MEMBERS),
Transformations.map(liveGroup.getFullMembers(), m -> m.size() > MAX_UNCOLLAPSED_MEMBERS),
(state, hasEnoughMembers) -> state != CollapseState.OPEN && hasEnoughMembers);
this.members = LiveDataUtil.combineLatest(liveGroup.getFullMembers(),
memberListCollapseState,
@ -262,8 +263,8 @@ public class ManageGroupViewModel extends ViewModel {
private static @NonNull List<GroupMemberEntry.FullMember> filterMemberList(@NonNull List<GroupMemberEntry.FullMember> members,
@NonNull CollapseState collapseState)
{
if (collapseState == CollapseState.COLLAPSED && members.size() > MAX_COLLAPSED_MEMBERS) {
return members.subList(0, MAX_COLLAPSED_MEMBERS);
if (collapseState == CollapseState.COLLAPSED && members.size() > MAX_UNCOLLAPSED_MEMBERS) {
return members.subList(0, SHOW_COLLAPSED_MEMBERS);
} else {
return members;
}

View File

@ -45,7 +45,8 @@ import java.util.UUID;
public final class ManageRecipientViewModel extends ViewModel {
private static final int MAX_COLLAPSED_GROUPS = 5;
private static final int MAX_UNCOLLAPSED_GROUPS = 6;
private static final int SHOW_COLLAPSED_GROUPS = 5;
private final Context context;
private final ManageRecipientRepository manageRecipientRepository;
@ -91,7 +92,7 @@ public final class ManageRecipientViewModel extends ViewModel {
});
this.canCollapseMemberList = LiveDataUtil.combineLatest(this.groupListCollapseState,
Transformations.map(allSharedGroups, m -> m.size() > MAX_COLLAPSED_GROUPS),
Transformations.map(allSharedGroups, m -> m.size() > MAX_UNCOLLAPSED_GROUPS),
(state, hasEnoughMembers) -> state != CollapseState.OPEN && hasEnoughMembers);
this.visibleSharedGroups = Transformations.map(LiveDataUtil.combineLatest(allSharedGroups,
this.groupListCollapseState,
@ -210,8 +211,8 @@ public final class ManageRecipientViewModel extends ViewModel {
private static @NonNull List<Recipient> filterSharedGroupList(@NonNull List<Recipient> groups,
@NonNull CollapseState collapseState)
{
if (collapseState == CollapseState.COLLAPSED && groups.size() > MAX_COLLAPSED_GROUPS) {
return groups.subList(0, MAX_COLLAPSED_GROUPS);
if (collapseState == CollapseState.COLLAPSED && groups.size() > MAX_UNCOLLAPSED_GROUPS) {
return groups.subList(0, SHOW_COLLAPSED_GROUPS);
} else {
return groups;
}