Skip to content
This repository has been archived by the owner on Jul 29, 2022. It is now read-only.

2.0.0-alpha.2

Pre-release
Pre-release
Compare
Choose a tag to compare
@mickael-menu mickael-menu released this 29 Oct 09:38
· 79 commits to develop since this release
f47ed99

Take a look at the migration guide

Added

  • Support for the new Publication model using the Content Protection for DRM rights and the Fetcher for resource access.
  • (Experimental) New Fragment implementations as an alternative to the legacy Activity ones (contributed by @johanpoirier).
    • The fragments are chromeless, to let you customize the reading UX.
    • To create the fragments use the matching factory such as EpubNavigatorFragment.createFactory(), as showcased in R2EpubActivity.
    • At the moment, highlights and TTS are not yet supported in the new EPUB navigator Fragment.
    • This is now the recommended way to integrate Readium in your applications.

Changed

  • currentLocator is now a StateFlow instead of LiveData, to better support chromeless navigators such as an audiobook navigator.
    • If you were observing currentLocator in a UI context, you can continue to do so with currentLocator.asLiveData().
  • Improvements to the PDF navigator:
    • The navigator doesn't require PDF publications to be served from an HTTP server anymore. A side effect is that the navigator is now able to open larger PDF files.
    • PdfNavigatorFragment.Listener::onResourceLoadFailed() can be used to report fatal errors to the user, such as when trying to open a PDF document that is too large for the available memory.
    • A dedicated PdfNavigatorFragment.createFactory() was added, which deprecates the use of NavigatorFragmentFactory.

Fixed

  • Prevent switching to the next resource by mistake when scrolling through an EPUB resource in scroll mode.