diff --git a/packages/flutter/lib/src/material/chip.dart b/packages/flutter/lib/src/material/chip.dart index 043b8d62e65..ff2149e8003 100644 --- a/packages/flutter/lib/src/material/chip.dart +++ b/packages/flutter/lib/src/material/chip.dart @@ -13,7 +13,7 @@ library; import 'dart:math' as math; -import 'package:flutter/foundation.dart' show clampDouble; +import 'package:flutter/foundation.dart' show clampDouble, kIsWeb; import 'package:flutter/rendering.dart'; import 'package:flutter/widgets.dart'; @@ -1502,7 +1502,13 @@ class _RawChipState extends State with TickerProviderStateMixin[ - SemanticsFlag.hasSelectedState, + if (kIsWeb) SemanticsFlag.hasCheckedState, + if (!kIsWeb) SemanticsFlag.hasSelectedState, SemanticsFlag.hasEnabledState, SemanticsFlag.isButton, ], @@ -2868,7 +2869,8 @@ void main() { label: 'test', textDirection: TextDirection.ltr, flags: [ - SemanticsFlag.hasSelectedState, + if (kIsWeb) SemanticsFlag.hasCheckedState, + if (!kIsWeb) SemanticsFlag.hasSelectedState, SemanticsFlag.hasEnabledState, SemanticsFlag.isButton, ], @@ -2931,7 +2933,8 @@ void main() { label: 'test', textDirection: TextDirection.ltr, flags: [ - SemanticsFlag.hasSelectedState, + if (kIsWeb) SemanticsFlag.hasCheckedState, + if (!kIsWeb) SemanticsFlag.hasSelectedState, SemanticsFlag.hasEnabledState, SemanticsFlag.isButton, SemanticsFlag.isEnabled, @@ -2991,7 +2994,8 @@ void main() { label: 'test', textDirection: TextDirection.ltr, flags: [ - SemanticsFlag.hasSelectedState, + if (kIsWeb) SemanticsFlag.hasCheckedState, + if (!kIsWeb) SemanticsFlag.hasSelectedState, SemanticsFlag.hasEnabledState, SemanticsFlag.isButton, SemanticsFlag.isEnabled, @@ -3050,8 +3054,14 @@ void main() { SemanticsFlag.isButton, SemanticsFlag.isEnabled, SemanticsFlag.isFocusable, - SemanticsFlag.hasSelectedState, - SemanticsFlag.isSelected, + if (kIsWeb) ...[ + SemanticsFlag.hasCheckedState, + SemanticsFlag.isChecked, + ], + if (!kIsWeb) ...[ + SemanticsFlag.hasSelectedState, + SemanticsFlag.isSelected, + ], ], actions: [SemanticsAction.tap, SemanticsAction.focus], ), @@ -3100,7 +3110,8 @@ void main() { label: 'test', textDirection: TextDirection.ltr, flags: [ - SemanticsFlag.hasSelectedState, + if (kIsWeb) SemanticsFlag.hasCheckedState, + if (!kIsWeb) SemanticsFlag.hasSelectedState, SemanticsFlag.hasEnabledState, SemanticsFlag.isButton, ], @@ -3149,7 +3160,10 @@ void main() { label: 'test', textDirection: TextDirection.ltr, // Must not be a button when tapping is disabled. - flags: [SemanticsFlag.hasSelectedState], + flags: [ + if (kIsWeb) SemanticsFlag.hasCheckedState, + if (!kIsWeb) SemanticsFlag.hasSelectedState, + ], actions: [], ), ], @@ -3198,7 +3212,8 @@ void main() { label: 'test', textDirection: TextDirection.ltr, flags: [ - SemanticsFlag.hasSelectedState, + if (kIsWeb) SemanticsFlag.hasCheckedState, + if (!kIsWeb) SemanticsFlag.hasSelectedState, SemanticsFlag.hasEnabledState, SemanticsFlag.isButton, SemanticsFlag.isEnabled, @@ -3249,7 +3264,8 @@ void main() { label: 'test', textDirection: TextDirection.ltr, flags: [ - SemanticsFlag.hasSelectedState, + if (kIsWeb) SemanticsFlag.hasCheckedState, + if (!kIsWeb) SemanticsFlag.hasSelectedState, SemanticsFlag.hasEnabledState, SemanticsFlag.isButton, ],