Skip to content

Releases: koichiro/quick-presenter

Quick Presenter v1.4.0

Choose a tag to compare

@koichiro koichiro released this 08 Oct 02:42
7d87370

Quick Presenter v1.4.0 brings the completed presenter and renderer reliability work ahead of v1.5.0, and provides the packages used to qualify signing and the next Microsoft Store update.

Highlights

  • Isolate PDFium rendering in supervised, resource-bounded helper processes: signed sandboxed XPC on macOS, AppContainer on Windows, and Landlock/seccomp on Linux.
  • Restore native Open Recent menu updates and tighten speaker-note detection to supported annotation fingerprints.
  • Automatically fit presenter-note text within the notes area and use accessible icon navigation controls.
  • Restore slide-window placement and the last active PDF, and add the X shortcut for swapping presenter and audience displays.
  • Adapt audience rendering and cache budgets to the slide surface while preserving bounds and the last successfully rendered page.
  • Fix stale audience content when a hidden macOS slide window is shown, and improve Linux desktop icon/startup identity.
  • Include artifact-bound CycloneDX SBOM sidecars and research on speaker-note PDF compatibility. Standard PowerPoint, Keynote, and Google Slides PDF exports do not gain automatic presenter-note support.

Downloads

  • macOS: QuickPresenter-1.4.0.dmg, Developer ID signed, Apple-notarized, and stapled.
  • Ubuntu x64: quick-presenter_1.4.0_amd64.deb.
  • Windows x64: Install from Microsoft Store. The v1.4.0 Store update requires separate submission and Microsoft certification. GitHub publication does not mean that the Store-installed app has updated. Direct MSI/MSIX/executable downloads are not supported distribution channels.

Quick Presenter opens PDF slide decks. It does not edit slides or import authoring source files.

Validation

  • CI and Build Binaries passed for the tagged source 7d87370c70a3f20f697ed02eac5f25aa379e12f0 on all three platforms.
  • The final macOS DMG was Developer ID signed, Apple-notarized, stapled, and accepted by Gatekeeper. The signed XPC rendering/sandbox gate and mounted-DMG PDF smoke passed. The desktop GUI suite passed 63 checks; targeted normal-entry navigation, notes, fullscreen, native PDF selection, and hidden-slide hot-reload recovery checks also passed.
  • The exact installed Ubuntu Debian package passed 63 GUI checks under Xvfb with zero failures. Package version, final SHA-256, and SBOM identity were checked after download.
  • Final package-bound SBOM sidecars are attached. The macOS SBOM was regenerated and verified after production signing, notarization, and stapling. The Windows sidecar describes the Store submission input, not a certified Store-delivered package.
  • Local and CI dependency audits passed. The reviewed maintenance warnings for bincode and ttf-parser remain; no vulnerability failure was reported. Bundled PDFium remains chromium/8076; the pre-release review of newer chromium/8086 and the pin-retention decision are recorded in the attached release checklist.

Qualification limits and explicit waivers

This normal release is being used to qualify packages before v1.5.0. The exhaustive physical-desktop GUI checklist was not repeated on Windows or Ubuntu. Ubuntu has installed-package Xvfb evidence; Windows has CI package/AppContainer checks and a reachable public Store listing, but current Store installation/runtime was not tested in this macOS session. Those unavailable manual checks are explicitly waived for this publication and remain follow-up under #202.

macOS targeted desktop checks passed, but dual-display swapping, mixed-DPI movement, physical monitor disconnect/reconnect, every native focus/launcher path, and a fresh-user download/quarantine installation were not repeated. These checks are also explicitly waived for this package-validation release. The attached platform reports state the exact coverage; a complete manual matrix is not claimed.

Microsoft Store submission, certification, production Store signing, and installed-version confirmation occur separately after GitHub publication. Mac App Store distribution remains optional. This release does not close the v1.5.0 release tracker.

SHA-256

  • QuickPresenter-1.4.0.dmg: e0628035823d3ce6b2c149b15ece08205ffd01fb8e74a59a1c93cc367b2908d6
  • quick-presenter_1.4.0_amd64.deb: 85af0b2b42f824e6280fa5ad233fcf606e554745e7fc07ada53a49a34ddc109e
  • Store submission input QuickPresenter-1.4.0.msix: 3bbc05736cbbc8778e8336c405735b2da56118c5934f90095831185e046f45b8 (available in the Actions Store artifact; not a supported direct download).

