darktable-org / darktable-org/darktable
Only generated preferences show `NON_DEF_CHAR` "●" when changed
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 13.1k
- Forks
- 1.4k
- Avg merge
- 22h 14m
- Merged PRs (30d)
- 198
Description
Is there an existing issue for this?
- I checked and did not find my issue in the already reported ones
Describe the bug
The darktable preferences dialog is using three different code-paths to create individual preferences:
- "general" preferences hard-coded in
init_tab_general() - auto-generated preferences in
tools/generate_prefs.xsl - Lua preferences in
src/lua/preferences.c - (not in the dialog but still preferences)
dt_gui_preferences_bool()used by the map preferences and by the "import to library..." dialog
Steps to reproduce
Only the auto-generated preferences have code to display the "●" bullet when a preference has been changed by the user. For consistency purposes, use-cases 1 and 3 should also make use of that.
Expected behavior
No response
Logfile | Screenshot | Screencast
Previous discussion in #19740
Commit
No response
Where did you obtain darktable from?
darktable.org / GitHub release
darktable version
5.3
What OS are you using?
Linux
What is the version of your OS?
Debian 13
Describe your system
No response
Are you using OpenCL GPU in darktable?
None
If yes, what is the GPU card and driver?
No response
Please provide additional context if applicable. You can attach files too, but might need to rename to .txt or .zip
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the generated-preference path in tools/generate_prefs.xsl with the hard-coded preferences in init_tab_general() and Lua preferences in src/lua/preferences.c. Review the previous discussion in #19740 and inspect dt_gui_preferences_bool() for related behavior. Done means changed preferences in these paths consistently display the "●" marker.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100