mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-12 02:39:05 +01:00
Merge branch '2340-unlink-offline-crash' into 'master'
Don't crash when offline while unlink dialog gets shown Closes #2340 See merge request briar/briar!1676
This commit is contained in:
@@ -63,6 +63,8 @@ public class MailboxStatusFragment extends Fragment {
|
||||
private Button wizardButton;
|
||||
private Button unlinkButton;
|
||||
private ProgressBar unlinkProgress;
|
||||
@Nullable
|
||||
private AlertDialog dialog = null;
|
||||
|
||||
@Override
|
||||
public void onAttach(Context context) {
|
||||
@@ -129,6 +131,15 @@ public class MailboxStatusFragment extends Fragment {
|
||||
refresher = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDetach() {
|
||||
super.onDetach();
|
||||
if (dialog != null) {
|
||||
dialog.dismiss();
|
||||
dialog = null;
|
||||
}
|
||||
}
|
||||
|
||||
private void onMailboxStateChanged(MailboxStatus status) {
|
||||
@ColorRes int tintRes;
|
||||
@DrawableRes int iconRes;
|
||||
@@ -216,12 +227,15 @@ public class MailboxStatusFragment extends Fragment {
|
||||
(dialog, which) -> dialog.cancel());
|
||||
builder.setNegativeButton(R.string.mailbox_status_unlink_button,
|
||||
(dialog, which) -> {
|
||||
beginDelayedTransition((ViewGroup) requireView());
|
||||
ViewGroup v = (ViewGroup) getView();
|
||||
if (v != null) beginDelayedTransition(v);
|
||||
unlinkButton.setVisibility(INVISIBLE);
|
||||
unlinkProgress.setVisibility(VISIBLE);
|
||||
viewModel.unlink();
|
||||
});
|
||||
builder.show();
|
||||
builder.setOnDismissListener(dialog ->
|
||||
MailboxStatusFragment.this.dialog = null);
|
||||
dialog = builder.show();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user