offer back/cancel button when using magic create

This commit is contained in:
Daniel Gultsch 2016-07-21 19:16:41 +02:00
parent 2843a0af26
commit c8188ee52c

View File

@ -235,6 +235,7 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
@Override
public void onClick(final View v) {
deleteMagicCreatedAccountAndReturnIfNecessary();
finish();
}
};
@ -261,6 +262,29 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
updateSaveButton();
}
@Override
public boolean onNavigateUp() {
deleteMagicCreatedAccountAndReturnIfNecessary();
return super.onNavigateUp();
}
@Override
public void onBackPressed() {
deleteMagicCreatedAccountAndReturnIfNecessary();
super.onBackPressed();
}
private void deleteMagicCreatedAccountAndReturnIfNecessary() {
if (Config.MAGIC_CREATE_DOMAIN != null
&& mAccount != null
&& mAccount.isOptionSet(Account.OPTION_MAGIC_CREATE)
&& mAccount.isOptionSet(Account.OPTION_REGISTER)
&& xmppConnectionService.getAccounts().size() == 1) {
xmppConnectionService.deleteAccount(mAccount);
startActivity(new Intent(EditAccountActivity.this, WelcomeActivity.class));
}
}
@Override
public void onAccountUpdate() {
refreshUi();
@ -594,13 +618,7 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
updateAccountInformation(true);
}
}
if ((Config.MAGIC_CREATE_DOMAIN == null && this.xmppConnectionService.getAccounts().size() == 0)
|| (this.mAccount != null && this.mAccount == xmppConnectionService.getPendingAccount())) {
if (getActionBar() != null) {
getActionBar().setDisplayHomeAsUpEnabled(false);
getActionBar().setDisplayShowHomeEnabled(false);
getActionBar().setHomeButtonEnabled(false);
}
if (Config.MAGIC_CREATE_DOMAIN == null && this.xmppConnectionService.getAccounts().size() == 0) {
this.mCancelButton.setEnabled(false);
this.mCancelButton.setTextColor(getSecondaryTextColor());
}