AssetPickerBuilderDelegate<Asset, Path> constructor

AssetPickerBuilderDelegate<Asset, Path>({
  1. required AssetPickerProvider<Asset, Path> provider,
  2. required PermissionState initialPermission,
  3. int gridCount = 4,
  4. Color? themeColor,
  5. AssetsPickerTextDelegate? textDelegate,
  6. ThemeData? pickerTheme,
  7. SpecialItemPosition specialItemPosition = SpecialItemPosition.none,
  8. WidgetBuilder? specialItemBuilder,
  9. IndicatorBuilder? loadingIndicatorBuilder,
  10. bool allowSpecialItemWhenEmpty = false,
  11. bool keepScrollOffset = false,
  12. AssetSelectPredicate<Asset>? selectPredicate,
  13. bool? shouldRevertGrid,
})

Implementation

AssetPickerBuilderDelegate({
  required this.provider,
  required this.initialPermission,
  this.gridCount = 4,
  Color? themeColor,
  AssetsPickerTextDelegate? textDelegate,
  this.pickerTheme,
  this.specialItemPosition = SpecialItemPosition.none,
  this.specialItemBuilder,
  this.loadingIndicatorBuilder,
  this.allowSpecialItemWhenEmpty = false,
  this.keepScrollOffset = false,
  this.selectPredicate,
  this.shouldRevertGrid,
})  : assert(
        pickerTheme == null || themeColor == null,
        'Theme and theme color cannot be set at the same time.',
      ),
      themeColor =
          pickerTheme?.colorScheme.secondary ?? themeColor ?? C.themeColor {
  Constants.textDelegate = textDelegate ?? AssetsPickerTextDelegate();
  // Add the listener if [keepScrollOffset] is true.
  if (keepScrollOffset) {
    gridScrollController.addListener(keepScrollOffsetListener);
  }
}