From 9e16c82dc2ac09491ec8f8e8bd7a01af848bf4b0 Mon Sep 17 00:00:00 2001 From: Josh Haglund Date: Mon, 16 May 2022 01:33:05 -0700 Subject: [PATCH] resolve issues #108 and duplicate #105 (#109) * resolve issues #986, duplicate #1021, maybe others. TextInputClient added breaking change requiring three new overrides. empty implementation provided here to stop errors. See https://docs.flutter.dev/release/breaking-changes/scribble-text-input-client * WidgetsBinding.instance is non-nullable in flutter 3 --- lib/src/chips_input.dart | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/lib/src/chips_input.dart b/lib/src/chips_input.dart index 43f5bf87..17c534f2 100644 --- a/lib/src/chips_input.dart +++ b/lib/src/chips_input.dart @@ -133,7 +133,7 @@ class ChipsInputState extends State> _focusNode.addListener(_handleFocusChanged); _nodeAttachment = _focusNode.attach(context); - WidgetsBinding.instance?.addPostFrameCallback((_) async { + WidgetsBinding.instance.addPostFrameCallback((_) async { _initOverlayEntry(); if (mounted && widget.autofocus) { FocusScope.of(context).autofocus(_focusNode); @@ -292,7 +292,7 @@ class ChipsInputState extends State> void _scrollToVisible() { Future.delayed(const Duration(milliseconds: 300), () { - WidgetsBinding.instance?.addPostFrameCallback((_) async { + WidgetsBinding.instance.addPostFrameCallback((_) async { final renderBox = context.findRenderObject() as RenderBox; await Scrollable.of(context)?.position.ensureVisible(renderBox); }); @@ -451,7 +451,7 @@ class ChipsInputState extends State> return NotificationListener( onNotification: (SizeChangedLayoutNotification val) { - WidgetsBinding.instance?.addPostFrameCallback((_) async { + WidgetsBinding.instance.addPostFrameCallback((_) async { _suggestionsBoxController.overlayEntry?.markNeedsBuild(); }); return true; @@ -485,4 +485,13 @@ class ChipsInputState extends State> ), ); } + + @override + void showToolbar() {} + + @override + void insertTextPlaceholder(Size size) {} + + @override + void removeTextPlaceholder() {} }