Thanks for the helpful comments.
Since I was asked to summarize the benefits of these changes again, they are mostly on the usability side:
-
With automatic alignment as default (which it is not right now) increase the chance that the user does not need to touch the mask at all - like in any other raw development software.
-
Presets with automatic alignment have a higher chance of working without changes to the mask.
-
With automatic alignment, the module automatically adjusts to upstream image changes. For example the user can change the exposure (earlier in the pipeline) and the tone equalizer will still affect the same areas of the image.
-
If the user decides to change the mask exposure/contrast manually, the histogram moves much more responsively and predictably.
-
Also seeing the histogram while moving it is a benefit in itself. This was discussed here fore example: Some thoughts on improving the Tone Equalizer UI · Issue #17287 · darktable-org/darktable · GitHub
Regarding the slider discussion:
-
I did not realize that the sliders were that universally hated, given that they are the default interface of the module.
-
On their own page, they are not very useful, because the user has too little context regarding what they do. In my opinion their usefulness increases when seeing the graph/histogram at the same time.
-
Regarding what they do / “the math”: The sliders simply move the 9 dots on the graph. However there is one major difference: The sliders can be moved individually. User input in the graph always affects multiple dots (this also bothered the OP on the github discussion linked above).
-
During a past discussion about removing the sliders, somebody mentioned that they are needed to be assigned to MIDI controls.
Since this discussion is mostly about vertical space, I will make things more compact in the next version.
Bugs:
- Over on github it was mentioned that I did not increment the module version number correctly and therefore edits and presets were not correctly converted to the new version (which can cause all sorts of issues, because C and memory…). I was not able to reproduce the bug that @priort saw, but it sounds to me like this might be the cause.
I will provide an updated version in a few days.