mirror of
https://github.com/oxen-io/session-android.git
synced 2024-12-25 01:07:47 +00:00
Debug
This commit is contained in:
parent
871f629e64
commit
f0224f8ec6
@ -243,6 +243,7 @@ import java.util.concurrent.ExecutionException;
|
|||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
import java.util.concurrent.atomic.AtomicInteger;
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
|
|
||||||
|
import kotlin.Unit;
|
||||||
import network.loki.messenger.R;
|
import network.loki.messenger.R;
|
||||||
import nl.komponents.kovenant.combine.Tuple2;
|
import nl.komponents.kovenant.combine.Tuple2;
|
||||||
|
|
||||||
@ -398,6 +399,13 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
|||||||
}
|
}
|
||||||
composeText.setSelection(composeText.length(), composeText.length());
|
composeText.setSelection(composeText.length(), composeText.length());
|
||||||
composeText.addTextChangedListener(mentionTextWatcher);
|
composeText.addTextChangedListener(mentionTextWatcher);
|
||||||
|
userSelectionView.setOnUserSelected(tuple -> {
|
||||||
|
String oldText = composeText.getText().toString();
|
||||||
|
String newText = oldText.substring(0, mentionStartIndex) + tuple.getFirst();
|
||||||
|
composeText.setText(newText);
|
||||||
|
composeText.setSelection(newText.length());
|
||||||
|
return Unit.INSTANCE;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -2740,8 +2748,8 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onTextChanged(String text) {
|
public void onTextChanged(String text) {
|
||||||
if (!enabled) { return; }
|
if (!enabled | text.length() == 0) { return; }
|
||||||
int currentEndIndex = (text.length() != 0) ? text.length() - 1 : 0;
|
int currentEndIndex = text.length() - 1;
|
||||||
char lastCharacter = text.charAt(currentEndIndex);
|
char lastCharacter = text.charAt(currentEndIndex);
|
||||||
LokiUserDatabase userDatabase = DatabaseFactory.getLokiUserDatabase(ConversationActivity.this);
|
LokiUserDatabase userDatabase = DatabaseFactory.getLokiUserDatabase(ConversationActivity.this);
|
||||||
if (lastCharacter == '@') {
|
if (lastCharacter == '@') {
|
||||||
|
@ -14,6 +14,7 @@ class UserSelectionView(context: Context, attrs: AttributeSet?, defStyleAttr: In
|
|||||||
private var users = listOf<Tuple2<String, String>>()
|
private var users = listOf<Tuple2<String, String>>()
|
||||||
set(newValue) { field = newValue; userSelectionViewAdapter.users = newValue }
|
set(newValue) { field = newValue; userSelectionViewAdapter.users = newValue }
|
||||||
private var hasGroupContext = false
|
private var hasGroupContext = false
|
||||||
|
var onUserSelected: ((Tuple2<String, String>) -> Unit)? = null
|
||||||
|
|
||||||
private val userSelectionViewAdapter by lazy { Adapter(context) }
|
private val userSelectionViewAdapter by lazy { Adapter(context) }
|
||||||
|
|
||||||
@ -49,6 +50,9 @@ class UserSelectionView(context: Context, attrs: AttributeSet?, defStyleAttr: In
|
|||||||
init {
|
init {
|
||||||
adapter = userSelectionViewAdapter
|
adapter = userSelectionViewAdapter
|
||||||
userSelectionViewAdapter.users = users
|
userSelectionViewAdapter.users = users
|
||||||
|
setOnItemClickListener { _, _, position, _ ->
|
||||||
|
onUserSelected?.invoke(users[position])
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun show(users: List<Tuple2<String, String>>, threadID: Long) {
|
fun show(users: List<Tuple2<String, String>>, threadID: Long) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user