diff --git a/res/layout/contact_filter_toolbar.xml b/res/layout/contact_filter_toolbar.xml
index 09d4fdeff..1b0aa75a6 100644
--- a/res/layout/contact_filter_toolbar.xml
+++ b/res/layout/contact_filter_toolbar.xml
@@ -21,7 +21,7 @@
android:contentDescription="@string/email_address"
android:fontFamily="sans-serif"
android:gravity="center_vertical"
- android:hint="@string/contact_selection_activity__enter_name_or_number"
+ android:hint="@string/contact_selection_activity__enter_name_or_email"
android:inputType="textPersonName"
android:textCursorDrawable="@null"
android:textSize="18sp" />
diff --git a/res/layout/invite_activity.xml b/res/layout/invite_activity.xml
index c9f4b0c16..c82515f36 100644
--- a/res/layout/invite_activity.xml
+++ b/res/layout/invite_activity.xml
@@ -27,7 +27,7 @@
android:layout_height="wrap_content"
android:textColor="@color/white"
android:textSize="20sp"
- android:text="@string/InviteActivity_friends_dont_let_friends_text_unencrypted"
+ android:text="@string/InviteActivity_friends_dont_let_friends"
android:gravity="center_horizontal"
android:layout_marginBottom="30dp"
android:layout_marginTop="18dp"
@@ -64,62 +64,8 @@
android:layout_height="wrap_content"
tools:ignore="ButtonStyle" />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 2a74f9e05..ce23be525 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -359,8 +359,10 @@
- Send %d SMS invites?
Let\'s switch to Delta Chat: %1$s
+ Let\'s switch to Delta Chat - %1$s - you can text me at %2$s
It looks like you don\'t have any apps to share to.
Friends don\'t let friends chat unencrypted.
+ Friends don\'t let friends locked in messaging silos.
Failed to send
@@ -724,6 +726,7 @@
Enter name or number
+ Enter name or email address
No contacts.
diff --git a/src/org/thoughtcrime/securesms/InviteActivity.java b/src/org/thoughtcrime/securesms/InviteActivity.java
index 74a5478f4..2fa719f05 100644
--- a/src/org/thoughtcrime/securesms/InviteActivity.java
+++ b/src/org/thoughtcrime/securesms/InviteActivity.java
@@ -26,6 +26,7 @@ import android.widget.Toast;
import org.thoughtcrime.securesms.components.ContactFilterToolbar;
import org.thoughtcrime.securesms.components.ContactFilterToolbar.OnFilterChangedListener;
+import org.thoughtcrime.securesms.connect.DcHelper;
import org.thoughtcrime.securesms.contacts.ContactsCursorLoader.DisplayMode;
import org.thoughtcrime.securesms.database.Address;
import org.thoughtcrime.securesms.database.DatabaseFactory;
@@ -38,12 +39,9 @@ import org.thoughtcrime.securesms.util.task.ProgressDialogAsyncTask;
import java.util.concurrent.ExecutionException;
-public class InviteActivity extends PassphraseRequiredActionBarActivity implements ContactSelectionListFragment.OnContactSelectedListener {
+public class InviteActivity extends PassphraseRequiredActionBarActivity {
- private ContactSelectionListFragment contactsFragment;
private EditText inviteText;
- private ViewGroup smsSendFrame;
- private Button smsSendButton;
private Animation slideInAnimation;
private Animation slideOutAnimation;
private ImageView heart;
@@ -66,29 +64,17 @@ public class InviteActivity extends PassphraseRequiredActionBarActivity implemen
slideOutAnimation = loadAnimation(R.anim.slide_to_bottom);
View shareButton = ViewUtil.findById(this, R.id.share_button);
- View smsButton = ViewUtil.findById(this, R.id.sms_button);
- Button smsCancelButton = ViewUtil.findById(this, R.id.cancel_sms_button);
- ContactFilterToolbar contactFilter = ViewUtil.findById(this, R.id.contact_filter);
inviteText = ViewUtil.findById(this, R.id.invite_text);
- smsSendFrame = ViewUtil.findById(this, R.id.sms_send_frame);
- smsSendButton = ViewUtil.findById(this, R.id.send_sms_button);
heart = ViewUtil.findById(this, R.id.heart);
- contactsFragment = (ContactSelectionListFragment)getSupportFragmentManager().findFragmentById(R.id.contact_selection_list_fragment);
- inviteText.setText(getString(R.string.InviteActivity_lets_switch_to_signal, "https://sgnl.link/1KpeYmF"));
- updateSmsButtonText();
+ String selfMail = DcHelper.getContext(this).getConfig("addr", "");
+ inviteText.setText(getString(R.string.InviteActivity_lets_switch_to_delta_chat, "https://delta.chat", selfMail));
if (VERSION.SDK_INT >= VERSION_CODES.LOLLIPOP) {
heart.getViewTreeObserver().addOnPreDrawListener(new HeartPreDrawListener());
}
- contactsFragment.setOnContactSelectedListener(this);
shareButton.setOnClickListener(new ShareClickListener());
- smsButton.setOnClickListener(new SmsClickListener());
- smsCancelButton.setOnClickListener(new SmsCancelClickListener());
- smsSendButton.setOnClickListener(new SmsSendClickListener());
- contactFilter.setOnFilterChangedListener(new ContactFilterChangedListener());
- contactFilter.setNavigationIcon(R.drawable.ic_search_white_24dp);
}
private Animation loadAnimation(@AnimRes int animResId) {
@@ -97,44 +83,6 @@ public class InviteActivity extends PassphraseRequiredActionBarActivity implemen
return animation;
}
- @Override
- public void onContactSelected(String number) {
- updateSmsButtonText();
- }
-
- @Override
- public void onContactDeselected(String number) {
- updateSmsButtonText();
- }
-
- private void sendSmsInvites() {
- new SendSmsInvitesAsyncTask(this, inviteText.getText().toString())
- .executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR,
- contactsFragment.getSelectedContacts()
- .toArray(new String[contactsFragment.getSelectedContacts().size()]));
- }
-
- private void updateSmsButtonText() {
- smsSendButton.setText(getResources().getQuantityString(R.plurals.InviteActivity_send_sms_to_friends,
- contactsFragment.getSelectedContacts().size(),
- contactsFragment.getSelectedContacts().size()));
- smsSendButton.setEnabled(!contactsFragment.getSelectedContacts().isEmpty());
- }
-
- @Override public void onBackPressed() {
- if (smsSendFrame.getVisibility() == View.VISIBLE) {
- cancelSmsSelection();
- } else {
- super.onBackPressed();
- }
- }
-
- private void cancelSmsSelection() {
- contactsFragment.reset();
- updateSmsButtonText();
- ViewUtil.animateOut(smsSendFrame, slideOutAnimation, View.GONE);
- }
-
private class ShareClickListener implements OnClickListener {
@Override
public void onClick(View v) {
@@ -150,41 +98,6 @@ public class InviteActivity extends PassphraseRequiredActionBarActivity implemen
}
}
- private class SmsClickListener implements OnClickListener {
- @Override
- public void onClick(View v) {
- ViewUtil.animateIn(smsSendFrame, slideInAnimation);
- }
- }
-
- private class SmsCancelClickListener implements OnClickListener {
- @Override
- public void onClick(View v) {
- cancelSmsSelection();
- }
- }
-
- private class SmsSendClickListener implements OnClickListener {
- @Override
- public void onClick(View v) {
- new AlertDialog.Builder(InviteActivity.this)
- .setTitle(getResources().getQuantityString(R.plurals.InviteActivity_send_sms_invites,
- contactsFragment.getSelectedContacts().size(),
- contactsFragment.getSelectedContacts().size()))
- .setMessage(inviteText.getText().toString())
- .setPositiveButton(R.string.yes, (dialog, which) -> sendSmsInvites())
- .setNegativeButton(R.string.no, (dialog, which) -> dialog.dismiss())
- .show();
- }
- }
-
- private class ContactFilterChangedListener implements OnFilterChangedListener {
- @Override
- public void onFilterChanged(String filter) {
- contactsFragment.setQueryFilter(filter);
- }
- }
-
private class HeartPreDrawListener implements OnPreDrawListener {
@Override
@TargetApi(VERSION_CODES.LOLLIPOP)
@@ -201,51 +114,4 @@ public class InviteActivity extends PassphraseRequiredActionBarActivity implemen
return false;
}
}
-
- @SuppressLint("StaticFieldLeak")
- private class SendSmsInvitesAsyncTask extends ProgressDialogAsyncTask {
- private final String message;
-
- SendSmsInvitesAsyncTask(Context context, String message) {
- super(context, R.string.InviteActivity_sending, R.string.InviteActivity_sending);
- this.message = message;
- }
-
- @Override
- protected Void doInBackground(String... numbers) {
- final Context context = getContext();
- if (context == null) return null;
-
- for (String number : numbers) {
- Recipient recipient = Recipient.from(context, Address.fromExternal(context, number), false);
- int subscriptionId = recipient.getDefaultSubscriptionId().or(-1);
-
- MessageSender.send(context, new OutgoingTextMessage(recipient, message, subscriptionId), -1L, true, null);
-
- if (recipient.getContactUri() != null) {
- DatabaseFactory.getRecipientDatabase(context).setSeenInviteReminder(recipient, true);
- }
- }
-
- return null;
- }
-
- @Override
- protected void onPostExecute(Void aVoid) {
- super.onPostExecute(aVoid);
- final Context context = getContext();
- if (context == null) return;
-
- ViewUtil.animateOut(smsSendFrame, slideOutAnimation, View.GONE).addListener(new Listener() {
- @Override
- public void onSuccess(Boolean result) {
- contactsFragment.reset();
- }
-
- @Override
- public void onFailure(ExecutionException e) {}
- });
- Toast.makeText(context, R.string.InviteActivity_invitations_sent, Toast.LENGTH_LONG).show();
- }
- }
}