Unverified Commit 78c5bb2a authored by Dan Field's avatar Dan Field Committed by GitHub

Make progress indicators accessible (#24275)

* Make progress indicators accessible
parent 567b31a7
...@@ -310,6 +310,9 @@ abstract class MaterialLocalizations { ...@@ -310,6 +310,9 @@ abstract class MaterialLocalizations {
/// The label for the [TextField]'s character counter. /// The label for the [TextField]'s character counter.
String remainingTextFieldCharacterCount(int remaining); String remainingTextFieldCharacterCount(int remaining);
/// The default semantics label for a [RefreshIndicator].
String get refreshIndicatorSemanticLabel;
/// The `MaterialLocalizations` from the closest [Localizations] instance /// The `MaterialLocalizations` from the closest [Localizations] instance
/// that encloses the given context. /// that encloses the given context.
/// ///
...@@ -698,6 +701,9 @@ class DefaultMaterialLocalizations implements MaterialLocalizations { ...@@ -698,6 +701,9 @@ class DefaultMaterialLocalizations implements MaterialLocalizations {
@override @override
String get collapsedIconTapHint => 'Expand'; String get collapsedIconTapHint => 'Expand';
@override
String get refreshIndicatorSemanticLabel => 'Refresh';
/// Creates an object that provides US English resource values for the material /// Creates an object that provides US English resource values for the material
/// library widgets. /// library widgets.
/// ///
......
...@@ -31,11 +31,21 @@ abstract class ProgressIndicator extends StatefulWidget { ...@@ -31,11 +31,21 @@ abstract class ProgressIndicator extends StatefulWidget {
/// The [value] argument can be either null (corresponding to an indeterminate /// The [value] argument can be either null (corresponding to an indeterminate
/// progress indicator) or non-null (corresponding to a determinate progress /// progress indicator) or non-null (corresponding to a determinate progress
/// indicator). See [value] for details. /// indicator). See [value] for details.
///
/// {@template flutter.material.progressIndicator.semantics}
/// ## Accessibility
///
/// The [semanticsLabel] can be used to identify the purpose of this progress
/// bar for screen reading software. The [semanticsValue] property may be used
/// for determinate progress indicators to indicate how much progress has been made.
/// {@endtemplate}
const ProgressIndicator({ const ProgressIndicator({
Key key, Key key,
this.value, this.value,
this.backgroundColor, this.backgroundColor,
this.valueColor, this.valueColor,
this.semanticsLabel,
this.semanticsValue,
}) : super(key: key); }) : super(key: key);
/// If non-null, the value of this progress indicator with 0.0 corresponding /// If non-null, the value of this progress indicator with 0.0 corresponding
...@@ -58,6 +68,28 @@ abstract class ProgressIndicator extends StatefulWidget { ...@@ -58,6 +68,28 @@ abstract class ProgressIndicator extends StatefulWidget {
/// [ThemeData.accentColor]. /// [ThemeData.accentColor].
final Animation<Color> valueColor; final Animation<Color> valueColor;
/// {@template flutter.material.progressIndicator.semanticsLabel}
/// The [Semantics.label] for this progress indicator.
///
/// This value indicates the purpose of the progress bar, and will be
/// read out by screen readers to indicate the purpose of this progress
/// indicator.
/// {@endtemplate}
final String semanticsLabel;
/// {@template flutter.material.progressIndicator.semanticsValue}
/// The [Semantics.value] for this progress indicator.
///
/// This will be used in conjunction with the [semanticsLabel] by
/// screen reading software to identify the widget, and is primarily
/// intended for use with determinate progress indicators to announce
/// how far along they are.
///
/// For determinate progress indicators, this will be defaulted to [value]
/// expressed as a percentage, i.e. `0.1` will become '10%'.
/// {@endtemplate}
final String semanticsValue;
Color _getBackgroundColor(BuildContext context) => backgroundColor ?? Theme.of(context).backgroundColor; Color _getBackgroundColor(BuildContext context) => backgroundColor ?? Theme.of(context).backgroundColor;
Color _getValueColor(BuildContext context) => valueColor?.value ?? Theme.of(context).accentColor; Color _getValueColor(BuildContext context) => valueColor?.value ?? Theme.of(context).accentColor;
...@@ -66,6 +98,21 @@ abstract class ProgressIndicator extends StatefulWidget { ...@@ -66,6 +98,21 @@ abstract class ProgressIndicator extends StatefulWidget {
super.debugFillProperties(properties); super.debugFillProperties(properties);
properties.add(PercentProperty('value', value, showName: false, ifNull: '<indeterminate>')); properties.add(PercentProperty('value', value, showName: false, ifNull: '<indeterminate>'));
} }
Widget _buildSemanticsWrapper({
@required BuildContext context,
@required Widget child,
}) {
String expandedSemanticsValue = semanticsValue;
if (value != null) {
expandedSemanticsValue ??= '${(value * 100).round()}%';
}
return Semantics(
label: semanticsLabel,
value: expandedSemanticsValue,
child: child,
);
}
} }
class _LinearProgressIndicatorPainter extends CustomPainter { class _LinearProgressIndicatorPainter extends CustomPainter {
...@@ -179,12 +226,23 @@ class LinearProgressIndicator extends ProgressIndicator { ...@@ -179,12 +226,23 @@ class LinearProgressIndicator extends ProgressIndicator {
/// The [value] argument can be either null (corresponding to an indeterminate /// The [value] argument can be either null (corresponding to an indeterminate
/// progress indicator) or non-null (corresponding to a determinate progress /// progress indicator) or non-null (corresponding to a determinate progress
/// indicator). See [value] for details. /// indicator). See [value] for details.
///
/// {@macro flutter.material.progressIndicator.semantics}
const LinearProgressIndicator({ const LinearProgressIndicator({
Key key, Key key,
double value, double value,
Color backgroundColor, Color backgroundColor,
Animation<Color> valueColor, Animation<Color> valueColor,
}) : super(key: key, value: value, backgroundColor: backgroundColor, valueColor: valueColor); String semanticsLabel,
String semanticsValue,
}) : super(
key: key,
value: value,
backgroundColor: backgroundColor,
valueColor: valueColor,
semanticsLabel: semanticsLabel,
semanticsValue: semanticsValue,
);
@override @override
_LinearProgressIndicatorState createState() => _LinearProgressIndicatorState(); _LinearProgressIndicatorState createState() => _LinearProgressIndicatorState();
...@@ -220,7 +278,9 @@ class _LinearProgressIndicatorState extends State<LinearProgressIndicator> with ...@@ -220,7 +278,9 @@ class _LinearProgressIndicatorState extends State<LinearProgressIndicator> with
} }
Widget _buildIndicator(BuildContext context, double animationValue, TextDirection textDirection) { Widget _buildIndicator(BuildContext context, double animationValue, TextDirection textDirection) {
return Container( return widget._buildSemanticsWrapper(
context: context,
child: Container(
constraints: const BoxConstraints( constraints: const BoxConstraints(
minWidth: double.infinity, minWidth: double.infinity,
minHeight: _kLinearProgressIndicatorHeight, minHeight: _kLinearProgressIndicatorHeight,
...@@ -234,6 +294,7 @@ class _LinearProgressIndicatorState extends State<LinearProgressIndicator> with ...@@ -234,6 +294,7 @@ class _LinearProgressIndicatorState extends State<LinearProgressIndicator> with
textDirection: textDirection, textDirection: textDirection,
), ),
), ),
),
); );
} }
...@@ -335,13 +396,24 @@ class CircularProgressIndicator extends ProgressIndicator { ...@@ -335,13 +396,24 @@ class CircularProgressIndicator extends ProgressIndicator {
/// The [value] argument can be either null (corresponding to an indeterminate /// The [value] argument can be either null (corresponding to an indeterminate
/// progress indicator) or non-null (corresponding to a determinate progress /// progress indicator) or non-null (corresponding to a determinate progress
/// indicator). See [value] for details. /// indicator). See [value] for details.
///
/// {@macro flutter.material.progressIndicator.semantics}
const CircularProgressIndicator({ const CircularProgressIndicator({
Key key, Key key,
double value, double value,
Color backgroundColor, Color backgroundColor,
Animation<Color> valueColor, Animation<Color> valueColor,
this.strokeWidth = 4.0, this.strokeWidth = 4.0,
}) : super(key: key, value: value, backgroundColor: backgroundColor, valueColor: valueColor); String semanticsLabel,
String semanticsValue,
}) : super(
key: key,
value: value,
backgroundColor: backgroundColor,
valueColor: valueColor,
semanticsLabel: semanticsLabel,
semanticsValue: semanticsValue,
);
/// The width of the line used to draw the circle. /// The width of the line used to draw the circle.
final double strokeWidth; final double strokeWidth;
...@@ -397,7 +469,9 @@ class _CircularProgressIndicatorState extends State<CircularProgressIndicator> w ...@@ -397,7 +469,9 @@ class _CircularProgressIndicatorState extends State<CircularProgressIndicator> w
} }
Widget _buildIndicator(BuildContext context, double headValue, double tailValue, int stepValue, double rotationValue) { Widget _buildIndicator(BuildContext context, double headValue, double tailValue, int stepValue, double rotationValue) {
return Container( return widget._buildSemanticsWrapper(
context: context,
child: Container(
constraints: const BoxConstraints( constraints: const BoxConstraints(
minWidth: _kMinCircularProgressIndicatorSize, minWidth: _kMinCircularProgressIndicatorSize,
minHeight: _kMinCircularProgressIndicatorSize, minHeight: _kMinCircularProgressIndicatorSize,
...@@ -413,6 +487,7 @@ class _CircularProgressIndicatorState extends State<CircularProgressIndicator> w ...@@ -413,6 +487,7 @@ class _CircularProgressIndicatorState extends State<CircularProgressIndicator> w
strokeWidth: widget.strokeWidth, strokeWidth: widget.strokeWidth,
), ),
), ),
),
); );
} }
...@@ -510,18 +585,24 @@ class RefreshProgressIndicator extends CircularProgressIndicator { ...@@ -510,18 +585,24 @@ class RefreshProgressIndicator extends CircularProgressIndicator {
/// ///
/// Rather than creating a refresh progress indicator directly, consider using /// Rather than creating a refresh progress indicator directly, consider using
/// a [RefreshIndicator] together with a [Scrollable] widget. /// a [RefreshIndicator] together with a [Scrollable] widget.
///
/// {@macro flutter.material.progressIndicator.semantics}
const RefreshProgressIndicator({ const RefreshProgressIndicator({
Key key, Key key,
double value, double value,
Color backgroundColor, Color backgroundColor,
Animation<Color> valueColor, Animation<Color> valueColor,
double strokeWidth = 2.0, // Different default than CircularProgressIndicator. double strokeWidth = 2.0, // Different default than CircularProgressIndicator.
String semanticsLabel,
String semanticsValue,
}) : super( }) : super(
key: key, key: key,
value: value, value: value,
backgroundColor: backgroundColor, backgroundColor: backgroundColor,
valueColor: valueColor, valueColor: valueColor,
strokeWidth: strokeWidth, strokeWidth: strokeWidth,
semanticsLabel: semanticsLabel,
semanticsValue: semanticsValue,
); );
@override @override
...@@ -547,7 +628,9 @@ class _RefreshProgressIndicatorState extends _CircularProgressIndicatorState { ...@@ -547,7 +628,9 @@ class _RefreshProgressIndicatorState extends _CircularProgressIndicatorState {
@override @override
Widget _buildIndicator(BuildContext context, double headValue, double tailValue, int stepValue, double rotationValue) { Widget _buildIndicator(BuildContext context, double headValue, double tailValue, int stepValue, double rotationValue) {
final double arrowheadScale = widget.value == null ? 0.0 : (widget.value * 2.0).clamp(0.0, 1.0); final double arrowheadScale = widget.value == null ? 0.0 : (widget.value * 2.0).clamp(0.0, 1.0);
return Container( return widget._buildSemanticsWrapper(
context: context,
child: Container(
width: _indicatorSize, width: _indicatorSize,
height: _indicatorSize, height: _indicatorSize,
margin: const EdgeInsets.all(4.0), // accommodate the shadow margin: const EdgeInsets.all(4.0), // accommodate the shadow
...@@ -571,6 +654,7 @@ class _RefreshProgressIndicatorState extends _CircularProgressIndicatorState { ...@@ -571,6 +654,7 @@ class _RefreshProgressIndicatorState extends _CircularProgressIndicatorState {
), ),
), ),
), ),
),
); );
} }
} }
...@@ -7,6 +7,8 @@ import 'dart:math' as math; ...@@ -7,6 +7,8 @@ import 'dart:math' as math;
import 'package:flutter/widgets.dart'; import 'package:flutter/widgets.dart';
import 'debug.dart';
import 'material_localizations.dart';
import 'progress_indicator.dart'; import 'progress_indicator.dart';
import 'theme.dart'; import 'theme.dart';
...@@ -85,6 +87,11 @@ class RefreshIndicator extends StatefulWidget { ...@@ -85,6 +87,11 @@ class RefreshIndicator extends StatefulWidget {
/// The [onRefresh], [child], and [notificationPredicate] arguments must be /// The [onRefresh], [child], and [notificationPredicate] arguments must be
/// non-null. The default /// non-null. The default
/// [displacement] is 40.0 logical pixels. /// [displacement] is 40.0 logical pixels.
///
/// The [semanticsLabel] is used to specify an accessibility label for this widget.
/// If it is null, it will be defaulted to [MaterialLocalizations.refreshIndicatorSemanticLabel].
/// An empty string may be passed to avoid having anything read by screen reading software.
/// The [semanticsValue] may be used to specify progress on the widget. The
const RefreshIndicator({ const RefreshIndicator({
Key key, Key key,
@required this.child, @required this.child,
...@@ -93,6 +100,8 @@ class RefreshIndicator extends StatefulWidget { ...@@ -93,6 +100,8 @@ class RefreshIndicator extends StatefulWidget {
this.color, this.color,
this.backgroundColor, this.backgroundColor,
this.notificationPredicate = defaultScrollNotificationPredicate, this.notificationPredicate = defaultScrollNotificationPredicate,
this.semanticsLabel,
this.semanticsValue,
}) : assert(child != null), }) : assert(child != null),
assert(onRefresh != null), assert(onRefresh != null),
assert(notificationPredicate != null), assert(notificationPredicate != null),
...@@ -131,6 +140,15 @@ class RefreshIndicator extends StatefulWidget { ...@@ -131,6 +140,15 @@ class RefreshIndicator extends StatefulWidget {
/// else for more complicated layouts. /// else for more complicated layouts.
final ScrollNotificationPredicate notificationPredicate; final ScrollNotificationPredicate notificationPredicate;
/// {@macro flutter.material.progressIndicator.semanticsLabel}
///
/// This will be defaulted to [MaterialLocalizations.refreshIndicatorSemanticLabel]
/// if it is null.
final String semanticsLabel;
/// {@macro flutter.material.progressIndicator.semanticsValue}
final String semanticsValue;
@override @override
RefreshIndicatorState createState() => RefreshIndicatorState(); RefreshIndicatorState createState() => RefreshIndicatorState();
} }
...@@ -391,6 +409,7 @@ class RefreshIndicatorState extends State<RefreshIndicator> with TickerProviderS ...@@ -391,6 +409,7 @@ class RefreshIndicatorState extends State<RefreshIndicator> with TickerProviderS
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
assert(debugCheckHasMaterialLocalizations(context));
final Widget child = NotificationListener<ScrollNotification>( final Widget child = NotificationListener<ScrollNotification>(
key: _key, key: _key,
onNotification: _handleScrollNotification, onNotification: _handleScrollNotification,
...@@ -434,6 +453,8 @@ class RefreshIndicatorState extends State<RefreshIndicator> with TickerProviderS ...@@ -434,6 +453,8 @@ class RefreshIndicatorState extends State<RefreshIndicator> with TickerProviderS
animation: _positionController, animation: _positionController,
builder: (BuildContext context, Widget child) { builder: (BuildContext context, Widget child) {
return RefreshProgressIndicator( return RefreshProgressIndicator(
semanticsLabel: widget.semanticsLabel ?? MaterialLocalizations.of(context).refreshIndicatorSemanticLabel,
semanticsValue: widget.semanticsValue,
value: showIndeterminateIndicator ? null : _value.value, value: showIndeterminateIndicator ? null : _value.value,
valueColor: _valueColor, valueColor: _valueColor,
backgroundColor: widget.backgroundColor, backgroundColor: widget.backgroundColor,
......
...@@ -13,7 +13,8 @@ void main() { ...@@ -13,7 +13,8 @@ void main() {
// The "can be constructed" tests that follow are primarily to ensure that any // The "can be constructed" tests that follow are primarily to ensure that any
// animations started by the progress indicators are stopped at dispose() time. // animations started by the progress indicators are stopped at dispose() time.
testWidgets('LinearProgressIndicator(value: 0.0) can be constructed', (WidgetTester tester) async { testWidgets('LinearProgressIndicator(value: 0.0) can be constructed and has empty semantics by default', (WidgetTester tester) async {
final SemanticsHandle handle = tester.ensureSemantics();
await tester.pumpWidget( await tester.pumpWidget(
const Directionality( const Directionality(
textDirection: TextDirection.ltr, textDirection: TextDirection.ltr,
...@@ -25,9 +26,13 @@ void main() { ...@@ -25,9 +26,13 @@ void main() {
), ),
), ),
); );
expect(tester.getSemantics(find.byType(LinearProgressIndicator)), matchesSemantics());
handle.dispose();
}); });
testWidgets('LinearProgressIndicator(value: null) can be constructed', (WidgetTester tester) async { testWidgets('LinearProgressIndicator(value: null) can be constructed and has empty semantics by default', (WidgetTester tester) async {
final SemanticsHandle handle = tester.ensureSemantics();
await tester.pumpWidget( await tester.pumpWidget(
const Directionality( const Directionality(
textDirection: TextDirection.rtl, textDirection: TextDirection.rtl,
...@@ -39,6 +44,9 @@ void main() { ...@@ -39,6 +44,9 @@ void main() {
), ),
), ),
); );
expect(tester.getSemantics(find.byType(LinearProgressIndicator)), matchesSemantics());
handle.dispose();
}); });
testWidgets('LinearProgressIndicator paint (LTR)', (WidgetTester tester) async { testWidgets('LinearProgressIndicator paint (LTR)', (WidgetTester tester) async {
...@@ -166,20 +174,34 @@ void main() { ...@@ -166,20 +174,34 @@ void main() {
); );
}); });
testWidgets('CircularProgressIndicator(value: 0.0) can be constructed', (WidgetTester tester) async { testWidgets('CircularProgressIndicator(value: 0.0) can be constructed and has value semantics by default', (WidgetTester tester) async {
final SemanticsHandle handle = tester.ensureSemantics();
await tester.pumpWidget( await tester.pumpWidget(
const Center( const Directionality(
textDirection: TextDirection.ltr,
child: Center(
child: CircularProgressIndicator(value: 0.0) child: CircularProgressIndicator(value: 0.0)
) )
)
); );
expect(tester.getSemantics(find.byType(CircularProgressIndicator)), matchesSemantics(
value: '0%',
textDirection: TextDirection.ltr,
));
handle.dispose();
}); });
testWidgets('CircularProgressIndicator(value: null) can be constructed', (WidgetTester tester) async { testWidgets('CircularProgressIndicator(value: null) can be constructed and has empty semantics by default', (WidgetTester tester) async {
final SemanticsHandle handle = tester.ensureSemantics();
await tester.pumpWidget( await tester.pumpWidget(
const Center( const Center(
child: CircularProgressIndicator(value: null) child: CircularProgressIndicator(value: null)
) )
); );
expect(tester.getSemantics(find.byType(CircularProgressIndicator)), matchesSemantics());
handle.dispose();
}); });
testWidgets('LinearProgressIndicator causes a repaint when it changes', (WidgetTester tester) async { testWidgets('LinearProgressIndicator causes a repaint when it changes', (WidgetTester tester) async {
...@@ -321,4 +343,147 @@ void main() { ...@@ -321,4 +343,147 @@ void main() {
); );
expect(tester.binding.transientCallbackCount, 0); expect(tester.binding.transientCallbackCount, 0);
}); });
testWidgets('LinearProgressIndicator can be made accessible', (WidgetTester tester) async {
final SemanticsHandle handle = tester.ensureSemantics();
final GlobalKey key = GlobalKey();
const String label = 'Label';
const String value = '25%';
await tester.pumpWidget(
Directionality(
textDirection: TextDirection.ltr,
child: LinearProgressIndicator(
key: key,
value: 0.25,
semanticsLabel: label,
semanticsValue: value,
),
),
);
expect(tester.getSemantics(find.byKey(key)), matchesSemantics(
textDirection: TextDirection.ltr,
label: label,
value: value,
));
handle.dispose();
});
testWidgets('LinearProgressIndicator that is determinate gets default a11y value', (WidgetTester tester) async {
final SemanticsHandle handle = tester.ensureSemantics();
final GlobalKey key = GlobalKey();
const String label = 'Label';
await tester.pumpWidget(
Directionality(
textDirection: TextDirection.ltr,
child: LinearProgressIndicator(
key: key,
value: 0.25,
semanticsLabel: label,
),
),
);
expect(tester.getSemantics(find.byKey(key)), matchesSemantics(
textDirection: TextDirection.ltr,
label: label,
value: '25%',
));
handle.dispose();
});
testWidgets('LinearProgressIndicator that is determinate does not default a11y value when label is null', (WidgetTester tester) async {
final SemanticsHandle handle = tester.ensureSemantics();
final GlobalKey key = GlobalKey();
await tester.pumpWidget(
Directionality(
textDirection: TextDirection.ltr,
child: LinearProgressIndicator(
key: key,
value: 0.25,
),
),
);
expect(tester.getSemantics(find.byKey(key)), matchesSemantics());
handle.dispose();
});
testWidgets('LinearProgressIndicator that is indeterminate does not default a11y value', (WidgetTester tester) async {
final SemanticsHandle handle = tester.ensureSemantics();
final GlobalKey key = GlobalKey();
const String label = 'Progress';
await tester.pumpWidget(
Directionality(
textDirection: TextDirection.ltr,
child: LinearProgressIndicator(
key: key,
value: 0.25,
semanticsLabel: label,
),
),
);
expect(tester.getSemantics(find.byKey(key)), matchesSemantics(
textDirection: TextDirection.ltr,
label: label,
));
handle.dispose();
});
testWidgets('CircularProgressIndicator can be made accessible', (WidgetTester tester) async {
final SemanticsHandle handle = tester.ensureSemantics();
final GlobalKey key = GlobalKey();
const String label = 'Label';
const String value = '25%';
await tester.pumpWidget(
Directionality(
textDirection: TextDirection.ltr,
child: CircularProgressIndicator(
key: key,
value: 0.25,
semanticsLabel: label,
semanticsValue: value,
),
),
);
expect(tester.getSemantics(find.byKey(key)), matchesSemantics(
textDirection: TextDirection.ltr,
label: label,
value: value,
));
handle.dispose();
});
testWidgets('RefreshProgressIndicator can be made accessible', (WidgetTester tester) async {
final SemanticsHandle handle = tester.ensureSemantics();
final GlobalKey key = GlobalKey();
const String label = 'Label';
const String value = '25%';
await tester.pumpWidget(
Directionality(
textDirection: TextDirection.ltr,
child: RefreshProgressIndicator(
key: key,
semanticsLabel: label,
semanticsValue: value,
),
),
);
expect(tester.getSemantics(find.byKey(key)), matchesSemantics(
textDirection: TextDirection.ltr,
label: label,
value: value,
));
handle.dispose();
});
} }
...@@ -23,6 +23,7 @@ Future<void> holdRefresh() { ...@@ -23,6 +23,7 @@ Future<void> holdRefresh() {
void main() { void main() {
testWidgets('RefreshIndicator', (WidgetTester tester) async { testWidgets('RefreshIndicator', (WidgetTester tester) async {
refreshCalled = false; refreshCalled = false;
final SemanticsHandle handle = tester.ensureSemantics();
await tester.pumpWidget( await tester.pumpWidget(
MaterialApp( MaterialApp(
home: RefreshIndicator( home: RefreshIndicator(
...@@ -42,10 +43,16 @@ void main() { ...@@ -42,10 +43,16 @@ void main() {
await tester.fling(find.text('A'), const Offset(0.0, 300.0), 1000.0); await tester.fling(find.text('A'), const Offset(0.0, 300.0), 1000.0);
await tester.pump(); await tester.pump();
expect(tester.getSemantics(find.byType(RefreshProgressIndicator)), matchesSemantics(
label: 'Refresh',
));
await tester.pump(const Duration(seconds: 1)); // finish the scroll animation await tester.pump(const Duration(seconds: 1)); // finish the scroll animation
await tester.pump(const Duration(seconds: 1)); // finish the indicator settle animation await tester.pump(const Duration(seconds: 1)); // finish the indicator settle animation
await tester.pump(const Duration(seconds: 1)); // finish the indicator hide animation await tester.pump(const Duration(seconds: 1)); // finish the indicator hide animation
expect(refreshCalled, true); expect(refreshCalled, true);
handle.dispose();
}); });
testWidgets('Refresh Indicator - nested', (WidgetTester tester) async { testWidgets('Refresh Indicator - nested', (WidgetTester tester) async {
......
...@@ -131,6 +131,9 @@ class MaterialLocalizationAr extends GlobalMaterialLocalizations { ...@@ -131,6 +131,9 @@ class MaterialLocalizationAr extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'الصفحة السابقة'; String get previousPageTooltip => r'الصفحة السابقة';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => r'$remainingCount أحرف متبقية'; String get remainingTextFieldCharacterCountFew => r'$remainingCount أحرف متبقية';
...@@ -332,6 +335,9 @@ class MaterialLocalizationBg extends GlobalMaterialLocalizations { ...@@ -332,6 +335,9 @@ class MaterialLocalizationBg extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Предишната страница'; String get previousPageTooltip => r'Предишната страница';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -533,6 +539,9 @@ class MaterialLocalizationBs extends GlobalMaterialLocalizations { ...@@ -533,6 +539,9 @@ class MaterialLocalizationBs extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Prethodna stranica'; String get previousPageTooltip => r'Prethodna stranica';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => r'Preostala su $remainingCount znaka'; String get remainingTextFieldCharacterCountFew => r'Preostala su $remainingCount znaka';
...@@ -734,6 +743,9 @@ class MaterialLocalizationCa extends GlobalMaterialLocalizations { ...@@ -734,6 +743,9 @@ class MaterialLocalizationCa extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Pàgina anterior'; String get previousPageTooltip => r'Pàgina anterior';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -935,6 +947,9 @@ class MaterialLocalizationCs extends GlobalMaterialLocalizations { ...@@ -935,6 +947,9 @@ class MaterialLocalizationCs extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Předchozí stránka'; String get previousPageTooltip => r'Předchozí stránka';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => r'Zbývají $remainingCount znaky'; String get remainingTextFieldCharacterCountFew => r'Zbývají $remainingCount znaky';
...@@ -1136,6 +1151,9 @@ class MaterialLocalizationDa extends GlobalMaterialLocalizations { ...@@ -1136,6 +1151,9 @@ class MaterialLocalizationDa extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Forrige side'; String get previousPageTooltip => r'Forrige side';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -1337,6 +1355,9 @@ class MaterialLocalizationDe extends GlobalMaterialLocalizations { ...@@ -1337,6 +1355,9 @@ class MaterialLocalizationDe extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Vorherige Seite'; String get previousPageTooltip => r'Vorherige Seite';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -1568,6 +1589,9 @@ class MaterialLocalizationEl extends GlobalMaterialLocalizations { ...@@ -1568,6 +1589,9 @@ class MaterialLocalizationEl extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Προηγούμενη σελίδα'; String get previousPageTooltip => r'Προηγούμενη σελίδα';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -1769,6 +1793,9 @@ class MaterialLocalizationEn extends GlobalMaterialLocalizations { ...@@ -1769,6 +1793,9 @@ class MaterialLocalizationEn extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Previous page'; String get previousPageTooltip => r'Previous page';
@override
String get refreshIndicatorSemanticLabel => r'Refresh';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -2273,6 +2300,9 @@ class MaterialLocalizationEs extends GlobalMaterialLocalizations { ...@@ -2273,6 +2300,9 @@ class MaterialLocalizationEs extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Página anterior'; String get previousPageTooltip => r'Página anterior';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -4097,6 +4127,9 @@ class MaterialLocalizationEt extends GlobalMaterialLocalizations { ...@@ -4097,6 +4127,9 @@ class MaterialLocalizationEt extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Eelmine leht'; String get previousPageTooltip => r'Eelmine leht';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -4298,6 +4331,9 @@ class MaterialLocalizationFa extends GlobalMaterialLocalizations { ...@@ -4298,6 +4331,9 @@ class MaterialLocalizationFa extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'صفحه قبل'; String get previousPageTooltip => r'صفحه قبل';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -4499,6 +4535,9 @@ class MaterialLocalizationFi extends GlobalMaterialLocalizations { ...@@ -4499,6 +4535,9 @@ class MaterialLocalizationFi extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Edellinen sivu'; String get previousPageTooltip => r'Edellinen sivu';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -4700,6 +4739,9 @@ class MaterialLocalizationFil extends GlobalMaterialLocalizations { ...@@ -4700,6 +4739,9 @@ class MaterialLocalizationFil extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Nakaraang page'; String get previousPageTooltip => r'Nakaraang page';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -4901,6 +4943,9 @@ class MaterialLocalizationFr extends GlobalMaterialLocalizations { ...@@ -4901,6 +4943,9 @@ class MaterialLocalizationFr extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Page précédente'; String get previousPageTooltip => r'Page précédente';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -5129,6 +5174,9 @@ class MaterialLocalizationGsw extends GlobalMaterialLocalizations { ...@@ -5129,6 +5174,9 @@ class MaterialLocalizationGsw extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Vorherige Seite'; String get previousPageTooltip => r'Vorherige Seite';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -5330,6 +5378,9 @@ class MaterialLocalizationHe extends GlobalMaterialLocalizations { ...@@ -5330,6 +5378,9 @@ class MaterialLocalizationHe extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'הדף הקודם'; String get previousPageTooltip => r'הדף הקודם';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -5531,6 +5582,9 @@ class MaterialLocalizationHi extends GlobalMaterialLocalizations { ...@@ -5531,6 +5582,9 @@ class MaterialLocalizationHi extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'पिछला पेज'; String get previousPageTooltip => r'पिछला पेज';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -5732,6 +5786,9 @@ class MaterialLocalizationHr extends GlobalMaterialLocalizations { ...@@ -5732,6 +5786,9 @@ class MaterialLocalizationHr extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Prethodna stranica'; String get previousPageTooltip => r'Prethodna stranica';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => r'Preostala su $remainingCount znaka'; String get remainingTextFieldCharacterCountFew => r'Preostala su $remainingCount znaka';
...@@ -5933,6 +5990,9 @@ class MaterialLocalizationHu extends GlobalMaterialLocalizations { ...@@ -5933,6 +5990,9 @@ class MaterialLocalizationHu extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Előző oldal'; String get previousPageTooltip => r'Előző oldal';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -6134,6 +6194,9 @@ class MaterialLocalizationId extends GlobalMaterialLocalizations { ...@@ -6134,6 +6194,9 @@ class MaterialLocalizationId extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Halaman sebelumnya'; String get previousPageTooltip => r'Halaman sebelumnya';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -6335,6 +6398,9 @@ class MaterialLocalizationIt extends GlobalMaterialLocalizations { ...@@ -6335,6 +6398,9 @@ class MaterialLocalizationIt extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Pagina precedente'; String get previousPageTooltip => r'Pagina precedente';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -6536,6 +6602,9 @@ class MaterialLocalizationJa extends GlobalMaterialLocalizations { ...@@ -6536,6 +6602,9 @@ class MaterialLocalizationJa extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'前のページ'; String get previousPageTooltip => r'前のページ';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -6737,6 +6806,9 @@ class MaterialLocalizationKm extends GlobalMaterialLocalizations { ...@@ -6737,6 +6806,9 @@ class MaterialLocalizationKm extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'ទំព័រមុន'; String get previousPageTooltip => r'ទំព័រមុន';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -6938,6 +7010,9 @@ class MaterialLocalizationKo extends GlobalMaterialLocalizations { ...@@ -6938,6 +7010,9 @@ class MaterialLocalizationKo extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'이전 페이지'; String get previousPageTooltip => r'이전 페이지';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -7139,6 +7214,9 @@ class MaterialLocalizationLt extends GlobalMaterialLocalizations { ...@@ -7139,6 +7214,9 @@ class MaterialLocalizationLt extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Ankstesnis puslapis'; String get previousPageTooltip => r'Ankstesnis puslapis';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => r'Liko $remainingCount simboliai'; String get remainingTextFieldCharacterCountFew => r'Liko $remainingCount simboliai';
...@@ -7340,6 +7418,9 @@ class MaterialLocalizationLv extends GlobalMaterialLocalizations { ...@@ -7340,6 +7418,9 @@ class MaterialLocalizationLv extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Iepriekšējā lapa'; String get previousPageTooltip => r'Iepriekšējā lapa';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -7541,6 +7622,9 @@ class MaterialLocalizationMn extends GlobalMaterialLocalizations { ...@@ -7541,6 +7622,9 @@ class MaterialLocalizationMn extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Өмнөх хуудас'; String get previousPageTooltip => r'Өмнөх хуудас';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -7943,6 +8027,9 @@ class MaterialLocalizationMs extends GlobalMaterialLocalizations { ...@@ -7943,6 +8027,9 @@ class MaterialLocalizationMs extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Halaman sebelumnya'; String get previousPageTooltip => r'Halaman sebelumnya';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -8144,6 +8231,9 @@ class MaterialLocalizationNb extends GlobalMaterialLocalizations { ...@@ -8144,6 +8231,9 @@ class MaterialLocalizationNb extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Forrige side'; String get previousPageTooltip => r'Forrige side';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -8345,6 +8435,9 @@ class MaterialLocalizationNl extends GlobalMaterialLocalizations { ...@@ -8345,6 +8435,9 @@ class MaterialLocalizationNl extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Vorige pagina'; String get previousPageTooltip => r'Vorige pagina';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -8546,6 +8639,9 @@ class MaterialLocalizationPl extends GlobalMaterialLocalizations { ...@@ -8546,6 +8639,9 @@ class MaterialLocalizationPl extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Poprzednia strona'; String get previousPageTooltip => r'Poprzednia strona';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => r'Jeszcze $remainingCount znaki'; String get remainingTextFieldCharacterCountFew => r'Jeszcze $remainingCount znaki';
...@@ -8747,6 +8843,9 @@ class MaterialLocalizationPs extends GlobalMaterialLocalizations { ...@@ -8747,6 +8843,9 @@ class MaterialLocalizationPs extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'مخکینی مخ'; String get previousPageTooltip => r'مخکینی مخ';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -8948,6 +9047,9 @@ class MaterialLocalizationPt extends GlobalMaterialLocalizations { ...@@ -8948,6 +9047,9 @@ class MaterialLocalizationPt extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Página anterior'; String get previousPageTooltip => r'Página anterior';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -9233,6 +9335,9 @@ class MaterialLocalizationRo extends GlobalMaterialLocalizations { ...@@ -9233,6 +9335,9 @@ class MaterialLocalizationRo extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Pagina anterioară'; String get previousPageTooltip => r'Pagina anterioară';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => r'$remainingCount caractere rămase'; String get remainingTextFieldCharacterCountFew => r'$remainingCount caractere rămase';
...@@ -9434,6 +9539,9 @@ class MaterialLocalizationRu extends GlobalMaterialLocalizations { ...@@ -9434,6 +9539,9 @@ class MaterialLocalizationRu extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Предыдущая страница'; String get previousPageTooltip => r'Предыдущая страница';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => r'Осталось $remainingCount символа'; String get remainingTextFieldCharacterCountFew => r'Осталось $remainingCount символа';
...@@ -9635,6 +9743,9 @@ class MaterialLocalizationSk extends GlobalMaterialLocalizations { ...@@ -9635,6 +9743,9 @@ class MaterialLocalizationSk extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Predchádzajúca stránka'; String get previousPageTooltip => r'Predchádzajúca stránka';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => r'Zostávajú $remainingCount znaky'; String get remainingTextFieldCharacterCountFew => r'Zostávajú $remainingCount znaky';
...@@ -9836,6 +9947,9 @@ class MaterialLocalizationSl extends GlobalMaterialLocalizations { ...@@ -9836,6 +9947,9 @@ class MaterialLocalizationSl extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Prejšnja stran'; String get previousPageTooltip => r'Prejšnja stran';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => r'Še $remainingCount znaki'; String get remainingTextFieldCharacterCountFew => r'Še $remainingCount znaki';
...@@ -10037,6 +10151,9 @@ class MaterialLocalizationSr extends GlobalMaterialLocalizations { ...@@ -10037,6 +10151,9 @@ class MaterialLocalizationSr extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Претходна страница'; String get previousPageTooltip => r'Претходна страница';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => r'Преостала су $remainingCount знака'; String get remainingTextFieldCharacterCountFew => r'Преостала су $remainingCount знака';
...@@ -10439,6 +10556,9 @@ class MaterialLocalizationSv extends GlobalMaterialLocalizations { ...@@ -10439,6 +10556,9 @@ class MaterialLocalizationSv extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Föregående sida'; String get previousPageTooltip => r'Föregående sida';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -10640,6 +10760,9 @@ class MaterialLocalizationTh extends GlobalMaterialLocalizations { ...@@ -10640,6 +10760,9 @@ class MaterialLocalizationTh extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'หน้าก่อน'; String get previousPageTooltip => r'หน้าก่อน';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -10841,6 +10964,9 @@ class MaterialLocalizationTl extends GlobalMaterialLocalizations { ...@@ -10841,6 +10964,9 @@ class MaterialLocalizationTl extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Nakaraang page'; String get previousPageTooltip => r'Nakaraang page';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -11042,6 +11168,9 @@ class MaterialLocalizationTr extends GlobalMaterialLocalizations { ...@@ -11042,6 +11168,9 @@ class MaterialLocalizationTr extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Önceki sayfa'; String get previousPageTooltip => r'Önceki sayfa';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -11243,6 +11372,9 @@ class MaterialLocalizationUk extends GlobalMaterialLocalizations { ...@@ -11243,6 +11372,9 @@ class MaterialLocalizationUk extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Попередня сторінка'; String get previousPageTooltip => r'Попередня сторінка';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => r'Залишилося $remainingCount символи'; String get remainingTextFieldCharacterCountFew => r'Залишилося $remainingCount символи';
...@@ -11444,6 +11576,9 @@ class MaterialLocalizationUr extends GlobalMaterialLocalizations { ...@@ -11444,6 +11576,9 @@ class MaterialLocalizationUr extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'گزشتہ صفحہ'; String get previousPageTooltip => r'گزشتہ صفحہ';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -11645,6 +11780,9 @@ class MaterialLocalizationVi extends GlobalMaterialLocalizations { ...@@ -11645,6 +11780,9 @@ class MaterialLocalizationVi extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'Trang trước'; String get previousPageTooltip => r'Trang trước';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
...@@ -11846,6 +11984,9 @@ class MaterialLocalizationZh extends GlobalMaterialLocalizations { ...@@ -11846,6 +11984,9 @@ class MaterialLocalizationZh extends GlobalMaterialLocalizations {
@override @override
String get previousPageTooltip => r'上一页'; String get previousPageTooltip => r'上一页';
@override
String get refreshIndicatorSemanticLabel => r'TBD';
@override @override
String get remainingTextFieldCharacterCountFew => null; String get remainingTextFieldCharacterCountFew => null;
......
...@@ -57,5 +57,6 @@ ...@@ -57,5 +57,6 @@
"collapsedIconTapHint": "توسيع", "collapsedIconTapHint": "توسيع",
"remainingTextFieldCharacterCountZero": "لا أحرف متبقية", "remainingTextFieldCharacterCountZero": "لا أحرف متبقية",
"remainingTextFieldCharacterCountOne": "حرف واحد متبقٍ", "remainingTextFieldCharacterCountOne": "حرف واحد متبقٍ",
"remainingTextFieldCharacterCountOther": "$remainingCount حرف متبقٍ" "remainingTextFieldCharacterCountOther": "$remainingCount حرف متبقٍ",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Разгъване", "collapsedIconTapHint": "Разгъване",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Остава 1 знак", "remainingTextFieldCharacterCountOne": "Остава 1 знак",
"remainingTextFieldCharacterCountOther": "Остават $remainingCount знака" "remainingTextFieldCharacterCountOther": "Остават $remainingCount знака",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -52,5 +52,6 @@ ...@@ -52,5 +52,6 @@
"collapsedIconTapHint": "Proširi", "collapsedIconTapHint": "Proširi",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Preostao je 1 znak", "remainingTextFieldCharacterCountOne": "Preostao je 1 znak",
"remainingTextFieldCharacterCountOther": "Preostalo je $remainingCount znakova" "remainingTextFieldCharacterCountOther": "Preostalo je $remainingCount znakova",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Desplega", "collapsedIconTapHint": "Desplega",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 caràcter", "remainingTextFieldCharacterCountOne": "Queda 1 caràcter",
"remainingTextFieldCharacterCountOther": "Queden $remainingCount caràcters" "remainingTextFieldCharacterCountOther": "Queden $remainingCount caràcters",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -54,5 +54,6 @@ ...@@ -54,5 +54,6 @@
"collapsedIconTapHint": "Rozbalit", "collapsedIconTapHint": "Rozbalit",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Zbývá 1 znak", "remainingTextFieldCharacterCountOne": "Zbývá 1 znak",
"remainingTextFieldCharacterCountOther": "Zbývá $remainingCount znaků" "remainingTextFieldCharacterCountOther": "Zbývá $remainingCount znaků",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Udvid", "collapsedIconTapHint": "Udvid",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Ét tegn tilbage", "remainingTextFieldCharacterCountOne": "Ét tegn tilbage",
"remainingTextFieldCharacterCountOther": "$remainingCount tegn tilbage" "remainingTextFieldCharacterCountOther": "$remainingCount tegn tilbage",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -51,5 +51,6 @@ ...@@ -51,5 +51,6 @@
"collapsedIconTapHint": "Maximieren", "collapsedIconTapHint": "Maximieren",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Noch 1 Zeichen", "remainingTextFieldCharacterCountOne": "Noch 1 Zeichen",
"remainingTextFieldCharacterCountOther": "Noch $remainingCount Zeichen" "remainingTextFieldCharacterCountOther": "Noch $remainingCount Zeichen",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Maximieren", "collapsedIconTapHint": "Maximieren",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Noch 1 Zeichen", "remainingTextFieldCharacterCountOne": "Noch 1 Zeichen",
"remainingTextFieldCharacterCountOther": "Noch $remainingCount Zeichen" "remainingTextFieldCharacterCountOther": "Noch $remainingCount Zeichen",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Ανάπτυξη", "collapsedIconTapHint": "Ανάπτυξη",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "απομένει 1 χαρακτήρας", "remainingTextFieldCharacterCountOne": "απομένει 1 χαρακτήρας",
"remainingTextFieldCharacterCountOther": "απομένουν $remainingCount χαρακτήρες" "remainingTextFieldCharacterCountOther": "απομένουν $remainingCount χαρακτήρες",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -254,5 +254,10 @@ ...@@ -254,5 +254,10 @@
"@remainingTextFieldCharacterCount": { "@remainingTextFieldCharacterCount": {
"description": "The label for the TextField's character counter. remainingCharacters is a integer representing how many more characters the user can type into the text field before using up a given budget. All values are greater than or equal to zero.", "description": "The label for the TextField's character counter. remainingCharacters is a integer representing how many more characters the user can type into the text field before using up a given budget. All values are greater than or equal to zero.",
"plural": "remainingCount" "plural": "remainingCount"
},
"refreshIndicatorSemanticLabel": "Refresh",
"@refreshIndicatorSemanticLabel": {
"description": "The verb which describes what happens when a RefreshIndicator is displayed on screen. This is used by TalkBack on Android to announce that a refresh is happening."
} }
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expand", "collapsedIconTapHint": "Expand",
"remainingTextFieldCharacterCountZero": "No characters remaining", "remainingTextFieldCharacterCountZero": "No characters remaining",
"remainingTextFieldCharacterCountOne": "1 character remaining", "remainingTextFieldCharacterCountOne": "1 character remaining",
"remainingTextFieldCharacterCountOther": "$remainingCount characters remaining" "remainingTextFieldCharacterCountOther": "$remainingCount characters remaining",
"refreshIndicatorSemanticLabel": "Refresh"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expand", "collapsedIconTapHint": "Expand",
"remainingTextFieldCharacterCountZero": "No characters remaining", "remainingTextFieldCharacterCountZero": "No characters remaining",
"remainingTextFieldCharacterCountOne": "1 character remaining", "remainingTextFieldCharacterCountOne": "1 character remaining",
"remainingTextFieldCharacterCountOther": "$remainingCount characters remaining" "remainingTextFieldCharacterCountOther": "$remainingCount characters remaining",
"refreshIndicatorSemanticLabel": "Refresh"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expand", "collapsedIconTapHint": "Expand",
"remainingTextFieldCharacterCountZero": "No characters remaining", "remainingTextFieldCharacterCountZero": "No characters remaining",
"remainingTextFieldCharacterCountOne": "1 character remaining", "remainingTextFieldCharacterCountOne": "1 character remaining",
"remainingTextFieldCharacterCountOther": "$remainingCount characters remaining" "remainingTextFieldCharacterCountOther": "$remainingCount characters remaining",
"refreshIndicatorSemanticLabel": "Refresh"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expand", "collapsedIconTapHint": "Expand",
"remainingTextFieldCharacterCountZero": "No characters remaining", "remainingTextFieldCharacterCountZero": "No characters remaining",
"remainingTextFieldCharacterCountOne": "1 character remaining", "remainingTextFieldCharacterCountOne": "1 character remaining",
"remainingTextFieldCharacterCountOther": "$remainingCount characters remaining" "remainingTextFieldCharacterCountOther": "$remainingCount characters remaining",
"refreshIndicatorSemanticLabel": "Refresh"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expand", "collapsedIconTapHint": "Expand",
"remainingTextFieldCharacterCountZero": "No characters remaining", "remainingTextFieldCharacterCountZero": "No characters remaining",
"remainingTextFieldCharacterCountOne": "1 character remaining", "remainingTextFieldCharacterCountOne": "1 character remaining",
"remainingTextFieldCharacterCountOther": "$remainingCount characters remaining" "remainingTextFieldCharacterCountOther": "$remainingCount characters remaining",
"refreshIndicatorSemanticLabel": "Refresh"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expand", "collapsedIconTapHint": "Expand",
"remainingTextFieldCharacterCountZero": "No characters remaining", "remainingTextFieldCharacterCountZero": "No characters remaining",
"remainingTextFieldCharacterCountOne": "1 character remaining", "remainingTextFieldCharacterCountOne": "1 character remaining",
"remainingTextFieldCharacterCountOther": "$remainingCount characters remaining" "remainingTextFieldCharacterCountOther": "$remainingCount characters remaining",
"refreshIndicatorSemanticLabel": "Refresh"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expand", "collapsedIconTapHint": "Expand",
"remainingTextFieldCharacterCountZero": "No characters remaining", "remainingTextFieldCharacterCountZero": "No characters remaining",
"remainingTextFieldCharacterCountOne": "1 character remaining", "remainingTextFieldCharacterCountOne": "1 character remaining",
"remainingTextFieldCharacterCountOther": "$remainingCount characters remaining" "remainingTextFieldCharacterCountOther": "$remainingCount characters remaining",
"refreshIndicatorSemanticLabel": "Refresh"
} }
...@@ -51,5 +51,6 @@ ...@@ -51,5 +51,6 @@
"collapsedIconTapHint": "Mostrar", "collapsedIconTapHint": "Mostrar",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter.", "remainingTextFieldCharacterCountOne": "Queda 1 carácter.",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Queda 1 carácter", "remainingTextFieldCharacterCountOne": "Queda 1 carácter",
"remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres" "remainingTextFieldCharacterCountOther": "Quedan $remainingCount caracteres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Laienda", "collapsedIconTapHint": "Laienda",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Jäänud on 1 tähemärk", "remainingTextFieldCharacterCountOne": "Jäänud on 1 tähemärk",
"remainingTextFieldCharacterCountOther": "Jäänud on $remainingCount tähemärki" "remainingTextFieldCharacterCountOther": "Jäänud on $remainingCount tähemärki",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "بزرگ کردن", "collapsedIconTapHint": "بزرگ کردن",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "۱ نویسه باقی مانده است", "remainingTextFieldCharacterCountOne": "۱ نویسه باقی مانده است",
"remainingTextFieldCharacterCountOther": "$remainingCount نویسه باقی مانده است" "remainingTextFieldCharacterCountOther": "$remainingCount نویسه باقی مانده است",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Laajenna", "collapsedIconTapHint": "Laajenna",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 merkki jäljellä", "remainingTextFieldCharacterCountOne": "1 merkki jäljellä",
"remainingTextFieldCharacterCountOther": "$remainingCount merkkiä jäljellä" "remainingTextFieldCharacterCountOther": "$remainingCount merkkiä jäljellä",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "I-expand", "collapsedIconTapHint": "I-expand",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 character ang natitira", "remainingTextFieldCharacterCountOne": "1 character ang natitira",
"remainingTextFieldCharacterCountOther": "$remainingCount na character ang natitira" "remainingTextFieldCharacterCountOther": "$remainingCount na character ang natitira",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -51,5 +51,6 @@ ...@@ -51,5 +51,6 @@
"collapsedIconTapHint": "Développer", "collapsedIconTapHint": "Développer",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 caractère restant", "remainingTextFieldCharacterCountOne": "1 caractère restant",
"remainingTextFieldCharacterCountOther": "$remainingCount caractères restants" "remainingTextFieldCharacterCountOther": "$remainingCount caractères restants",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Maximieren", "collapsedIconTapHint": "Maximieren",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Noch 1 Zeichen", "remainingTextFieldCharacterCountOne": "Noch 1 Zeichen",
"remainingTextFieldCharacterCountOther": "Noch $remainingCount Zeichen" "remainingTextFieldCharacterCountOther": "Noch $remainingCount Zeichen",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -54,5 +54,6 @@ ...@@ -54,5 +54,6 @@
"collapsedIconTapHint": "הרחבה", "collapsedIconTapHint": "הרחבה",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "נותר תו אחד", "remainingTextFieldCharacterCountOne": "נותר תו אחד",
"remainingTextFieldCharacterCountOther": "נותרו $remainingCount תווים" "remainingTextFieldCharacterCountOther": "נותרו $remainingCount תווים",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "बड़ा करें", "collapsedIconTapHint": "बड़ा करें",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "एक वर्ण अाैर डाला जा सकता है", "remainingTextFieldCharacterCountOne": "एक वर्ण अाैर डाला जा सकता है",
"remainingTextFieldCharacterCountOther": "$remainingCount वर्ण अाैर डाले जा सकते हैं" "remainingTextFieldCharacterCountOther": "$remainingCount वर्ण अाैर डाले जा सकते हैं",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -52,5 +52,6 @@ ...@@ -52,5 +52,6 @@
"collapsedIconTapHint": "Proširi", "collapsedIconTapHint": "Proširi",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Preostao je 1 znak", "remainingTextFieldCharacterCountOne": "Preostao je 1 znak",
"remainingTextFieldCharacterCountOther": "Preostalo je $remainingCount znakova" "remainingTextFieldCharacterCountOther": "Preostalo je $remainingCount znakova",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Kibontás", "collapsedIconTapHint": "Kibontás",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 karakter maradt", "remainingTextFieldCharacterCountOne": "1 karakter maradt",
"remainingTextFieldCharacterCountOther": "$remainingCount karakter maradt" "remainingTextFieldCharacterCountOther": "$remainingCount karakter maradt",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Luaskan", "collapsedIconTapHint": "Luaskan",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Sisa 1 karakter", "remainingTextFieldCharacterCountOne": "Sisa 1 karakter",
"remainingTextFieldCharacterCountOther": "Sisa $remainingCount karakter" "remainingTextFieldCharacterCountOther": "Sisa $remainingCount karakter",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Espandi", "collapsedIconTapHint": "Espandi",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 carattere rimanente", "remainingTextFieldCharacterCountOne": "1 carattere rimanente",
"remainingTextFieldCharacterCountOther": "$remainingCount caratteri rimanenti" "remainingTextFieldCharacterCountOther": "$remainingCount caratteri rimanenti",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "展開", "collapsedIconTapHint": "展開",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "残り 1 文字(半角相当)", "remainingTextFieldCharacterCountOne": "残り 1 文字(半角相当)",
"remainingTextFieldCharacterCountOther": "残り $remainingCount 文字(半角相当)" "remainingTextFieldCharacterCountOther": "残り $remainingCount 文字(半角相当)",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "ពង្រីក", "collapsedIconTapHint": "ពង្រីក",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "នៅសល់​ 1 តួ​ទៀត", "remainingTextFieldCharacterCountOne": "នៅសល់​ 1 តួ​ទៀត",
"remainingTextFieldCharacterCountOther": "នៅសល់ $remainingCount តួ​ទៀត" "remainingTextFieldCharacterCountOther": "នៅសល់ $remainingCount តួ​ទៀត",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "펼치기", "collapsedIconTapHint": "펼치기",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1자 남음", "remainingTextFieldCharacterCountOne": "1자 남음",
"remainingTextFieldCharacterCountOther": "$remainingCount자 남음" "remainingTextFieldCharacterCountOther": "$remainingCount자 남음",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -54,5 +54,6 @@ ...@@ -54,5 +54,6 @@
"collapsedIconTapHint": "Išskleisti", "collapsedIconTapHint": "Išskleisti",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Liko 1 simbolis", "remainingTextFieldCharacterCountOne": "Liko 1 simbolis",
"remainingTextFieldCharacterCountOther": "Liko $remainingCount simbolių" "remainingTextFieldCharacterCountOther": "Liko $remainingCount simbolių",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -51,5 +51,6 @@ ...@@ -51,5 +51,6 @@
"collapsedIconTapHint": "Izvērst", "collapsedIconTapHint": "Izvērst",
"remainingTextFieldCharacterCountZero": "Nav atlikusi neviena rakstzīme.", "remainingTextFieldCharacterCountZero": "Nav atlikusi neviena rakstzīme.",
"remainingTextFieldCharacterCountOne": "Atlikusi 1 rakstzīme.", "remainingTextFieldCharacterCountOne": "Atlikusi 1 rakstzīme.",
"remainingTextFieldCharacterCountOther": "Atlikušas $remainingCount rakstzīmes." "remainingTextFieldCharacterCountOther": "Atlikušas $remainingCount rakstzīmes.",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -51,5 +51,6 @@ ...@@ -51,5 +51,6 @@
"collapsedIconTapHint": "Expand", "collapsedIconTapHint": "Expand",
"remainingTextFieldCharacterCountZero": "No characters remaining", "remainingTextFieldCharacterCountZero": "No characters remaining",
"remainingTextFieldCharacterCountOne": "1 character remaining", "remainingTextFieldCharacterCountOne": "1 character remaining",
"remainingTextFieldCharacterCountOther": "$remainingCount characters remaining" "remainingTextFieldCharacterCountOther": "$remainingCount characters remaining",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -51,5 +51,6 @@ ...@@ -51,5 +51,6 @@
"collapsedIconTapHint": "Kembangkan", "collapsedIconTapHint": "Kembangkan",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 aksara lagi", "remainingTextFieldCharacterCountOne": "1 aksara lagi",
"remainingTextFieldCharacterCountOther": "$remainingCount aksara lagi" "remainingTextFieldCharacterCountOther": "$remainingCount aksara lagi",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Vis", "collapsedIconTapHint": "Vis",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 tegn gjenstår", "remainingTextFieldCharacterCountOne": "1 tegn gjenstår",
"remainingTextFieldCharacterCountOther": "$remainingCount tegn gjenstår" "remainingTextFieldCharacterCountOther": "$remainingCount tegn gjenstår",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Uitvouwen", "collapsedIconTapHint": "Uitvouwen",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 teken resterend", "remainingTextFieldCharacterCountOne": "1 teken resterend",
"remainingTextFieldCharacterCountOther": "$remainingCount tekens resterend" "remainingTextFieldCharacterCountOther": "$remainingCount tekens resterend",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -54,5 +54,6 @@ ...@@ -54,5 +54,6 @@
"collapsedIconTapHint": "Rozwiń", "collapsedIconTapHint": "Rozwiń",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Jeszcze 1 znak", "remainingTextFieldCharacterCountOne": "Jeszcze 1 znak",
"remainingTextFieldCharacterCountOther": "Jeszcze $remainingCount znaku" "remainingTextFieldCharacterCountOther": "Jeszcze $remainingCount znaku",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -49,5 +49,6 @@ ...@@ -49,5 +49,6 @@
"collapsedIconTapHint": "TBD", "collapsedIconTapHint": "TBD",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "TBD", "remainingTextFieldCharacterCountOne": "TBD",
"remainingTextFieldCharacterCountOther": "TBD" "remainingTextFieldCharacterCountOther": "TBD",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -52,5 +52,6 @@ ...@@ -52,5 +52,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 caractere restante", "remainingTextFieldCharacterCountOne": "1 caractere restante",
"remainingTextFieldCharacterCountOther": "$remainingCount caracteres restantes" "remainingTextFieldCharacterCountOther": "$remainingCount caracteres restantes",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Expandir", "collapsedIconTapHint": "Expandir",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Resta 1 caráter", "remainingTextFieldCharacterCountOne": "Resta 1 caráter",
"remainingTextFieldCharacterCountOther": "Restam $remainingCount carateres" "remainingTextFieldCharacterCountOther": "Restam $remainingCount carateres",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -53,5 +53,6 @@ ...@@ -53,5 +53,6 @@
"collapsedIconTapHint": "Extindeți", "collapsedIconTapHint": "Extindeți",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "un caracter rămas", "remainingTextFieldCharacterCountOne": "un caracter rămas",
"remainingTextFieldCharacterCountOther": "$remainingCount de caractere rămase" "remainingTextFieldCharacterCountOther": "$remainingCount de caractere rămase",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -55,5 +55,6 @@ ...@@ -55,5 +55,6 @@
"collapsedIconTapHint": "Развернуть", "collapsedIconTapHint": "Развернуть",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Остался 1 символ", "remainingTextFieldCharacterCountOne": "Остался 1 символ",
"remainingTextFieldCharacterCountOther": "Осталось $remainingCount символа" "remainingTextFieldCharacterCountOther": "Осталось $remainingCount символа",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -54,5 +54,6 @@ ...@@ -54,5 +54,6 @@
"collapsedIconTapHint": "Rozbaliť", "collapsedIconTapHint": "Rozbaliť",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Zostáva 1 znak", "remainingTextFieldCharacterCountOne": "Zostáva 1 znak",
"remainingTextFieldCharacterCountOther": "Zostáva $remainingCount znakov" "remainingTextFieldCharacterCountOther": "Zostáva $remainingCount znakov",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -54,5 +54,6 @@ ...@@ -54,5 +54,6 @@
"collapsedIconTapHint": "Razširiti", "collapsedIconTapHint": "Razširiti",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Še 1 znak", "remainingTextFieldCharacterCountOne": "Še 1 znak",
"remainingTextFieldCharacterCountOther": "Še $remainingCount znakov" "remainingTextFieldCharacterCountOther": "Še $remainingCount znakov",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -52,5 +52,6 @@ ...@@ -52,5 +52,6 @@
"collapsedIconTapHint": "Прошири", "collapsedIconTapHint": "Прошири",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Преостао је 1 знак", "remainingTextFieldCharacterCountOne": "Преостао је 1 знак",
"remainingTextFieldCharacterCountOther": "Преостало је $remainingCount знакова" "remainingTextFieldCharacterCountOther": "Преостало је $remainingCount знакова",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -52,5 +52,6 @@ ...@@ -52,5 +52,6 @@
"collapsedIconTapHint": "Proširi", "collapsedIconTapHint": "Proširi",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Preostao je 1 znak", "remainingTextFieldCharacterCountOne": "Preostao je 1 znak",
"remainingTextFieldCharacterCountOther": "Preostalo je $remainingCount znakova" "remainingTextFieldCharacterCountOther": "Preostalo je $remainingCount znakova",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Utöka", "collapsedIconTapHint": "Utöka",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 tecken kvar", "remainingTextFieldCharacterCountOne": "1 tecken kvar",
"remainingTextFieldCharacterCountOther": "$remainingCount tecken kvar" "remainingTextFieldCharacterCountOther": "$remainingCount tecken kvar",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "ขยาย", "collapsedIconTapHint": "ขยาย",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "เหลือ 1 อักขระ", "remainingTextFieldCharacterCountOne": "เหลือ 1 อักขระ",
"remainingTextFieldCharacterCountOther": "เหลือ $remainingCount อักขระ" "remainingTextFieldCharacterCountOther": "เหลือ $remainingCount อักขระ",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "I-expand", "collapsedIconTapHint": "I-expand",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 character ang natitira", "remainingTextFieldCharacterCountOne": "1 character ang natitira",
"remainingTextFieldCharacterCountOther": "$remainingCount na character ang natitira" "remainingTextFieldCharacterCountOther": "$remainingCount na character ang natitira",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Genişlet", "collapsedIconTapHint": "Genişlet",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 karakter kaldı", "remainingTextFieldCharacterCountOne": "1 karakter kaldı",
"remainingTextFieldCharacterCountOther": "$remainingCount karakter kaldı" "remainingTextFieldCharacterCountOther": "$remainingCount karakter kaldı",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -54,5 +54,6 @@ ...@@ -54,5 +54,6 @@
"collapsedIconTapHint": "Розгорнути", "collapsedIconTapHint": "Розгорнути",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Залишився 1 символ", "remainingTextFieldCharacterCountOne": "Залишився 1 символ",
"remainingTextFieldCharacterCountOther": "Залишилося $remainingCount символу" "remainingTextFieldCharacterCountOther": "Залишилося $remainingCount символу",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "پھیلائیں", "collapsedIconTapHint": "پھیلائیں",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "1 حرف باقی ہے", "remainingTextFieldCharacterCountOne": "1 حرف باقی ہے",
"remainingTextFieldCharacterCountOther": "$remainingCount حروف باقی ہیں" "remainingTextFieldCharacterCountOther": "$remainingCount حروف باقی ہیں",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "Mở rộng", "collapsedIconTapHint": "Mở rộng",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "Còn lại 1 ký tự", "remainingTextFieldCharacterCountOne": "Còn lại 1 ký tự",
"remainingTextFieldCharacterCountOther": "Còn lại $remainingCount ký tự" "remainingTextFieldCharacterCountOther": "Còn lại $remainingCount ký tự",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "展开", "collapsedIconTapHint": "展开",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "还可输入 1 个字符", "remainingTextFieldCharacterCountOne": "还可输入 1 个字符",
"remainingTextFieldCharacterCountOther": "还可输入 $remainingCount 个字符" "remainingTextFieldCharacterCountOther": "还可输入 $remainingCount 个字符",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "展開", "collapsedIconTapHint": "展開",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "還可輸入 1 個字元", "remainingTextFieldCharacterCountOne": "還可輸入 1 個字元",
"remainingTextFieldCharacterCountOther": "還可輸入 $remainingCount 個字元" "remainingTextFieldCharacterCountOther": "還可輸入 $remainingCount 個字元",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -50,5 +50,6 @@ ...@@ -50,5 +50,6 @@
"collapsedIconTapHint": "展開", "collapsedIconTapHint": "展開",
"remainingTextFieldCharacterCountZero": "TBD", "remainingTextFieldCharacterCountZero": "TBD",
"remainingTextFieldCharacterCountOne": "還可輸入 1 個字元", "remainingTextFieldCharacterCountOne": "還可輸入 1 個字元",
"remainingTextFieldCharacterCountOther": "還可輸入 $remainingCount 個字元" "remainingTextFieldCharacterCountOther": "還可輸入 $remainingCount 個字元",
"refreshIndicatorSemanticLabel": "TBD"
} }
...@@ -40,6 +40,7 @@ void main() { ...@@ -40,6 +40,7 @@ void main() {
expect(localizations.alertDialogLabel, isNotNull); expect(localizations.alertDialogLabel, isNotNull);
expect(localizations.collapsedIconTapHint, isNotNull); expect(localizations.collapsedIconTapHint, isNotNull);
expect(localizations.expandedIconTapHint, isNotNull); expect(localizations.expandedIconTapHint, isNotNull);
expect(localizations.refreshIndicatorSemanticLabel, isNotNull);
expect(localizations.remainingTextFieldCharacterCount(0), isNotNull); expect(localizations.remainingTextFieldCharacterCount(0), isNotNull);
expect(localizations.remainingTextFieldCharacterCount(1), isNotNull); expect(localizations.remainingTextFieldCharacterCount(1), isNotNull);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment