mirror of
https://github.com/nextcloud/talk-android
synced 2025-03-06 06:15:12 +00:00
Move dialog into a new function
Signed-off-by: Joas Schilling <coding@schilljs.com>
This commit is contained in:
parent
c789152122
commit
c368af6bab
@ -271,46 +271,8 @@ public class ConversationsListController extends BaseController implements Searc
|
||||
|
||||
if (currentUser != null) {
|
||||
if (currentUser.isServerEOL()) {
|
||||
new LovelyStandardDialog(getActivity(), LovelyStandardDialog.ButtonLayout.HORIZONTAL)
|
||||
.setTopColorRes(R.color.nc_darkRed)
|
||||
.setIcon(DisplayUtils.getTintedDrawable(context.getResources(),
|
||||
R.drawable.ic_timer_black_24dp, R.color.bg_default))
|
||||
.setPositiveButtonColor(context.getResources().getColor(R.color.nc_darkRed))
|
||||
.setCancelable(false)
|
||||
.setTitle(R.string.nc_settings_server_eol_title)
|
||||
.setMessage(R.string.nc_settings_server_eol)
|
||||
.setPositiveButton(R.string.nc_settings_remove_account, new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
boolean otherUserExists = userUtils.scheduleUserForDeletionWithId(currentUser.getId());
|
||||
|
||||
OneTimeWorkRequest accountRemovalWork = new OneTimeWorkRequest.Builder(AccountRemovalWorker.class).build();
|
||||
WorkManager.getInstance().enqueue(accountRemovalWork);
|
||||
|
||||
if (otherUserExists && getView() != null) {
|
||||
onViewBound(getView());
|
||||
onAttach(getView());
|
||||
} else if (!otherUserExists) {
|
||||
getRouter().setRoot(RouterTransaction.with(
|
||||
new ServerSelectionController())
|
||||
.pushChangeHandler(new VerticalChangeHandler())
|
||||
.popChangeHandler(new VerticalChangeHandler()));
|
||||
}
|
||||
}
|
||||
})
|
||||
.setNegativeButton(R.string.nc_cancel, new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if (userUtils.hasMultipleUsers()) {
|
||||
getRouter().pushController(RouterTransaction.with(new SwitchAccountController()));
|
||||
} else {
|
||||
getActivity().finishAffinity();
|
||||
getActivity().finish();
|
||||
}
|
||||
}
|
||||
})
|
||||
.setInstanceStateHandler(ID_DELETE_CONVERSATION_DIALOG, saveStateHandler)
|
||||
.show();
|
||||
showServerEOLDialog();
|
||||
return;
|
||||
}
|
||||
|
||||
credentials = ApiUtils.getCredentials(currentUser.getUsername(), currentUser.getToken());
|
||||
@ -906,6 +868,49 @@ public class ConversationsListController extends BaseController implements Searc
|
||||
}
|
||||
}
|
||||
|
||||
private void showServerEOLDialog() {
|
||||
new LovelyStandardDialog(getActivity(), LovelyStandardDialog.ButtonLayout.HORIZONTAL)
|
||||
.setTopColorRes(R.color.nc_darkRed)
|
||||
.setIcon(DisplayUtils.getTintedDrawable(context.getResources(),
|
||||
R.drawable.ic_timer_black_24dp, R.color.bg_default))
|
||||
.setPositiveButtonColor(context.getResources().getColor(R.color.nc_darkRed))
|
||||
.setCancelable(false)
|
||||
.setTitle(R.string.nc_settings_server_eol_title)
|
||||
.setMessage(R.string.nc_settings_server_eol)
|
||||
.setPositiveButton(R.string.nc_settings_remove_account, new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
boolean otherUserExists = userUtils.scheduleUserForDeletionWithId(currentUser.getId());
|
||||
|
||||
OneTimeWorkRequest accountRemovalWork = new OneTimeWorkRequest.Builder(AccountRemovalWorker.class).build();
|
||||
WorkManager.getInstance().enqueue(accountRemovalWork);
|
||||
|
||||
if (otherUserExists && getView() != null) {
|
||||
onViewBound(getView());
|
||||
onAttach(getView());
|
||||
} else if (!otherUserExists) {
|
||||
getRouter().setRoot(RouterTransaction.with(
|
||||
new ServerSelectionController())
|
||||
.pushChangeHandler(new VerticalChangeHandler())
|
||||
.popChangeHandler(new VerticalChangeHandler()));
|
||||
}
|
||||
}
|
||||
})
|
||||
.setNegativeButton(R.string.nc_cancel, new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
if (userUtils.hasMultipleUsers()) {
|
||||
getRouter().pushController(RouterTransaction.with(new SwitchAccountController()));
|
||||
} else {
|
||||
getActivity().finishAffinity();
|
||||
getActivity().finish();
|
||||
}
|
||||
}
|
||||
})
|
||||
.setInstanceStateHandler(ID_DELETE_CONVERSATION_DIALOG, saveStateHandler)
|
||||
.show();
|
||||
}
|
||||
|
||||
private void deleteConversation(Data data) {
|
||||
OneTimeWorkRequest deleteConversationWorker =
|
||||
new OneTimeWorkRequest.Builder(DeleteConversationWorker.class).setInputData(data).build();
|
||||
|
Loading…
Reference in New Issue
Block a user