DisplayCAL 3.5 released

I’m happy to announce that I’ve released DisplayCAL 3.5, which brings new application icons, a slightly refreshed theme, and several improvements.

Added in this release:

  • [Feature] Support the madVR HDR 3D LUT installation API (madVR >= 0.92.13).

Changed in this release:

  • [Enhancement] In case of a download problem (e.g. automatic updates), offer to visit the download URL manually.
  • [Enhancement] Security: Check file hashes of application setup and portable archive downloads when updating DisplayCAL or ArgyllCMS.
  • [Enhancement] Security: Use HTTPS for ArgyllCMS download as well.
  • [UI] New application icons and slightly refreshed theme.
  • [UI] Improved HiDPI support by adjusting relative dialog button spacing, margins, and interactive display adjustment window gauge sizes to match proportionally regardless of DPI.
  • [UI] Improved visual consistency of tab buttons (don’t lose “selected” state if clicking on a button and then moving the mouse outside of it, “hover” state does no longer override “selected” state, keyboard navigation skips over selected button).
  • [Cosmetic] Measurement report: Make patch preview take into account the “Use absolute values” option again.
  • [Cosmetic] Measurement report: Colorize CCT graph points according to change in hue and chroma.
  • [Cosmetic] Measurement report: Colorize gamma graph points according to change in gamma.
  • [Cosmetic] Measurement report: Dynamically adjust gamma graph vertical axis to prevent cut-off.
  • [Cosmetic] Measurement report: Make RGB balance graph match HCFR (Rec. 709 only). Note that new and old balance graphs are only comparable to a limited extent (use “Update measurement or uniformity report” in the “Tools” menu to update existing reports).
  • [Cosmetic] Profile loader (Windows): Unset non belonging profile when resetting a profile association.
  • Mac OS X: Set default profile type to single curve + matrix with black point compensation due to long-standing Mac OS X bugs with any other profile type.

Fixed in this release:

  • [Moderate] Unhandled exception and UI freeze when the 3D LUT format was set to madVR and there never was a prior version of ArgyllCMS on the system or the previous version was older than or equal to 1.6.3 during that same DisplayCAL session, due to a missing capability check.
  • [Moderate] Division by zero when trying to create a SMPTE 2084 HDR 3D LUT if the profile black level was zero (regression of a change in DisplayCAL 3.4, SVN revision r4896).
  • [Minor] If using the alternate forward profiler and the profile type was XYZ LUT + swapped matrix, the swapped matrix was overwritten with an accurate one (regression introduced in DisplayCAL 3.3.4, SVN revision r4736).
  • [Minor] It was not possible to run a measurement report with a simulation profile set as display profile, but no profile assigned to the actual display.
  • [Minor] Rec. 1886 measurement report with originally non Rec. 709 tone response profile: Make sure to override the original tone response of the profile so Rec. 1886 gives the expected result.
  • [Minor] If a measurement report HTML file was mangled by another application that removed the XML self-closing tags forward slashes, it was not possible to correctly update the report using “Update measurement or uniformity report” from the “Tools” menu.
  • [Minor] If using a pattern generator, check it is valid before binding a disconnect-on-close event when using the visual whitepoint editor. Prevents an attribute error when using the visual whitepoint editor and the madTPG network implementation (i.e. under Mac OS X).
  • [Minor] Windows: Always use the active display device directly when querying or setting profiles instead of mimicking applications using the Windows GetICMProfile API (fixes getting the correct profile with display configurations consisting of three or more displays where some of them are deactivated).
  • [Minor] Profile loader (Windows): Check whether or not a display device is attached to multiple adapters and disable fixing profile associations in that case.
  • [Minor] Profile loader (Windows): Work-around hitching caused by Windows WcsGetDefaultColorProfile API call on some systems.
  • [UI] Measurement window: Make sure focus stays on the last focused control when the window itself gains focus again after losing focus.
  • [UI] Synthetic ICC Profile Creator: Update HDR SMPTE 2084 diffuse white info text when changing luminance.
  • [Trivial] HDR SMPTE 2084 3D LUT: Interpolate the last two segments before the clipping point of the intermediate input LUT shaper curves (prevents potential slight banding in highlights).
  • [Trivial] Windows: Make sure the profile loader is launched directly after installing a profile when using a portable version of DisplayCAL (parity with installer version).
  • [Trivial] Profile loader (Windows): Re-introduce --skip command line option.
  • [Cosmetic] Profile loader (Windows): When disassociating a profile from a device, suppress ERROR_PROFILE_NOT_ASSOCIATED_WITH_DEVICE error sometimes (in some cases always?) resulting from the WcsDisassociateColorProfileFromDevice Windows API call, even though the profile was successfully disassociated.