diff --git a/lib/web_ui/lib/src/engine/dom.dart b/lib/web_ui/lib/src/engine/dom.dart index 47adc523919fb..89456dd375744 100644 --- a/lib/web_ui/lib/src/engine/dom.dart +++ b/lib/web_ui/lib/src/engine/dom.dart @@ -63,9 +63,6 @@ extension DomWindowExtension on DomWindow { /// The Trusted Types API (when available). /// See: https://developer.mozilla.org/en-US/docs/Web/API/Trusted_Types_API external DomTrustedTypePolicyFactory? get trustedTypes; - - // ignore: non_constant_identifier_names - external DomIntl get Intl; } typedef DomRequestAnimationFrameCallback = void Function(num highResTime); @@ -83,6 +80,9 @@ extension DomConsoleExtension on DomConsole { @JS('window') external DomWindow get domWindow; +@JS('Intl') +external DomIntl get domIntl; + @JS() @staticInterop class DomNavigator {} @@ -1815,7 +1815,7 @@ extension DomV8BreakIteratorExtension on DomV8BreakIterator { } DomV8BreakIterator createV8BreakIterator() { - final Object? v8BreakIterator = domWindow.Intl.v8BreakIterator; + final Object? v8BreakIterator = domIntl.v8BreakIterator; if (v8BreakIterator == null) { throw UnimplementedError('v8BreakIterator is not supported.'); } diff --git a/lib/web_ui/lib/src/engine/text/line_breaker.dart b/lib/web_ui/lib/src/engine/text/line_breaker.dart index c2bf0ab1e2090..594605a3ad4ad 100644 --- a/lib/web_ui/lib/src/engine/text/line_breaker.dart +++ b/lib/web_ui/lib/src/engine/text/line_breaker.dart @@ -42,7 +42,7 @@ enum LineBreakType { /// Splits [text] into fragments based on line breaks. abstract class LineBreakFragmenter extends TextFragmenter { factory LineBreakFragmenter(String text) { - if (domWindow.Intl.v8BreakIterator != null) { + if (domIntl.v8BreakIterator != null) { return V8LineBreakFragmenter(text); } return FWLineBreakFragmenter(text); @@ -66,7 +66,7 @@ class FWLineBreakFragmenter extends TextFragmenter implements LineBreakFragmente /// `v8BreakIterator` API to find line breaks in the given [text]. class V8LineBreakFragmenter extends TextFragmenter implements LineBreakFragmenter { V8LineBreakFragmenter(super.text) - : assert(domWindow.Intl.v8BreakIterator != null); + : assert(domIntl.v8BreakIterator != null); @override List fragment() { diff --git a/lib/web_ui/test/text/line_breaker_test.dart b/lib/web_ui/test/text/line_breaker_test.dart index 479920271d4ea..275c4de47b60f 100644 --- a/lib/web_ui/test/text/line_breaker_test.dart +++ b/lib/web_ui/test/text/line_breaker_test.dart @@ -421,7 +421,7 @@ void groupForEachFragmenter(GroupBody callback) { () => callback(isV8: false), ); - if (domWindow.Intl.v8BreakIterator != null) { + if (domIntl.v8BreakIterator != null) { group( '$V8LineBreakFragmenter', () => callback(isV8: true),