# FluidCore v1.0.1 — Bug Fixes & Stability Release
FluidCore v1.0.1 — Bug Fixes & Stability Release
FluidCore is an offline-first, high-performance fluid document synthesis platform built with C++20, Cairo, and GTK3. This release resolves coordinate-space mapping issues during excerpt cropping, stabilizes cursor-anchored focal zoom, adds bi-directional card navigation, and updates official distribution packages for Windows and Linux.
🚀 Key Highlights & Fixes
1. Authoritative Annotation Capture on Excerpt Crops
- Fixed Missing Annotations on Arbitrary Page Sizes: Fixed an issue where pen and highlighter annotations rendered on non-standard PDF page geometries (e.g. 459×666 vs. standard 612×792) failed bounding-box intersection tests during cropping.
-
Normalized Spatial Contract (
$[0.0 \dots 1.0]$ ):ExcerptTileCachenow strictly operates on normalized crop coordinates. Guessing or falling back to default page sizes has been eliminated. -
Authoritative Geometry Querying:
DocumentPanequeries the actual vector page dimensions (getPageDimensions()) and uses a strict 4-tier document ID match to eliminate cross-document annotation leakage.
2. Focal Zoom Invariance (ViewportZoomAnchor)
- Cursor-Anchored Zooming: Introduced
ViewportZoomAnchor, a dedicated mathematical solver that preserves the exact document point under the mouse cursor or viewport center during zoom transitions. - Deep Document Navigation: Eliminated visual jumps and drift when zooming in deep documents (e.g., page 87+).
- Invariance Test Suite: Verified via
ViewportZoomAnchorTest, covering zoom-in, zoom-out, centered toolbar zoom, and scroll boundary clamping.
3. Enhanced Card Navigation & Anchor Return
- Interactive Return Anchor: Added a clickable left-edge anchor pill (
◀) on excerpt cards. Clicking the pill jumps the document reader back to the exact source page and excerpt location. - Refined Hit-Testing: Updated card selection and bounding-box hit testing in
CardLayoutEnginefor smooth dragging and resizing.
📦 Downloads & Official Distribution Assets
| Platform | Format | Asset Name | Description |
|---|---|---|---|
| Windows | Native Installer | FluidCore-Setup-x64.exe |
Recommended for Windows. Inno Setup 64-bit installer with Start Menu integration, desktop shortcut, uninstaller, and .ltproj file associations. |
| Windows | Portable Zip | fluidcore-windows-x64.zip |
Standalone portable archive with bundled UCRT64 runtime DLLs, GLib schemas, GDK-Pixbuf loaders, and Adwaita icons. Run without admin privileges. |
| Linux | AppImage Bundle | FluidCore-1.0.1-x86_64.AppImage |
Recommended for Linux. Standalone portable executable with bundled dependencies, desktop integration, and Wayland/X11 support. (chmod +x && ./FluidCore-1.0.1-x86_64.AppImage) |
| Linux | Debian Package | fluidcore_1.0.1_amd64.deb |
Native Debian/Ubuntu package with system dependency management and FreeDesktop menu integration. (sudo apt install ./fluidcore_1.0.1_amd64.deb) |
| Linux | Flatpak Manifest | ops/flatpak/org.fluidcore.platform.yml |
Sandboxed distribution manifest for Flathub with zero-network isolation (--unshare=network). |
⚡ Verification & Invariants
- Unit & Integration Tests: 37/37 test suites passing (100%) on Windows (MSYS2 UCRT64) and Linux (Ubuntu 24.04).
- Scalability: Cold load duration 0.02s across 50 PDFs (5,000 vector pages) with bounded peak working set (62.6 MB vs. 1.2 GB budget).
- Code Quality: Formatted according to repository
.clang-formatrules.
Full Changelog: v1.0.0...v1.0.1
Full Changelog: v1.0.0...v1.0.1