Skip to content

v1.2.3: Reader UX polish — Fit Page, Ctrl+Wheel zoom, clearer zoom controls#62

Merged
sparshsam merged 1 commit into
mainfrom
release/v1.2.3
Jun 21, 2026
Merged

v1.2.3: Reader UX polish — Fit Page, Ctrl+Wheel zoom, clearer zoom controls#62
sparshsam merged 1 commit into
mainfrom
release/v1.2.3

Conversation

@sparshsam

Copy link
Copy Markdown
Owner

Summary

Focused reader UX polish release for OpenReader v1.2.3.

Changes

  1. Default Fit Page on open — All PDF open paths (normal open, recent files, session restore, new tab) now start with the page fitting cleanly inside the viewport. Uses both width and height constraints for true Fit Page behavior.

  2. Ctrl+Mouse Wheel zoom — Scroll up with Ctrl held to zoom in, scroll down to zoom out. Page scrolling is suppressed while Ctrl is held.

  3. Clearer zoom controls — Replaced the unicode minus sign button with a standard - label. Buttons now read - / + / Fit with improved tooltips.

  4. Toolbar spacing fix — Increased spacing between page controls, zoom group, and copy/search controls from 4px to 6px for a cleaner layout in both light and dark themes.

  5. Version bump — App → 1.2.3, MSIX → 1.2.3.0.

  6. Tests added — Regression coverage for zoom constants, button labels, Ctrl+Wheel wiring, fit-to-page logic, and toolbar tooltips (37/38 pass; the 1 failure is a pre-existing README text change).

  7. Changelog — Added v1.2.3 entry with full release notes.

Files changed

File Changes
main.py Version bump, zoom button labels, toolbar spacing, Ctrl+Wheel event filter, Fit Page _effective_zoom
CHANGELOG.md v1.2.3 entry
packaging/msix/AppxManifest.xml MSIX version 1.2.3.0
packaging/msix/AppInstaller.xml MSIX version 1.2.3.0
tests/test_reliability.py Zoom/fit regression tests

Acceptance criteria

  • Opening a PDF always starts in Fit view
  • Zoom buttons visibly show -, +, and Fit
  • Ctrl+Mouse Wheel zoom works
  • Toolbar looks clean in light and dark mode
  • App packages successfully as MSIX 1.2.3.0
  • No Store/MSIX identity fields changed
  • No self-updater behavior added

Store release notes

OpenReader v1.2.3 improves the core reading experience with better default fit-to-page opening, clearer universal zoom controls, Ctrl + mouse wheel zoom support, and a cleaner toolbar layout in both light and dark mode.

🤖 Generated with Claude Code

…ntrols

- **Fit Page on open:** _effective_zoom now considers both width and
  height constraints so every PDF opens with the first page fitting
  cleanly inside the document viewport. Applies to normal open, recent
  files, session restore, and new tabs.
- **Ctrl+Mouse Wheel zoom:** Added wheelEvent handler on the scroll
  area viewport. Ctrl+Wheel Up zooms in, Ctrl+Wheel Down zooms out.
  Wheel scrolling is suppressed while Ctrl is held.
- **Clearer zoom buttons:** Replaced unicode minus (\u2212) with a
  standard '-' label. Buttons are now - / + / Fit with slightly wider
  fixed widths (32/32/44) and improved tooltips mentioning mouse wheel.
- **Toolbar spacing:** Increased spacing between page controls, zoom
  group, and copy/search from 4px → 6px for a cleaner, less cramped
  layout in both light and dark themes.
- **Version bump:** __version__ → 1.2.3, MSIX → 1.2.3.0.
- **Tests:** Added regression coverage for zoom constants, button
  labels, Ctrl+Wheel wiring, effective-zoom logic, and toolbar tooltips.
- **Changelog:** Added v1.2.3 entry.

Co-Authored-By: Claude <noreply@anthropic.com>
@sparshsam sparshsam merged commit fc2ecd2 into main Jun 21, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant