mirror of
https://github.com/zulip/zulip.git
synced 2025-11-15 11:22:04 +00:00
composebox_typeahead: Start emoji typeahead with single letter.
This changes the behaviour of the typeahead in the compose box to start appearing with single letter lying in the range of a-z or '+'. This is a nice solution, because all emoji names start with lower-case letters, while most emoticons like :P use a capital letter or similar. Fixes: #6808.
This commit is contained in:
committed by
Tim Abbott
parent
3e258d11e0
commit
d6a34c7a0c
@@ -24,9 +24,13 @@ var emoji_see_no_evil = {
|
|||||||
emoji_name: 'see_no_evil',
|
emoji_name: 'see_no_evil',
|
||||||
emoji_url: 'TBD',
|
emoji_url: 'TBD',
|
||||||
};
|
};
|
||||||
|
var emoji_thumbs_up = {
|
||||||
|
emoji_name: '+1',
|
||||||
|
emoji_url: 'TBD',
|
||||||
|
};
|
||||||
|
|
||||||
var emoji_list = [emoji_tada, emoji_moneybag, emoji_stadium, emoji_japanese_post_office,
|
var emoji_list = [emoji_tada, emoji_moneybag, emoji_stadium, emoji_japanese_post_office,
|
||||||
emoji_panda_face, emoji_see_no_evil];
|
emoji_panda_face, emoji_see_no_evil, emoji_thumbs_up];
|
||||||
var stream_list = ['Denmark', 'Sweden', 'The Netherlands'];
|
var stream_list = ['Denmark', 'Sweden', 'The Netherlands'];
|
||||||
var sweden_stream = {
|
var sweden_stream = {
|
||||||
name: 'Sweden',
|
name: 'Sweden',
|
||||||
@@ -781,15 +785,20 @@ global.people.add(deactivated_user);
|
|||||||
assert_typeahead_equals(":", false);
|
assert_typeahead_equals(":", false);
|
||||||
assert_typeahead_equals(": ", false);
|
assert_typeahead_equals(": ", false);
|
||||||
assert_typeahead_equals(" :", false);
|
assert_typeahead_equals(" :", false);
|
||||||
|
assert_typeahead_equals(":)", false);
|
||||||
|
assert_typeahead_equals(":4", false);
|
||||||
assert_typeahead_equals("test :-P", false);
|
assert_typeahead_equals("test :-P", false);
|
||||||
assert_typeahead_equals("hi emoji :", false);
|
assert_typeahead_equals("hi emoji :", false);
|
||||||
assert_typeahead_equals("hi emoj:i", false);
|
assert_typeahead_equals("hi emoj:i", false);
|
||||||
|
assert_typeahead_equals("hi emoji :D", false);
|
||||||
|
assert_typeahead_equals("hi emoji :t", emoji_list);
|
||||||
assert_typeahead_equals("hi emoji :ta", emoji_list);
|
assert_typeahead_equals("hi emoji :ta", emoji_list);
|
||||||
assert_typeahead_equals("hi emoji :da", emoji_list);
|
assert_typeahead_equals("hi emoji :da", emoji_list);
|
||||||
assert_typeahead_equals("hi emoji :da_", emoji_list);
|
assert_typeahead_equals("hi emoji :da_", emoji_list);
|
||||||
assert_typeahead_equals("hi emoji :da ", emoji_list);
|
assert_typeahead_equals("hi emoji :da ", emoji_list);
|
||||||
assert_typeahead_equals("hi emoji\n:da", emoji_list);
|
assert_typeahead_equals("hi emoji\n:da", emoji_list);
|
||||||
assert_typeahead_equals("hi emoji\n :ra", emoji_list);
|
assert_typeahead_equals("hi emoji\n :ra", emoji_list);
|
||||||
|
assert_typeahead_equals(":+", emoji_list);
|
||||||
assert_typeahead_equals(":la", emoji_list);
|
assert_typeahead_equals(":la", emoji_list);
|
||||||
assert_typeahead_equals(" :lee", emoji_list);
|
assert_typeahead_equals(" :lee", emoji_list);
|
||||||
assert_typeahead_equals("hi :see no", emoji_list);
|
assert_typeahead_equals("hi :see no", emoji_list);
|
||||||
|
|||||||
@@ -303,7 +303,7 @@ exports.compose_content_begins_typeahead = function (query) {
|
|||||||
// as :P or :-p
|
// as :P or :-p
|
||||||
// Also, if the user has only typed a colon and nothing after,
|
// Also, if the user has only typed a colon and nothing after,
|
||||||
// no need to match yet.
|
// no need to match yet.
|
||||||
if (/^:-?.?$/.test(current_token)) {
|
if (/^:-.?$/.test(current_token) || /^:[^a-z+]?$/.test(current_token)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
this.completing = 'emoji';
|
this.completing = 'emoji';
|
||||||
|
|||||||
Reference in New Issue
Block a user