Unverified Commit 09fe3470 authored by Jonah Williams's avatar Jonah Williams Committed by GitHub

Add localization for expand icon collapse/expand tap hint (#20766)

parent 47cffd16
......@@ -9,12 +9,17 @@ import 'colors.dart';
import 'debug.dart';
import 'icon_button.dart';
import 'icons.dart';
import 'material_localizations.dart';
import 'theme.dart';
/// A widget representing a rotating expand/collapse button. The icon rotates
/// 180 deg when pressed, then reverts the animation on a second press.
/// The underlying icon is [Icons.expand_more].
///
/// The expand icon does not include a semantic label for accessibility. In
/// order to be accessible it should be combined with a label using
/// [MergeSemantics]. This is done automatically by the [ExpansionPanel] widget.
///
/// See [IconButton] for a more general implementation of a pressable button
/// with an icon.
class ExpandIcon extends StatefulWidget {
......@@ -104,14 +109,20 @@ class _ExpandIconState extends State<ExpandIcon> with SingleTickerProviderStateM
@override
Widget build(BuildContext context) {
assert(debugCheckHasMaterial(context));
return new IconButton(
padding: widget.padding,
color: Colors.black38,
onPressed: widget.onPressed == null ? null : _handlePressed,
icon: new RotationTransition(
turns: _iconTurns,
child: const Icon(Icons.expand_more)
)
final MaterialLocalizations localizations = MaterialLocalizations.of(context);
final String onTapHint = widget.isExpanded ? localizations.expandedIconTapHint : localizations.collapsedIconTapHint;
return new Semantics(
onTapHint: widget.onPressed == null ? null : onTapHint,
child: new IconButton(
padding: widget.padding,
color: Colors.black38,
onPressed: widget.onPressed == null ? null : _handlePressed,
icon: new RotationTransition(
turns: _iconTurns,
child: const Icon(Icons.expand_more)
),
),
);
}
}
......@@ -288,7 +288,7 @@ class _ExpansionPanelListState extends State<ExpansionPanelList> {
key: new _SaltedKey<BuildContext, int>(context, index * 2),
child: new Column(
children: <Widget>[
header,
new MergeSemantics(child: header),
new AnimatedCrossFade(
firstChild: new Container(height: 0.0),
secondChild: child.body,
......
......@@ -301,6 +301,12 @@ abstract class MaterialLocalizations {
/// list one space right in the list.
String get reorderItemRight;
/// The semantics hint to describe the tap action on an expanded [ExpandIcon].
String get expandedIconTapHint => 'Collapse';
/// The semantics hint to describe the tap action on a collapsed [ExpandIcon].
String get collapsedIconTapHint => 'Expand';
/// The `MaterialLocalizations` from the closest [Localizations] instance
/// that encloses the given context.
///
......@@ -681,6 +687,12 @@ class DefaultMaterialLocalizations implements MaterialLocalizations {
@override
String get reorderItemToStart => 'Move to the start';
@override
String get expandedIconTapHint => 'Collapse';
@override
String get collapsedIconTapHint => 'Expand';
/// Creates an object that provides US English resource values for the material
/// library widgets.
///
......
......@@ -36,7 +36,7 @@ void main() {
)
);
final IconTheme iconTheme = tester.firstWidget(find.byType(IconTheme));
final IconTheme iconTheme = tester.firstWidget(find.byType(IconTheme).last);
expect(iconTheme.data.color, equals(Colors.black26));
});
......@@ -84,12 +84,46 @@ void main() {
final RotationTransition rotation = tester.firstWidget(find.byType(RotationTransition));
expect(rotation.turns.value, 0.5);
});
testWidgets('ExpandIcon has correct semantic hints', (WidgetTester tester) async {
final SemanticsHandle handle = tester.ensureSemantics();
const DefaultMaterialLocalizations localizations = DefaultMaterialLocalizations();
await tester.pumpWidget(wrap(
child: new ExpandIcon(
isExpanded: true,
onPressed: (bool _) {},
)
));
expect(tester.getSemanticsData(find.byType(ExpandIcon)), matchesSemanticsData(
hasTapAction: true,
hasEnabledState: true,
isEnabled: true,
isButton: true,
onTapHint: localizations.expandedIconTapHint,
));
await tester.pumpWidget(wrap(
child: new ExpandIcon(
isExpanded: false,
onPressed: (bool _) {},
)
));
expect(tester.getSemanticsData(find.byType(ExpandIcon)), matchesSemanticsData(
hasTapAction: true,
hasEnabledState: true,
isEnabled: true,
isButton: true,
onTapHint: localizations.collapsedIconTapHint,
));
handle.dispose();
});
}
Widget wrap({ Widget child }) {
return new Directionality(
textDirection: TextDirection.ltr,
child: new Center(
return new MaterialApp(
home: new Center(
child: new Material(child: child),
),
);
......
......@@ -347,4 +347,59 @@ void main() {
expect(find.text('E'), findsOneWidget);
expect(find.text('F'), findsNothing);
});
testWidgets('Panel header has semantics', (WidgetTester tester) async {
const Key expandedKey = Key('expanded');
const Key collapsedKey = Key('collapsed');
const DefaultMaterialLocalizations localizations = DefaultMaterialLocalizations();
final SemanticsHandle handle = tester.ensureSemantics();
final List<ExpansionPanel> _demoItems = <ExpansionPanel>[
new ExpansionPanel(
headerBuilder: (BuildContext context, bool isExpanded) {
return const Text('Expanded', key: expandedKey);
},
body: const SizedBox(height: 100.0),
isExpanded: true,
),
new ExpansionPanel(
headerBuilder: (BuildContext context, bool isExpanded) {
return const Text('Collapsed', key: collapsedKey);
},
body: const SizedBox(height: 100.0),
isExpanded: false,
),
];
final ExpansionPanelList _expansionList = new ExpansionPanelList(
children: _demoItems,
);
await tester.pumpWidget(
new MaterialApp(
home: new SingleChildScrollView(
child: _expansionList,
),
),
);
expect(tester.getSemanticsData(find.byKey(expandedKey)), matchesSemanticsData(
label: 'Expanded',
isButton: true,
hasEnabledState: true,
isEnabled: true,
hasTapAction: true,
onTapHint: localizations.expandedIconTapHint,
));
expect(tester.getSemanticsData(find.byKey(collapsedKey)), matchesSemanticsData(
label: 'Collapsed',
isButton: true,
hasEnabledState: true,
isEnabled: true,
hasTapAction: true,
onTapHint: localizations.collapsedIconTapHint,
));
handle.dispose();
});
}
......@@ -49,5 +49,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -46,5 +46,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
\ No newline at end of file
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -47,5 +47,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -46,5 +46,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -235,5 +235,15 @@
"reorderItemRight": "Move right",
"@reorderItemRight": {
"description": "The audio announcement to move an item in a Reorderable List right in the list when it is oriented horizontally."
},
"expandedIconTapHint": "Collapse",
"@expandedIconTapHint": {
"description": "The verb which describes what happens when an expanded ExpandIcon toggle button is pressed. This is used by TalkBack on Android to replace the default hint on the accessibility action. The verb will be concatenated with a prefix string which describes how to perform the action, which by default is 'double tap to activate'. In the case of US english, this would be 'double tap to collapse.' The exact phrasing of the hint will vary based on locale"
},
"collapsedIconTapHint": "Expand",
"@collapsedIconTapHint": {
"description": "The verb which describes what happens when a collapsed ExpandIcon toggle button is pressed. This is used by TalkBack on Android to replace the default hint on the accessibility action. The verb will be concatenated with a prefix string which describes how to perform the action, which by default is 'double tap to activate'. In the case of US english, this would be 'double tap to expand.' The exact phrasing of the hint will vary based on locale"
}
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "Move up",
"reorderItemDown": "Move down",
"reorderItemLeft": "Move left",
"reorderItemRight": "Move right"
"reorderItemRight": "Move right",
"expandedIconTapHint": "Collapse",
"collapsedIconTapHint": "Expand"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "Move up",
"reorderItemDown": "Move down",
"reorderItemLeft": "Move left",
"reorderItemRight": "Move right"
"reorderItemRight": "Move right",
"expandedIconTapHint": "Collapse",
"collapsedIconTapHint": "Expand"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "Move up",
"reorderItemDown": "Move down",
"reorderItemLeft": "Move left",
"reorderItemRight": "Move right"
"reorderItemRight": "Move right",
"expandedIconTapHint": "Collapse",
"collapsedIconTapHint": "Expand"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "Move up",
"reorderItemDown": "Move down",
"reorderItemLeft": "Move left",
"reorderItemRight": "Move right"
"reorderItemRight": "Move right",
"expandedIconTapHint": "Collapse",
"collapsedIconTapHint": "Expand"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "Move up",
"reorderItemDown": "Move down",
"reorderItemLeft": "Move left",
"reorderItemRight": "Move right"
"reorderItemRight": "Move right",
"expandedIconTapHint": "Collapse",
"collapsedIconTapHint": "Expand"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "Move up",
"reorderItemDown": "Move down",
"reorderItemLeft": "Move left",
"reorderItemRight": "Move right"
"reorderItemRight": "Move right",
"expandedIconTapHint": "Collapse",
"collapsedIconTapHint": "Expand"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "Move up",
"reorderItemDown": "Move down",
"reorderItemLeft": "Move left",
"reorderItemRight": "Move right"
"reorderItemRight": "Move right",
"expandedIconTapHint": "Collapse",
"collapsedIconTapHint": "Expand"
}
......@@ -46,5 +46,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -39,5 +39,7 @@
"popupMenuLabel": "Menú emergente",
"dialogLabel": "Diálogo",
"alertDialogLabel": "Alerta",
"searchFieldLabel": "Buscar"
"searchFieldLabel": "Buscar",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -46,5 +46,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -47,5 +47,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -46,5 +46,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -47,5 +47,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -46,5 +46,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -46,5 +46,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -47,5 +47,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -44,5 +44,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -47,5 +47,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -47,5 +47,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -48,5 +48,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -47,5 +47,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -47,5 +47,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -46,5 +46,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -46,5 +46,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -47,5 +47,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -45,5 +45,7 @@
"reorderItemUp": "TBD",
"reorderItemDown": "TBD",
"reorderItemLeft": "TBD",
"reorderItemRight": "TBD"
"reorderItemRight": "TBD",
"expandedIconTapHint": "TBD",
"collapsedIconTapHint": "TBD"
}
......@@ -38,6 +38,8 @@ void main() {
expect(localizations.popupMenuLabel, isNotNull);
expect(localizations.dialogLabel, isNotNull);
expect(localizations.alertDialogLabel, isNotNull);
expect(localizations.collapsedIconTapHint, isNotNull);
expect(localizations.expandedIconTapHint, isNotNull);
expect(localizations.aboutListTileTitle('FOO'), isNotNull);
expect(localizations.aboutListTileTitle('FOO'), contains('FOO'));
......
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