mirror of
https://github.com/oxen-io/session-android.git
synced 2025-02-17 13:58:25 +00:00
Fix outdated client banner display
This commit is contained in:
parent
2228bfc8f2
commit
18ff597811
@ -572,9 +572,9 @@ class ConversationActivityV2 : PassphraseRequiredActionBarActivity(), InputBarDe
|
|||||||
|
|
||||||
private fun setUpOutdatedClientBanner() {
|
private fun setUpOutdatedClientBanner() {
|
||||||
val recipient = viewModel.recipient ?: return
|
val recipient = viewModel.recipient ?: return
|
||||||
if (viewModel.recipient?.disappearingState == DisappearingState.LEGACY &&
|
if (ExpirationConfiguration.isNewConfigEnabled && recipient.isContactRecipient &&
|
||||||
viewModel.expirationConfiguration?.isEnabled == true &&
|
recipient.disappearingState == DisappearingState.LEGACY &&
|
||||||
!ExpirationConfiguration.isNewConfigEnabled
|
viewModel.expirationConfiguration?.isEnabled == true
|
||||||
) {
|
) {
|
||||||
binding?.outdatedBannerTextView?.text =
|
binding?.outdatedBannerTextView?.text =
|
||||||
resources.getString(R.string.activity_conversation_outdated_client_banner_text, recipient.name)
|
resources.getString(R.string.activity_conversation_outdated_client_banner_text, recipient.name)
|
||||||
|
@ -70,7 +70,7 @@ public class RecipientDatabase extends Database {
|
|||||||
PROFILE_KEY, SYSTEM_DISPLAY_NAME, SYSTEM_PHOTO_URI, SYSTEM_PHONE_LABEL, SYSTEM_CONTACT_URI,
|
PROFILE_KEY, SYSTEM_DISPLAY_NAME, SYSTEM_PHOTO_URI, SYSTEM_PHONE_LABEL, SYSTEM_CONTACT_URI,
|
||||||
SIGNAL_PROFILE_NAME, SIGNAL_PROFILE_AVATAR, PROFILE_SHARING, NOTIFICATION_CHANNEL,
|
SIGNAL_PROFILE_NAME, SIGNAL_PROFILE_AVATAR, PROFILE_SHARING, NOTIFICATION_CHANNEL,
|
||||||
UNIDENTIFIED_ACCESS_MODE,
|
UNIDENTIFIED_ACCESS_MODE,
|
||||||
FORCE_SMS_SELECTION, NOTIFY_TYPE,
|
FORCE_SMS_SELECTION, NOTIFY_TYPE, DISAPPEARING_STATE
|
||||||
};
|
};
|
||||||
|
|
||||||
static final List<String> TYPED_RECIPIENT_PROJECTION = Stream.of(RECIPIENT_PROJECTION)
|
static final List<String> TYPED_RECIPIENT_PROJECTION = Stream.of(RECIPIENT_PROJECTION)
|
||||||
@ -182,6 +182,7 @@ public class RecipientDatabase extends Database {
|
|||||||
boolean approvedMe = cursor.getInt(cursor.getColumnIndexOrThrow(APPROVED_ME)) == 1;
|
boolean approvedMe = cursor.getInt(cursor.getColumnIndexOrThrow(APPROVED_ME)) == 1;
|
||||||
String messageRingtone = cursor.getString(cursor.getColumnIndexOrThrow(NOTIFICATION));
|
String messageRingtone = cursor.getString(cursor.getColumnIndexOrThrow(NOTIFICATION));
|
||||||
String callRingtone = cursor.getString(cursor.getColumnIndexOrThrow(CALL_RINGTONE));
|
String callRingtone = cursor.getString(cursor.getColumnIndexOrThrow(CALL_RINGTONE));
|
||||||
|
int disappearingState = cursor.getInt(cursor.getColumnIndexOrThrow(DISAPPEARING_STATE));
|
||||||
int messageVibrateState = cursor.getInt(cursor.getColumnIndexOrThrow(VIBRATE));
|
int messageVibrateState = cursor.getInt(cursor.getColumnIndexOrThrow(VIBRATE));
|
||||||
int callVibrateState = cursor.getInt(cursor.getColumnIndexOrThrow(CALL_VIBRATE));
|
int callVibrateState = cursor.getInt(cursor.getColumnIndexOrThrow(CALL_VIBRATE));
|
||||||
long muteUntil = cursor.getLong(cursor.getColumnIndexOrThrow(MUTE_UNTIL));
|
long muteUntil = cursor.getLong(cursor.getColumnIndexOrThrow(MUTE_UNTIL));
|
||||||
@ -223,6 +224,7 @@ public class RecipientDatabase extends Database {
|
|||||||
|
|
||||||
return Optional.of(new RecipientSettings(blocked, approved, approvedMe, muteUntil,
|
return Optional.of(new RecipientSettings(blocked, approved, approvedMe, muteUntil,
|
||||||
notifyType,
|
notifyType,
|
||||||
|
Recipient.DisappearingState.fromId(disappearingState),
|
||||||
Recipient.VibrateState.fromId(messageVibrateState),
|
Recipient.VibrateState.fromId(messageVibrateState),
|
||||||
Recipient.VibrateState.fromId(callVibrateState),
|
Recipient.VibrateState.fromId(callVibrateState),
|
||||||
Util.uri(messageRingtone), Util.uri(callRingtone),
|
Util.uri(messageRingtone), Util.uri(callRingtone),
|
||||||
|
@ -86,7 +86,7 @@ public class Recipient implements RecipientModifiedListener {
|
|||||||
private boolean blocked = false;
|
private boolean blocked = false;
|
||||||
private boolean approved = false;
|
private boolean approved = false;
|
||||||
private boolean approvedMe = false;
|
private boolean approvedMe = false;
|
||||||
private DisappearingState disappearingState = DisappearingState.LEGACY;
|
private DisappearingState disappearingState = null;
|
||||||
private VibrateState messageVibrate = VibrateState.DEFAULT;
|
private VibrateState messageVibrate = VibrateState.DEFAULT;
|
||||||
private VibrateState callVibrate = VibrateState.DEFAULT;
|
private VibrateState callVibrate = VibrateState.DEFAULT;
|
||||||
private int expireMessages = 0;
|
private int expireMessages = 0;
|
||||||
@ -162,6 +162,7 @@ public class Recipient implements RecipientModifiedListener {
|
|||||||
this.unidentifiedAccessMode = stale.unidentifiedAccessMode;
|
this.unidentifiedAccessMode = stale.unidentifiedAccessMode;
|
||||||
this.forceSmsSelection = stale.forceSmsSelection;
|
this.forceSmsSelection = stale.forceSmsSelection;
|
||||||
this.notifyType = stale.notifyType;
|
this.notifyType = stale.notifyType;
|
||||||
|
this.disappearingState = stale.disappearingState;
|
||||||
|
|
||||||
this.participants.clear();
|
this.participants.clear();
|
||||||
this.participants.addAll(stale.participants);
|
this.participants.addAll(stale.participants);
|
||||||
@ -192,6 +193,7 @@ public class Recipient implements RecipientModifiedListener {
|
|||||||
this.unidentifiedAccessMode = details.get().unidentifiedAccessMode;
|
this.unidentifiedAccessMode = details.get().unidentifiedAccessMode;
|
||||||
this.forceSmsSelection = details.get().forceSmsSelection;
|
this.forceSmsSelection = details.get().forceSmsSelection;
|
||||||
this.notifyType = details.get().notifyType;
|
this.notifyType = details.get().notifyType;
|
||||||
|
this.disappearingState = details.get().disappearingState;
|
||||||
|
|
||||||
this.participants.clear();
|
this.participants.clear();
|
||||||
this.participants.addAll(details.get().participants);
|
this.participants.addAll(details.get().participants);
|
||||||
@ -228,6 +230,7 @@ public class Recipient implements RecipientModifiedListener {
|
|||||||
Recipient.this.unidentifiedAccessMode = result.unidentifiedAccessMode;
|
Recipient.this.unidentifiedAccessMode = result.unidentifiedAccessMode;
|
||||||
Recipient.this.forceSmsSelection = result.forceSmsSelection;
|
Recipient.this.forceSmsSelection = result.forceSmsSelection;
|
||||||
Recipient.this.notifyType = result.notifyType;
|
Recipient.this.notifyType = result.notifyType;
|
||||||
|
Recipient.this.disappearingState = result.disappearingState;
|
||||||
|
|
||||||
Recipient.this.participants.clear();
|
Recipient.this.participants.clear();
|
||||||
Recipient.this.participants.addAll(result.participants);
|
Recipient.this.participants.addAll(result.participants);
|
||||||
@ -860,6 +863,7 @@ public class Recipient implements RecipientModifiedListener {
|
|||||||
private final boolean approvedMe;
|
private final boolean approvedMe;
|
||||||
private final long muteUntil;
|
private final long muteUntil;
|
||||||
private final int notifyType;
|
private final int notifyType;
|
||||||
|
private final DisappearingState disappearingState;
|
||||||
private final VibrateState messageVibrateState;
|
private final VibrateState messageVibrateState;
|
||||||
private final VibrateState callVibrateState;
|
private final VibrateState callVibrateState;
|
||||||
private final Uri messageRingtone;
|
private final Uri messageRingtone;
|
||||||
@ -882,6 +886,7 @@ public class Recipient implements RecipientModifiedListener {
|
|||||||
|
|
||||||
public RecipientSettings(boolean blocked, boolean approved, boolean approvedMe, long muteUntil,
|
public RecipientSettings(boolean blocked, boolean approved, boolean approvedMe, long muteUntil,
|
||||||
int notifyType,
|
int notifyType,
|
||||||
|
@NonNull DisappearingState disappearingState,
|
||||||
@NonNull VibrateState messageVibrateState,
|
@NonNull VibrateState messageVibrateState,
|
||||||
@NonNull VibrateState callVibrateState,
|
@NonNull VibrateState callVibrateState,
|
||||||
@Nullable Uri messageRingtone,
|
@Nullable Uri messageRingtone,
|
||||||
@ -907,6 +912,7 @@ public class Recipient implements RecipientModifiedListener {
|
|||||||
this.approvedMe = approvedMe;
|
this.approvedMe = approvedMe;
|
||||||
this.muteUntil = muteUntil;
|
this.muteUntil = muteUntil;
|
||||||
this.notifyType = notifyType;
|
this.notifyType = notifyType;
|
||||||
|
this.disappearingState = disappearingState;
|
||||||
this.messageVibrateState = messageVibrateState;
|
this.messageVibrateState = messageVibrateState;
|
||||||
this.callVibrateState = callVibrateState;
|
this.callVibrateState = callVibrateState;
|
||||||
this.messageRingtone = messageRingtone;
|
this.messageRingtone = messageRingtone;
|
||||||
@ -952,6 +958,10 @@ public class Recipient implements RecipientModifiedListener {
|
|||||||
return notifyType;
|
return notifyType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public @NonNull DisappearingState getDisappearingState() {
|
||||||
|
return disappearingState;
|
||||||
|
}
|
||||||
|
|
||||||
public @NonNull VibrateState getMessageVibrateState() {
|
public @NonNull VibrateState getMessageVibrateState() {
|
||||||
return messageVibrateState;
|
return messageVibrateState;
|
||||||
}
|
}
|
||||||
|
@ -31,6 +31,7 @@ import org.session.libsession.utilities.ListenableFutureTask;
|
|||||||
import org.session.libsession.utilities.MaterialColor;
|
import org.session.libsession.utilities.MaterialColor;
|
||||||
import org.session.libsession.utilities.TextSecurePreferences;
|
import org.session.libsession.utilities.TextSecurePreferences;
|
||||||
import org.session.libsession.utilities.Util;
|
import org.session.libsession.utilities.Util;
|
||||||
|
import org.session.libsession.utilities.recipients.Recipient.DisappearingState;
|
||||||
import org.session.libsession.utilities.recipients.Recipient.RecipientSettings;
|
import org.session.libsession.utilities.recipients.Recipient.RecipientSettings;
|
||||||
import org.session.libsession.utilities.recipients.Recipient.RegisteredState;
|
import org.session.libsession.utilities.recipients.Recipient.RegisteredState;
|
||||||
import org.session.libsession.utilities.recipients.Recipient.UnidentifiedAccessMode;
|
import org.session.libsession.utilities.recipients.Recipient.UnidentifiedAccessMode;
|
||||||
@ -159,6 +160,7 @@ class RecipientProvider {
|
|||||||
@Nullable final Uri callRingtone;
|
@Nullable final Uri callRingtone;
|
||||||
final long mutedUntil;
|
final long mutedUntil;
|
||||||
final int notifyType;
|
final int notifyType;
|
||||||
|
@Nullable final DisappearingState disappearingState;
|
||||||
@Nullable final VibrateState messageVibrateState;
|
@Nullable final VibrateState messageVibrateState;
|
||||||
@Nullable final VibrateState callVibrateState;
|
@Nullable final VibrateState callVibrateState;
|
||||||
final boolean blocked;
|
final boolean blocked;
|
||||||
@ -191,6 +193,7 @@ class RecipientProvider {
|
|||||||
this.callRingtone = settings != null ? settings.getCallRingtone() : null;
|
this.callRingtone = settings != null ? settings.getCallRingtone() : null;
|
||||||
this.mutedUntil = settings != null ? settings.getMuteUntil() : 0;
|
this.mutedUntil = settings != null ? settings.getMuteUntil() : 0;
|
||||||
this.notifyType = settings != null ? settings.getNotifyType() : 0;
|
this.notifyType = settings != null ? settings.getNotifyType() : 0;
|
||||||
|
this.disappearingState = settings != null ? settings.getDisappearingState() : null;
|
||||||
this.messageVibrateState = settings != null ? settings.getMessageVibrateState() : null;
|
this.messageVibrateState = settings != null ? settings.getMessageVibrateState() : null;
|
||||||
this.callVibrateState = settings != null ? settings.getCallVibrateState() : null;
|
this.callVibrateState = settings != null ? settings.getCallVibrateState() : null;
|
||||||
this.blocked = settings != null && settings.isBlocked();
|
this.blocked = settings != null && settings.isBlocked();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user