aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/ui
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2018-06-29 22:48:22 +0200
committerChristian Schneppe <christian@pix-art.de>2018-06-29 22:48:22 +0200
commit81ba0b467e17c901c9d25dbea2331c7a848c7034 (patch)
treedbc40e898673ad57addbcc3fde151b379a6f35d9 /src/main/java/de/pixart/messenger/ui
parent70477c9fc9c6c6df45d2b921d920ec4070535bb4 (diff)
use TextInputLayout in quickedit dialog
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui')
-rw-r--r--src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java4
-rw-r--r--src/main/java/de/pixart/messenger/ui/ContactDetailsActivity.java2
-rw-r--r--src/main/java/de/pixart/messenger/ui/XmppActivity.java33
3 files changed, 18 insertions, 21 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java b/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java
index 5ba1aad49..4782d371f 100644
--- a/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java
+++ b/src/main/java/de/pixart/messenger/ui/ConferenceDetailsActivity.java
@@ -292,12 +292,12 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
setSupportActionBar((Toolbar) binding.toolbar);
configureActionBar(getSupportActionBar());
this.binding.editNickButton.setOnClickListener(v -> quickEdit(mConversation.getMucOptions().getActualNick(),
- 0,
+ R.string.nickname_for_this_group_chat,
value -> {
if (xmppConnectionService.renameInMuc(mConversation, value, renameCallback)) {
return null;
} else {
- return getString(R.string.invalid_username);
+ return getString(R.string.invalid_muc_nick);
}
}));
this.mAdvancedMode = getPreferences().getBoolean("advanced_muc_mode", false);
diff --git a/src/main/java/de/pixart/messenger/ui/ContactDetailsActivity.java b/src/main/java/de/pixart/messenger/ui/ContactDetailsActivity.java
index 11cf78858..4919a4251 100644
--- a/src/main/java/de/pixart/messenger/ui/ContactDetailsActivity.java
+++ b/src/main/java/de/pixart/messenger/ui/ContactDetailsActivity.java
@@ -298,7 +298,7 @@ public class ContactDetailsActivity extends OmemoActivity implements OnAccountUp
case R.id.action_edit_contact:
Uri systemAccount = contact.getSystemAccount();
if (systemAccount == null) {
- quickEdit(contact.getDisplayName(), 0, value -> {
+ quickEdit(contact.getServerName(), R.string.contact_name, value -> {
contact.setServerName(value);
ContactDetailsActivity.this.xmppConnectionService.pushContactToServer(contact);
populateView();
diff --git a/src/main/java/de/pixart/messenger/ui/XmppActivity.java b/src/main/java/de/pixart/messenger/ui/XmppActivity.java
index 73a9e2f5f..ca833d9c1 100644
--- a/src/main/java/de/pixart/messenger/ui/XmppActivity.java
+++ b/src/main/java/de/pixart/messenger/ui/XmppActivity.java
@@ -19,6 +19,7 @@ import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.content.res.Resources;
import android.content.res.TypedArray;
+import android.databinding.DataBindingUtil;
import android.graphics.Bitmap;
import android.graphics.Color;
import android.graphics.Point;
@@ -36,6 +37,7 @@ import android.os.SystemClock;
import android.preference.PreferenceManager;
import android.provider.Settings;
import android.support.annotation.BoolRes;
+import android.support.annotation.StringRes;
import android.support.v4.content.ContextCompat;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatDelegate;
@@ -46,7 +48,6 @@ import android.util.Pair;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
-import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Spinner;
import android.widget.Toast;
@@ -66,6 +67,7 @@ import java.util.concurrent.atomic.AtomicInteger;
import de.pixart.messenger.Config;
import de.pixart.messenger.R;
import de.pixart.messenger.crypto.PgpEngine;
+import de.pixart.messenger.databinding.DialogQuickeditBinding;
import de.pixart.messenger.entities.Account;
import de.pixart.messenger.entities.Contact;
import de.pixart.messenger.entities.Conversation;
@@ -709,11 +711,11 @@ public abstract class XmppActivity extends ActionBarActivity {
builder.create().show();
}
- protected void quickEdit(String previousValue, int hint, OnValueEdited callback) {
+ protected void quickEdit(String previousValue, @StringRes int hint, OnValueEdited callback) {
quickEdit(previousValue, callback, hint, false, false);
}
- protected void quickEdit(String previousValue, int hint, OnValueEdited callback, boolean permitEmpty) {
+ protected void quickEdit(String previousValue, @StringRes int hint, OnValueEdited callback, boolean permitEmpty) {
quickEdit(previousValue, callback, hint, false, permitEmpty);
}
@@ -724,37 +726,32 @@ public abstract class XmppActivity extends ActionBarActivity {
@SuppressLint("InflateParams")
private void quickEdit(final String previousValue,
final OnValueEdited callback,
- final int hint,
+ final @StringRes int hint,
boolean password,
boolean permitEmpty) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
- View view = getLayoutInflater().inflate(R.layout.quickedit, null);
- final EditText editor = view.findViewById(R.id.editor);
+ DialogQuickeditBinding binding = DataBindingUtil.inflate(getLayoutInflater(),R.layout.dialog_quickedit, null, false);
if (password) {
- editor.setInputType(InputType.TYPE_CLASS_TEXT
- | InputType.TYPE_TEXT_VARIATION_PASSWORD);
- builder.setPositiveButton(R.string.accept, null);
- } else {
- builder.setPositiveButton(R.string.ok, null);
+ binding.inputEditText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
}
+ builder.setPositiveButton(R.string.accept, null);
if (hint != 0) {
- editor.setHint(hint);
+ binding.inputLayout.setHint(getString(hint));
}
- editor.requestFocus();
- editor.setText("");
+ binding.inputEditText.requestFocus();
if (previousValue != null) {
- editor.getText().append(previousValue);
+ binding.inputEditText.getText().append(previousValue);
}
- builder.setView(view);
+ builder.setView(binding.getRoot());
builder.setNegativeButton(R.string.cancel, null);
final AlertDialog dialog = builder.create();
dialog.show();
View.OnClickListener clickListener = v -> {
- String value = editor.getText().toString();
+ String value = binding.inputEditText.getText().toString();
if (!value.equals(previousValue) && (!value.trim().isEmpty() || permitEmpty)) {
String error = callback.onValueEdited(value);
if (error != null) {
- editor.setError(error);
+ binding.inputLayout.setError(error);
return;
}
}