🚀 Features
Redesigned document detail screen
The document detail screen has been completely redesigned with clearer metadata
and sheet-based editing for tags, correspondent, document type, storage path,
dates, ASN, custom fields, and owner — including attribute suggestions. The PDF
now pages horizontally with a page indicator, and the full-screen preview adds
in-document search and smoother scrolling. You can delete documents directly
from the detail screen, see how many notes a document has, and include the
original file when sharing. Opening a document from the list is faster thanks to
thumbnail preloading.
Multi-column iPad layout
The document list and detail screen now use a full multi-column layout on iPad,
making much better use of the larger screen. 🚀
I'll likely revisit this in the future to give it some further refinement!
Nested tags
The app now supports Paperless-ngx nested (hierarchical) tags.
✨ Other Features
- Quick add: when searching in the tag, correspondent, or document type picker,
an "Add '<name>'" row appears so you can create the entry on the fly - Show the server's configured app title (
PAPERLESS_APP_TITLE) as a friendly
name in the server picker and connection settings - Deep links can now open a specific document field for editing, e.g.
x-paperless://v1/document/123?edit=tags - Document cells in the list now show the number of notes a document has
- Add a loading indicator to the search bar while results are loading
- Renamed "Log out" to "Disconnect" in the connection management UI to better
reflect what the action does - Improve UI responsiveness by decoding large responses off the main thread
- Ready for saved view permissions in the upcoming Paperless-ngx v3
- Add support for the new task API endpoint coming in Paperless-ngx v3.0.0 / APIv10
🐛 Bug Fixes
- Surface the actual OAuth2 error (e.g.
invalid_client) from the identity
provider during OIDC login instead of the cryptic "data couldn't be read
because it's missing" message - Fix OIDC login failing with a "missing scope" error on HTTPS servers behind a
reverse proxy by sending a Referer header that satisfies Django's CSRF checks - Fix client-certificate (mTLS) login by including the leaf certificate in the
credential - Fix a freeze when polling tasks on installations with many unacknowledged
tasks; the task list now loads additional pages on demand - Fix the task view briefly showing "no elements" while still loading
- Fix filter rule count not taking sorting into account
- Hide the remove-inbox-tag action for documents that don't have inbox tags