Nicer disabled state when using public conversations

This commit is contained in:
Mario Danic 2018-10-23 23:16:54 +02:00
parent f2b9303cc4
commit 0ad443bb31
2 changed files with 31 additions and 0 deletions

View File

@ -153,6 +153,12 @@ public class UserItem extends AbstractFlexibleItem<UserItem.UserItemViewHolder>
.apply(RequestOptions.bitmapTransform(new CircleCrop()))
.into(holder.avatarFlipView.getFrontImageView());
}
if (!isEnabled()) {
holder.itemView.setAlpha(0.38f);
} else {
holder.itemView.setAlpha(1.0f);
}
}
@Override

View File

@ -940,6 +940,31 @@ public class ContactsController extends BaseController implements SearchView.OnQ
void toggleCallHeader() {
toggleNewCallHeaderVisibility(isPublicCall);
isPublicCall = !isPublicCall;
if (isPublicCall) {
List<Integer> selectedPositions = adapter.getSelectedPositions();
for (int selectedPosition : selectedPositions) {
if (adapter.getItem(selectedPosition) instanceof UserItem) {
UserItem userItem = (UserItem) adapter.getItem(selectedPosition);
if ("groups".equals(userItem.getModel().getSource())) {
((UserItem) adapter.getItem(selectedPosition)).flipItemSelection();
adapter.toggleSelection(selectedPosition);
}
}
}
}
for (int i = 0; i < adapter.getItemCount(); i++) {
if (adapter.getItem(i) instanceof UserItem) {
UserItem userItem = (UserItem) adapter.getItem(i);
if ("groups".equals(userItem.getModel().getSource())) {
userItem.setEnabled(!isPublicCall);
}
}
}
checkAndHandleDoneMenuItem();
}