mirror of
https://github.com/oxen-io/session-android.git
synced 2025-06-09 09:28:34 +00:00
Fix some more UX issues with blocked users.
This commit is contained in:
parent
8c6001fa5a
commit
4bdcaa72cd
@ -429,7 +429,7 @@ public class RecipientPreferenceActivity extends PassphraseRequiredActionBarActi
|
|||||||
aboutPreference.setSummary(recipient.getCustomLabel());
|
aboutPreference.setSummary(recipient.getCustomLabel());
|
||||||
}
|
}
|
||||||
|
|
||||||
aboutPreference.setSecure(recipient.getRegistered() == RecipientDatabase.RegisteredState.REGISTERED);
|
aboutPreference.setState(recipient.getRegistered() == RecipientDatabase.RegisteredState.REGISTERED, recipient.isBlocked());
|
||||||
|
|
||||||
IdentityUtil.getRemoteIdentityKey(getActivity(), recipient).addListener(new ListenableFuture.Listener<Optional<IdentityRecord>>() {
|
IdentityUtil.getRemoteIdentityKey(getActivity(), recipient).addListener(new ListenableFuture.Listener<Optional<IdentityRecord>>() {
|
||||||
@Override
|
@Override
|
||||||
|
@ -770,9 +770,19 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
|||||||
if (isSecureText) {
|
if (isSecureText) {
|
||||||
menu.findItem(R.id.menu_call_secure).setVisible(false);
|
menu.findItem(R.id.menu_call_secure).setVisible(false);
|
||||||
menu.findItem(R.id.menu_video_secure).setVisible(false);
|
menu.findItem(R.id.menu_video_secure).setVisible(false);
|
||||||
|
|
||||||
|
if (menu.findItem(R.id.menu_expiring_messages) != null) {
|
||||||
|
menu.findItem(R.id.menu_expiring_messages).setVisible(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (menu.findItem(R.id.menu_expiring_messages_off) != null) {
|
||||||
|
menu.findItem(R.id.menu_expiring_messages_off).setVisible(false);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
menu.findItem(R.id.menu_call_insecure).setVisible(false);
|
menu.findItem(R.id.menu_call_insecure).setVisible(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
menu.findItem(R.id.menu_mute_notifications).setVisible(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
searchViewItem = menu.findItem(R.id.menu_search);
|
searchViewItem = menu.findItem(R.id.menu_search);
|
||||||
@ -983,24 +993,11 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void handleUnblock() {
|
private void handleUnblock() {
|
||||||
int titleRes = R.string.ConversationActivity_unblock_this_contact_question;
|
BlockUnblockDialog.showUnblockFor(this, getLifecycle(), recipient.get(), () -> {
|
||||||
int bodyRes = R.string.ConversationActivity_you_will_once_again_be_able_to_receive_messages_and_calls_from_this_contact;
|
SignalExecutors.BOUNDED.execute(() -> {
|
||||||
|
RecipientUtil.unblock(ConversationActivity.this, recipient.get());
|
||||||
if (recipient.get().isGroup()) {
|
});
|
||||||
titleRes = R.string.ConversationActivity_unblock_this_group_question;
|
});
|
||||||
bodyRes = R.string.ConversationActivity_unblock_this_group_description;
|
|
||||||
}
|
|
||||||
|
|
||||||
//noinspection CodeBlock2Expr
|
|
||||||
new AlertDialog.Builder(this)
|
|
||||||
.setTitle(titleRes)
|
|
||||||
.setMessage(bodyRes)
|
|
||||||
.setNegativeButton(android.R.string.cancel, null)
|
|
||||||
.setPositiveButton(R.string.ConversationActivity_unblock, (dialog, which) -> {
|
|
||||||
SignalExecutors.BOUNDED.execute(() -> {
|
|
||||||
RecipientUtil.unblock(ConversationActivity.this, recipient.get());
|
|
||||||
});
|
|
||||||
}).show();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@TargetApi(Build.VERSION_CODES.KITKAT)
|
@TargetApi(Build.VERSION_CODES.KITKAT)
|
||||||
|
@ -20,6 +20,7 @@ public class ContactPreference extends Preference {
|
|||||||
|
|
||||||
private Listener listener;
|
private Listener listener;
|
||||||
private boolean secure;
|
private boolean secure;
|
||||||
|
private boolean blocked;
|
||||||
|
|
||||||
public ContactPreference(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
|
public ContactPreference(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
|
||||||
super(context, attrs, defStyleAttr, defStyleRes);
|
super(context, attrs, defStyleAttr, defStyleRes);
|
||||||
@ -55,15 +56,16 @@ public class ContactPreference extends Preference {
|
|||||||
this.secureVideoButton = (ImageView) view.findViewById(R.id.secure_video);
|
this.secureVideoButton = (ImageView) view.findViewById(R.id.secure_video);
|
||||||
|
|
||||||
if (listener != null) setListener(listener);
|
if (listener != null) setListener(listener);
|
||||||
setSecure(secure);
|
setState(secure, blocked);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSecure(boolean secure) {
|
public void setState(boolean secure, boolean blocked) {
|
||||||
this.secure = secure;
|
this.secure = secure;
|
||||||
|
|
||||||
if (secureCallButton != null) secureCallButton.setVisibility(secure ? View.VISIBLE : View.GONE);
|
if (secureCallButton != null) secureCallButton.setVisibility(secure && !blocked ? View.VISIBLE : View.GONE);
|
||||||
if (secureVideoButton != null) secureVideoButton.setVisibility(secure ? View.VISIBLE : View.GONE);
|
if (secureVideoButton != null) secureVideoButton.setVisibility(secure && !blocked ? View.VISIBLE : View.GONE);
|
||||||
if (callButton != null) callButton.setVisibility(secure ? View.GONE : View.VISIBLE);
|
if (callButton != null) callButton.setVisibility(secure || blocked ? View.GONE : View.VISIBLE);
|
||||||
|
if (messageButton != null) messageButton.setVisibility(blocked ? View.GONE : View.VISIBLE);
|
||||||
|
|
||||||
int color;
|
int color;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user