Skip to content

Commit f62379a

Browse files
committed
autocomplete [nfc]: Make explicit why two user lookups have null-assertions
1 parent ff9c6a9 commit f62379a

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

lib/widgets/autocomplete.dart

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -200,9 +200,10 @@ class ComposeAutocomplete extends AutocompleteField<ComposeAutocompleteQuery, Co
200200
if (query is! MentionAutocompleteQuery) {
201201
return; // Shrug; similar to `intent == null` case above.
202202
}
203+
final user = store.users[userId]!; // must exist because UserMentionAutocompleteResult
203204
// TODO(i18n) language-appropriate space character; check active keyboard?
204205
// (maybe handle centrally in `controller`)
205-
replacementString = '${userMention(store.users[userId]!, silent: query.silent, users: store)} ';
206+
replacementString = '${userMention(user, silent: query.silent, users: store)} ';
206207
case WildcardMentionAutocompleteResult(:var wildcardOption):
207208
replacementString = '${wildcardMention(wildcardOption, store: store)} ';
208209
}
@@ -267,8 +268,9 @@ class _MentionAutocompleteItem extends StatelessWidget {
267268
Widget label;
268269
switch (option) {
269270
case UserMentionAutocompleteResult(:var userId):
271+
final user = store.users[userId]!; // must exist because UserMentionAutocompleteResult
270272
avatar = Avatar(userId: userId, size: 32, borderRadius: 3); // web uses 21px
271-
label = Text(store.users[userId]!.fullName);
273+
label = Text(user.fullName);
272274
case WildcardMentionAutocompleteResult(:var wildcardOption):
273275
avatar = const Icon(ZulipIcons.three_person, size: 29); // web uses 19px
274276
label = wildcardLabel(wildcardOption, context: context, store: store);

0 commit comments

Comments
 (0)