slang-i18n / slang

Type-safe i18n for Dart and Flutter
https://pub.dev/packages/slang
MIT License
459 stars 39 forks source link

TranslationProvider does not recreate childs #212

Open ChaserVasya opened 5 months ago

ChaserVasya commented 5 months ago

widget tree

- runApp
 - ReInitAppWidget // provides UniqueKey for child when ReInitAppWidget.reinit is called
     - TranslationProvider
        - BlocProvider

Expected: BlocProvider is recreated for every ReInitAppWidget.reinit. Actual: BlocProvider does not recreated.

Reason: TranslationProvider creates GlobalKey under the hood.

What should you do: provide BIG RED WARNING in docs that TranslationProvider MUST BE provided just after runApp and that it never recreates. OR remove global keys.

- runApp
  - TranslationProvider
     - ReInitAppWidget // provides UniqueKey for child when ReInitAppWidget.reinit is called
        - BlocProvider