Versioned changelog, updated through v1.4.0 in #411.

Full changelog: v1.0.1...v1.4.0

Quick Presenter v1.0.1

Choose a tag to compare

@koichiro koichiro released this 02 Oct 08:41
89dbb67

Quick Presenter v1.0.1 is an urgent patch release for macOS fullscreen presentation playback.

Highlights

  • Fix the audience slide remaining capped at 1024 x 576 after entering native macOS fullscreen.
  • Keep the existing preferred and minimum window sizes for normal windowed presentation use.
  • Add regression coverage for platform-specific audience-window sizing.

Windows and Linux were not affected by this fullscreen scaling issue.

Downloads

  • macOS: Download QuickPresenter-1.0.1.dmg. The DMG is Developer ID signed, Apple-notarized, and stapled.
  • Ubuntu x64: Download quick-presenter_1.0.1_amd64.deb.
  • Windows x64: Install from Microsoft Store. Windows is Store-only; direct MSI, MSIX, and executable files are not supported release downloads.

Quick Presenter opens PDF slide decks; it does not edit slides or import authoring source files directly. Export the final presentation to PDF before presenting.

Release validation

  • The macOS DMG was Developer ID signed, notarized, stapled, accepted by Gatekeeper, and validated in a signed-in macOS desktop session. The targeted fullscreen regression check and the 23-check GUI smoke suite passed.
  • The Ubuntu package passed the installed-package GUI smoke suite (23 checks).
  • The exhaustive Windows and Ubuntu manual GUI checklist was not repeated for this urgent macOS-only patch. Build Binaries passed on all three platforms, and issue investigation confirmed that Windows and Linux were unaffected.

SHA-256

  • QuickPresenter-1.0.1.dmg: b0b105abe28827c4e2b3442b432a288990dd92e4dbb9be0c396e2e6f523ed2c4
  • quick-presenter_1.0.1_amd64.deb: 4b8d3cc303a7051ad46fea83c97e93041b53cdcc8de16aca5571d5203c8fbcca

Full changelog: v1.0.0...v1.0.1

Quick Presenter v1.0.0

Choose a tag to compare

@koichiro koichiro released this 02 Oct 06:35
c9fcac4

Quick Presenter v1.0.0 is the first stable release of the PDF-focused desktop presentation app.

Highlights

  • Presenter and audience windows designed for dependable live PDF playback.
  • Previous, next, first, and last page navigation with synchronized previews and thumbnails.
  • Fullscreen presentation, black-screen control, speaker notes, timer, and recent-file workflows.
  • Automatic PDF reload when the source file changes, with recovery that keeps the current presentation usable.
  • Clear handling for unsupported password-protected PDFs and bounded diagnostic logs for troubleshooting.
  • Compatibility validation for PDFs exported by common authoring tools, including Marp and Beamer speaker notes.
  • Updated Slint 1.18.1 and bundled PDFium chromium/8076.

Downloads

  • macOS: Download QuickPresenter-1.0.0.dmg. The DMG is Developer ID signed, Apple-notarized, and stapled.
  • Ubuntu x64: Download quick-presenter_1.0.0_amd64.deb.
  • Windows x64: Install from Microsoft Store. Windows is Store-only; direct MSI, MSIX, and executable files are not supported release downloads. The existing Store version is 0.7.2, and the v1.0.0 Store update will be submitted and verified after this GitHub release.

Quick Presenter opens PDF slide decks; it does not edit slides or import authoring source files directly. Export the final presentation to PDF before presenting.

Release validation

  • The macOS DMG was Developer ID signed, notarized, stapled, accepted by Gatekeeper, and smoke-tested.
  • The Ubuntu package passed the installed-package GUI smoke suite (23 checks) and was installed and exercised on a real Linux machine.
  • The Microsoft Store channel is publicly available with v0.7.2. The Store package will be updated to v1.0.0 and revalidated after this GitHub release.

SHA-256

  • QuickPresenter-1.0.0.dmg: 49ab090f4aad93ef0d7d6af08397ab4a02f7c535b502be0f1225291c2034831a
  • quick-presenter_1.0.0_amd64.deb: af05bc9b1d0bc718ce20fe6adcb32a8dfd658ec8340ae40e964d00a064ee0ada

Full changelog: v0.7.1...v1.0.0

Quick Presenter v0.7.1

Choose a tag to compare

@koichiro koichiro released this 08 Jul 11:31

Quick Presenter v0.7.1

This internal release focuses on Linux packaging behavior, Linux window/menu stability, and presentation layout fixes.

Highlights

  • Improved Linux presenter/menu layout behavior.
  • Restored more predictable Linux startup window ordering.
  • Constrained the slide window to the fitted deck size.
  • Refined presenter window layout and empty next-preview spacing.
  • Normalized Debian package file modes.
  • Documented Linux PDF MIME handler policy.
  • Updated bundled PDFium to chromium/7920 and improved PDFium version metadata handling.
  • Hardened macOS release signing/notarization scripts.

macOS

  • QuickPresenter-0.7.1.dmg is signed, notarized, stapled, and validated with Gatekeeper.
  • The mounted-DMG smoke check successfully opened the bundled test PDF.

Release Validation

  • cargo fmt --check
  • cargo check
  • cargo test
  • scripts/audit_deps.sh
  • GitHub Actions CI on the release commit
  • GitHub Actions Build Binaries on tag v0.7.1

Known Internal Release Note

The quick-xml RustSec advisories tracked in #329 are accepted for this internal v0.7.1 release only. Quick Presenter does not depend on quick-xml directly; the current exposure is through Linux GUI stack transitive dependencies. The project will continue tracking upstream dependency updates in #329.

Quick Presenter 0.7.0

Choose a tag to compare

@koichiro koichiro released this 30 Jun 03:23

Quick Presenter 0.7.0 is an internal release focused on packaging readiness, Linux reliability, and presenter-facing polish before the v1.0.0 distribution work.

Highlights

  • Added a presenter slide progress indicator so the current deck position is easier to scan during a talk.
  • Made speaker notes scrolling more reliable for long notes and measured text height more accurately.
  • Added PDF input preflight checks, including clearer rejection of missing, empty, non-PDF, directory, and oversized inputs.
  • Added a slow-open status so large PDFs give presenter-facing feedback instead of appearing stalled.
  • Improved Linux desktop integration, file-dialog behavior, presenter focus recovery, app identity, menu contrast, and desktop metadata validation.
  • Preserved slide window sizing during navigation and fixed slide aspect sizing issues.
  • Added discoverable diagnostic logs and tighter recent-file permission handling.
  • Added the project website and privacy policy page used by upcoming distribution work.
  • Upgraded Slint to 1.17 and refreshed release/dependency validation, including scheduled dependency checks and optional Linux cross checks.

Downloads

  • macOS: QuickPresenter-0.7.0.dmg
  • Windows x64: QuickPresenter-0.7.0.msi
  • Ubuntu x64: quick-presenter_0.7.0_amd64.deb

Quick Presenter opens prepared PDF slide decks only. It does not edit slides or import Keynote, PowerPoint, Google Slides, Marp, or Beamer source files directly.

Validation

Quick Presenter 0.6.0

Choose a tag to compare

@koichiro koichiro released this 23 Jun 08:43

Quick Presenter 0.6.0 is an internal reliability release focused on making PDF
playback steadier during live presentation use.

Highlights

  • Improved recovery when the render worker fails. Quick Presenter now surfaces
    render worker failures more clearly and can recreate the render scheduler
    after recoverable failures.
  • Tightened render scheduling so visible slide work stays prioritized over
    lower-priority background work such as speaker note extraction.
  • Improved the thumbnail pane for larger decks by rendering thumbnails for the
    scrolled viewport.
  • Kept the current deck visible when opening a replacement PDF fails, reducing
    disruption while presenting.
  • Fixed presenter window recovery and macOS slide title bar clipping.
  • Fixed Linux startup when opening PDFs through file associations.
  • Strengthened release validation with GUI smoke checks, Linux GUI smoke
    execution in Build Binaries, dependency advisory auditing, and additional
    render recovery coverage.

Downloads

  • macOS: QuickPresenter-0.6.0.dmg
  • Windows x64: QuickPresenter-0.6.0.msi
  • Ubuntu x64: quick-presenter_0.6.0_amd64.deb

Quick Presenter opens prepared PDF slide decks only. It does not edit slides or
import Keynote, PowerPoint, Google Slides, Marp, or Beamer source files directly.

