forked from darktable-org/darktable
-
Notifications
You must be signed in to change notification settings - Fork 0
Local contrast rgb #1
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
Open
vtyrtov
wants to merge
345
commits into
vtyrtov:master
Choose a base branch
from
wilecoyote2015:local_contrast_rgb
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
to recent pot file
* Added a python script to enable discord rpc
…-251114 Translations update: en@truecase and Ukrainian
1. There was a bug introduced in 872e4b8, we should just make sure we don't read NaN from the pipe. 2. If we use an unsupported interpolator we should return an error code instead of false.
As RustiCL - made great progress - is available with regular updates for all distributions - is pretty performant - cares about dt problems using it we should not discourage people using it.
…e-org#19740) * Allow single-click on checkbox label to toggle the checkbox The UX best practice for checkboxes is to use not only the (very small) checkbox rectangle but also the checkbox label to toggle the setting. Darktable is using double-click on the label to reset the checkbox to its default value. This patch adds a single-click handler to the label to toggle on/off without breaking the double-click functionality. This code path affects the checkboxes in the "import to library" dialog and the map settings view. The bool checkboxes in the "general" preferences tab are hand-crafted and subject to a separate PR / refactoring. The bool checkboxes in the other preferences tabs come from a Lovecraftian XSLT generator that emits an 8K LoC C file that's #included into preferences.c. It contains hundreds of auto-generated callback functions that look like they can be replaced with just one callback per preference type that's using `gtk_widget_get_name()` to obtain the respective preference key, and a pair of `gtk_widget_set_data()` / `get_data()` for the respective default values. If the above UX change gets principal approval, I might look into changing the code for the remaining checkbox types to mimic the same behavior. * Refactor and rename single-click preference callback * Add click handler to bool preference labels in "general" * Add click handler to generated pref template * Add click handler to Lua prefs
Ensure that redundant generated code are now put in functions
and shared when possible.
This makes the genarated preferences_gen.h code lot smaller by
reducing the number of generated lines by 28%.
Before:
$ wc ./build/bin/preferences_gen.h
8764 24652 354853 ./build/bin/preferences_gen.h
After:
$ wc ./build/bin/preferences_gen.h
6353 17791 257350 ./build/bin/preferences_gen
We want to check against the "none" name to activate or not the style mode and to pass or not the syle name.
On Wayland with CSD (Client-Side Decorations), the main window was growing by the size of decorations after each restart. This happened because gtk_widget_get_allocation() returns the size including window decorations, while gtk_window_resize() expects size without decorations. This commit fixes two issues: 1. Use gtk_window_get_size() instead of gtk_widget_get_allocation() in dt_gui_gtk_write_config() to save window size without decorations. This matches the behavior of gtk_window_resize() used in dt_gui_gtk_load_config(). 2. Set GTK_WINDOW_TYPE_HINT_NORMAL for the main window on Wayland to ensure proper window resize behavior. Fixes: darktable-org#19734
The trick here is to differenciate the tag completion form the tooltip over the stars (toolbar top of lighttable). This fixes on this later named tooltip a double border.
At the same time make the implementation consistent between the export module and the print settings dialog. Fix a UI discepency between the export and print settings where the style mode was hidden in export and just disabled in print settings.
Ensure that redundant generated code are now put in functions
and shared when possible.
This makes the genarated preferences_gen.h code lot smaller by
reducing the number of generated lines by 45% compared to
5.2 release.
5.2:
$ wc ./build/bin/preferences_gen.h
8764 24652 354853 ./build/bin/preferences_gen.h
Before:
$ wc ./build/bin/preferences_gen.h
6353 17791 257350 ./build/bin/preferences_gen
After:
$ wc build/bin/preferences_gen.h
4849 14649 213355 build/bin/preferences_gen.h
Fix regression found on circle shape looking as none active. Closes darktable-org#19770.
The filmstrip current-image marker (black arrow) was appearing on multiple thumbnails spaced by the number of visible items in the filmstrip. This occurred because the w_cursor widget visibility was tied only to thumb->active flag, which could be set on multiple thumbnails during scrolling and thumbnail reuse. The fix adds a double-check in _thumb_update_icons() to ensure the cursor arrow is shown only when both conditions are met: - thumb->active is TRUE - thumb->imgid matches the first entry in active_images list This ensures only the actual current/active image displays the marker, eliminating visual confusion between selection highlight and current-image indicator. Fixes darktable-org#19772
current (Nov 2025) pango version in macports (1.55.0) breaks font choosing dialog (causes a crash) so using the previous available version (1.52.2) is a workaround until macports updates to latest pango version.
* opencl_vng_demosaicer: VNG4 green correction for only_linear mode Some minimal VNG OpenCL performance improvement Fix misleading OpenCL oversize buffer log
Both below work with -d pipe 1. For OpenCL this didn't work for the first run on that device 2. While being here, also report that for cpu bound pipe runs
We test for RustiCl and use `-cl-fast-relaxed-math` as we do for nvidia and amd
Notes for the record:
1. RustiCL also gets a significant performance boost with this option, in some modules ~ 25%
2. This compiler option still is responsible for at least 2 issues
a) some functions/macros implementations depend on the vendor.
For ROCm we had issues when reading from image data containing either NaNs or unspecified data,
feeding NaNs further up the pipe.
nvidia-cuda and RustiCl seem to be more robust here, those NaNs were simply not observed.
b) We have some differences between CPU and OpenCL output, at least some of them are related.
See OpenCL compiler-option specs
_____________________________________________________
-cl-unsafe-math-optimizations
Allow optimizations for floating-point arithmetic that (a) assume that arguments and results are valid, (b) may violate the IEEE 754 standard, (c) assume relaxed OpenCL numerical compliance requirements as defined in the unsafe math optimization section of the OpenCL C or OpenCL SPIR-V Environment specifications, and (d) may violate edge case behavior in the OpenCL C or OpenCL SPIR-V Environment specifications. This option includes the -cl-no-signed-zeros, -cl-mad-enable, and -cl-denorms-are-zero [26] options.
-cl-finite-math-only
Allow optimizations for floating-point arithmetic that assume that arguments and results are not NaNs, +Inf, -Inf. This option may violate the OpenCL numerical compliance requirements for single precision and double precision floating-point, as well as edge case behavior.
-cl-fast-relaxed-math
Sets the optimization options -cl-finite-math-only and -cl-unsafe-math-optimizations. This option causes the preprocessor macro __FAST_RELAXED_MATH__ to be defined in the OpenCL program.
Some constify and static leading underscores while being here.
We need both informations at runtime for some OpenCL codepath optimizings. As dt_opencl_local_buffer_opt() returns an `int` we should define so.
…ation tags (darktable-org#20099) * bugfix: add guard when accesssing fourth element of Exif.Olympus*.Gradation tags It turns out that Olympus' Gradation info can consist of either three or four integers. Avoid crashing when there are only three.... Should fix darktable-org#20011.
This reverts commit d4effef.
Make conf defaults for collection filters match how they are reset via _filtering_rest(_PRESET_FILTERS). This fixes a disappearing images bug which manifests when darktable is invoked for the first time with image files/directories on the command line. Images disappeared in lighttable once they had been brought into darkroom view. No images were visible in lighttable if the user exited then reopened darktable. Fixes darktable-org#20106
The 'advantage hint' should also be checked for a usable range for switching workspaces.
According to OpenCL specs this is an unsigned int instead of size_t, so we should read that.
…gui->reset is set; don't call gui_update from gui_init; call gui_changed after gui_update; extracted repeated code into _update_redraw_dynamic_gui, _update_pivot_slider_settings; primaries selection remains visible even when "disable adjustments" is checked; use dt_ui_label_new
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.