From f97c933e18f4ff8824b3d15e25737906fc85ada3 Mon Sep 17 00:00:00 2001 From: maximencko Date: Wed, 8 Sep 2021 20:21:53 +0300 Subject: [PATCH 01/22] add option to not observe lifecycle --- .../video_player/lib/video_player.dart | 17 ++++++++++------- packages/video_player/video_player/pubspec.yaml | 4 ++-- .../video_player/test/video_player_test.dart | 8 ++++++++ .../CHANGELOG.md | 4 ++++ .../lib/video_player_platform_interface.dart | 10 +++++++++- .../pubspec.yaml | 2 +- .../video_player/video_player_web/CHANGELOG.md | 4 ++++ .../video_player/video_player_web/pubspec.yaml | 4 ++-- 8 files changed, 40 insertions(+), 13 deletions(-) diff --git a/packages/video_player/video_player/lib/video_player.dart b/packages/video_player/video_player/lib/video_player.dart index d5bd7d2f222d..0d31eb20c0d7 100644 --- a/packages/video_player/video_player/lib/video_player.dart +++ b/packages/video_player/video_player/lib/video_player.dart @@ -11,15 +11,16 @@ import 'package:flutter/services.dart'; import 'package:meta/meta.dart'; import 'package:video_player_platform_interface/video_player_platform_interface.dart'; +import 'src/closed_caption_file.dart'; + export 'package:video_player_platform_interface/video_player_platform_interface.dart' show DurationRange, DataSourceType, VideoFormat, VideoPlayerOptions; -import 'src/closed_caption_file.dart'; export 'src/closed_caption_file.dart'; final VideoPlayerPlatform _videoPlayerPlatform = VideoPlayerPlatform.instance - // This will clear all open videos on the platform when a full restart is - // performed. +// This will clear all open videos on the platform when a full restart is +// performed. ..init(); /// The duration, current position, buffering state, error state and settings @@ -257,7 +258,7 @@ class VideoPlayerController extends ValueNotifier { bool _isDisposed = false; Completer? _creatingCompleter; StreamSubscription? _eventSubscription; - late _VideoAppLifeCycleObserver _lifeCycleObserver; + _VideoAppLifeCycleObserver? _lifeCycleObserver; /// The id of a texture that hasn't been initialized. @visibleForTesting @@ -271,8 +272,10 @@ class VideoPlayerController extends ValueNotifier { /// Attempts to open the given [dataSource] and load metadata about the video. Future initialize() async { - _lifeCycleObserver = _VideoAppLifeCycleObserver(this); - _lifeCycleObserver.initialize(); + if (videoPlayerOptions?.observeAppLifecycle ?? true) { + _lifeCycleObserver = _VideoAppLifeCycleObserver(this); + } + _lifeCycleObserver?.initialize(); _creatingCompleter = Completer(); late DataSource dataSourceDescription; @@ -377,7 +380,7 @@ class VideoPlayerController extends ValueNotifier { await _eventSubscription?.cancel(); await _videoPlayerPlatform.dispose(_textureId); } - _lifeCycleObserver.dispose(); + _lifeCycleObserver?.dispose(); } _isDisposed = true; super.dispose(); diff --git a/packages/video_player/video_player/pubspec.yaml b/packages/video_player/video_player/pubspec.yaml index 8f98b0702fab..1d8b78d66cb3 100644 --- a/packages/video_player/video_player/pubspec.yaml +++ b/packages/video_player/video_player/pubspec.yaml @@ -26,14 +26,14 @@ dependencies: flutter_test: sdk: flutter meta: ^1.3.0 - video_player_platform_interface: ^4.1.0 + video_player_platform_interface: ^4.2.0 # The design on https://flutter.dev/go/federated-plugins was to leave # this constraint as "any". We cannot do it right now as it fails pub publish # validation, so we set a ^ constraint. The exact value doesn't matter since # the constraints on the interface pins it. # TODO(amirh): Revisit this (either update this part in the design or the pub tool). # https://github.com/flutter/flutter/issues/46264 - video_player_web: ^2.0.0 + video_player_web: ^2.0.1 dev_dependencies: pedantic: ^1.10.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 e17dac7897a6..07499a6d72f6 100644 --- a/packages/video_player/video_player/test/video_player_test.dart +++ b/packages/video_player/video_player/test/video_player_test.dart @@ -696,6 +696,14 @@ void main() { await controller.initialize(); expect(controller.videoPlayerOptions!.mixWithOthers, true); }); + + test('observeAppLifecycle', () async { + final VideoPlayerController controller = VideoPlayerController.file( + File(''), + videoPlayerOptions: VideoPlayerOptions(observeAppLifecycle: true)); + await controller.initialize(); + expect(controller.videoPlayerOptions!.observeAppLifecycle, true); + }); } class FakeVideoPlayerPlatform extends TestHostVideoPlayerApi { diff --git a/packages/video_player/video_player_platform_interface/CHANGELOG.md b/packages/video_player/video_player_platform_interface/CHANGELOG.md index 24631513f800..311eb50499cf 100644 --- a/packages/video_player/video_player_platform_interface/CHANGELOG.md +++ b/packages/video_player/video_player_platform_interface/CHANGELOG.md @@ -1,3 +1,7 @@ +## 4.2.0 + +* Add `observeAppLifecycle` to `VideoPlayerOptions` + ## 4.1.0 * Add `httpHeaders` to `DataSource` diff --git a/packages/video_player/video_player_platform_interface/lib/video_player_platform_interface.dart b/packages/video_player/video_player_platform_interface/lib/video_player_platform_interface.dart index b2bff990401e..b86b0e8f415f 100644 --- a/packages/video_player/video_player_platform_interface/lib/video_player_platform_interface.dart +++ b/packages/video_player/video_player_platform_interface/lib/video_player_platform_interface.dart @@ -350,6 +350,11 @@ class DurationRange { /// [VideoPlayerOptions] can be optionally used to set additional player settings class VideoPlayerOptions { + /// Set this to true to let plugin manage play/pause with app lifecycle changes, + /// Set this to false to keep playing video in background, when app goes in background + /// The default value is true + final bool observeAppLifecycle; + /// Set this to true to mix the video players audio with other audio sources. /// The default value is false /// @@ -358,5 +363,8 @@ class VideoPlayerOptions { final bool mixWithOthers; /// set additional optional player settings - VideoPlayerOptions({this.mixWithOthers = false}); + VideoPlayerOptions({ + this.mixWithOthers = false, + this.observeAppLifecycle = true, + }); } diff --git a/packages/video_player/video_player_platform_interface/pubspec.yaml b/packages/video_player/video_player_platform_interface/pubspec.yaml index 2a0ef10a9d2b..35b30793a20f 100644 --- a/packages/video_player/video_player_platform_interface/pubspec.yaml +++ b/packages/video_player/video_player_platform_interface/pubspec.yaml @@ -4,7 +4,7 @@ repository: https://github.com/flutter/plugins/tree/master/packages/video_player issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+video_player%22 # NOTE: We strongly prefer non-breaking changes, even at the expense of a # less-clean API. See https://flutter.dev/go/platform-interface-breaking-changes -version: 4.1.0 +version: 4.2.0 environment: sdk: ">=2.12.0 <3.0.0" diff --git a/packages/video_player/video_player_web/CHANGELOG.md b/packages/video_player/video_player_web/CHANGELOG.md index 63d4e10ef8da..d71961fc6c3d 100644 --- a/packages/video_player/video_player_web/CHANGELOG.md +++ b/packages/video_player/video_player_web/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.1 + +* Update version of video_player_platform_interface + ## 2.0.0 * Migrate to null safety. diff --git a/packages/video_player/video_player_web/pubspec.yaml b/packages/video_player/video_player_web/pubspec.yaml index b303980e3e55..8bae74e5594d 100644 --- a/packages/video_player/video_player_web/pubspec.yaml +++ b/packages/video_player/video_player_web/pubspec.yaml @@ -2,7 +2,7 @@ name: video_player_web description: Web platform implementation of video_player. repository: https://github.com/flutter/plugins/tree/master/packages/video_player/video_player_web issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+video_player%22 -version: 2.0.0 +version: 2.0.1 environment: sdk: ">=2.12.0 <3.0.0" @@ -21,7 +21,7 @@ dependencies: flutter_web_plugins: sdk: flutter meta: ^1.3.0 - video_player_platform_interface: ^4.0.0 + video_player_platform_interface: ^4.2.0 dev_dependencies: flutter_test: From 1c550673ae62bef5df269e056aee058c23a6e11f Mon Sep 17 00:00:00 2001 From: maximencko Date: Wed, 8 Sep 2021 20:24:55 +0300 Subject: [PATCH 02/22] remove redundant --- packages/video_player/video_player/lib/video_player.dart | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/video_player/video_player/lib/video_player.dart b/packages/video_player/video_player/lib/video_player.dart index 0d31eb20c0d7..1338620e8aed 100644 --- a/packages/video_player/video_player/lib/video_player.dart +++ b/packages/video_player/video_player/lib/video_player.dart @@ -11,16 +11,15 @@ import 'package:flutter/services.dart'; import 'package:meta/meta.dart'; import 'package:video_player_platform_interface/video_player_platform_interface.dart'; -import 'src/closed_caption_file.dart'; - export 'package:video_player_platform_interface/video_player_platform_interface.dart' show DurationRange, DataSourceType, VideoFormat, VideoPlayerOptions; +import 'src/closed_caption_file.dart'; export 'src/closed_caption_file.dart'; final VideoPlayerPlatform _videoPlayerPlatform = VideoPlayerPlatform.instance -// This will clear all open videos on the platform when a full restart is -// performed. + // This will clear all open videos on the platform when a full restart is + // performed. ..init(); /// The duration, current position, buffering state, error state and settings From 2e025aec8fcc16622767b9bbfbf5a934d68dad6c Mon Sep 17 00:00:00 2001 From: maximencko Date: Wed, 8 Sep 2021 20:44:47 +0300 Subject: [PATCH 03/22] merge --- packages/video_player/video_player/pubspec.yaml | 2 +- .../video_player/video_player_web/CHANGELOG.md | 16 +++++++++++++++- .../video_player/video_player_web/pubspec.yaml | 2 +- 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/packages/video_player/video_player/pubspec.yaml b/packages/video_player/video_player/pubspec.yaml index 1d8b78d66cb3..31564a9e79c5 100644 --- a/packages/video_player/video_player/pubspec.yaml +++ b/packages/video_player/video_player/pubspec.yaml @@ -33,7 +33,7 @@ dependencies: # the constraints on the interface pins it. # TODO(amirh): Revisit this (either update this part in the design or the pub tool). # https://github.com/flutter/flutter/issues/46264 - video_player_web: ^2.0.1 + video_player_web: ^2.0.4 dev_dependencies: pedantic: ^1.10.0 diff --git a/packages/video_player/video_player_web/CHANGELOG.md b/packages/video_player/video_player_web/CHANGELOG.md index d71961fc6c3d..07c932477d0a 100644 --- a/packages/video_player/video_player_web/CHANGELOG.md +++ b/packages/video_player/video_player_web/CHANGELOG.md @@ -1,7 +1,21 @@ -## 2.0.1 +## 2.0.4 * Update version of video_player_platform_interface +## 2.0.3 + +* Add `implements` to pubspec. + +## 2.0.2 + +* Updated installation instructions in README. + +## 2.0.1 + +* Fix videos not playing in Safari/Chrome on iOS by setting autoplay to false +* Change sizing code of `Video` widget's `HtmlElementView` so it works well when slotted. +* Move tests to `example` directory, so they run as integration_tests with `flutter drive`. + ## 2.0.0 * Migrate to null safety. diff --git a/packages/video_player/video_player_web/pubspec.yaml b/packages/video_player/video_player_web/pubspec.yaml index 8bae74e5594d..04e556ddb369 100644 --- a/packages/video_player/video_player_web/pubspec.yaml +++ b/packages/video_player/video_player_web/pubspec.yaml @@ -2,7 +2,7 @@ name: video_player_web description: Web platform implementation of video_player. repository: https://github.com/flutter/plugins/tree/master/packages/video_player/video_player_web issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+video_player%22 -version: 2.0.1 +version: 2.0.4 environment: sdk: ">=2.12.0 <3.0.0" From db146f20fd8411d82e24e5bbbad8deaf460064f3 Mon Sep 17 00:00:00 2001 From: maximencko Date: Thu, 9 Sep 2021 12:46:23 +0300 Subject: [PATCH 04/22] remove redundant version bump --- packages/video_player/video_player_web/CHANGELOG.md | 4 ---- packages/video_player/video_player_web/pubspec.yaml | 4 ++-- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/packages/video_player/video_player_web/CHANGELOG.md b/packages/video_player/video_player_web/CHANGELOG.md index 07c932477d0a..a7a198db21e1 100644 --- a/packages/video_player/video_player_web/CHANGELOG.md +++ b/packages/video_player/video_player_web/CHANGELOG.md @@ -1,7 +1,3 @@ -## 2.0.4 - -* Update version of video_player_platform_interface - ## 2.0.3 * Add `implements` to pubspec. diff --git a/packages/video_player/video_player_web/pubspec.yaml b/packages/video_player/video_player_web/pubspec.yaml index b401673c628d..c5eb57c1fc6e 100644 --- a/packages/video_player/video_player_web/pubspec.yaml +++ b/packages/video_player/video_player_web/pubspec.yaml @@ -2,7 +2,7 @@ name: video_player_web description: Web platform implementation of video_player. repository: https://github.com/flutter/plugins/tree/master/packages/video_player/video_player_web issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+video_player%22 -version: 2.0.4 +version: 2.0.3 environment: sdk: ">=2.12.0 <3.0.0" @@ -22,7 +22,7 @@ dependencies: flutter_web_plugins: sdk: flutter meta: ^1.3.0 - video_player_platform_interface: ^4.2.0 + video_player_platform_interface: ^4.0.0 dev_dependencies: flutter_test: From 0f89d4f539e3c0e960fe5b72a7acbdf7850bae4a Mon Sep 17 00:00:00 2001 From: maximencko Date: Thu, 9 Sep 2021 12:50:08 +0300 Subject: [PATCH 05/22] fix pubspec --- packages/video_player/video_player/pubspec.yaml | 9 +++++++-- .../video_player_platform_interface/pubspec.yaml | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/video_player/video_player/pubspec.yaml b/packages/video_player/video_player/pubspec.yaml index 941f53c0cb2d..4eb64146bdc3 100644 --- a/packages/video_player/video_player/pubspec.yaml +++ b/packages/video_player/video_player/pubspec.yaml @@ -24,14 +24,19 @@ dependencies: flutter: sdk: flutter meta: ^1.3.0 - video_player_platform_interface: ^4.2.0 + video_player_platform_interface: ^4.1.0 # The design on https://flutter.dev/go/federated-plugins was to leave # this constraint as "any". We cannot do it right now as it fails pub publish # validation, so we set a ^ constraint. The exact value doesn't matter since # the constraints on the interface pins it. # TODO(amirh): Revisit this (either update this part in the design or the pub tool). # https://github.com/flutter/flutter/issues/46264 - video_player_web: ^2.0.4 + video_player_web: ^2.0.3 + +dependency_overrides: + video_player_platform_interface: + path: + ../video_player_platform_interface dev_dependencies: flutter_test: diff --git a/packages/video_player/video_player_platform_interface/pubspec.yaml b/packages/video_player/video_player_platform_interface/pubspec.yaml index 35b30793a20f..2a0ef10a9d2b 100644 --- a/packages/video_player/video_player_platform_interface/pubspec.yaml +++ b/packages/video_player/video_player_platform_interface/pubspec.yaml @@ -4,7 +4,7 @@ repository: https://github.com/flutter/plugins/tree/master/packages/video_player issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+video_player%22 # NOTE: We strongly prefer non-breaking changes, even at the expense of a # less-clean API. See https://flutter.dev/go/platform-interface-breaking-changes -version: 4.2.0 +version: 4.1.0 environment: sdk: ">=2.12.0 <3.0.0" From 4f0c4a1f5b1cbf0931a337f4575602a93853d1ec Mon Sep 17 00:00:00 2001 From: maximencko Date: Thu, 9 Sep 2021 14:52:35 +0300 Subject: [PATCH 06/22] remove redundant version bump again --- packages/video_player/video_player/pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/video_player/video_player/pubspec.yaml b/packages/video_player/video_player/pubspec.yaml index 4eb64146bdc3..b7ffca7a4274 100644 --- a/packages/video_player/video_player/pubspec.yaml +++ b/packages/video_player/video_player/pubspec.yaml @@ -31,7 +31,7 @@ dependencies: # the constraints on the interface pins it. # TODO(amirh): Revisit this (either update this part in the design or the pub tool). # https://github.com/flutter/flutter/issues/46264 - video_player_web: ^2.0.3 + video_player_web: ^2.0.0 dependency_overrides: video_player_platform_interface: From e18a461ac43f5c66b2feaef2ecdb07b976e9333b Mon Sep 17 00:00:00 2001 From: maximencko Date: Thu, 9 Sep 2021 14:58:10 +0300 Subject: [PATCH 07/22] bump version of video player --- packages/video_player/video_player/CHANGELOG.md | 4 ++++ packages/video_player/video_player/pubspec.yaml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/video_player/video_player/CHANGELOG.md b/packages/video_player/video_player/CHANGELOG.md index 9cb642a4db56..4ed6fe2e01dd 100644 --- a/packages/video_player/video_player/CHANGELOG.md +++ b/packages/video_player/video_player/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.2.0 + +* Add `observeAppLifecycle` to `VideoPlayerOptions` + ## 2.1.15 * Ensured seekTo isn't called before video player is initialized. Fixes [#89259](https://github.com/flutter/flutter/issues/89259). diff --git a/packages/video_player/video_player/pubspec.yaml b/packages/video_player/video_player/pubspec.yaml index b7ffca7a4274..671566223289 100644 --- a/packages/video_player/video_player/pubspec.yaml +++ b/packages/video_player/video_player/pubspec.yaml @@ -3,7 +3,7 @@ description: Flutter plugin for displaying inline video with other Flutter widgets on Android, iOS, and web. repository: https://github.com/flutter/plugins/tree/master/packages/video_player/video_player issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+video_player%22 -version: 2.1.15 +version: 2.2.0 environment: sdk: ">=2.12.0 <3.0.0" From c24e4100a4d85eb4b322f15ecde79b4936810175 Mon Sep 17 00:00:00 2001 From: maximencko Date: Thu, 9 Sep 2021 16:37:34 +0300 Subject: [PATCH 08/22] remove dependency --- packages/video_player/video_player/pubspec.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/video_player/video_player/pubspec.yaml b/packages/video_player/video_player/pubspec.yaml index 671566223289..0c48ce976cf9 100644 --- a/packages/video_player/video_player/pubspec.yaml +++ b/packages/video_player/video_player/pubspec.yaml @@ -24,7 +24,6 @@ dependencies: flutter: sdk: flutter meta: ^1.3.0 - video_player_platform_interface: ^4.1.0 # The design on https://flutter.dev/go/federated-plugins was to leave # this constraint as "any". We cannot do it right now as it fails pub publish # validation, so we set a ^ constraint. The exact value doesn't matter since From 001065ee9c4c6a36f783e932e1f752f4a8f09779 Mon Sep 17 00:00:00 2001 From: maximencko Date: Thu, 9 Sep 2021 17:28:47 +0300 Subject: [PATCH 09/22] check ci --- packages/video_player/video_player/example/pubspec.yaml | 5 +++++ packages/video_player/video_player/pubspec.yaml | 3 +++ .../video_player_platform_interface/pubspec.yaml | 2 +- packages/video_player/video_player_web/pubspec.yaml | 4 +++- 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/packages/video_player/video_player/example/pubspec.yaml b/packages/video_player/video_player/example/pubspec.yaml index 63f179a06211..1c3548be4a97 100644 --- a/packages/video_player/video_player/example/pubspec.yaml +++ b/packages/video_player/video_player/example/pubspec.yaml @@ -17,6 +17,11 @@ dependencies: # the parent directory to use the current plugin's version. path: ../ +dependency_overrides: + video_player_platform_interface: + path: + ../../video_player_platform_interface + dev_dependencies: flutter_test: sdk: flutter diff --git a/packages/video_player/video_player/pubspec.yaml b/packages/video_player/video_player/pubspec.yaml index 0c48ce976cf9..69bca9565f3a 100644 --- a/packages/video_player/video_player/pubspec.yaml +++ b/packages/video_player/video_player/pubspec.yaml @@ -24,6 +24,9 @@ dependencies: flutter: sdk: flutter meta: ^1.3.0 + video_player_platform_interface: + path: + ../video_player_platform_interface # The design on https://flutter.dev/go/federated-plugins was to leave # this constraint as "any". We cannot do it right now as it fails pub publish # validation, so we set a ^ constraint. The exact value doesn't matter since diff --git a/packages/video_player/video_player_platform_interface/pubspec.yaml b/packages/video_player/video_player_platform_interface/pubspec.yaml index 2a0ef10a9d2b..35b30793a20f 100644 --- a/packages/video_player/video_player_platform_interface/pubspec.yaml +++ b/packages/video_player/video_player_platform_interface/pubspec.yaml @@ -4,7 +4,7 @@ repository: https://github.com/flutter/plugins/tree/master/packages/video_player issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+video_player%22 # NOTE: We strongly prefer non-breaking changes, even at the expense of a # less-clean API. See https://flutter.dev/go/platform-interface-breaking-changes -version: 4.1.0 +version: 4.2.0 environment: sdk: ">=2.12.0 <3.0.0" diff --git a/packages/video_player/video_player_web/pubspec.yaml b/packages/video_player/video_player_web/pubspec.yaml index c5eb57c1fc6e..91b0bff1add8 100644 --- a/packages/video_player/video_player_web/pubspec.yaml +++ b/packages/video_player/video_player_web/pubspec.yaml @@ -22,7 +22,9 @@ dependencies: flutter_web_plugins: sdk: flutter meta: ^1.3.0 - video_player_platform_interface: ^4.0.0 + video_player_platform_interface: + path: + ../video_player_platform_interface dev_dependencies: flutter_test: From c2b2d233922882a8d1e7dc12643bb6bfc7902bf0 Mon Sep 17 00:00:00 2001 From: maximencko Date: Sat, 25 Dec 2021 11:30:54 +0200 Subject: [PATCH 10/22] rename option to allowBackgroundPlayback & add more tests on this --- .../video_player/video_player/CHANGELOG.md | 2 +- .../video_player/lib/video_player.dart | 3 +- .../video_player/test/video_player_test.dart | 64 ++++++++++++++----- .../CHANGELOG.md | 2 +- .../lib/video_player_platform_interface.dart | 10 +-- 5 files changed, 57 insertions(+), 24 deletions(-) diff --git a/packages/video_player/video_player/CHANGELOG.md b/packages/video_player/video_player/CHANGELOG.md index 4ed6fe2e01dd..a4d52c7c582f 100644 --- a/packages/video_player/video_player/CHANGELOG.md +++ b/packages/video_player/video_player/CHANGELOG.md @@ -1,6 +1,6 @@ ## 2.2.0 -* Add `observeAppLifecycle` to `VideoPlayerOptions` +* Add `allowBackgroundPlayback` to `VideoPlayerOptions` ## 2.1.15 diff --git a/packages/video_player/video_player/lib/video_player.dart b/packages/video_player/video_player/lib/video_player.dart index cc67302e855b..6c9d09ca6c90 100644 --- a/packages/video_player/video_player/lib/video_player.dart +++ b/packages/video_player/video_player/lib/video_player.dart @@ -271,7 +271,8 @@ class VideoPlayerController extends ValueNotifier { /// Attempts to open the given [dataSource] and load metadata about the video. Future initialize() async { - if (videoPlayerOptions?.observeAppLifecycle ?? true) { + final allowBackgroundPlayback = videoPlayerOptions?.allowBackgroundPlayback ?? false; + if (!allowBackgroundPlayback) { _lifeCycleObserver = _VideoAppLifeCycleObserver(this); } _lifeCycleObserver?.initialize(); 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 c41aa52d364c..84279da895e4 100644 --- a/packages/video_player/video_player/test/video_player_test.dart +++ b/packages/video_player/video_player/test/video_player_test.dart @@ -97,6 +97,22 @@ class _FakeClosedCaptionFile extends ClosedCaptionFile { } void main() { + void verifyAppLifeCycle( + VideoPlayerController controller, { + bool isObserving = true, + }) { + final wasPlayingBeforePause = controller.value.isPlaying; + WidgetsBinding.instance! + .handleAppLifecycleStateChanged(AppLifecycleState.paused); + expect( + controller.value.isPlaying, + isObserving ? false : wasPlayingBeforePause, + ); + WidgetsBinding.instance! + .handleAppLifecycleStateChanged(AppLifecycleState.resumed); + expect(controller.value.isPlaying, wasPlayingBeforePause); + } + testWidgets('update texture', (WidgetTester tester) async { final FakeController controller = FakeController(); await tester.pumpWidget(VideoPlayer(controller)); @@ -185,6 +201,14 @@ void main() { }); group('initialize', () { + test('started app lifecycle observing', () async { + final VideoPlayerController controller = VideoPlayerController.network( + 'https://127.0.0.1', + ); + await controller.initialize(); + await controller.play(); + verifyAppLifeCycle(controller); + }); test('asset', () async { final VideoPlayerController controller = VideoPlayerController.asset( 'a.avi', @@ -715,6 +739,30 @@ void main() { }); }); + group('VideoPlayerOptions', () { + test('setMixWithOthers', () async { + final VideoPlayerController controller = VideoPlayerController.file( + File(''), + videoPlayerOptions: VideoPlayerOptions(mixWithOthers: true)); + await controller.initialize(); + expect(controller.videoPlayerOptions!.mixWithOthers, true); + }); + + group('allowBackgroundPlayback', () { + [true, false].forEach((allowBackgroundPlayback) { + test('is $allowBackgroundPlayback', () async { + final VideoPlayerController controller = VideoPlayerController.file( + File(''), + videoPlayerOptions: VideoPlayerOptions(allowBackgroundPlayback: allowBackgroundPlayback), + ); + await controller.initialize(); + await controller.play(); + verifyAppLifeCycle(controller, isObserving: !allowBackgroundPlayback); + }); + }); + }); + }); + test('VideoProgressColors', () { const Color playedColor = Color.fromRGBO(0, 0, 255, 0.75); const Color bufferedColor = Color.fromRGBO(0, 255, 0, 0.5); @@ -729,22 +777,6 @@ void main() { expect(colors.bufferedColor, bufferedColor); expect(colors.backgroundColor, backgroundColor); }); - - test('setMixWithOthers', () async { - final VideoPlayerController controller = VideoPlayerController.file( - File(''), - videoPlayerOptions: VideoPlayerOptions(mixWithOthers: true)); - await controller.initialize(); - expect(controller.videoPlayerOptions!.mixWithOthers, true); - }); - - test('observeAppLifecycle', () async { - final VideoPlayerController controller = VideoPlayerController.file( - File(''), - videoPlayerOptions: VideoPlayerOptions(observeAppLifecycle: true)); - await controller.initialize(); - expect(controller.videoPlayerOptions!.observeAppLifecycle, true); - }); } class FakeVideoPlayerPlatform extends TestHostVideoPlayerApi { diff --git a/packages/video_player/video_player_platform_interface/CHANGELOG.md b/packages/video_player/video_player_platform_interface/CHANGELOG.md index 311eb50499cf..14bba529f7bf 100644 --- a/packages/video_player/video_player_platform_interface/CHANGELOG.md +++ b/packages/video_player/video_player_platform_interface/CHANGELOG.md @@ -1,6 +1,6 @@ ## 4.2.0 -* Add `observeAppLifecycle` to `VideoPlayerOptions` +* Add `allowBackgroundPlayback` to `VideoPlayerOptions` ## 4.1.0 diff --git a/packages/video_player/video_player_platform_interface/lib/video_player_platform_interface.dart b/packages/video_player/video_player_platform_interface/lib/video_player_platform_interface.dart index b86b0e8f415f..78bf4f5a3f5f 100644 --- a/packages/video_player/video_player_platform_interface/lib/video_player_platform_interface.dart +++ b/packages/video_player/video_player_platform_interface/lib/video_player_platform_interface.dart @@ -350,10 +350,10 @@ class DurationRange { /// [VideoPlayerOptions] can be optionally used to set additional player settings class VideoPlayerOptions { - /// Set this to true to let plugin manage play/pause with app lifecycle changes, - /// Set this to false to keep playing video in background, when app goes in background - /// The default value is true - final bool observeAppLifecycle; + /// Set this to false to let plugin manage play/pause with app lifecycle changes, + /// Set this to true to keep playing video in background, when app goes in background + /// The default value is false + final bool allowBackgroundPlayback; /// Set this to true to mix the video players audio with other audio sources. /// The default value is false @@ -365,6 +365,6 @@ class VideoPlayerOptions { /// set additional optional player settings VideoPlayerOptions({ this.mixWithOthers = false, - this.observeAppLifecycle = true, + this.allowBackgroundPlayback = false, }); } From 6c1cb64bce7c97a1f9252f4bb2b184cdbcc63ab2 Mon Sep 17 00:00:00 2001 From: maximencko Date: Fri, 7 Jan 2022 11:52:48 +0200 Subject: [PATCH 11/22] format --- packages/video_player/video_player/lib/video_player.dart | 3 ++- .../video_player/video_player/test/video_player_test.dart | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/video_player/video_player/lib/video_player.dart b/packages/video_player/video_player/lib/video_player.dart index 532a1c4f5906..4cd3eceb8e98 100644 --- a/packages/video_player/video_player/lib/video_player.dart +++ b/packages/video_player/video_player/lib/video_player.dart @@ -294,7 +294,8 @@ class VideoPlayerController extends ValueNotifier { /// Attempts to open the given [dataSource] and load metadata about the video. Future initialize() async { - final allowBackgroundPlayback = videoPlayerOptions?.allowBackgroundPlayback ?? false; + final allowBackgroundPlayback = + videoPlayerOptions?.allowBackgroundPlayback ?? false; if (!allowBackgroundPlayback) { _lifeCycleObserver = _VideoAppLifeCycleObserver(this); } 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 270feb6f4a30..100389326a4d 100644 --- a/packages/video_player/video_player/test/video_player_test.dart +++ b/packages/video_player/video_player/test/video_player_test.dart @@ -813,7 +813,9 @@ void main() { test('is $allowBackgroundPlayback', () async { final VideoPlayerController controller = VideoPlayerController.file( File(''), - videoPlayerOptions: VideoPlayerOptions(allowBackgroundPlayback: allowBackgroundPlayback), + videoPlayerOptions: VideoPlayerOptions( + allowBackgroundPlayback: allowBackgroundPlayback, + ), ); await controller.initialize(); await controller.play(); From c5a1ef39b678020dfa976ead5b8ef3dc99a35634 Mon Sep 17 00:00:00 2001 From: maximencko Date: Fri, 7 Jan 2022 12:03:22 +0200 Subject: [PATCH 12/22] change video_player_platform_interface version in pubspec.yaml --- .../video_player/video_player_platform_interface/pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/video_player/video_player_platform_interface/pubspec.yaml b/packages/video_player/video_player_platform_interface/pubspec.yaml index 986ca913be62..70626a16ba63 100644 --- a/packages/video_player/video_player_platform_interface/pubspec.yaml +++ b/packages/video_player/video_player_platform_interface/pubspec.yaml @@ -4,7 +4,7 @@ repository: https://github.com/flutter/plugins/tree/master/packages/video_player issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+video_player%22 # NOTE: We strongly prefer non-breaking changes, even at the expense of a # less-clean API. See https://flutter.dev/go/platform-interface-breaking-changes -version: 5.0.1 +version: 5.0.2 environment: sdk: ">=2.12.0 <3.0.0" From 98e2a183b080a2807a6dc86914bf1e0102f43c93 Mon Sep 17 00:00:00 2001 From: maximencko Date: Fri, 7 Jan 2022 12:08:42 +0200 Subject: [PATCH 13/22] bump video_player_web version --- packages/video_player/video_player_web/CHANGELOG.md | 4 ++++ packages/video_player/video_player_web/pubspec.yaml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/video_player/video_player_web/CHANGELOG.md b/packages/video_player/video_player_web/CHANGELOG.md index 13cbf2e24dae..a17d732d057e 100644 --- a/packages/video_player/video_player_web/CHANGELOG.md +++ b/packages/video_player/video_player_web/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.0.6 + +* Bump `video_player_platform_interface` version + ## 2.0.5 * Adds compatibility with `video_player_platform_interface` 5.0, which does not diff --git a/packages/video_player/video_player_web/pubspec.yaml b/packages/video_player/video_player_web/pubspec.yaml index 7b051a4c471f..84bf48304d37 100644 --- a/packages/video_player/video_player_web/pubspec.yaml +++ b/packages/video_player/video_player_web/pubspec.yaml @@ -2,7 +2,7 @@ name: video_player_web description: Web platform implementation of video_player. repository: https://github.com/flutter/plugins/tree/master/packages/video_player/video_player_web issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+video_player%22 -version: 2.0.5 +version: 2.0.6 environment: sdk: ">=2.12.0 <3.0.0" From 1d004c5daa2cd332e6bab656d72be5107a8f0543 Mon Sep 17 00:00:00 2001 From: maximencko Date: Fri, 7 Jan 2022 12:18:46 +0200 Subject: [PATCH 14/22] update versions to match semver --- .../video_player/video_player_platform_interface/CHANGELOG.md | 2 +- .../video_player/video_player_platform_interface/pubspec.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/video_player/video_player_platform_interface/CHANGELOG.md b/packages/video_player/video_player_platform_interface/CHANGELOG.md index 617523277fef..b162fcd20ba0 100644 --- a/packages/video_player/video_player_platform_interface/CHANGELOG.md +++ b/packages/video_player/video_player_platform_interface/CHANGELOG.md @@ -1,4 +1,4 @@ -## 5.0.2 +## 5.1.0 * Add `allowBackgroundPlayback` to `VideoPlayerOptions` diff --git a/packages/video_player/video_player_platform_interface/pubspec.yaml b/packages/video_player/video_player_platform_interface/pubspec.yaml index 70626a16ba63..9fedc5b09756 100644 --- a/packages/video_player/video_player_platform_interface/pubspec.yaml +++ b/packages/video_player/video_player_platform_interface/pubspec.yaml @@ -4,7 +4,7 @@ repository: https://github.com/flutter/plugins/tree/master/packages/video_player issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+video_player%22 # NOTE: We strongly prefer non-breaking changes, even at the expense of a # less-clean API. See https://flutter.dev/go/platform-interface-breaking-changes -version: 5.0.2 +version: 5.1.0 environment: sdk: ">=2.12.0 <3.0.0" From 69a6cd539280ac629ac64e04b1e8c44c3ddd1002 Mon Sep 17 00:00:00 2001 From: maximencko Date: Fri, 7 Jan 2022 12:20:53 +0200 Subject: [PATCH 15/22] update versions to match semver --- packages/video_player/video_player/CHANGELOG.md | 2 +- packages/video_player/video_player/pubspec.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/video_player/video_player/CHANGELOG.md b/packages/video_player/video_player/CHANGELOG.md index 83f4c38acf3a..d73639fdf0af 100644 --- a/packages/video_player/video_player/CHANGELOG.md +++ b/packages/video_player/video_player/CHANGELOG.md @@ -1,4 +1,4 @@ -## 2.2.11 +## 2.3.0 * Add `allowBackgroundPlayback` to `VideoPlayerOptions` diff --git a/packages/video_player/video_player/pubspec.yaml b/packages/video_player/video_player/pubspec.yaml index 4d28193e41a8..ff525800cf4b 100644 --- a/packages/video_player/video_player/pubspec.yaml +++ b/packages/video_player/video_player/pubspec.yaml @@ -3,7 +3,7 @@ description: Flutter plugin for displaying inline video with other Flutter widgets on Android, iOS, and web. repository: https://github.com/flutter/plugins/tree/master/packages/video_player/video_player issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+video_player%22 -version: 2.2.11 +version: 2.3.0 environment: sdk: ">=2.14.0 <3.0.0" From 996ddaeebe9f241dbfe090561c6c43d5dad0dac2 Mon Sep 17 00:00:00 2001 From: maximencko Date: Fri, 21 Jan 2022 20:50:40 +0200 Subject: [PATCH 16/22] remove bump in video_player_web --- packages/video_player/video_player_web/CHANGELOG.md | 4 ---- packages/video_player/video_player_web/pubspec.yaml | 2 +- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/packages/video_player/video_player_web/CHANGELOG.md b/packages/video_player/video_player_web/CHANGELOG.md index a17d732d057e..13cbf2e24dae 100644 --- a/packages/video_player/video_player_web/CHANGELOG.md +++ b/packages/video_player/video_player_web/CHANGELOG.md @@ -1,7 +1,3 @@ -## 2.0.6 - -* Bump `video_player_platform_interface` version - ## 2.0.5 * Adds compatibility with `video_player_platform_interface` 5.0, which does not diff --git a/packages/video_player/video_player_web/pubspec.yaml b/packages/video_player/video_player_web/pubspec.yaml index 84bf48304d37..7b051a4c471f 100644 --- a/packages/video_player/video_player_web/pubspec.yaml +++ b/packages/video_player/video_player_web/pubspec.yaml @@ -2,7 +2,7 @@ name: video_player_web description: Web platform implementation of video_player. repository: https://github.com/flutter/plugins/tree/master/packages/video_player/video_player_web issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+video_player%22 -version: 2.0.6 +version: 2.0.5 environment: sdk: ">=2.12.0 <3.0.0" From f9eaf37c6b285d439f8c70e737dde338cef4f006 Mon Sep 17 00:00:00 2001 From: maximencko Date: Fri, 21 Jan 2022 20:56:26 +0200 Subject: [PATCH 17/22] remove dependency override also --- packages/video_player/video_player_web/pubspec.yaml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/packages/video_player/video_player_web/pubspec.yaml b/packages/video_player/video_player_web/pubspec.yaml index 7b051a4c471f..ec2377ea1fb1 100644 --- a/packages/video_player/video_player_web/pubspec.yaml +++ b/packages/video_player/video_player_web/pubspec.yaml @@ -23,9 +23,7 @@ dependencies: sdk: flutter meta: ^1.3.0 pedantic: ^1.10.0 - video_player_platform_interface: - path: - ../video_player_platform_interface + video_player_platform_interface: ">=4.2.0 <6.0.0" dev_dependencies: flutter_test: From 55cf52df67e45d3a453279cdc3c5325d6bc9a947 Mon Sep 17 00:00:00 2001 From: maximencko Date: Fri, 21 Jan 2022 21:04:46 +0200 Subject: [PATCH 18/22] fix other nits --- .../video_player/video_player/CHANGELOG.md | 2 +- .../video_player/test/video_player_test.dart | 29 +++++++++---------- .../CHANGELOG.md | 2 +- .../lib/video_player_platform_interface.dart | 5 ++-- 4 files changed, 18 insertions(+), 20 deletions(-) diff --git a/packages/video_player/video_player/CHANGELOG.md b/packages/video_player/video_player/CHANGELOG.md index d73639fdf0af..9762d69cdfcf 100644 --- a/packages/video_player/video_player/CHANGELOG.md +++ b/packages/video_player/video_player/CHANGELOG.md @@ -1,6 +1,6 @@ ## 2.3.0 -* Add `allowBackgroundPlayback` to `VideoPlayerOptions` +* Adds `allowBackgroundPlayback` to `VideoPlayerOptions`. ## 2.2.10 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 100389326a4d..e4ac01ef1227 100644 --- a/packages/video_player/video_player/test/video_player_test.dart +++ b/packages/video_player/video_player/test/video_player_test.dart @@ -97,7 +97,7 @@ class _FakeClosedCaptionFile extends ClosedCaptionFile { void main() { void verifyAppLifeCycle( VideoPlayerController controller, { - bool isObserving = true, + required bool isObserving, }) { final wasPlayingBeforePause = controller.value.isPlaying; WidgetsBinding.instance! @@ -211,8 +211,9 @@ void main() { ); await controller.initialize(); await controller.play(); - verifyAppLifeCycle(controller); + verifyAppLifeCycle(controller, isObserving: true); }); + test('asset', () async { final VideoPlayerController controller = VideoPlayerController.asset( 'a.avi', @@ -808,19 +809,17 @@ void main() { expect(controller.videoPlayerOptions!.mixWithOthers, true); }); - group('allowBackgroundPlayback', () { - [true, false].forEach((allowBackgroundPlayback) { - test('is $allowBackgroundPlayback', () async { - final VideoPlayerController controller = VideoPlayerController.file( - File(''), - videoPlayerOptions: VideoPlayerOptions( - allowBackgroundPlayback: allowBackgroundPlayback, - ), - ); - await controller.initialize(); - await controller.play(); - verifyAppLifeCycle(controller, isObserving: !allowBackgroundPlayback); - }); + [true, false].forEach((allowBackgroundPlayback) { + test('allowBackgroundPlayback is $allowBackgroundPlayback', () async { + final VideoPlayerController controller = VideoPlayerController.file( + File(''), + videoPlayerOptions: VideoPlayerOptions( + allowBackgroundPlayback: allowBackgroundPlayback, + ), + ); + await controller.initialize(); + await controller.play(); + verifyAppLifeCycle(controller, isObserving: !allowBackgroundPlayback); }); }); }); diff --git a/packages/video_player/video_player_platform_interface/CHANGELOG.md b/packages/video_player/video_player_platform_interface/CHANGELOG.md index b162fcd20ba0..cf2ffda1b2fb 100644 --- a/packages/video_player/video_player_platform_interface/CHANGELOG.md +++ b/packages/video_player/video_player_platform_interface/CHANGELOG.md @@ -1,6 +1,6 @@ ## 5.1.0 -* Add `allowBackgroundPlayback` to `VideoPlayerOptions` +* Adds `allowBackgroundPlayback` to `VideoPlayerOptions`. ## 5.0.1 diff --git a/packages/video_player/video_player_platform_interface/lib/video_player_platform_interface.dart b/packages/video_player/video_player_platform_interface/lib/video_player_platform_interface.dart index e30df672266a..e87185ac481b 100644 --- a/packages/video_player/video_player_platform_interface/lib/video_player_platform_interface.dart +++ b/packages/video_player/video_player_platform_interface/lib/video_player_platform_interface.dart @@ -329,9 +329,8 @@ class DurationRange { /// [VideoPlayerOptions] can be optionally used to set additional player settings class VideoPlayerOptions { - /// Set this to false to let plugin manage play/pause with app lifecycle changes, - /// Set this to true to keep playing video in background, when app goes in background - /// The default value is false + /// Set this to true to keep playing video in background, when app goes in background. + /// The default value is false. final bool allowBackgroundPlayback; /// Set this to true to mix the video players audio with other audio sources. From 7e7c611f6fd2c8de420c4cb3bd6f6d59a3be54a0 Mon Sep 17 00:00:00 2001 From: maximencko Date: Wed, 23 Feb 2022 12:49:11 +0200 Subject: [PATCH 19/22] remove redundant changelog changes --- .../video_player/video_player_platform_interface/CHANGELOG.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/packages/video_player/video_player_platform_interface/CHANGELOG.md b/packages/video_player/video_player_platform_interface/CHANGELOG.md index 09081937964b..52612207d8f3 100644 --- a/packages/video_player/video_player_platform_interface/CHANGELOG.md +++ b/packages/video_player/video_player_platform_interface/CHANGELOG.md @@ -4,9 +4,6 @@ ## 5.0.2 -* Adds `allowBackgroundPlayback` to `VideoPlayerOptions`. -## NEXT - * Adds the Pigeon definitions used to create the method channel implementation. * Internal code cleanup for stricter analysis options. From c947b1287b6f1f71a9fdda14fc60aff76eb5f4c2 Mon Sep 17 00:00:00 2001 From: maximencko Date: Wed, 23 Feb 2022 12:53:08 +0200 Subject: [PATCH 20/22] improve naming --- .../video_player/video_player/test/video_player_test.dart | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) 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 47cbee2ab123..78521cebcb9b 100644 --- a/packages/video_player/video_player/test/video_player_test.dart +++ b/packages/video_player/video_player/test/video_player_test.dart @@ -98,7 +98,7 @@ class _FakeClosedCaptionFile extends ClosedCaptionFile { } void main() { - void verifyAppLifeCycle( + void verifyPlayingWhenAppLifecyclePaused( VideoPlayerController controller, { required bool isObserving, }) { @@ -214,7 +214,7 @@ void main() { ); await controller.initialize(); await controller.play(); - verifyAppLifeCycle(controller, isObserving: true); + verifyPlayingWhenAppLifecyclePaused(controller, isObserving: true); }); test('asset', () async { @@ -943,7 +943,7 @@ void main() { ); await controller.initialize(); await controller.play(); - verifyAppLifeCycle(controller, isObserving: !allowBackgroundPlayback); + verifyPlayingWhenAppLifecyclePaused(controller, isObserving: !allowBackgroundPlayback); }); }); }); From 3d5c12cacd9e2e0c4579d377d47bcc4695214be3 Mon Sep 17 00:00:00 2001 From: maximencko Date: Wed, 23 Feb 2022 12:58:48 +0200 Subject: [PATCH 21/22] remove dependency overrides --- packages/video_player/video_player/example/pubspec.yaml | 5 ----- packages/video_player/video_player/pubspec.yaml | 9 +-------- 2 files changed, 1 insertion(+), 13 deletions(-) diff --git a/packages/video_player/video_player/example/pubspec.yaml b/packages/video_player/video_player/example/pubspec.yaml index e5a18875a1c2..eef6eb7ab63b 100644 --- a/packages/video_player/video_player/example/pubspec.yaml +++ b/packages/video_player/video_player/example/pubspec.yaml @@ -17,11 +17,6 @@ dependencies: # the parent directory to use the current plugin's version. path: ../ -dependency_overrides: - video_player_platform_interface: - path: - ../../video_player_platform_interface - dev_dependencies: flutter_test: sdk: flutter diff --git a/packages/video_player/video_player/pubspec.yaml b/packages/video_player/video_player/pubspec.yaml index 0bf66e3727b6..8a7f1dfbf3d0 100644 --- a/packages/video_player/video_player/pubspec.yaml +++ b/packages/video_player/video_player/pubspec.yaml @@ -24,17 +24,10 @@ dependencies: sdk: flutter video_player_android: ^2.2.17 video_player_avfoundation: ^2.2.17 - video_player_platform_interface: - path: - ../video_player_platform_interface + video_player_platform_interface: ">=4.2.0 <6.0.0" video_player_web: ^2.0.0 html: ^0.15.0 -dependency_overrides: - video_player_platform_interface: - path: - ../video_player_platform_interface - dev_dependencies: flutter_test: sdk: flutter From 1df2543c78d034cc82cc9ac0f63865f8dc8bf31e Mon Sep 17 00:00:00 2001 From: maximencko Date: Wed, 23 Feb 2022 13:04:40 +0200 Subject: [PATCH 22/22] format --- .../video_player/video_player/test/video_player_test.dart | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) 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 78521cebcb9b..e91a8818d7a4 100644 --- a/packages/video_player/video_player/test/video_player_test.dart +++ b/packages/video_player/video_player/test/video_player_test.dart @@ -943,7 +943,10 @@ void main() { ); await controller.initialize(); await controller.play(); - verifyPlayingWhenAppLifecyclePaused(controller, isObserving: !allowBackgroundPlayback); + verifyPlayingWhenAppLifecyclePaused( + controller, + isObserving: !allowBackgroundPlayback, + ); }); }); });