PhotoQt v4.5

PhotoQt v4.0 - first release based on Qt6

Published: 14th of December, 2023

PhotoQt v4.0 is here! It's the biggest update to PhotoQt in its history with almost all code being updated, restructured, and/or rewritten. The code is now easier to maintain and PhotoQt is now faster than ever before. With this release PhotoQt is now also based on Qt 6.

The biggest change in this update is the switch from Qt5 to Qt6. PhotoQt now requires at least Qt 6.2 for compilation (although 6.4+ is recommended). Instead of simply ensuring the previous code compiles and runs with Qt 6, this allowed for the unique opportunity to do two things:

  1. Restructure the code: The structure of the code is from back when PhotoQt was much smaller and had a bunch of disadvantages. The new structure aims to be more resilient, easier to maintain, and better scalable going forward.
  2. Rework the code: Besides simply restructuring, every single piece of code was updated to not only work with Qt 6, but also in order to remove any old workaround from the olden days that are no longer necessary.

If you are unable to update to Qt6, the last version of PhotoQt still based on Qt5 will continue to be available in a separate branch on GitLab.

Listing all the changes in this release is not feasible, there are simply too many (there are close to 400 commits). By and large, PhotoQt should look and feel familiar. Here are some notes though:

Settings Manager:
The biggest visible change is most likely the settings manager. The old settings manager was rather cluttered and overwhelming. The new manager addresses this by grouping settings into some main categories, and for each main category further into subcategories. Each subcategory now has helpful explanations what can be done and how. Great care was taken to make sure the categorization of settings makes sense, but any feedback is appreciated, in particular if you didn't find a setting where you expected it but somewhere else.

Image Behavior:
It used to be possible to not only move the main image around as desired, but it was also possible to, e.g., move the image fully outside of the window - and it would stay there. Starting with this release, the main image always snaps back into the main view when dragged outside. It is now also possible to flick the image around, which makes for easier navigation around a zoomed in image.

Map Services:
Up to PhotoQt v.3.4, PhotoQt supported different map providers for its integrated maps. Qt was a little delayed in re-adding map support into Qt 6. Map support in PhotoQt is only available when compiling with Qt 6.4+, and so far only OpenStreetMap is a supported map provider. The latter is expected to change with more possible providers being (re-)added soon.

Get involved

Throughout this whole process, PhotoQt has been extensively tested and found to be working very well. However, there is only that much one person can do, there are likely things that slipped through the cracks. If you find anything that is not as it should be or doesn't do what it should do, or if there is anything you don't like (or like very much), please let me know:

Another way to help PhotoQt is by joining the translation team over on Crowdin. If your language is missing you can simply request it directly on Crowdin or send me an email and I can add it to the project.

If you are considering supporting PhotoQt by donation, please consider donating to the humanitarian relief in Ukraine instead, for example to the Ukrainian Red Cross.

Enjoy PhotoQt,