[various] Prepare plugin repo for binding API improvements (#4148)
diff --git a/packages/camera/camera/CHANGELOG.md b/packages/camera/camera/CHANGELOG.md
index 2cab8e1..1f30104 100644
--- a/packages/camera/camera/CHANGELOG.md
+++ b/packages/camera/camera/CHANGELOG.md
@@ -1,3 +1,8 @@
+## 0.8.1+4
+
+* Silenced warnings that may occur during build when using a very
+ recent version of Flutter relating to null safety.
+
## 0.8.1+3
* Do not change camera orientation when iOS device is flat.
diff --git a/packages/camera/camera/example/lib/main.dart b/packages/camera/camera/example/lib/main.dart
index 16d585d..00ac225 100644
--- a/packages/camera/camera/example/lib/main.dart
+++ b/packages/camera/camera/example/lib/main.dart
@@ -98,7 +98,7 @@
@override
void dispose() {
- WidgetsBinding.instance?.removeObserver(this);
+ _ambiguate(WidgetsBinding.instance)?.removeObserver(this);
_flashModeControlRowAnimationController.dispose();
_exposureModeControlRowAnimationController.dispose();
super.dispose();
diff --git a/packages/camera/camera/pubspec.yaml b/packages/camera/camera/pubspec.yaml
index a7df9e0..789910e 100644
--- a/packages/camera/camera/pubspec.yaml
+++ b/packages/camera/camera/pubspec.yaml
@@ -4,7 +4,7 @@
and streaming image buffers to dart.
repository: https://github.com/flutter/plugins/tree/master/packages/camera/camera
issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22
-version: 0.8.1+3
+version: 0.8.1+4
environment:
sdk: ">=2.12.0 <3.0.0"
diff --git a/packages/video_player/video_player/test/video_player_test.dart b/packages/video_player/video_player/test/video_player_test.dart
index 63498c4..b5bfad6 100644
--- a/packages/video_player/video_player/test/video_player_test.dart
+++ b/packages/video_player/video_player/test/video_player_test.dart
@@ -856,7 +856,16 @@
}
void _sendMessage(ByteData data) {
- ServicesBinding.instance!.defaultBinaryMessenger.handlePlatformMessage(
- eventsMethodChannel.name, data, (ByteData? data) {});
+ _ambiguate(ServicesBinding.instance)!
+ .defaultBinaryMessenger
+ .handlePlatformMessage(
+ eventsMethodChannel.name, data, (ByteData? data) {});
}
}
+
+/// This allows a value of type T or T? to be treated as a value of type T?.
+///
+/// We use this so that APIs that have become non-nullable can still be used
+/// with `!` and `?` on the stable branch.
+// TODO(ianh): Remove this once we roll stable in late 2021.
+T? _ambiguate<T>(T? value) => value;