Changelog
See the Migration Guide for breaking changes between versions.
4.3.7
Fixes
- Fix semantics with the capture button.
- Avoid potential null operations when saving the entity.
4.3.6
Fixes
- Predicate the flash mode correctly when retrying the initialization.
4.3.5
Improvements
4.3.4
Fixes
- Fix preview file delete predication.
4.3.3
New features
- Adds
CameraPickerConfig.onPickConfirmed
to gets called when an asset entity is confirmed to be picked.
- Introduces
CameraPickerConfig.permissionRequestOption
.
Improvements
- Evicts the captured image cache once returned from the viewer.
- Allows
camera_android: ^0.10.9+6
.
4.3.2
Fixes
- Fix button displays when tap to record.
- Prevent camera description exceptions when initializing the camera in the lifecycle callback.
Improvements
- Use more precise overlay styles.
- Switching between different lens with a single camera by default.
- Always delete the preview file when popping from the preview.
4.3.1
Improvements
- Downgrades the default resolution preset from
max
to ultraHigh
.
- Improves pinch zooming experiences.
- Do not wait for focus mode and exposure mode to reset.
- Updates the capture actions section size to compatible with more cases.
4.3.0+1
Fixes
- Fixes the breaking
ColorScheme.background
implementation on older Flutter SDKs.
4.3.0
Improvements
- Adapt the latest interface of WeChat.
Fixes
4.2.2
Fixes
- Allows
wrapControllerMethod
to return nullable result.
- Allows newer versions of
sensors_plus
.
Improvements
- Provide the back button when no controller has been initialized.
- Improves paddings of the heading actions in the viewer.
4.2.1
Fixes
- Fix ignore locks when exception throws.
4.2.0
Breaking changes
- Migrate to Flutter 3.16, and drop supports for previous Flutter versions.
- Bump
photo_manager
to v3.x.
- Export
photo_manager_image_provider
.
Improvements
- Roll
sensors_plus
.
- Catch exceptions when obtain/subscribe to the accelerometer stream.
- Use
wechat_picker_library
.
Fixes
- Fix
onEntitySaving
not returned after called. (#223)
- Predicate access denied to avoid deadlocks.
4.1.0
New features
- Automatically determine the capture orientation and lock accordingly.
Fixes
- Handle exceptions after all flows.
- Fix various problems with the capture button.
4.0.3
Fixes
- Prevent duplicate shooting actions.
Improvements
- Provide overall invalid wrapping for controller methods.
- Throw exceptions with more accurate stack traces.
4.0.2
Fixes
- Handles exceptions if locking methods are failed.
4.0.1
Fixes
- Fix uncaught exceptions for controller methods.
4.0.0
To know more about breaking changes, see Migration Guide.
New features
- Migrate to Flutter 3.3, and drop supports for previous Flutter versions.
- Sync all UI details from WeChat 8.3.x. (#181)
Improvements
- Adapt layouts according to the device orientation.
- Improve the performance when taking photos.
- Improve the experience when using the exposure slider.
- Prefer
FlashMode.off
for better performance.
- Allow
cameras
to be set repeatedly.
Fixes
- Fix accessibility on the switch cameras button.
3.8.0
New features
- Add Vietnamese language text delegate. (#166).
- Add
CameraPickerConfig.minimumRecordingDuration
. (#168)
Improvements
- Hide the loading widget in the preview until an actual saving process has been invoked.
- Remove the implied system UI overlay manipulations.
- Raise the lowest SDK constraint to 2.8.0.
3.7.0
New features
- Add
preferredFlashMode
, allowing users to choose which flash mode is preferred when first using the camera. (#158)
Improvements
- Allow flash modes failed to switch and can move on to next when switching. (#156)
Fixes
- Fix lifecycle integrations with the camera preview. (#157)
3.6.5
Fixes
- Correct sizes when using
cameraQuarterTurns
. (#149)
3.6.4
Improvements
- Improve stop-capturing experiences. (#146)
- Precache captured images for better experiences. (#145)
3.6.3
Improvements
- Add the loading indicator when saving. (#140)
3.6.2
Improvements
- Bump
photo_manager
to explicitly remove the requirements of requiredLegacyExternalStorage
.
3.6.1
New features
- Add torch flashlight support. (#137)
3.6.0
New features
- Upgrade
camera
to 0.10.x
. (#133)
- Upgrade
photo_maanger
for Android 13. (#133)
3.5.0+1
Fixes
- Fix the too early
widget
access in CameraPickerState
. (#124)
3.5.0
New features
- Support customize UI by override
State
s. (#113)
Improvements
- Expose multiple internal widgets. (#113)
- Re-export
CameraPicker
's constructor. (#116)
- Avoid duplicate entity saving. (#117)
- Prevent switching cameras when taking picture or recording video. (#120)
3.4.0
New features
- Add
enableScaledPreview
. (#108)
Improvements
- Catch more errors with handler. (#110)
- Improve tapping exposure updates. (#109)
- Prevent unnecessary zoom updates. (#107)
3.3.0
Breaking Changes
- Allow the foreground builder to be used all the time (#97) .
The signature of the
ForegroundBuilder
has changed
but can be easily migrated.
Improvements
- Allow text delegates to be obtained by
Locale
. (#99)
3.2.0+1
New features
3.1.0
New features
- Add
onXFileCaptured
. (#87)
3.0.4
Fixes
- Unify the method to push to the viewer. (#86)
3.0.3
Fixes
- Correct arguments of
EntitySaveCallback
. (#85)
3.0.2
Improvements
- Export enums and typedefs.
3.0.1
Fixes
- Remove redundant dispose with the controller.
3.0.0
New features
- Add full semantics support. (#72)
- Add
lockCaptureOrientation
, allowing users to determine lock to the specific orientation during captures. (#68)
- Export
CameraPickerPageRoute
.
- Abstract
CamearPickerConfig
, which moved all arguments from pickFromCamera
to pickerConfig
.
Improvements
- Improve camera initializes by adding a lock.
- Tweak asynchronous methods call during initializations.
- Make camera controllers available as soon as possible.
Fixes
- Fix scaling issues with turns and orientations.
- Fix lint issues on Flutter 2.10.
2.6.5
- Remove duplicate future requests when saving an entity.
2.6.4
- Drop initialize when the controller has been already initialized. (#70)
2.6.3
- Fix set exposure point crashes when switching between cameras. (#66)
2.6.2
- Bind circular progress color with the theme.
2.6.1
- Allow saving entities when the permission is limited on iOS.
2.6.0
- Add
preferredLensDirection
, allowing users to choose which lens direction is preferred when first using the camera.
- Add
enableTapRecording
, allowing users to determine whether to allow the record can start with a single tap.
- Add
shouldAutoPreviewVideo
, allowing users to determine whether the video should be played instantly in the preview.
2.5.2
- Request the permission state again when saving.
- Provide better experiences when video records need to be prepared.
2.5.1
- Fix invalid widgets binding observer caller.
2.5.0
- Add
onError
to handle errors during the picking process.
SaveEntityCallback
-> EntitySaveCallback
.
- Improve folder structure of the plugin.
2.4.2
- Flip the preview if the user is using a front camera.
2.4.1
- Handle save exceptions more gracefully.
- Dispose the controller when previewing for better performance.
2.4.0
- Bump
camera
to 0.9.x
.
- Remove
shouldLockPortrait
in picking.
2.3.1
- Expose
enablePullToZoomInRecord
for the pickFromCamera
method.
- Trigger shooting preparation only when start recording on iOS.
2.3.0
- Expose
useRootNavigator
while picking.
- Initialize a new controller if failed to stop recording. (#39)
- Throw or rethrow exceptions that used to be caught. (#41)
- Update the back icon with preview.
- Enhance video capture on iOS with preparation.
2.2.0
- Add
EntitySaveCallback
for the custom save method.
2.1.2
- Improve the UI of the exposure point widget when manually focus.
2.1.1
- Use basename when saving entities.
2.1.0
- Add
shouldLockPortrait
to fit orientation for the device.
- Fix exposure offset issue when resetting the exposure point after adjusting the exposure offset manually.
2.0.0
New Features
- Add
enableSetExposure
, allowing users to update the exposure from the point tapped on the screen.
- Add
enableExposureControlOnPoint
, allowing users to control the exposure offset with an offset slide from the exposure point.
- Add
enablePinchToZoom
, allowing users to zoom by pinching the screen.
- Add
enablePullToZoomInRecord
, allowing users to zoom by pulling up when recording video.
- Add
foregroundBuilder
, allowing users to build customized widgets beyond the camera preview.
- Add
shouldDeletePreviewFile
, allowing users to choose whether the captured file should be deleted.
- Sync
imageFormatGroup
from the camera
plugin.
Breaking Changes
- Migrate to non-nullable by default.
isAllowRecording
-> enableRecording
isOnlyAllowRecording
-> onlyAllowRecording
Fixes
- All fixes from the
camera
plugin.
1.3.1
- Constraint dependencies version. #22
1.3.0
- Add
enableAudio
parameter to control whether the package will require audio integration. #17
1.2.3
- Fix
maximumRecordingDuration
not passed in static method. #14
1.2.2
- Raise dependencies versions.
1.2.1
1.2.0
- Expose resolution preset control.
1.1.2
1.1.1
1.1.0+1
- Link confirm button's text with delegate. Fix #6.
1.1.0
- Add
isOnlyAllowRecording
. Resolves #4.
- Make camera switching available. Resolves #5.
1.0.0+1
- Fix potential non exist directory access.
1.0.0
- Support taking pictures and videos.
- Support video recording duration limitation.