diff --git a/lib/bloc/kanji/kanji_bloc.dart b/lib/bloc/kanji/kanji_bloc.dart index c7c6a47..b9033bf 100644 --- a/lib/bloc/kanji/kanji_bloc.dart +++ b/lib/bloc/kanji/kanji_bloc.dart @@ -17,14 +17,19 @@ class KanjiBloc extends Bloc { Stream mapEventToState( KanjiEvent event, ) async* { - yield KanjiSearchLoading(); if (event is GetKanji) { + + yield KanjiSearchLoading(); + try { final _kanji = await fetchKanji(event.kanjiSearchString); yield KanjiSearchFinished(_kanji); } on Exception { yield KanjiSearchError('Something went wrong'); } + + } else if (event is ReturnToInitialState) { + yield KanjiSearchInitial(); } } } diff --git a/lib/bloc/kanji/kanji_event.dart b/lib/bloc/kanji/kanji_event.dart index 4bc28bf..6bbe8e5 100644 --- a/lib/bloc/kanji/kanji_event.dart +++ b/lib/bloc/kanji/kanji_event.dart @@ -6,4 +6,8 @@ class GetKanji extends KanjiEvent { final String kanjiSearchString; GetKanji(this.kanjiSearchString); +} + +class ReturnToInitialState extends KanjiEvent { + ReturnToInitialState(); } \ No newline at end of file