Skip to content

[camera_android_camerax] Swap out BroadcastReceiver for OrientationEventListener #9261

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
May 19, 2025

Conversation

camsim99
Copy link
Contributor

@camsim99 camsim99 commented May 16, 2025

Replaces usage of BroadcastReceiver (that is registered with the ACTION_CONFIGURATION_CHANGED intent) with an OrientationEventListener to notify the plugin of changes in device orientation.

Using an OrientationEventListener allows the plugin to more regularly to orientation updates, whereas listening to the ACTION_CONFIGURATION_CHANGED only reports changes in device configuration. This is an issue because sometimes, a device changing from a landscape orientation to another landscape orientation is not considered a change in configuration.

Fixes flutter/flutter#168565.
Inherently fixes flutter/flutter#163818 (no more BroadcastReceiver).
Should also inherently fix flutter/flutter#162854 (no more BroadcastReceiver, but don't worry--we already stop listening to changes in device orientation when the plugin is disposed).

Pre-Review Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Footnotes

  1. Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling. 2 3

@camsim99 camsim99 marked this pull request as ready for review May 16, 2025 14:57
@camsim99 camsim99 requested a review from a team May 16, 2025 14:57
@jesswrd jesswrd self-requested a review May 19, 2025 10:27
…o/flutter/plugins/camerax/DeviceOrientationManager.java

Co-authored-by: jesswrd <[email protected]>
@camsim99 camsim99 added the autosubmit Merge PR when tree becomes green via auto submit App label May 19, 2025
@auto-submit auto-submit bot merged commit c2f8201 into flutter:main May 19, 2025
82 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request May 20, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request May 27, 2025
github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request May 27, 2025
flutter/packages@af0b9a9...6eebe72

2025-05-27 [email protected] [flutter_lints] Bump lints dependency to
6.0.0 and bump package to 6.0.0 (flutter/packages#9108)
2025-05-26 [email protected] Roll Flutter from
60050a0 to 4372bfb (6 revisions) (flutter/packages#9322)
2025-05-26 [email protected] [video_player_android] Add note
about Android platform views known issue (flutter/packages#9312)
2025-05-24 [email protected] Roll Flutter from
85564cb to 60050a0 (17 revisions) (flutter/packages#9318)
2025-05-23 [email protected]
[camera_android_camerax] Implement `enableAudio` for video recording
(flutter/packages#9264)
2025-05-23 [email protected]
[video_player_android] isBuffering flag always return true after calling
seekTo method - fixed (flutter/packages#9198)
2025-05-23 [email protected] [camera,video_player] replace
onSurfaceDestroyed with onSurfaceCleanup (flutter/packages#9316)
2025-05-23 [email protected] [camera,video_player] Update Android
to 3.29 minimum (flutter/packages#9317)
2025-05-23 [email protected] Roll Flutter from
33cdd8e to 85564cb (39 revisions) (flutter/packages#9315)
2025-05-23 [email protected] Update repo for 3.32 stable
(flutter/packages#9311)
2025-05-23 [email protected] [camera_avfoundation] Correct
pigeon configuration output paths (flutter/packages#9313)
2025-05-23 [email protected] [process] Remove from the repository
(flutter/packages#9310)
2025-05-22 [email protected] Ensure Example Packages Work on
Android API 36 (flutter/packages#9241)
2025-05-22 [email protected] Roll Flutter (stable) from
c236373 to be698c4 (1274 revisions) (flutter/packages#9300)
2025-05-22 [email protected] Remove CODEOWNER for generated iOS files
(flutter/packages#9272)
2025-05-22 [email protected]
[google_maps_flutter] Removes unnecessary parentheses
(flutter/packages#9273)
2025-05-21 [email protected] Rebalance Android plugin CODEOWNERS
(flutter/packages#9298)
2025-05-21 [email protected] Roll Flutter from
9a78af5 to 33cdd8e (60 revisions) (flutter/packages#9305)
2025-05-21 [email protected] [ci] Update repository for 3.29
release (flutter/packages#9270)
2025-05-21 [email protected] Ignore .cxx/ directories
(flutter/packages#9268)
2025-05-21 [email protected] [video_player] Skip some integration
tests on web (flutter/packages#9302)
2025-05-21 [email protected]
[webview_flutter] Adds support to respond to recoverable SSL certificate
errors (flutter/packages#9150)
2025-05-19 [email protected]
[camera_android_camerax] Swap out `BroadcastReceiver` for
`OrientationEventListener` (flutter/packages#9261)
2025-05-19 [email protected]
[video_player_android] Fix incorrect dimensions swap
(flutter/packages#9199)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC [email protected] on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autosubmit Merge PR when tree becomes green via auto submit App p: camera platform-android
Projects
None yet
2 participants