Commit graph

8 commits

Author SHA1 Message Date
Luke Barnard
b185f43d3d Use _uniq instead of _sortedUniq for return unique matched results
_sortedUniq claims to be like _uniq but optimised for sorted arrays - https://lodash.com/docs/4.17.4#sortedUniqBy. But in practice this isn't quite true, so stick with the unoptimised version.
2017-07-18 16:23:54 +01:00
Luke Barnard
710ee69418 Don't try to match with an empty query string
This was causing UserProvider to give results because every string happens to start with empty string and its regex also acepts the empty string.
2017-07-04 17:32:07 +01:00
Luke Barnard
6a80875c01 Only match users by matchgin displayname or user ID prefixes
Because tab completing "k" probably shouldn't give you "luke"

Fixes https://github.com/vector-im/riot-web/issues/4495
2017-07-04 16:29:06 +01:00
Luke Barnard
e688eca823 Improve the sorting applied to the sorting of autocomplete results
QueryMatcher: sort results based on the position of the query within the matching value. The closer to the beginning of the word, the higher the result apears.

UserProvider: perf improvement (slice early) and refactor onUserSpoke
2017-07-04 13:53:06 +01:00
Luke Barnard
982b009b90 Implement ascii emoji tab completion
When a fully plaintext, ascii emoji is typed like ";-)", pressing tab will suggest emojione to replace it with based off of the meta data provided by emojione.

e.g. the aliases_ascii for `😃` are [":D",":-D","=D"] so typing ":D *tab*" will insert a real 😃
2017-06-29 11:29:55 +01:00
David Baker
3cdc7c9114 Add copyright headers 2017-06-23 18:30:16 +01:00
Luke Barnard
89afcfd897 Linting 2017-06-23 17:35:07 +01:00
Aviral Dasgupta
0653343319
order User completions by last spoken 2017-03-07 04:09:26 +05:30