void onDoneSelectImages(List<Image> selectedImages) { if (selectedImages != null && selectedImages.size() > 0) { /* Scan selected images which not existed */ for (int i = 0; i < selectedImages.size(); i++) { Image image = selectedImages.get(i); File file = new File(image.getPath()); if (!file.exists()) { selectedImages.remove(i); i--; } } getView().finishPickImages(selectedImages); } }
@Override public void onImageLoaded(final List<Image> images, final List<Folder> folders) { runOnUiIfAvailable(() -> { getView().showFetchCompleted(images, folders); final boolean isEmpty = folders != null ? folders.isEmpty() : images.isEmpty(); if (isEmpty) { getView().showEmpty(); } else { getView().showLoading(false); } }); }
@Override public void onFailed(final Throwable throwable) { runOnUiIfAvailable(() -> getView().showError(throwable)); } });
void finishCaptureImage(Context context, Intent data, final BaseConfig config) { getCameraModule().getImage(context, data, images -> { if (ConfigUtils.shouldReturn(config, true)) { getView().finishPickImages(images); } else { getView().showCapturedImage(); } }); }
void loadImages(ImagePickerConfig config) { if (!isViewAttached()) return; boolean isFolder = config.isFolderMode(); boolean includeVideo = config.isIncludeVideo(); ArrayList<File> excludedImages = config.getExcludedImages(); runOnUiIfAvailable(() -> getView().showLoading(true)); imageLoader.loadDeviceImages(isFolder, includeVideo, excludedImages, new ImageLoaderListener() { @Override public void onImageLoaded(final List<Image> images, final List<Folder> folders) { runOnUiIfAvailable(() -> { getView().showFetchCompleted(images, folders); final boolean isEmpty = folders != null ? folders.isEmpty() : images.isEmpty(); if (isEmpty) { getView().showEmpty(); } else { getView().showLoading(false); } }); } @Override public void onFailed(final Throwable throwable) { runOnUiIfAvailable(() -> getView().showError(throwable)); } }); }