Skip to content

Commit 341609d

Browse files
Merge branch 'main' into google-sign-in-android-disconnect
2 parents f36957b + f2a65fd commit 341609d

File tree

62 files changed

+463
-100
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+463
-100
lines changed

.ci/flutter_master.version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
a0820964d59cd983341dffcc824676967178df70
1+
8f94cb0d8f013b28d2a3df5e477e43b923421dce

.ci/flutter_stable.version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
a402d9a4376add5bc2d6b1e33e53edaae58c07f8
1+
d693b4b9dbac2acd4477aea4555ca6dcbea44ba2

.github/workflows/pull_request_label.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
pull-requests: write
2222
runs-on: ubuntu-latest
2323
steps:
24-
- uses: actions/labeler@8558fd74291d67161a8a78ce36a881fa63b766a9
24+
- uses: actions/labeler@634933edcd8ababfe52f92936142cc22ac488b1b
2525
with:
2626
repo-token: "${{ secrets.GITHUB_TOKEN }}"
2727
sync-labels: true

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636
cd $GITHUB_WORKSPACE
3737
# Checks out a copy of the repo.
3838
- name: Check out code
39-
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
39+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
4040
with:
4141
fetch-depth: 0 # Fetch all history so the tool can get all the tags to determine version.
4242
- name: Set up tools

CODEOWNERS

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@
66

77
packages/animations/** @hannah-hyj
88
packages/camera/** @bparrishMines
9-
packages/cross_file/** @ditman
10-
packages/extension_google_sign_in_as_googleapis_auth/** @ditman
9+
packages/cross_file/** @stuartmorgan
10+
packages/extension_google_sign_in_as_googleapis_auth/** @stuartmorgan
1111
packages/file_selector/** @stuartmorgan-g
1212
packages/flutter_lints/** @chunhtai
1313
packages/flutter_template_images/** @stuartmorgan-g
1414
packages/go_router/** @chunhtai
1515
packages/go_router_builder/** @chunhtai
1616
packages/google_adsense/** @sokoloff06 @ditman
17-
packages/google_identity_services_web/** @ditman
17+
packages/google_identity_services_web/** @mdebbar
1818
packages/google_fonts/** @Piinks
1919
packages/google_maps_flutter/** @stuartmorgan-g
2020
packages/google_sign_in/** @stuartmorgan-g
@@ -53,16 +53,16 @@ third_party/packages/path_parsing/** @domesticmouse
5353
# matching entry takes precedence.
5454

5555
# - Web
56-
packages/camera/camera_web/** @ditman
57-
packages/file_selector/file_selector_web/** @ditman
58-
packages/google_maps_flutter/google_maps_flutter_web/** @ditman
59-
packages/google_sign_in/google_sign_in_web/** @ditman
60-
packages/image_picker/image_picker_for_web/** @ditman
61-
packages/pointer_interceptor/pointer_interceptor_web/** @ditman
62-
packages/shared_preferences/shared_preferences_web/** @ditman
63-
packages/url_launcher/url_launcher_web/** @ditman
64-
packages/video_player/video_player_web/** @ditman
65-
packages/webview_flutter/webview_flutter_web/** @ditman
56+
packages/camera/camera_web/** @mdebbar
57+
packages/file_selector/file_selector_web/** @mdebbar
58+
packages/google_maps_flutter/google_maps_flutter_web/** @mdebbar
59+
packages/google_sign_in/google_sign_in_web/** @mdebbar
60+
packages/image_picker/image_picker_for_web/** @mdebbar
61+
packages/pointer_interceptor/pointer_interceptor_web/** @mdebbar
62+
packages/shared_preferences/shared_preferences_web/** @mdebbar
63+
packages/url_launcher/url_launcher_web/** @mdebbar
64+
packages/video_player/video_player_web/** @mdebbar
65+
packages/webview_flutter/webview_flutter_web/** @mdebbar
6666

6767
# - Android
6868
packages/camera/camera_android/** @camsim99

packages/camera/camera_platform_interface/CHANGELOG.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1-
## NEXT
1+
## 2.11.0
22

3+
* Adds a flag to configure a recording to be persistent across camera changes. See
4+
`VideoCaptureOptions.enablePersistentRecording`.
35
* Updates minimum supported SDK version to Flutter 3.29/Dart 3.7.
46

57
## 2.10.0

packages/camera/camera_platform_interface/lib/src/platform_interface/camera_platform.dart

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,10 @@ abstract class CameraPlatform extends PlatformInterface {
292292
}
293293

294294
/// Sets the active camera while recording.
295+
///
296+
/// On Android, you must start the recording with [startVideoCapturing]
297+
/// with `enablePersistentRecording` set to `true`
298+
/// to avoid cancelling any active recording.
295299
Future<void> setDescriptionWhileRecording(CameraDescription description) {
296300
throw UnimplementedError(
297301
'setDescriptionWhileRecording() is not implemented.',

packages/camera/camera_platform_interface/lib/src/types/video_capture_options.dart

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ class VideoCaptureOptions {
1818
this.maxDuration,
1919
this.streamCallback,
2020
this.streamOptions,
21+
this.enablePersistentRecording = true,
2122
}) : assert(
2223
streamOptions == null || streamCallback != null,
2324
'Must specify streamCallback if providing streamOptions.',
@@ -43,6 +44,17 @@ class VideoCaptureOptions {
4344
/// Should only be set if a streamCallback is also present.
4445
final CameraImageStreamOptions? streamOptions;
4546

47+
/// Configures the recording to be a persistent recording.
48+
///
49+
/// A persistent recording can only be stopped by explicitly calling [CameraPlatform.stopVideoRecording]
50+
/// and will ignore events that would normally cause recording to stop, such as lifecycle events.
51+
///
52+
/// On Android, you must set this parameter to `true`
53+
/// to avoid cancelling any active recording when calling [CameraPlatform.setDescriptionWhileRecording].
54+
///
55+
/// Defaults to `true`.
56+
final bool enablePersistentRecording;
57+
4658
@override
4759
bool operator ==(Object other) =>
4860
identical(this, other) ||
@@ -51,9 +63,15 @@ class VideoCaptureOptions {
5163
cameraId == other.cameraId &&
5264
maxDuration == other.maxDuration &&
5365
streamCallback == other.streamCallback &&
54-
streamOptions == other.streamOptions;
66+
streamOptions == other.streamOptions &&
67+
enablePersistentRecording == other.enablePersistentRecording;
5568

5669
@override
57-
int get hashCode =>
58-
Object.hash(cameraId, maxDuration, streamCallback, streamOptions);
70+
int get hashCode => Object.hash(
71+
cameraId,
72+
maxDuration,
73+
streamCallback,
74+
streamOptions,
75+
enablePersistentRecording,
76+
);
5977
}

packages/camera/camera_platform_interface/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ repository: https://github.com/flutter/packages/tree/main/packages/camera/camera
44
issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22
55
# NOTE: We strongly prefer non-breaking changes, even at the expense of a
66
# less-clean API. See https://flutter.dev/go/platform-interface-breaking-changes
7-
version: 2.10.0
7+
version: 2.11.0
88

99
environment:
1010
sdk: ^3.7.0

packages/espresso/CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
## 0.4.0+13
2+
3+
* Bumps com.google.code.gson:gson from 2.11.0 to 2.13.2.
4+
5+
## 0.4.0+12
6+
7+
* Bumps androidx.test.espresso:espresso-* from 3.6.1 to 3.7.0.
8+
19
## 0.4.0+11
210

311
* Bumps androidx.test.ext:truth from 1.6.0 to 1.7.0.

0 commit comments

Comments
 (0)