v0.5.1 「Lake Baikal」
New
- Sync through your own WebDAV server. The new first-party WebDAV Sync plugin turns any WebDAV host — Nextcloud, 坚果云, and friends — into a sync backend. Your library is end-to-end encrypted before it leaves the device, so the server only ever stores sealed data it cannot read. Enable the plugin, point it at your server in the plugin's settings, then connect in Settings → Data & Sync with an encryption passphrase; every device using the same server and passphrase converges — books included. Install it from the plugin marketplace.
- A new plugin capability:
sync:transport. Plugins can now provide sync backends. The app keeps encryption, the event log, cursors, and merge; a transport plugin only carries ciphertext to the remote of its choosing. WebDAV is the first tenant — S3 and friends can ride the same seam. Contract and docs: https://readaware.app/docs/plugins/api - PDFs scroll like PDFs. Scroll mode for fixed-layout books (PDF, comics) is now one continuous document: the scrollbar spans every page, jumps land anywhere instantly, and pages flow past like one long sheet instead of swapping screens. Scroll is now the default layout for these books, and their reading mode is remembered on its own axis — paging through a novel and scrolling a paper no longer fight over one setting.
- Drag and drop on the shelf. Books drag straight onto a collection tile, and while a drag is in flight a dock appears with every collection plus New collection and Remove as drop zones. Dragging a selected book carries the whole multi-selection along.
Improved
- Big PDFs open in about a second. Opening a large scanned book could take over half a minute before the first page appeared — the reader eagerly fetched the whole file in tiny chunks — and stall again on a large outline. Data supply is now demand-driven (only the bytes the visible page needs), renders are cancellable and scheduled nearest-page-first, and the outline resolves off the critical path.
- Page turns in single- and double-page modes for PDFs and comics are instant: neighboring pages prerender in the background and recently visited ones stay warm within a memory budget. Short documents stay fully rendered.
- Selecting text in a PDF no longer glitches when the drag starts slightly off the letters — the selection edge follows the pointer the way it should (ports pdf.js's two-sided selection fix into the reader).
Fixed
- Plugin network access broke in 0.5.0 — RSS feed refresh and text-to-speech synthesis failed with a permissions error that no permission could fix. Both work again.
- PDFs imported while the window was covered or on another Space ended up coverless until first opened; cover rendering no longer depends on the window being visible.
- Dragging a book inside the shelf no longer summons the drop-to-import overlay.
Full Changelog: v0.5.0...v0.5.1