mirror of https://github.com/M66B/FairEmail.git
Replace email address
This commit is contained in:
parent
c3df732a26
commit
8bc3eaa91e
|
@ -58,6 +58,7 @@ public class EditTextMultiAutoComplete extends AppCompatMultiAutoCompleteTextVie
|
||||||
private boolean dark;
|
private boolean dark;
|
||||||
private int colorAccent;
|
private int colorAccent;
|
||||||
private ContextThemeWrapper ctx;
|
private ContextThemeWrapper ctx;
|
||||||
|
private Tokenizer tokenizer;
|
||||||
|
|
||||||
public EditTextMultiAutoComplete(@NonNull Context context) {
|
public EditTextMultiAutoComplete(@NonNull Context context) {
|
||||||
super(context);
|
super(context);
|
||||||
|
@ -77,6 +78,9 @@ public class EditTextMultiAutoComplete extends AppCompatMultiAutoCompleteTextVie
|
||||||
private void init(Context context) {
|
private void init(Context context) {
|
||||||
Helper.setKeyboardIncognitoMode(this, context);
|
Helper.setKeyboardIncognitoMode(this, context);
|
||||||
|
|
||||||
|
tokenizer = new CommaTokenizer();
|
||||||
|
setTokenizer(tokenizer);
|
||||||
|
|
||||||
prefs = PreferenceManager.getDefaultSharedPreferences(context);
|
prefs = PreferenceManager.getDefaultSharedPreferences(context);
|
||||||
dark = Helper.isDarkTheme(context);
|
dark = Helper.isDarkTheme(context);
|
||||||
colorAccent = Helper.resolveColor(context, R.attr.colorAccent);
|
colorAccent = Helper.resolveColor(context, R.attr.colorAccent);
|
||||||
|
@ -182,6 +186,25 @@ public class EditTextMultiAutoComplete extends AppCompatMultiAutoCompleteTextVie
|
||||||
return super.onTouchEvent(event);
|
return super.onTouchEvent(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void replaceText(CharSequence text) {
|
||||||
|
clearComposingText();
|
||||||
|
|
||||||
|
Editable edit = getText();
|
||||||
|
int _end = getSelectionEnd();
|
||||||
|
int start = tokenizer.findTokenStart(edit, _end);
|
||||||
|
int end = tokenizer.findTokenEnd(edit, _end);
|
||||||
|
if (end < edit.length() && edit.charAt(end) == ',') {
|
||||||
|
end++;
|
||||||
|
while (end < edit.length() && edit.charAt(end) == ' ')
|
||||||
|
end++;
|
||||||
|
}
|
||||||
|
|
||||||
|
edit.replace(start, end, tokenizer.terminateToken(text));
|
||||||
|
|
||||||
|
setSelection(edit.length());
|
||||||
|
}
|
||||||
|
|
||||||
private final Runnable update = new Runnable() {
|
private final Runnable update = new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
|
|
|
@ -1186,9 +1186,6 @@ public class FragmentCompose extends FragmentBase {
|
||||||
etCc.setAdapter(cadapter);
|
etCc.setAdapter(cadapter);
|
||||||
etBcc.setAdapter(cadapter);
|
etBcc.setAdapter(cadapter);
|
||||||
|
|
||||||
etTo.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
|
|
||||||
etCc.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
|
|
||||||
etBcc.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
|
|
||||||
grpAddresses.setVisibility(cc_bcc ? View.VISIBLE : View.GONE);
|
grpAddresses.setVisibility(cc_bcc ? View.VISIBLE : View.GONE);
|
||||||
|
|
||||||
rvAttachment.setHasFixedSize(false);
|
rvAttachment.setHasFixedSize(false);
|
||||||
|
|
Loading…
Reference in New Issue