PDF import + multiple barcode support #1795
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #496 and fixes #1449
TODO:
Note: Android documentation for PdfRenderer states:
It is unclear what exactly "minimal permissions" means. In Catima's case, the only permission the app will have is camera access, no internet access. It seems like it would be an improvement to further move this all to a Service with
android:isolatedProcess
set (see Service), but I'm not quite sure if that is a big enough priority to delay this functionality for especially as that may take a lot of time as I've never worked with Android services before.With regards to long-running: I understand this is an issue, especially with networked files (see also #513) but from my testing on my (by now aging) Fairphone 3 even throwing multi-MB PDF files at Catima takes a few seconds at most, so this may be okay to delay to get the functionality out to users.
Unrelated to PDF support, the multi barcode picker currently looks like this, it should probably contain preview images or something to make it easier for users to know what to pick, but I feel that can probably wait for another task as not many users supply files with multiple barcodes: