Skip to content

v0.15.0

Choose a tag to compare

@kalink0 kalink0 released this 25 Jul 17:21
eaf9528

Feature release adding full-page PDF rendering with revision-history diffing, alongside schema-based Protobuf decoding in the Blob Inspector.

New Features

  • PDF viewer renders pages, not just text — double-clicking a PDF now shows a Pages tab with page-by-page rendering (via pypdfium2) and navigation/zoom (also via Ctrl+scroll wheel, same as the Image viewer), alongside the existing extracted-text Text tab. Password-protected PDFs are supported via Open as → PDF (Encrypted)….
  • PDF: extended metadata, attachments, and revision history — Properties panel gains PDF version, XMP metadata, and always-shown JavaScript/Signatures/Attachments/Revisions fields; embedded files get their own Attachments tab. PDFs saved multiple times get a History tab exposing every revision, with Text Diff and Visual Diff (pixel-level page comparison) between any two revisions.
  • Blob Inspector: schema-based Protobuf decode — selecting Protobuf (schema-less) now reveals a Load .proto schema… toolbar; loading a .proto/.pb/.desc/.fds file and picking a message type decodes the blob with real field names, using the same schema loader the standalone Protobuf Viewer already had.

Improvements

  • Properties panel shows the original iTunes backup file ID — the raw fileID-named path (e.g. ab/ab54f7c9...e1) is now shown alongside the resolved domain/relativePath, for files. Addresses #41.

Bug Fixes

  • Rainbow/'Merica theme: flicker and dialog clicks not registering — the checkbox-contrast fix's stylesheet refresh was re-applied on every animation tick, forcing a full UI re-polish. Now static-themes-only; Rainbow/'Merica just animate the palette.
  • Protobuf Viewer's schema-based decode was broken on current protobuf versionsMessageFactory.GetPrototype was removed in protobuf 6.x and including_default_value_fields was renamed to always_print_fields_with_no_presence; both call sites now use the current API.
  • Opening a moved/deleted file from Open Recent showed "Unsupported source type" — now raises a clear "File no longer exists" error instead of falling through to a generic one.