Validation

  • Local release validation passed: cargo fmt --check, cargo check,
    cargo test, dependency audit, and coverage.
  • Coverage: 91.22% line coverage.
  • macOS DMG: Developer ID signed, notarized, stapled, Gatekeeper-assessed, and
    smoke-tested from the mounted disk image.
  • Build Binaries workflow passed:
    https://github.com/koichiro/quick-presenter/actions/runs/28012439549

Quick Presenter 0.5.1

Choose a tag to compare

@koichiro koichiro released this 21 Jun 09:14

Quick Presenter 0.5.1 is an internal stability release focused on making live playback and packaged builds more predictable after 0.5.0.

What's changed

  • Improved macOS fullscreen stability, especially around slide-window boundary navigation and repeated fullscreen transitions.
  • Fixed macOS control shortcuts for slide navigation.
  • Reduced unnecessary page refreshes when navigation does not change the current slide.
  • Hid the extra Windows console window in release builds.
  • Added versioned release package names so downloaded installers and disk images are easier to identify.
  • Hardened macOS DMG packaging, signing, notarization, stapling, and mounted-DMG validation.
  • Improved packaged artifact guidance for users and maintainers.

Notes

Quick Presenter still opens PDF slide decks only. It is not a slide editor and does not import Keynote, PowerPoint, Google Slides, Marp, or Beamer source files directly. Export the final deck to PDF before presenting.

For macOS, use the signed and notarized QuickPresenter-0.5.1.dmg attached to this release.

Quick Presenter 0.5.0

Choose a tag to compare

@koichiro koichiro released this 20 Jun 16:02
cd04a42

Quick Presenter 0.5.0 is an internal release focused on playback reliability, package validation, and a much stronger rendering/runtime architecture.

This note summarizes the changes since the 0.4.0 version bump at bf3df0961e3c108ccadc42694eaf755c6187e19d. There was no v0.4.0 tag in this repository, so that merge commit is used as the comparison base.

Highlights

  • Rendering work now runs behind clearer controller and scheduler boundaries instead of being coupled tightly to the UI thread.
  • Presentation playback is more resilient when the current page render misses or fails: the audience window keeps the last good slide where possible.
  • Render caching, preload behavior, thumbnail loading, and cache budget enforcement were tightened for large or memory-heavy decks.
  • Packaged artifacts are now produced and validated for macOS, Windows x64, and Ubuntu x64 from the tagged Build Binaries workflow.
  • PDFium loading and download verification were hardened, including clean extraction documentation and checksum-oriented safeguards.

