Finally made it works by "Waiting for state changes".
Inside optionsBuilder
:
// Create a Completer to wait for state changes
final completer = Completer<Iterable<GooglePlace>>();
// Subscribe to state changes
final StreamSubscription subscription = bloc.stream.listen((newState) {
completer.complete(newState.places);
});
try {
bloc.add(MakeAutocompleteEvent(textEditingValue.text));
final result = await completer.future;
return result;
} finally {
subscription.cancel();
}