Important
See the Migration Guide for the details of breaking changes between versions.
None.
- Allows
extended_image: ^9.0.0
.
- Allows assets changing when no path previously.
- Recovers the compatibility with Flutter 3.16.
- Adapt the file type getter from the image provider to get a precise file type in grid.
- Adds the identifier for grid item's semantics.
- Improves preview page back button.
- Do not mute the Live Photo during the preview.
- Fix the GIF indicator's layout.
- Fix the directionality with the reverted grid item.
- Add explicit Live Photos indicator for assets.
- Make Live Photos gesture consistent when scaling and panning.
- Integrate
LocallyAvailableBuilder
with thumbnail options to improve the thumbnail loading speed. - Use
visibility_detector
and scroll observer to improve media playing experiences.
- Fix the bottom actions bar display conditions.
- Uses correct
isOriginal
for theLocallyAvailableBuilder
.
- Improve changes when limited on iOS.
- Use
LocallyAvailableBuilder
in the grid to provide better user awareness.
- Introduce
AssetsChangeCallback
andAssetsChangeRefreshPredicate
to help users act according to asset changes. - Add
shouldAutoplayPreview
to the picker config.
- Raise detailed negative range error.
- Fix viewer confirm button predication.
- Enlarge GIF gradients.
- Fix potential paths assets count unexpected merging behaviors.
- Support limited permission displays on Android.
- Improves the limited overlay padding on Android.
- Adds permission request lock for the picker state.
- Speeding up by splitting asset loading into separate steps.
- Speeding up using
AdvancedCustomFilter
rather thanFilterOptionGroup
by default.
- Fix reverted index when previewing assets on Android.
- Requests with the correct options with the picker.
- Fix the app bar of the viewer that is not animating.
- Fix loading when no assets are in the path.
- Reset the has more to load flag between path switching.
- Fix index reverting in
viewAsset
.
- Fix the index with bottom items in the preview.
- Fix the current asset in the picker viewer.
- Improve code formatting.
- Migrate to Flutter 3.16, and drop supports for previous Flutter versions.
- Bump
photo_manager
to v3.x. - Export
photo_manager_image_provider
. - Integrate
PermissionRequestOption
for callers.
- Adapt
ThemeData
usages. - Use
wechat_picker_library
. - Make the first asset count not blocking loads.
- Fix unhandled child semantics with the app bar title.
- Fix styles around the app bar and other widgets.
- Fix previewing selected assets' behavior.
- Use
PermissionRequestOption
as much as possible. - Raise more errors for non-synced paths.
- Fix the experience with
shouldRevertGrid
.
- Add Korean language support. (#494)
- Use
viewAsset
in the preview button.
- Fix disposed provider throwing error when fetching assets. (#493)
- Improve README docs and add topics for pub.
- Migrate to Flutter 3.13, and drop supports for previous Flutter versions.
- Improve
AssetPickerProvider.paths
.
- Add
appBarPreferredSize
in the picker delegate to help with padding calculations. - Improve the performance with
MediaQuery
callers.
- Remove
needTitle
for image filter options.
- Fix hit test when previewing videos.
- Use
TargetPlatform
for theisAppleOS
method in delegates, which relies on aBuildContext
.
- Sync all UI details from WeChat 8.3.x. (#458)
- Add Turkish language text delegate. (#331).
- Allow to confirm 0 assets if there are selected assets previously. (#461)
- Silent part of thumbnail request exceptions.
- Fix semantics interactions for video preview. (#458)
- Be able to update the items builder page. (#417)
- Migrate to Flutter 3.10, and drop supports for previous Flutter versions.
- Add Vietnamese language text delegate. (#424).
- Expand
FilterOptionGroup
toPMFilter
. (#436)
- Avoid clearing selected assets when disposing the provider. (#428)
- Call
AssetPickerProvider.dispose
when disposing the builder delegate. (#421)
- Migrate to Flutter 3.7, and drop supports for previous Flutter versions.
- Add more assertions. (#411)
- Use
Completer
and more accurate conditions to avoid duplicate load assets whenAssetPickerConfig.pageSize
is smaller than a complete page. (#407)
- Fix images and descriptions in
README
s.
- Add
didUpdateViewer
andinitAnimations
in theAssetPickerViewerBuilderDelegate
. (#403) - Add insta_assets_picker as a custom delegate example. (#403)
- Add
index
argument toselectAsset
in theAssetPickerBuilderDelegate
. (#399)
- Improve UI details in the
AssetPickerAppBar
. (#400)
- Allow overrides
viewAsset
in theAssetPickerBuilderDelegate
. (#391)
- Correct behaviors when the access is limited on iOS. (#392)
- Fix conditions with the confirm button on iOS. (#376)
- Bump
photo_manager
to explicitly remove the requirements ofrequiredLegacyExternalStorage
.
- Fix conditions with the confirm button. (#371)
- Fix conditions with the confirm button. (#367)
- Upgrade
photo_manager
for Android 13. (#365)
- Improve
BuildContext
usages to obtain the correct directionality for the assets grid. (#359) - Provide a better condition to the confirm button to make sure it displays correctly in all cases on iOS/macOS. (#359)
- Improve
bottomActionBar
inDefaultAssetPickerBuilderDelegate
. (#359)
- Fix invalid path sort. (#364)
- Adapt Flutter 3.3. (#354)
- Fix not updated empty flag in
DefaultAssetPickerProvider
. (#353)
To know more about breaking changes, see Migration Guide.
- Introduce
PathWrapper
in delegates to improve the overall loading speed. (#338) - Allow using
Key
during picking. (#339) - Add
initializeDelayDuration
forDefaultAssetPickerProvider
. (#341) - Prevent race conditions with paths. (#342)
- Expose
sortPathsByModifiedDate
. (#343)
- Unify indicator usage to avoid accidental indicator switching. (#344)
- Improve
onChangingSelected
inAssetPickerViewerBuilderDelegate
. (#332) - Fix typo in
README.md
. (#333)
- Fix behaviors when unselecting all assets in the viewer. (#335)
- Improve selection callers between picker and viewer. (#327)
- Migrate to Flutter 3, and drop supports for previous Flutter versions.
- Separate
AssetPickerDelegate
(#315), which provides the ability to override methods within theAssetPicker
.
- Improve
specialItemBuilder
. (#314)
- Fix context usages for inherited theme data.
- Fix unlinked path name builder.
- Update how paths get updated. (#312)
- Expose
DefaultAssetPickerProvider.forTest
.
- Fix
selectPredicate
with the viewer. (#307)
- Add
PathNameBuilder
. (#303) - Add
LimitedPermissionOverlayPredicate
. (#287)
- Support compile on the Web. (#273)
- Make all text delegates const.
- Fix the broken semantics on iOS/macOS. (#272)
- Fix wrong conditions judging when obtaining path thumbnails.
- Support semantics with Japanese text delegates. (#266).
- Obtain the path thumbnail only when the asset is an image or video.
To know more about breaking changes, see Migration Guide.
- Support predictable special item display. (#264)
- Support Live-Photos display. (#251)
- Expose
AssetPickerPageRoute
for customization. (#248) - Add full semantics support. (#232, #235, #240, #242, #243, #245, #254)
- Improve scaling with select indicators and numbers.
- Implement the default light theme. (#234)
- Fix
LocallyAvailableBuilder
with more edge conditions. (#263) - Fix potential "No elements" error with thumbnails.
- Improve image type determined when resolving image data. This mostly resolved the occasional HEIC loading issue when apps are running under the release mode.
- Support for Flutter 2.8.0, also drop supports for Flutter below 2.8.0.
- Improve audio item layout.
- Improve workflows.
- Indicate the path getter more precisely.
- Improve Arabic text delegate.
- Pass through
selectPredicate
toAssetPickerViewer
. (#211) - Bump the
sdk
constraints (since 6.2.1).
- Use
.contentUri
for video preview only on Android.
- Migrate to
extended_image
5.x. - Use
.contentUri
constructor forVideoPlayerController
.
- Introduce
shouldRevertGrid
to determine whether the assets grid should be reverted. - Upgrade
photo_manager
to resolve issues againstAssetEntity
s comparison.
- Fix the limited resources refresh issue.
- Update callers to avoid deprecated usage.
- Handle iCloud video more gracefully.
- Introduce
selectPredicate
to predicate asset when picking.
- Use the correct index reference with
selectedBackdrop
. (#195)
- Upgrade dependencies.
- Add French language text delegate. (Thanks to @didiosn)
- Export "Nothing here." as a field to text delegate. (#190)
- Fix selected backdrop not synced all the time.
- Improve the instructions for the example.
- Fix path entity nullable issues with the asset grid.
- Fix assets displaying conditions missing with the iOS layout.
- Expose
shouldReversePreview
forAssetPickerViewerBuilderDelegate
.
- Improve total count calculation with
AssetPathEntity
. (#187) - Obtain
AssetPathEntity.isAll
fix fromphoto_manager
. - Documents update.
- Sync all UI details from WeChat 8.0.x.
- Integrate iCloud progress overview in previews.
- Change the permission from the app settings when it's limited.
- Request more assets on iOS when the permission is limited.
- Fit the assets' grid's layout as the iOS
Photos
app (reverted and started from the bottom). - Add Arabic language text delegate.
- Allow using
AssetPicker
andAssetPickerViewer
directly with delegates. - Add
keepScrollOffset
feature for theAssetPickerBuilderDelegate
.
- Items that are being banned from select (reached max assets or type conflict) will have a stronger color cover to indicate.
- The video preview in the [SpecialPickerType.wechatMoment] is completely different from other previews.
- Grid items have removed the fade builder for more straight feedback after it gets loaded.
- Better interaction when jumping between previewing assets.
- Path entities list layout structure performance & structure improved.
- More precise thumbnail option for iOS.
- Improve text scale handling. (#177)
- Reduce font size for a couple of texts.
To know more about breaking changes, see Migration Guide.
- Fix the viewer's select button issue with WeChat Moment on Android.
- Make
switchPath
method inAssetPickerProvider
async.
- Add Japanese language text delegate. (Thanks to @KosukeSaigusa)
- Fix video judge condition with WeChat Moment mode.
- Fix the wrong position for the confirm button on iOS with WeChat Moment mode.
- Migrate permissions check to the new API in
photo_manager
.
- Fix assets reduced under the WeChat Moment mode when previewing.
- Fix static analysis issue.
- Use
SystemUiOverlayStyle
from the provided theme first.
- Add German language text delegate. (Thanks to @Letalus)
- Add Russian language text delegate. (Thanks to @greymag)
- Implement
RenderToggleable
to support other channels of flutter (2.1.x - 2.3.x). (Thanks to @Letalus)
- Add
findChildIndexBuilder
to indicate grid find reusableRenderObject
. - Fix the padding issue for the assets' grid.
- Fix the missing
ScrollController
in the scroll view.
- Split
AssetGridItemBuidler
to solve the rebuild issue. - Fix the GIF indicator stretched issue.
- Export
AssetPickerPageRoute
.
- Fix the format that pub.dev suggests.
- Fully support RTL languages.
- Add control for root navigator.
- Improve
AssetEntityImageProvider
's constructor and decode. - Grab the iOS/macOS thumbnail's size fix from
photo_manager
.
- Add
gridThumbSize
to control thumbnails in the select grid. - Applies a further fix to the WeChat Moment video preview.
- Fix unlimited assets choose in preview mode.
- Fix the WeChat Moment preview issue.
- Add
SpecialPickerType.noPreview
to disable the preview when picking. (Thanks to @yanivshaked)
- Add Hebrew language text delegate. (Thanks to @yanivshaked)
- Fix the slide page route issue when integrated with the
get
package.
- Fix not synced issue when the picker is under single pick mode.
- Fix selected assets not syncing between thumbnail preview mode and grid view.
- Fix the wrong index displays in thumbnail preview mode.
- Dependencies upgrade roll.
- Integrate
lastModified
to sort path entities by default.
- Reset to the top for the asset grid view after switching paths.
- Add the ability to select assets in any position of the picker.
- Implement mime type for image type judgment.
- Fix the disappeared GIFs indicator.
- Fix force cast null type issue with WeChat moment special pick type.
- Improve the app bar's type definition.
- Fix path thumb data's display issue.
- Fix the default preview thumb size issue with the image preview builder.
- Remove required annotation for selected assets.
- Fix the wrong viewer provider state.
- Enhance page stream controller sink close.
- Fix
dartdoc
generate issue for pub.
- Fix the video indicator layout issue.
- Prevent video selection in WeChat moment mode for edge cases.
- Pickup fixes from
photo_manager
.
- Add the ability to show the special item when the device has no assets.
- Allow users to build their own picker with custom asset types. (See example for custom delegate.)
- Slightly reduce performance consumption with layout.
- Migrate to non-nullable by default.
CustomItemBuilder
->SpecialItemBuilder
,CustomItemPosition
->SpecialItemPosition
.- Abstract
AssetPickerBuilderDelegate<A, P>
,AssetPickerViewerBuilderDelegate<A, P>
,AssetPickerProvider<A, P>
, and minify theAssetPickerViewerProvider<A>
. Support custom types by generic type. - The
assets
param inAssetPickerViewer.pushToViewer
is nowpreviewAssets
.
- Suppress deprecated usage for example.
- Improve code format with dart format.
- Raise the dependencies version.
- Fix arguments judging condition with preview thumb size.
- Remove common exports and split out constants.
- Add
previewThumbSize
for the viewer.
- Upgrade
extended_image
.
- Make widgets constant.
- Remove system UI overlays update.
- Migrate files to compatible with Flutter
1.20.0
. - Sync analysis options.
- Ignore size constraints for image assets.
- Format code using
dartfmt
. - Upgrade
photo_manager
.
- Adjust AppleOS layout.
- Add a backdrop widget in the picker, which makes the picker more like the one in WeChat.
- Drop
asset_audio_player
. - Experimenting status bar hidden on iOS.
- Remove the video player listener before pausing.
TextDelegate
->AssetsPickerTextDelegate
.
- Constraint dependencies version.
- Add
FilterOptionGroup
. (#41) - Add
SpecialPickerType
. (#37) - Add custom item build mode. (#39)
- Introduce
ColorScheme
for theme details. (#32) - Enhance RTL compatibility.
- Enlarge select indicator's size. (#33)
- Remove path entity properties refresh.
- Fix the preview widget for audio assets in the picker viewer.
- A brand-new example.
- Add
SortPathDelegate
. - Using
ZoomPageTransition
for viewers. - Slightly add padding to the viewer's assets list view.
- Migrate elevation and color to material rendering.
- Request thumb only when the request type is not audio.
- Force request title for audio type asset.
- Expose
AssetType
enum. - Fix the issue with the request type.
- Add present English text delegate.
- Refactored theme constructor and getter with theme capability. (#22)
- Update color scheme usage for the assets grid. (#23)
- Update picker viewer style for Apple OS.
- Fix the bottom bar disappearing on Apple OS when it's single asset mode.
- Fix audio paused accidentally when the app is launching on Android. (#18)
- Expose observe register methods.
- Support audio assets.
- Support single asset mode.
- Enlarge the preview button's detector area size.
- Fix wrong properties' usage causing infinite build when the page reaches the end.
videoIndicatorBuilder
->durationIndicatorBuilder
.
- Hide detail display when the video starts to play.
- Switch to
ExtendedImageGesturePageView
. (#16) - Add full theme support.
- Add macOS support.
- Add delay for the first init method to prevent stuck in page routing. (#13)
- Update widgets style on iOS. (#14)
- Fix the state of the example not updated after the result was returned without the input method activated.
- Support HEIC/HEIF image type.
- Upgrade
photo_manager
to0.5.1
. - Replace deprecate
TextTheme.title
API usage. - Document (
dartdoc
) update.
- Bumping flutter SDK minimum version to
1.17.0
. - Declare API stability and compatibility with 1.0.0 ( more details at: https://github.com/flutter/flutter/wiki/Package-migration-to-1.0.0 ).
- Remove the loading indicator for the image widget.
- Refactor the video page's initialization for ratio update.
- Using constants to store text delegate.
- Add error catching for main methods.
- Update text delegate management.
- Fix call on null with
currentlySelectedAssets
.
- Support paging assets load.
- Fix selected assets not synced with the picker provider.
- Bump
photo_manager
to0.5.1-dev.5
- Expose page transition curve and duration to a static method.
- Fix theme color not passed to a static method.
- Fix the
pageBuilder
null issue.
- Add upwards slide page transition.
- Add padding to the bottom action bar in the picker.
- Add iOS style.
- Add cancel field to text delegate.
Set
->List
.
- Fix the missing aspect ratio for the video player.
- Using common request type in example.
- Add text delegate support. (Also with i18n support using delegate).
- Support video assets. You can use
requestType
to select video or video+image. - Hide system ui overlays according to flag and system.
- Update the GIF indicator and add a video indicator.
- Initial release.