105 lines
3.2 KiB
Java
105 lines
3.2 KiB
Java
package eu.siacs.conversations.ui;
|
|
|
|
import android.content.Intent;
|
|
import android.content.pm.ActivityInfo;
|
|
import android.databinding.DataBindingUtil;
|
|
import android.os.Bundle;
|
|
import android.support.v7.app.AppCompatActivity;
|
|
import android.support.v7.widget.Toolbar;
|
|
import android.view.MenuItem;
|
|
|
|
import java.util.List;
|
|
|
|
import eu.siacs.conversations.R;
|
|
import eu.siacs.conversations.databinding.ActivityPickServerBinding;
|
|
import eu.siacs.conversations.entities.Account;
|
|
|
|
public class PickServerActivity extends XmppActivity {
|
|
|
|
@Override
|
|
protected void refreshUiReal() {
|
|
|
|
}
|
|
|
|
@Override
|
|
void onBackendConnected() {
|
|
|
|
}
|
|
|
|
@Override
|
|
public void onStart() {
|
|
super.onStart();
|
|
final int theme = findTheme();
|
|
if (this.mTheme != theme) {
|
|
recreate();
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
public boolean onOptionsItemSelected(final MenuItem item) {
|
|
if (item.getItemId() == android.R.id.home) {
|
|
startActivity(new Intent(this, WelcomeActivity.class));
|
|
finish();
|
|
return true;
|
|
}
|
|
return super.onOptionsItemSelected(item);
|
|
}
|
|
|
|
@Override
|
|
public void onBackPressed() {
|
|
startActivity(new Intent(this, WelcomeActivity.class));
|
|
super.onBackPressed();
|
|
}
|
|
|
|
@Override
|
|
public void onNewIntent(Intent intent) {
|
|
if (intent != null) {
|
|
setIntent(intent);
|
|
}
|
|
}
|
|
|
|
@Override
|
|
protected void onCreate(final Bundle savedInstanceState) {
|
|
if (getResources().getBoolean(R.bool.portrait_only)) {
|
|
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
|
|
}
|
|
super.onCreate(savedInstanceState);
|
|
ActivityPickServerBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_pick_server);
|
|
setSupportActionBar((Toolbar) binding.toolbar);
|
|
configureActionBar(getSupportActionBar());
|
|
binding.useCim.setOnClickListener(v -> {
|
|
final Intent intent = new Intent(this, MagicCreateActivity.class);
|
|
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
|
|
addInviteUri(intent);
|
|
startActivity(intent);
|
|
});
|
|
binding.useOwnProvider.setOnClickListener(v -> {
|
|
List<Account> accounts = xmppConnectionService.getAccounts();
|
|
Intent intent = new Intent(this, EditAccountActivity.class);
|
|
intent.putExtra(EditAccountActivity.EXTRA_FORCE_REGISTER, true);
|
|
if (accounts.size() == 1) {
|
|
intent.putExtra("jid", accounts.get(0).getJid().asBareJid().toString());
|
|
intent.putExtra("init", true);
|
|
} else if (accounts.size() >= 1) {
|
|
intent = new Intent(this, ManageAccountActivity.class);
|
|
}
|
|
addInviteUri(intent);
|
|
startActivity(intent);
|
|
});
|
|
|
|
}
|
|
|
|
public void addInviteUri(Intent intent) {
|
|
StartConversationActivity.addInviteUri(intent, getIntent());
|
|
}
|
|
|
|
public static void launch(AppCompatActivity activity) {
|
|
Intent intent = new Intent(activity, PickServerActivity.class);
|
|
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
|
|
activity.startActivity(intent);
|
|
activity.overridePendingTransition(0, 0);
|
|
}
|
|
|
|
}
|