Releases: hadoooooouken/qimgv-plus
Releases · hadoooooouken/qimgv-plus
qimgv-plus v3.1.0
Release Notes: Version 3.1.0
✨ New Features & Settings
- Settings / General:
- Standby Mode: Added an option with a dedicated checkbox toggle to "Enable standby mode on close" instead of completely exiting, which allows the application to keep the minimum amount of memory needed to instantly open images from Windows Explorer.(85791516, 16033465).
- Remember Last Folder: Added a new configuration option to automatically remember and restore the last used folder location upon application startup (d0b472a9).
🎨 UI/UX & Interactivity
- Folderview Enhancements:
- Added a button to completely exit standby mode.
- Added detailed tooltips across folderview structural elements (3fec1b19).
- Refactored the folderview context menu so it remains globally accessible on right-click, dynamically disabling actions if no active asset selection is made (a38eef1f).
- Fixed folder creation visibility, ensuring newly created directories refresh their visibility state immediately (f8008f30).
- EXIF Data Display:
- Image Scaling Layouts:
- Visual Aesthetics:
- Redesigned the close button geometry and matching header alignments for Contrast Adaptive Sharpening (CAS) and native color adjustment overlay panels (c6b0fff4).
🛠️ Codebase Modernization & Under-the-Hood
- C++26 Transition:
- Standard Library & Modern STL Practices:
- Replaced legacy
std::bindabstractions entirely with modern C++ lambdas and updated custom sorting logic to leveragestd::ranges::sort(2db90f09, 76611a51). - Wrapped legacy raw pixel operations in
scanLinewith standard bounds-safestd::spancontainers (a61d6a80). - Optimized
imagelibperformance by transitioning bicubic weight calculations toconstexprand using standardstd::numbers::pi(ed5e34b6).
- Replaced legacy
🐛 Bug Fixes & Stability
- File Tree Fixes:
- Patched a null pointer crash caused by calling the context menu action "Show in folder" while working with empty folder selections inside folderview layout grids (0f0c61e9).
qimgv-plus v3.0.0
Release Notes: Version 3.0.0
This release introduces significant performance optimizations, security hardening, user interface improvements, and a major modernization of the codebase (migrating fully to Qt6).
⚡ Performance & Multi-Threading
- AVX2 Vectorization & Parallel Processing:
- GPU Acceleration:
- Asynchronous Operations:
-
Thread & Memory Efficiency:
- Optimized thumbnailer threads with dynamic default limits (6fdef15b).
- Optimized string literal allocations in high-frequency execution paths (78990e81).
- Avoided redundant
QImage$\leftrightarrow$ QPixmapconversions inside the OpenGL viewport (cefef632, ef613172). - Cached hot settings properties to ensure thread safety and reduce access overhead (41b7db27).
- Database & File I/O Cache:
🔒 Security & System Hardening
- Path Traversal Fixes:
- Windows Shell Extension (shellex) Hardening:
- Restricted registered thumbnail formats and migrated registry entries to Current User (
HKCU) (915af1f7). - Validated LibRaw image dimensions to prevent Out-Of-Bounds (OOB) reads (ba59070f).
- Enforced file size limits on temporary files and handled write failures gracefully during stream fallbacks (50b61c86).
- Restricted registered thumbnail formats and migrated registry entries to Current User (
- Compiler Security Flags:
- Process Isolation:
- Upgraded
ScriptManagerto automatically terminate subprocesses on timeout, preventing orphan processes (31736196).
- Upgraded
🎨 UI/UX & Animations
- Fluid Animations:
- Thumbnail Panel & Logarithmic Resizing:
- Added smooth thumbnail resizing using a logarithmic slider with snapping at
256px(f97c9bd8). - Fixed lag and scrolling jumps when displaying the thumbnail panel for the first time (278a639f, a974152b).
- Added the option to automatically hide navigation buttons when the thumbnail panel is docked to the left or right (148dd43c).
- Added smooth thumbnail resizing using a logarithmic slider with snapping at
- Visual Enhancements & Customization:
- Added desktop wallpaper integration with Upscayl resizing support (86618f66, 14800646).
- Redesigned context menus and updated default themes, icons, and folder colors (06756d36, 39eb6c42, 7dc101b1, 432fbba8, e790bccd).
- Centralized theme-based semantic status colors (Pending, Processing, Success, Error) (ff36e957).
- Center save confirmation overlay horizontally (79eaf3aa).
- Interactability:
- Configured sliders to snap instantly to the cursor position on click and throttled image updates during drag (a9a6fe37).
- Added a dedicated hotkey
Shift+Nto cycle through filter scaling modes (87c93b20). - Refactored the crop overlay with support for aspect ratio resizing, diagonal flips, and inverse drags (dc58f4ec, 959f78a8).
- Folder View Navigation:
- Support selected directories in "Open only selected" action by recursively scanning them for images.
🛠️ Refactoring & Modernization
- Qt6 Migration:
- Modern C++ Practices:
- Replaced obsolete
Q_FOREACHloops with modern C++ ranged-for loops (6b207ca3). - Modernized Qt signal/slot connections to use Pointer-to-Member-Function (PMF) syntax (d7debdae, 97f32827).
- Transitioned memory management to modern smart pointers (
std::unique_ptr) and RAII resource handles (2ad3a2f9, 9170320c, 633326d7).
- Replaced obsolete
- Component Architecture:
🐛 Bug Fixes
- Windows Folder Locking:
- Fixed issues where directory renaming, moving, and deletion locked up on Windows by pausing
QFileSystemModelwatchers during operations (2830a553).
- Fixed issues where directory renaming, moving, and deletion locked up on Windows by pausing
- Rendering & Color Management:
- Misc:
- Resolved choppy cursor rendering over overlays in pseudo-fullscreen mode (1a015493).
- Fixed folder renaming when inside image-le...
qimgv-plus v2.3.2
Bug Fixes
- Fixed an issue where the thumbnail strip would sometimes fail to load when first launching the app.
qimgv-plus v2.3.1
New Features & Improvements
- File Renaming: Added a "Rename" option to the image viewer and Folder Grid context menus.
-
Directory Manager Performance: Migrated file and directory indexing in
DirectoryManagerto use hash-maps (QHash), replacing linear$O(N)$ lookup scans with$O(1)$ operations to improve performance on large directories. - UI Reload Optimizations: Optimized settings updates to bypass model and thumbnail view reloading unless layout-critical parameters are modified.
- StyleSheet Caching: Cached the main stylesheet template in memory to eliminate redundant resource file read operations.
Bug Fixes
- Folder Thumbnail Loading: Fixed an issue where folder thumbnails failed to load or got stuck in directories with multiple subfolders by correcting path normalization and task queue management in
DirectoryPresenter. - Filter Name Display: Fixed an issue where toggling or selecting the GPU CAS (Contrast Adaptive Sharpening) scaling filter displayed a generic
Filter: Configured 3message instead of its proper name (FidelityFX-CAS (GPU)).
qimgv-plus v2.3.0
New Features & Improvements
- UI-to-Code Migration: Fully migrated all dialog and overlay XML layouts (Settings, Batch Converter, Shortcut Creator, Print Dialog, etc.) into native C++ code to improve startup times, UI responsiveness, and custom theme rendering.
- LMB Rectangular Selection: Added the ability to select multiple files in the Folder Grid view by drawing a selection box using the Left Mouse Button (LMB).
- Open Only Selected: Added a new context menu option to open and view only the currently selected files, preventing other files in the folder from entering the slideshow/navigation queue.
- Folder View Floating Messages: Integrated
FloatingMessageoverlays into the Folder view to display status and error notifications directly over the grid. - Pseudo-Fullscreen Mode: Redesigned the fullscreen mode transition to use a borderless window, eliminating screen flicker when toggling fullscreen.
Bug Fixes
- Clipboard Color Adjustments: Fixed viewport image copy (
Shift+C) to correctly apply active color adjustment settings (such as exposure, contrast, brightness, temperature, tint, saturation, and hue) to the image saved in the clipboard. - Drag-and-Drop Temp File Leak: Fixed an issue where temporary files created during image editing drag-and-drop operations were not cleaned up properly from the temporary directory.
- High-DPI Scaling Adjustments: Fixed UI layouts and scaling behavior in the color adjustments panel when using 125% and 150% display scaling.
- Windows Icon Associations: Fixed filetype icon association compatibility issues on Windows.
qimgv-plus v2.2.2
New Features & Improvements
- Copy Viewport to Clipboard: Added a new
copyViewportClipboardaction (Shift+C) that copies the currently visible portion of the image to the clipboard (this can be used as an alternative way to crop the image). The shortcut is assigned automatically if not already bound. - Removed Windowed Info Bar: Removed the "show info bar in windowed mode" toggle from the Preferences dialog and underlying settings logic, simplifying the UI – The window title already contains all this information.
Bug Fixes
- BMP Green Tint: Fixed a green color cast appearing on BMP thumbnails in Windows Explorer by removing the custom thumbnail provider registration for standard formats (jpg, jpeg, png, gif, bmp, dib) that Windows already handles natively.
- Thumbnail Bar Opacity Slider: Fixed incorrect UI behavior where the theme was being reloaded on every slider tick during drag. The percentage label now updates live while dragging, and the theme is applied only once upon release.
qimgv-plus v2.2.1
Bug Fixes
- Smart sharpen filter: Fix row index mapping in Smart Sharpen upscale.
- Corrected the modulo index calculations for the sliding window row buffers.
Previously, the scrambled row mapping caused a vertical seam (visible as a
horizontal pixel shift on diagonal lines) at thread boundaries.
- Corrected the modulo index calculations for the sliding window row buffers.
qimgv-plus v2.2.0
New Features & Improvements
- Removed OpenCV Dependency: Completely removed OpenCV integration and all OpenCV-based scaling filters (Bicubic, Lanczos, Area, Bilinear+sharpen, etc.). This reduces the installation package size and memory footprint.
- Optimized & Streamlined Scaling Filters: Simplified the selection menu to a unified Smart sharpen CPU filter, alongside standard Nearest, Bilinear, and GPU-accelerated FidelityFX-CAS. Previously relying on OpenCV, Smart sharpen is now fully custom-built and natively optimized, offering faster execution and improved image quality.
- Settings & Code Cleanup: Removed redundant UI options (such as "Smooth upscaling" and "Smooth animated images") and eliminated obsolete performance workarounds (like forcing low-quality scaling on viewports larger than 1080p). The scaling code is now cleaner and runs smoothly at any viewport size without compromise.
Bug Fixes
- Settings Flickering: Fixed window/image flickering when applying changes in the Preferences dialog.
- Open With: Fixed minor issues in the "Open with" external application handler.
qimgv-plus v2.1.0
New Features & Improvements
- FidelityFX-CAS Integration – Added a new high-quality scaling and sharpening filter based on AMD's FidelityFX Contrast Adaptive Sharpening (CAS). The filter is processed entirely on the GPU via OpenGL shaders, providing excellent image clarity with zero CPU overhead.
- Interactive CAS Settings Panel – Added a new floating CAS settings overlay for real-time adjustment of sharpening and contrast parameters. Accessible via the context menu, and sliders can be quickly reset to defaults by double-clicking them.
- JPEG 2000 & HTJ2K/JPH Support – Added comprehensive support for JPEG 2000 formats (
.jp2,.j2k,.jpf,.jpx,.jpc) and the modern high-throughput HTJ2K format (.jph). This includes Shell Extension and installer integration for automatic thumbnail generation directly inside Windows Explorer. - Improved Downscaling Quality – Implemented automatic mipmap generation and trilinear filtering for OpenGL-accelerated rendering (active when using CAS or color adjustments). This completely eliminates aliasing ("staircasing" artifacts) and visual noise when zooming out.
- Toggle Filter at 100% Scale – Added a new option "Also use filter for 100% scale" under settings, allowing users to apply scaling filters (including CAS) even when viewing images at their native 1:1 resolution.
Bug Fixes
- Preserve Original Image on Save-As – Fixed an issue in the "Save As" flow where saving a copy of an edited image under a different filename or path would incorrectly replace the active document in the viewer instead of leaving the original file open.
qimgv-plus v2.0.6
New Features & Improvements
- Compare Button – Added a "Compare" button to the Color Adjustments overlay. Press and hold to temporarily view the original image, and release to restore adjustments.
- Reset Sliders via Double-Click – Double-clicking any adjustment slider (brightness, contrast, saturation, hue, exposure, temperature, tint) now resets it to its default value. Available in both the Color Adjustments overlay and the Batch Converter.
- Deferred AI Upscaling – Paused AI upscaling while actively panning or zooming to improve performance and prevent rendering lag during viewer interaction.