Skip to content

Releases: afreakyelf/Pdf-Viewer

v2.4.0

16 Mar 05:37

Choose a tag to compare

Cache strategy alignment and regression coverage

This release aligns the three cache strategies with their intended behavior and adds regression coverage around caching, rendering, and embedded-view lifecycle cleanup.

What changed

  • MAXIMIZE_PERFORMANCE now clearly behaves as the high-retention mode:
    • reuses downloaded remote PDFs
    • keeps page bitmaps in memory and on disk
    • keeps prefetch enabled
  • MINIMIZE_CACHE now behaves as a reduced-storage mode:
    • reuses the current remote PDF
    • keeps page bitmaps in memory only
    • disables disk page-bitmap caching
    • retains only one document cache on disk
  • DISABLE_CACHE now behaves as a transient mode:
    • does not reuse persistent remote files
    • disables disk page-bitmap caching
    • disables prefetch
    • still keeps visible rendering correct

Bug fixes included

  • Fixed incorrect remote cache retention and reuse behavior across cache strategies.
  • Fixed DISABLE_CACHE so transient remote sessions no longer interfere with or delete persistent cache from other strategies.
  • Fixed embedded PdfRendererView.initWithUrl(...) cleanup so transient remote files are cleaned up on lifecycle destroy, not only in PdfViewerActivity.
  • Fixed stale disk page-bitmap artifacts when reopening the same document under a stricter cache strategy.
  • Hardened render job and callback bookkeeping in PdfRendererCore with minSdk-21-safe logic.

Testing and regression coverage

  • Added a dedicated internal CachePolicy layer to centralize strategy behavior.
  • Added unit tests covering:
    • cache policy mapping
    • document retention rules
    • transient cleanup behavior
  • Added hermetic instrumentation coverage for:
    • local PDF behavior under all three strategies
    • remote PDF reuse vs non-reuse
    • embedded PdfRendererView lifecycle cleanup
    • strategy downgrade behavior for stale disk bitmap cache
  • Added a debug-only embedded host activity used to verify PdfRendererView cleanup outside PdfViewerActivity.

Compatibility

  • No public API breaking changes.
  • Existing CacheStrategy APIs remain the same; behavior is now more consistent and predictable.

v2.3.8 | Bug fixes

15 Mar 20:49
a11d392

Choose a tag to compare

What's Changed

  • Create notify-resolved.yml by @afreakyelf in #209
  • Updated Jetpack Compose sample in Readme by @muazdev26 in #211
  • fix: reset page height to WRAP_CONTENT on ViewHolder rebind by @hrithikvish in #242
  • Fix: Use deprecated getParcelableExtra on API 33 to prevent NPE (#244) by @AntoineJaury in #245
  • feat: expose zoom methods and add Compose example with FABs by @HoussemHfaidh in #246
  • Fix NoClassDefFoundError for lifecycle-process Kotlin anonymous classes in Java consumer apps by @Copilot in #248
  • Fix cache key collision for same-named PDFs in different directories by @Copilot in #249
  • Fix PDF quality degradation on zoom by @Copilot in #247
  • Add scrollToNextPage() / scrollToPreviousPage() for within-page scroll-before-advance navigation by @Copilot in #250

New Contributors

Full Changelog: v2.3.7...v2.3.8

v2.3.7

25 May 21:52

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v2.3.6...v2.3.7

v2.3.6

12 May 07:12

Choose a tag to compare

Revert breaking Zooming issue #194 (7178e1d)

Full Changelog: v2.3.5...v2.3.6

v2.3.5

11 May 22:56

Choose a tag to compare

Note:

Please use this: https://github.com/afreakyelf/Pdf-Viewer/releases/tag/v2.3.6


What's Changed

New Contributors

Full Changelog: v2.3.4...v2.3.5

v2.3.4

19 Apr 22:56
83b4b33

Choose a tag to compare

What's Changed

  • handle file can not be opened because of pdf contains password by @elharies in #130
  • adjust Composable function signature to make source mandatory by @wiryadev in #135
  • Fixed strict policy violations #171
  • #191
  • #189

New Contributors

Full Changelog: v2.3.3...master

v2.3.3

14 Apr 05:46

Choose a tag to compare

What's Changed

  • fix: ensure PdfRendererView always releases resources via onDetachedFromWindow by @Blejator90 in #188
  • updated README.md by adding min/complie sdk versions description by @khyzhun in #185

New Contributors

Full Changelog: v2.3.2...v2.3.3

v2.3.2

25 Mar 06:16

Choose a tag to compare

What's Changed

  • Complete the fix for #180 issue by updating the checks for the Android version by @lcazalbasu in #183
  • Fixed scroll bar jumping, Thanks @UltraDeep for pointing out the issue.
  • Made some changes to zoomin/out recycler view, hopefully it works out well for everyone.

Thank you all!

New Contributors

Full Changelog: v2.3.0...v2.3.2

v2.3.0

24 Mar 06:02

Choose a tag to compare

v2.2.2

17 Mar 00:37

Choose a tag to compare