-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Setting darkroom/ui/hide_header_buttons=active causes a reset of a module toggles the collapse of the module #18151
Comments
it might be related to #17985 or its trigger or fix |
I can confirm this with darktable 5.0.0 running on Debian Sid. |
This is caused by the addition of a call to This issue similarly prevents using the scroll wheel while hovering over the presets button to try more than one preset (if hide_header_buttons != always) |
@dterrahe thanks for pinpointing and inducing a brain-stress-test :-) Indeed there was "some reason" but you are right, the "fix" was at the wrong place. The reproducer without that line in question would be:
The way to fix would be likely to put that line into
Will do some more testing before doing a pr |
You are absolutely right of course and your solution looks ok. I was wondering if maybe the "right" place would be
|
Wouldn't this require making every module test for being applicable depending on image type (raw vs non-raw would be the most obvious) ? |
As reported and shortly discussed in darktable-org#18151 a click on the modules reset-parameters button collapses the module if `darkroom/ui/hide_header_buttons=active` (since 3.8). We don't have to reset the headerbar buttons to a safe state in 'dt_iop_gui_update()' but only when loading a new image into darkroom as the modules applicable status might have changed (for example modules that only work with raw image data).
Making every module test for being applicable depending on image type is a very good idea as it will greatly simplify such actions as copy-pasting history between images. We just need to add one more function to the IOP API that will adjust the module status depending on the type of image being processed: disable if the module is incompatible with the image type and force-enable if the module is mandatory for the image type. |
I'm not sure what you mean with "wouldn't". Every module with special requirements does have to test if it is applicable (or required!) for the currently loaded image and set
As described above, this information is already available for the currently loaded image, so could be tested when pasting history to it in the darkroom (maybe it already is, I haven't looked).
For images that have not been loaded it is a little more complicated, because the condition is not just simply image type; it could be dependent on which raw format (mosaic pattern), for example, or if it is monochrome. So the new IOP API method would have to take as input more than image type somehow. I think these are not necessarily known before the image has been loaded. Loading each image when pasting to a selection in the lighttable/filmstrip would, I assume, cause a significant slowdown.
A small benefit would be that the function could be made local to |
Describe the bug
Clicking on the module reset button toggles the module collapse
bisecting my darktablerc (because a fresh darktablerc does not show that behaviour) gave me, that the setting
darkroom/ui/hide_header_buttons=active
is the culprit. Switching that to "always" as in a fresh darktablerc, the behaviour is normal
This is not only on current master, but also on 5.0.0
Steps to reproduce
Expected behavior
mdules shall never toggle the collapse when restting
Logfile | Screenshot | Screencast
No response
Commit
No response
Where did you obtain darktable from?
self compiled
darktable version
5.1.0+27-g6063a61511
What OS are you using?
Linux
What is the version of your OS?
Gentoo
Describe your system?
Are you using OpenCL GPU in darktable?
Yes
If yes, what is the GPU card and driver?
see above
Please provide additional context if applicable. You can attach files too, but might need to rename to .txt or .zip
see above
The text was updated successfully, but these errors were encountered: