diff options
author | Daniel Gultsch <daniel@gultsch.de> | 2018-11-09 19:47:36 +0300 |
---|---|---|
committer | Daniel Gultsch <daniel@gultsch.de> | 2018-11-09 19:47:36 +0300 |
commit | 5012ff3545a443c4f9317bb9ff38275c33715330 (patch) | |
tree | 5a555ce4f14b329acd39ab9fc4c8cd0275dff1cc /src/quicksy/java | |
parent | aca4ba981f325553edb5cc45accf219fd42e6b97 (diff) |
added interface to edit nick
Diffstat (limited to 'src/quicksy/java')
5 files changed, 147 insertions, 4 deletions
diff --git a/src/quicksy/java/eu/siacs/conversations/ui/EnterNameActivity.java b/src/quicksy/java/eu/siacs/conversations/ui/EnterNameActivity.java new file mode 100644 index 000000000..0702aa052 --- /dev/null +++ b/src/quicksy/java/eu/siacs/conversations/ui/EnterNameActivity.java @@ -0,0 +1,54 @@ +package eu.siacs.conversations.ui; + +import android.content.Intent; +import android.databinding.DataBindingUtil; +import android.os.Bundle; +import android.support.v7.widget.Toolbar; +import android.view.View; + +import eu.siacs.conversations.R; +import eu.siacs.conversations.databinding.ActivityEnterNameBinding; +import eu.siacs.conversations.entities.Account; +import eu.siacs.conversations.utils.AccountUtils; + +public class EnterNameActivity extends XmppActivity { + + private ActivityEnterNameBinding binding; + + private Account account; + + @Override + protected void onCreate(final Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + this.binding = DataBindingUtil.setContentView(this, R.layout.activity_enter_name); + setSupportActionBar((Toolbar) this.binding.toolbar); + this.binding.next.setOnClickListener(this::next); + } + + private void next(View view) { + if (account != null) { + + String name = this.binding.name.getText().toString().trim(); + + account.setDisplayName(name); + + xmppConnectionService.publishDisplayName(account); + + Intent intent = new Intent(this, PublishProfilePictureActivity.class); + intent.putExtra(PublishProfilePictureActivity.EXTRA_ACCOUNT, account.getJid().asBareJid().toEscapedString()); + intent.putExtra("setup", true); + startActivity(intent); + } + finish(); + } + + @Override + protected void refreshUiReal() { + + } + + @Override + void onBackendConnected() { + this.account = AccountUtils.getFirst(xmppConnectionService); + } +} diff --git a/src/quicksy/java/eu/siacs/conversations/ui/TosActivity.java b/src/quicksy/java/eu/siacs/conversations/ui/TosActivity.java new file mode 100644 index 000000000..d38bab7ce --- /dev/null +++ b/src/quicksy/java/eu/siacs/conversations/ui/TosActivity.java @@ -0,0 +1,80 @@ +package eu.siacs.conversations.ui; + +import android.content.Intent; +import android.content.SharedPreferences; +import android.content.pm.ActivityInfo; +import android.os.Bundle; +import android.preference.PreferenceManager; +import android.support.v7.app.ActionBar; +import android.support.v7.app.AppCompatActivity; +import android.text.Html; +import android.text.method.LinkMovementMethod; +import android.widget.Button; +import android.widget.TextView; + +import java.util.List; + +import eu.siacs.conversations.R; +import eu.siacs.conversations.entities.Account; +import eu.siacs.conversations.utils.XmppUri; + +public class TosActivity 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 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); + setContentView(R.layout.activity_tos); + setSupportActionBar(findViewById(R.id.toolbar)); + final ActionBar ab = getSupportActionBar(); + if (ab != null) { + ab.setDisplayShowHomeEnabled(false); + ab.setDisplayHomeAsUpEnabled(false); + } + final Button agreeButton = findViewById(R.id.agree); + final TextView welcomeText = findViewById(R.id.welcome_text); + agreeButton.setOnClickListener(v -> { + final Intent intent = new Intent(this, EnterPhoneNumberActivity.class); + SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this); + preferences.edit().putBoolean("tos", true).apply(); + addInviteUri(intent); + startActivity(intent); + finish(); + }); + welcomeText.setText(Html.fromHtml(getString(R.string.welcome_text_quicksy))); + welcomeText.setMovementMethod(LinkMovementMethod.getInstance()); + + } + + public void addInviteUri(Intent intent) { + StartConversationActivity.addInviteUri(intent, getIntent()); + } +} diff --git a/src/quicksy/java/eu/siacs/conversations/ui/VerifyActivity.java b/src/quicksy/java/eu/siacs/conversations/ui/VerifyActivity.java index 9225a8be6..f6be2d91f 100644 --- a/src/quicksy/java/eu/siacs/conversations/ui/VerifyActivity.java +++ b/src/quicksy/java/eu/siacs/conversations/ui/VerifyActivity.java @@ -269,9 +269,7 @@ public class VerifyActivity extends XmppActivity implements ClipboardManager.OnP private void performPostVerificationRedirect() { if (redirectInProgress.compareAndSet(false, true)) { - Intent intent = new Intent(this, PublishProfilePictureActivity.class); - intent.putExtra(PublishProfilePictureActivity.EXTRA_ACCOUNT, account.getJid().asBareJid().toEscapedString()); - intent.putExtra("setup", true); + Intent intent = new Intent(this, EnterNameActivity.class); startActivity(intent); finish(); } diff --git a/src/quicksy/java/eu/siacs/conversations/ui/util/ApiDialogHelper.java b/src/quicksy/java/eu/siacs/conversations/ui/util/ApiDialogHelper.java index a4384c115..faab325d8 100644 --- a/src/quicksy/java/eu/siacs/conversations/ui/util/ApiDialogHelper.java +++ b/src/quicksy/java/eu/siacs/conversations/ui/util/ApiDialogHelper.java @@ -39,6 +39,9 @@ public class ApiDialogHelper { case 403: res = R.string.the_app_is_out_of_date; break; + case 409: + res = R.string.logged_in_with_another_device; + break; case 500: res = R.string.something_went_wrong_processing_your_request; break; diff --git a/src/quicksy/java/eu/siacs/conversations/utils/SignupUtils.java b/src/quicksy/java/eu/siacs/conversations/utils/SignupUtils.java index ac796ea99..72f82bb38 100644 --- a/src/quicksy/java/eu/siacs/conversations/utils/SignupUtils.java +++ b/src/quicksy/java/eu/siacs/conversations/utils/SignupUtils.java @@ -2,6 +2,8 @@ package eu.siacs.conversations.utils; import android.app.Activity; import android.content.Intent; +import android.content.SharedPreferences; +import android.preference.PreferenceManager; import android.util.Log; import eu.siacs.conversations.Config; @@ -9,6 +11,7 @@ import eu.siacs.conversations.entities.Account; import eu.siacs.conversations.ui.ConversationsActivity; import eu.siacs.conversations.ui.EnterPhoneNumberActivity; import eu.siacs.conversations.ui.StartConversationActivity; +import eu.siacs.conversations.ui.TosActivity; import eu.siacs.conversations.ui.VerifyActivity; public class SignupUtils { @@ -28,7 +31,12 @@ public class SignupUtils { intent = new Intent(activity, StartConversationActivity.class); } } else { - intent = getSignUpIntent(activity); + SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(activity); + if (preferences.getBoolean("tos",false)) { + intent = getSignUpIntent(activity); + } else { + intent = new Intent(activity, TosActivity.class); + } } intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); |