Skip to content

Conversation

@RobertOdrowaz
Copy link
Contributor

@RobertOdrowaz RobertOdrowaz commented Aug 29, 2025

Migrates camera implementation as part of flutter/flutter#119109

This PR migrates the last chunk of FLTCam class to Swift:

  • updateOrientation
  • setCaptureSessionPreset
  • Removes FLTCam class

Pre-Review Checklist

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

Note: The Flutter team is currently trialing the use of Gemini Code Assist for GitHub. Comments from the gemini-code-assist bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.

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

@flutter-dashboard
Copy link

It looks like this pull request may not have tests. Please make sure to add tests or get an explicit test exemption before merging.

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. If you believe this PR qualifies for a test exemption, contact "@test-exemption-reviewer" in the #hackers channel in Discord (don't just cc them here, they won't see it!). The test exemption team is a small volunteer group, so all reviewers should feel empowered to ask for tests, without delegating that responsibility entirely to the test exemption group.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request successfully migrates the updateOrientation and setCaptureSessionPreset methods from Objective-C to Swift, and subsequently removes the now-obsolete FLTCam class. This is a great step forward in the Swift migration. The implementation looks solid, and I have a couple of minor suggestions to enhance code safety and adopt more idiomatic Swift patterns.

Copy link
Contributor

@hellohuanlin hellohuanlin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is exciting!

## 0.9.21+3

* Migrates `updateOrientation` and `setCaptureSessionPreset` methods to Swift.
* Removes `FLTCam` class.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yay!

@RobertOdrowaz RobertOdrowaz force-pushed the feature/camera-implementation-swift-migration-part13 branch 2 times, most recently from e84e04c to aeae649 Compare September 10, 2025 18:45
@RobertOdrowaz
Copy link
Contributor Author

@hellohuanlin take a look at this PR again when you have a moment pls

Copy link
Contributor

@hellohuanlin hellohuanlin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@RobertOdrowaz RobertOdrowaz added the autosubmit Merge PR when tree becomes green via auto submit App label Sep 24, 2025
@auto-submit
Copy link
Contributor

auto-submit bot commented Sep 24, 2025

autosubmit label was removed for flutter/packages/9930, because The base commit of the PR is older than 7 days and can not be merged. Please merge the latest changes from the main into this branch and resubmit the PR.

@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Sep 24, 2025
@RobertOdrowaz RobertOdrowaz force-pushed the feature/camera-implementation-swift-migration-part13 branch from aeae649 to 9f6e214 Compare September 24, 2025 06:49
@RobertOdrowaz
Copy link
Contributor Author

Test exemption reason: refactors with no semantic change (e.g. null safety migrations)

@stuartmorgan-g
Copy link
Collaborator

test-exempt: code refactor with no semantic change

@stuartmorgan-g
Copy link
Collaborator

Sorry, this will require a merge to re-delete the deleted files; I just landed a mass change that slightly altered the license header of all code files in the repository, which is why there's a conflict here now.

@RobertOdrowaz RobertOdrowaz force-pushed the feature/camera-implementation-swift-migration-part13 branch from 9f6e214 to bafa2c5 Compare September 29, 2025 14:36
@RobertOdrowaz RobertOdrowaz added the autosubmit Merge PR when tree becomes green via auto submit App label Sep 29, 2025
@auto-submit auto-submit bot merged commit affa244 into flutter:main Sep 29, 2025
80 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Sep 30, 2025
github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request Sep 30, 2025
flutter/packages@34eec78...287739d

2025-09-29 [email protected] Roll Flutter (stable) from
d693b4b to ac4e799 (4 revisions) (flutter/packages#10124)
2025-09-29 [email protected] Fix CODEOWNERS error
(flutter/packages#10127)
2025-09-29 [email protected] [file_selector] Update Pigeon in
Android implementation (flutter/packages#10126)
2025-09-29 [email protected]
[In_app_purchase_storekit] Do not throw PigeonError when a transaction
is pending / cancelled / unverified (flutter/packages#9627)
2025-09-29 [email protected] [video_player] Separate texture ID on
Android (flutter/packages#10029)
2025-09-29 [email protected] Roll Flutter from
6cc976e to 96fe3b3 (32 revisions) (flutter/packages#10125)
2025-09-29 [email protected]
[camera_android_camerax] Fix NV21 Format (flutter/packages#10022)
2025-09-29 [email protected] Manual roll Flutter from
b1a28bc to 6cc976e (4 revisions) (flutter/packages#10116)
2025-09-29 [email protected] [camera_avfoundation]
Implementation swift migration - part 13 (flutter/packages#9930)

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
okorohelijah pushed a commit to okorohelijah/flutter that referenced this pull request Oct 7, 2025
flutter/packages@34eec78...287739d

2025-09-29 [email protected] Roll Flutter (stable) from
d693b4b to ac4e799 (4 revisions) (flutter/packages#10124)
2025-09-29 [email protected] Fix CODEOWNERS error
(flutter/packages#10127)
2025-09-29 [email protected] [file_selector] Update Pigeon in
Android implementation (flutter/packages#10126)
2025-09-29 [email protected]
[In_app_purchase_storekit] Do not throw PigeonError when a transaction
is pending / cancelled / unverified (flutter/packages#9627)
2025-09-29 [email protected] [video_player] Separate texture ID on
Android (flutter/packages#10029)
2025-09-29 [email protected] Roll Flutter from
6cc976e to 96fe3b3 (32 revisions) (flutter/packages#10125)
2025-09-29 [email protected]
[camera_android_camerax] Fix NV21 Format (flutter/packages#10022)
2025-09-29 [email protected] Manual roll Flutter from
b1a28bc to 6cc976e (4 revisions) (flutter/packages#10116)
2025-09-29 [email protected] [camera_avfoundation]
Implementation swift migration - part 13 (flutter/packages#9930)

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
reidbaker pushed a commit to AbdeMohlbi/flutter that referenced this pull request Dec 10, 2025
flutter/packages@34eec78...287739d

2025-09-29 [email protected] Roll Flutter (stable) from
d693b4b to ac4e799 (4 revisions) (flutter/packages#10124)
2025-09-29 [email protected] Fix CODEOWNERS error
(flutter/packages#10127)
2025-09-29 [email protected] [file_selector] Update Pigeon in
Android implementation (flutter/packages#10126)
2025-09-29 [email protected]
[In_app_purchase_storekit] Do not throw PigeonError when a transaction
is pending / cancelled / unverified (flutter/packages#9627)
2025-09-29 [email protected] [video_player] Separate texture ID on
Android (flutter/packages#10029)
2025-09-29 [email protected] Roll Flutter from
6cc976e to 96fe3b3 (32 revisions) (flutter/packages#10125)
2025-09-29 [email protected]
[camera_android_camerax] Fix NV21 Format (flutter/packages#10022)
2025-09-29 [email protected] Manual roll Flutter from
b1a28bc to 6cc976e (4 revisions) (flutter/packages#10116)
2025-09-29 [email protected] [camera_avfoundation]
Implementation swift migration - part 13 (flutter/packages#9930)

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-ios platform-macos

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants