@@ -176,6 +176,8 @@ class _StreamContentInput extends StatefulWidget {
176
176
class _StreamContentInputState extends State <_StreamContentInput > {
177
177
MentionAutocompleteView ? _mentionAutocompleteView; // TODO different autocomplete view types
178
178
179
+ Iterable <MentionAutocompleteResult >? _devDemoResults;
180
+
179
181
late String _topicTextNormalized;
180
182
181
183
_topicChanged () {
@@ -187,8 +189,19 @@ class _StreamContentInputState extends State<_StreamContentInput> {
187
189
_changed () {
188
190
final newAutocompleteIntent = widget.controller.autocompleteIntent ();
189
191
if (newAutocompleteIntent != null ) {
190
- _mentionAutocompleteView ?? = MentionAutocompleteView .init (
191
- store: widget.store, narrow: widget.narrow);
192
+ if (_mentionAutocompleteView == null ) {
193
+ _mentionAutocompleteView = MentionAutocompleteView .init (
194
+ store: widget.store, narrow: widget.narrow);
195
+ _mentionAutocompleteView! .addListener (() {
196
+ if (_mentionAutocompleteView == null ) {
197
+ _devDemoResults = [];
198
+ return ;
199
+ }
200
+ setState (() {
201
+ _devDemoResults = _mentionAutocompleteView! .results;
202
+ });
203
+ });
204
+ }
192
205
_mentionAutocompleteView! .query = newAutocompleteIntent.query;
193
206
} else {
194
207
if (_mentionAutocompleteView != null ) {
@@ -215,6 +228,7 @@ class _StreamContentInputState extends State<_StreamContentInput> {
215
228
216
229
@override
217
230
Widget build (BuildContext context) {
231
+ print ('autocomplete suggestions (max 5 shown): ${_devDemoResults ?.take (5 ).map ((r ) => (r as UserMentionAutocompleteResult ).userId )}' );
218
232
final streamName = widget.store.streams[widget.streamId]? .name ?? '(unknown stream)' ;
219
233
220
234
ColorScheme colorScheme = Theme .of (context).colorScheme;
0 commit comments