mirror of
https://github.com/oxen-io/session-android.git
synced 2025-02-21 10:28:27 +00:00
Handle drafts after security information has been resolved.
// FREEBIE
This commit is contained in:
parent
c0a26862f3
commit
cbfd3af5c2
@ -127,6 +127,7 @@ import java.io.IOException;
|
|||||||
import java.security.NoSuchAlgorithmException;
|
import java.security.NoSuchAlgorithmException;
|
||||||
import java.security.SecureRandom;
|
import java.security.SecureRandom;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.concurrent.ExecutionException;
|
||||||
|
|
||||||
import static org.thoughtcrime.securesms.TransportOption.Type;
|
import static org.thoughtcrime.securesms.TransportOption.Type;
|
||||||
import static org.thoughtcrime.securesms.database.GroupDatabase.GroupRecord;
|
import static org.thoughtcrime.securesms.database.GroupDatabase.GroupRecord;
|
||||||
@ -216,8 +217,17 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
|||||||
initializeActionBar();
|
initializeActionBar();
|
||||||
initializeViews();
|
initializeViews();
|
||||||
initializeResources();
|
initializeResources();
|
||||||
initializeSecurity(false, false);
|
initializeSecurity(false, false).addListener(new ListenableFuture.Listener<Boolean>() {
|
||||||
initializeDraft();
|
@Override
|
||||||
|
public void onSuccess(Boolean result) {
|
||||||
|
initializeDraft();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onFailure(ExecutionException e) {
|
||||||
|
throw new AssertionError(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -232,8 +242,16 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
|||||||
|
|
||||||
setIntent(intent);
|
setIntent(intent);
|
||||||
initializeResources();
|
initializeResources();
|
||||||
initializeSecurity(false, false);
|
initializeSecurity(false, false).addListener(new ListenableFuture.Listener<Boolean>() {
|
||||||
initializeDraft();
|
@Override
|
||||||
|
public void onSuccess(Boolean result) {
|
||||||
|
initializeDraft();
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void onFailure(ExecutionException e) {
|
||||||
|
throw new AssertionError(e);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
if (fragment != null) {
|
if (fragment != null) {
|
||||||
fragment.onNewIntent();
|
fragment.onNewIntent();
|
||||||
@ -752,9 +770,11 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
|||||||
}.execute();
|
}.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initializeSecurity(final boolean currentSecureText,
|
private ListenableFuture<Boolean> initializeSecurity(final boolean currentSecureText,
|
||||||
final boolean currentSecureVoice)
|
final boolean currentSecureVoice)
|
||||||
{
|
{
|
||||||
|
final SettableFuture<Boolean> future = new SettableFuture<>();
|
||||||
|
|
||||||
handleSecurityChange(currentSecureText || isGroupConversation(),
|
handleSecurityChange(currentSecureText || isGroupConversation(),
|
||||||
currentSecureVoice && !isGroupConversation());
|
currentSecureVoice && !isGroupConversation());
|
||||||
|
|
||||||
@ -786,8 +806,12 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
|||||||
if (result.first != currentSecureText || result.second != currentSecureVoice) {
|
if (result.first != currentSecureText || result.second != currentSecureVoice) {
|
||||||
handleSecurityChange(result.first, result.second);
|
handleSecurityChange(result.first, result.second);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
future.set(true);
|
||||||
}
|
}
|
||||||
}.execute(recipients);
|
}.execute(recipients);
|
||||||
|
|
||||||
|
return future;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user