Playback and Rendering Reliability

  • Moved PDF rendering work off the UI thread and introduced explicit render worker cancellation boundaries (#162, #179).
  • Added render scheduler backpressure so stale or excessive render work is bounded instead of growing unbounded (#180).
  • Hardened render cache budget enforcement, including behavior for oversized visible pages (#182).
  • Windowed the thumbnail model for large PDFs to avoid expanding thumbnail state across an entire large document (#183).
  • Kept the audience slide on the last good rendered slide when the current render is missing or fails (#177).
  • Committed new PDF sessions only after the initial render is ready, reducing visible broken intermediate states (#160).

Internal Structure

  • Split the former large main wiring into clearer controller boundaries for app state, session flow, rendering, view sync, and window control (#163).
  • Refactored PDFium document lifetime ownership and documented the worker/threading boundary (#146, #184).
  • Improved test and coverage boundaries around rendering-heavy logic (#185).

Packaging and Release Engineering

  • Added Ubuntu .deb packaging and validation for the Linux x64 artifact (#142).
  • Added Windows MSIX layout validation and optional Windows artifact signing (#138, #141).
  • Pinned WiX Toolset to 5.0.2 for reproducible Windows package builds (#137).
  • Optimized package-related CI triggers and updated GitHub Actions for the Node 24 runtime (#136, #148).
  • Added release usage documentation and expanded packaging notes (#143, #186, #188).

PDFium and Startup Robustness

  • Hardened PDFium loading and fetch verification (#164).
  • Documented clean PDFium extraction and release-oriented PDFium fetch requirements (#186).
  • All attached artifacts bundle PDFium 151.0.7891.0.

Presenter UX and Platform Details

  • Added CLI help output for startup arguments (#166).
  • Added ergonomic first/last slide shortcuts (#145).
  • Improved macOS native window handle usage for slide window sizing and fullscreen-related behavior (#169).
  • Documented PDF authoring tool expectations and speaker-note compatibility scope (#167).
  • Hardened recent-file storage behavior and documented privacy implications (#165).

Artifacts

Use the packaged artifact for your platform:

  • macOS: Quick.Presenter.dmg
  • Windows x64: Quick.Presenter.msi
  • Ubuntu x64: quick-presenter_0.5.0_amd64.deb

Quick.Presenter.msix is attached for Windows package-layout validation. Prefer the MSI unless this release note or a tester instruction explicitly asks for MSIX validation.

Validation

Tagged build:

The tagged build passed:

  • macOS app bundle staging, DMG creation, DMG verification, and packaged smoke test.
  • Windows executable icon verification, MSI build/verification, MSIX build/verification, artifact signing/verification, and packaged smoke test.
  • Ubuntu desktop metadata verification, Debian package build/verification, and packaged smoke test.

Additional local checks on downloaded artifacts:

  • macOS DMG checksum verification passed with hdiutil verify.
  • macOS DMG was signed, notarized, stapled, and accepted by Gatekeeper with source=Notarized Developer ID.
  • Mounted macOS app bundle, qp, and bundled PDFium dylib passed codesign --verify --deep --strict.
  • macOS packaged smoke mode succeeded from both the downloaded .app and the app mounted from the DMG.
  • Smoke-open checks passed with tests/fixtures/marp-speaker-notes.pdf and docs/samples/quick-presenter-demo.pdf.
  • Ubuntu .deb metadata reports Package: quick-presenter, Version: 0.5.0, and Architecture: amd64.
  • Windows MSIX manifest reports Version="0.5.0.0" and ProcessorArchitecture="x64".
  • Windows MSI installation and basic presenter/slide-window playback were manually confirmed on a Windows machine.

SHA256

b21126a22258a713ca5f3b1f98bcb24f193e1222702cf54d0db578327285ac8a  Quick.Presenter.dmg
a46263349b660302fc2499cb749fbb84cd34d1511d85db8122c1aceb9169a934  Quick.Presenter.msi
1b7d41db2c86c1c116d6557a289d3d4829bb056f8ae4d1f5be627afe6f0c63f5  Quick.Presenter.msix
9bbac671ba6ddd055f61de5b657d86a32e27ff1866b7a0bb660139751a09ff34  quick-presenter_0.5.0_amd64.deb

Known Notes

  • macOS Quick.Presenter.dmg has been replaced with a signed, notarized, and stapled Developer ID disk image.
  • Windows MSI installation and basic presenter/slide-window playback were manually confirmed. A non-blocking Windows packaging bug where an extra black console window appears at launch is tracked in #193.
  • Ubuntu real-machine GUI installation/playback is out of scope for this internal release; CI package verification and packaged smoke tests passed for the .deb.
  • The artifact README.txt still contains older wording that says full installer or disk image packaging is out of scope. That wording is stale for 0.5.0; use the packaged artifacts listed above.

Full Change List

  • #188 Prepare 0.5.0 internal release
  • #186 Document clean PDFium extraction
  • #185 Improve render coverage boundaries
  • #184 Document PDFium worker threading boundary
  • #183 Window thumbnail model for large PDFs
  • #182 Harden render cache budget enforcement
  • #180 Add render scheduler backpressure
  • #179 Add render worker cancellation boundaries
  • #177 Keep audience slide on current render misses
  • #169 Use stable macOS window handles
  • #167 Document PDF authoring tools
  • #166 Support CLI help output
  • #165 Harden recent-file storage and privacy docs
  • #164 Harden PDFium loading and fetch verification
  • #163 Split main into controller boundaries
  • #162 Move PDF rendering work off the UI thread
  • #161 Bound render cache and lazy-load thumbnails
  • #160 Commit PDF session after initial render
  • #159 Document Codex PR labeling
  • #148 Optimize CI package build triggers
  • #146 Refactor PDFium document lifetime ownership
  • #145 Add ergonomic first and last slide shortcuts
  • #143 Document release usage and refine key help
  • #142 Add Ubuntu Debian package artifact
  • #141 Add optional Windows artifact signing
  • #140 Fix unused window title warnings
  • #138 Add unsigned Windows MSIX CI packaging
  • #137 Pin WiX Toolset to 5.0.2
  • #136 Update GitHub Actions for Node 24