diff --git a/packages/flutter/lib/src/widgets/editable_text.dart b/packages/flutter/lib/src/widgets/editable_text.dart index e319df8437..b7c3f27784 100644 --- a/packages/flutter/lib/src/widgets/editable_text.dart +++ b/packages/flutter/lib/src/widgets/editable_text.dart @@ -43,7 +43,6 @@ import 'text_editing_intents.dart'; import 'text_selection.dart'; import 'text_selection_toolbar_anchors.dart'; import 'ticker_provider.dart'; -import 'view.dart'; import 'widget_span.dart'; export 'package:flutter/services.dart' show SelectionChangedCause, SmartDashesType, SmartQuotesType, TextEditingValue, TextInputType, TextSelection; @@ -3304,18 +3303,17 @@ class EditableTextState extends State with AutomaticKeepAliveClien @override void didChangeMetrics() { - final ui.FlutterView view = View.of(context); - if (_lastBottomViewInset != view.viewInsets.bottom) { + if (_lastBottomViewInset != WidgetsBinding.instance.window.viewInsets.bottom) { SchedulerBinding.instance.addPostFrameCallback((Duration _) { _selectionOverlay?.updateForScroll(); }); - if (_lastBottomViewInset < view.viewInsets.bottom) { + if (_lastBottomViewInset < WidgetsBinding.instance.window.viewInsets.bottom) { // Because the metrics change signal from engine will come here every frame // (on both iOS and Android). So we don't need to show caret with animation. _scheduleShowCaretOnScreen(withAnimation: false); } } - _lastBottomViewInset = view.viewInsets.bottom; + _lastBottomViewInset = WidgetsBinding.instance.window.viewInsets.bottom; } Future _performSpellCheck(final String text) async { @@ -3518,7 +3516,7 @@ class EditableTextState extends State with AutomaticKeepAliveClien if (_hasFocus) { // Listen for changing viewInsets, which indicates keyboard showing up. WidgetsBinding.instance.addObserver(this); - _lastBottomViewInset = View.of(context).viewInsets.bottom; + _lastBottomViewInset = WidgetsBinding.instance.window.viewInsets.bottom; if (!widget.readOnly) { _scheduleShowCaretOnScreen(withAnimation: true); } diff --git a/packages/flutter/lib/src/widgets/scroll_physics.dart b/packages/flutter/lib/src/widgets/scroll_physics.dart index e125e5d217..d451903510 100644 --- a/packages/flutter/lib/src/widgets/scroll_physics.dart +++ b/packages/flutter/lib/src/widgets/scroll_physics.dart @@ -13,7 +13,6 @@ import 'framework.dart'; import 'overscroll_indicator.dart'; import 'scroll_metrics.dart'; import 'scroll_simulation.dart'; -import 'view.dart'; export 'package:flutter/physics.dart' show ScrollSpringSimulation, Simulation, Tolerance; @@ -252,7 +251,7 @@ class ScrollPhysics { assert(metrics != null); assert(context != null); if (parent == null) { - final double maxPhysicalPixels = View.of(context).physicalSize.longestSide; + final double maxPhysicalPixels = WidgetsBinding.instance.window.physicalSize.longestSide; return velocity.abs() > maxPhysicalPixels; } return parent!.recommendDeferredLoading(velocity, metrics, context); diff --git a/packages/flutter/lib/src/widgets/semantics_debugger.dart b/packages/flutter/lib/src/widgets/semantics_debugger.dart index 6656979c71..1fe00962c3 100644 --- a/packages/flutter/lib/src/widgets/semantics_debugger.dart +++ b/packages/flutter/lib/src/widgets/semantics_debugger.dart @@ -12,7 +12,6 @@ import 'basic.dart'; import 'binding.dart'; import 'framework.dart'; import 'gesture_detector.dart'; -import 'view.dart'; /// A widget that visualizes the semantics for the child. /// @@ -97,7 +96,7 @@ class _SemanticsDebuggerState extends State with WidgetsBindi Offset? _lastPointerDownLocation; void _handlePointerDown(PointerDownEvent event) { setState(() { - _lastPointerDownLocation = event.position * View.of(context).devicePixelRatio; + _lastPointerDownLocation = event.position * WidgetsBinding.instance.window.devicePixelRatio; }); // TODO(ianh): Use a gesture recognizer so that we can reset the // _lastPointerDownLocation when none of the other gesture recognizers win. @@ -160,7 +159,7 @@ class _SemanticsDebuggerState extends State with WidgetsBindi _pipelineOwner, _client.generation, _lastPointerDownLocation, // in physical pixels - View.of(context).devicePixelRatio, + WidgetsBinding.instance.window.devicePixelRatio, widget.labelStyle, ), child: GestureDetector( diff --git a/packages/flutter/lib/src/widgets/widget_inspector.dart b/packages/flutter/lib/src/widgets/widget_inspector.dart index 6135736216..130bc3eb79 100644 --- a/packages/flutter/lib/src/widgets/widget_inspector.dart +++ b/packages/flutter/lib/src/widgets/widget_inspector.dart @@ -10,7 +10,6 @@ import 'dart:math' as math; import 'dart:ui' as ui show ClipOp, - FlutterView, Image, ImageByteFormat, Paragraph, @@ -31,7 +30,6 @@ import 'debug.dart'; import 'framework.dart'; import 'gesture_detector.dart'; import 'service_extensions.dart'; -import 'view.dart'; /// Signature for the builder callback used by /// [WidgetInspector.selectButtonBuilder]. @@ -2728,8 +2726,7 @@ class _WidgetInspectorState extends State // on the edge of the display. If the pointer is being dragged off the edge // of the display we do not want to select anything. A user can still select // a widget that is only at the exact screen margin by tapping. - final ui.FlutterView view = View.of(context); - final Rect bounds = (Offset.zero & (view.physicalSize / view.devicePixelRatio)).deflate(_kOffScreenMargin); + final Rect bounds = (Offset.zero & (WidgetsBinding.instance.window.physicalSize / WidgetsBinding.instance.window.devicePixelRatio)).deflate(_kOffScreenMargin); if (!bounds.contains(_lastPointerLocation!)) { setState(() { selection.clear();