diff options
author | Stefan Niedermann <info@niedermann.it> | 2020-11-04 21:16:05 +0300 |
---|---|---|
committer | Stefan Niedermann <info@niedermann.it> | 2020-11-04 21:16:05 +0300 |
commit | 04ea09166b3bc39583ec473dcdf6692411aaede2 (patch) | |
tree | f4e20f66756642b798033bed9a8a3ab821e8f8db /app/src/main/java/it/niedermann/nextcloud/deck/ui | |
parent | c342f24a1eabef7a0fb3561794f42124666364fa (diff) |
Javadoc
Signed-off-by: Stefan Niedermann <info@niedermann.it>
Diffstat (limited to 'app/src/main/java/it/niedermann/nextcloud/deck/ui')
2 files changed, 18 insertions, 14 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/picker/AbstractPickerAdapter.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/picker/AbstractPickerAdapter.java index 483f546bf..c3cb21f6d 100644 --- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/picker/AbstractPickerAdapter.java +++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/picker/AbstractPickerAdapter.java @@ -40,7 +40,8 @@ public abstract class AbstractPickerAdapter<T extends RecyclerView.ViewHolder> e protected final ContentResolver contentResolver; /** - * Should be used to bind heavy operations like when dealing with {@link Bitmap} + * Should be used to bind heavy operations like when dealing with {@link Bitmap}. + * This must only be one {@link Thread} because otherwise the cursor might change while fetching data from it. */ @NonNull protected final ExecutorService bindExecutor = Executors.newFixedThreadPool(1); diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/picker/GalleryPhotoPreviewItemViewHolder.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/picker/GalleryPhotoPreviewItemViewHolder.java index e77503d02..0652a8a5e 100644 --- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/picker/GalleryPhotoPreviewItemViewHolder.java +++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/attachments/picker/GalleryPhotoPreviewItemViewHolder.java @@ -11,6 +11,7 @@ import com.google.common.util.concurrent.ListenableFuture; import java.util.concurrent.ExecutionException; +import it.niedermann.nextcloud.deck.BuildConfig; import it.niedermann.nextcloud.deck.DeckLog; import it.niedermann.nextcloud.deck.databinding.ItemPhotoPreviewBinding; @@ -27,19 +28,21 @@ public class GalleryPhotoPreviewItemViewHolder extends RecyclerView.ViewHolder { } public void bind(@NonNull Runnable openNativePicker, @NonNull LifecycleOwner lifecycleOwner) { - itemView.setOnClickListener((v) -> openNativePicker.run()); - ListenableFuture<ProcessCameraProvider> cameraProviderFuture = ProcessCameraProvider.getInstance(itemView.getContext()); - cameraProviderFuture.addListener(() -> { - try { - unbind(); - cameraProvider = cameraProviderFuture.get(); - Preview previewUseCase = new Preview.Builder().build(); - previewUseCase.setSurfaceProvider(binding.preview.getSurfaceProvider()); - cameraProvider.bindToLifecycle(lifecycleOwner, DEFAULT_BACK_CAMERA, previewUseCase); - } catch (ExecutionException | InterruptedException e) { - DeckLog.logError(e); - } - }, ContextCompat.getMainExecutor(itemView.getContext())); + if(!BuildConfig.DEBUG) { + itemView.setOnClickListener((v) -> openNativePicker.run()); + ListenableFuture<ProcessCameraProvider> cameraProviderFuture = ProcessCameraProvider.getInstance(itemView.getContext()); + cameraProviderFuture.addListener(() -> { + try { + unbind(); + cameraProvider = cameraProviderFuture.get(); + Preview previewUseCase = new Preview.Builder().build(); + previewUseCase.setSurfaceProvider(binding.preview.getSurfaceProvider()); + cameraProvider.bindToLifecycle(lifecycleOwner, DEFAULT_BACK_CAMERA, previewUseCase); + } catch (ExecutionException | InterruptedException e) { + DeckLog.logError(e); + } + }, ContextCompat.getMainExecutor(itemView.getContext())); + } } |