diff --git a/app/src/main/java/com/nextcloud/talk/adapters/items/UserItem.java b/app/src/main/java/com/nextcloud/talk/adapters/items/UserItem.java index 6def9f1ec..27d846858 100644 --- a/app/src/main/java/com/nextcloud/talk/adapters/items/UserItem.java +++ b/app/src/main/java/com/nextcloud/talk/adapters/items/UserItem.java @@ -153,6 +153,12 @@ public class UserItem extends AbstractFlexibleItem .apply(RequestOptions.bitmapTransform(new CircleCrop())) .into(holder.avatarFlipView.getFrontImageView()); } + + if (!isEnabled()) { + holder.itemView.setAlpha(0.38f); + } else { + holder.itemView.setAlpha(1.0f); + } } @Override diff --git a/app/src/main/java/com/nextcloud/talk/controllers/ContactsController.java b/app/src/main/java/com/nextcloud/talk/controllers/ContactsController.java index 037ad2508..544ea9cad 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/ContactsController.java +++ b/app/src/main/java/com/nextcloud/talk/controllers/ContactsController.java @@ -940,6 +940,31 @@ public class ContactsController extends BaseController implements SearchView.OnQ void toggleCallHeader() { toggleNewCallHeaderVisibility(isPublicCall); isPublicCall = !isPublicCall; + + if (isPublicCall) { + List 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(); }