minor fix

This commit is contained in:
Thibault Deckers 2021-12-01 17:38:20 +09:00
parent a915877b92
commit 137b7e5883

View file

@ -8,6 +8,7 @@ import 'package:collection/collection.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart'; import 'package:flutter/scheduler.dart';
import 'package:flutter_gen/gen_l10n/app_localizations.dart'; import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:provider/provider.dart';
class LocaleTile extends StatelessWidget { class LocaleTile extends StatelessWidget {
static const _systemLocaleOption = Locale('system'); static const _systemLocaleOption = Locale('system');
@ -16,10 +17,14 @@ class LocaleTile extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final current = settings.locale;
return ListTile( return ListTile(
title: Text(context.l10n.settingsLanguage), title: Text(context.l10n.settingsLanguage),
subtitle: Text(current == null ? context.l10n.settingsSystemDefault : _getLocaleName(current)), subtitle: Selector<Settings, Locale?>(
selector: (context, s) => settings.locale,
builder: (context, locale, child) {
return Text(locale == null ? context.l10n.settingsSystemDefault : _getLocaleName(locale));
},
),
onTap: () async { onTap: () async {
final value = await showDialog<Locale>( final value = await showDialog<Locale>(
context: context, context: context,