Skip to content

Commit e86c1c8

Browse files
authored
Add tooltip for the clear button on SearchAnchor's search view (#141804)
Fixes #141347 This PR is to add a "clear text" tooltip for the clear button on `SearchAnchor`'s search view and also add a `clearButtonTooltip` entry for `material_localizations`.
1 parent 5b673c2 commit e86c1c8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

83 files changed

+408
-78
lines changed

packages/flutter/lib/src/material/material_localizations.dart

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,9 @@ abstract class MaterialLocalizations {
3232
/// The [BackButton]'s tooltip.
3333
String get backButtonTooltip;
3434

35+
/// The tooltip for the clear button to clear text on [SearchAnchor]'s search view.
36+
String get clearButtonTooltip;
37+
3538
/// The [CloseButton]'s tooltip.
3639
String get closeButtonTooltip;
3740

@@ -1053,6 +1056,9 @@ class DefaultMaterialLocalizations implements MaterialLocalizations {
10531056
@override
10541057
String get backButtonTooltip => 'Back';
10551058

1059+
@override
1060+
String get clearButtonTooltip => 'Clear text';
1061+
10561062
@override
10571063
String get closeButtonTooltip => 'Close';
10581064

packages/flutter/lib/src/material/search_anchor.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import 'ink_well.dart';
2020
import 'input_border.dart';
2121
import 'input_decorator.dart';
2222
import 'material.dart';
23+
import 'material_localizations.dart';
2324
import 'material_state.dart';
2425
import 'search_bar_theme.dart';
2526
import 'search_view_theme.dart';
@@ -811,13 +812,15 @@ class _ViewContentState extends State<_ViewContent> {
811812
Widget build(BuildContext context) {
812813
final Widget defaultLeading = IconButton(
813814
icon: const Icon(Icons.arrow_back),
815+
tooltip: MaterialLocalizations.of(context).backButtonTooltip,
814816
onPressed: () { Navigator.of(context).pop(); },
815817
style: const ButtonStyle(tapTargetSize: MaterialTapTargetSize.shrinkWrap),
816818
);
817819

818820
final List<Widget> defaultTrailing = <Widget>[
819821
if (_controller.text.isNotEmpty) IconButton(
820822
icon: const Icon(Icons.close),
823+
tooltip: MaterialLocalizations.of(context).clearButtonTooltip,
821824
onPressed: () {
822825
_controller.clear();
823826
},

packages/flutter/test/material/localizations_test.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ void main() {
1111

1212
expect(localizations.openAppDrawerTooltip, isNotNull);
1313
expect(localizations.backButtonTooltip, isNotNull);
14+
expect(localizations.clearButtonTooltip, isNotNull);
1415
expect(localizations.closeButtonTooltip, isNotNull);
1516
expect(localizations.deleteButtonTooltip, isNotNull);
1617
expect(localizations.moreButtonTooltip, isNotNull);

0 commit comments

Comments
 (0)