Commit Graph

3872 Commits

Author SHA1 Message Date
Lawrence Lee
1f8e2aaf55 Merge branch 'dev' into metadata-exiv2 2023-04-19 21:14:54 -07:00
Lawrence Lee
c4245b5106 Merge branch 'dev' into metadata-exiv2 2023-04-09 17:10:54 -07:00
Lawrence Lee
186995acf4 Improve code quality for external editor settings 2023-04-09 13:52:09 -07:00
Lawrence Lee
19f12f3182 Allow native commands as external editors
If an editor is marked as a native command, it is launched using the
older method (native for Windows or Glib otherwise). Non-native commands
are launched with Gio. When reading preferences containing the old style
external editor settings, all commands are marked as native to avoid
breaking them.

Fix bug where the send to editor button shows the wrong editor. The bug
happens when the other editor option is selected while the user edits
the external editors in preferences. When saved, the button shows the
first option is selected instead of the other editor option (the last
entry).
2023-04-08 18:16:23 -07:00
Lawrence37
f018d1fec0 Merge pull request #6536 from Bezierr/ha-profilepath-dev
Relative pathnames to .dcp and .lcp files in .pp3 for interchangeability between Windows and Linux
2023-04-03 18:38:58 -07:00
Lawrence Lee
0729deec4b Merge branch 'dev' into metadata-exiv2 2023-03-22 23:01:40 -07:00
Desmis
5481a8bbe1 Ciecam - Fixed issue #6713 and add some batch functions (#6717)
* Try to solve issue 6713 ans add some batch functions

* Missing setAddMode tempout
2023-03-20 07:38:48 +01:00
Desmis
69c1caafa1 Whitebalance - Removed GUI Itcwb from whitebalance and preferences (#6710)
* Change Preferences for observer whitebalance

* Change label white balance preferences

* Added Preferences 2 parameters Whitebalance auto correlation

* Add Preference Temperature correlation - sort and tooltip

* Change to rtengine cmakelist

* Apply patch from Lawrence37

* Small comment code

* Change defaut order prefrences wba

* Added force extra algoritm to Preferences

* Harmonize itcwb sorted

* Add fields to Preferences Itcwb

* Change settings precision Itcwb in Preferences

* Change tooltip Itcwb preferences

* First stage Itwcwb settings in main with pp3 and selction in preferences

* Second stage Itwcwb settings in main with pp3 and selction in preferences

* Third stage Itwcwb settings in main with pp3 and selction in preferences

* Add itcwb_fgreen student - green optimize

* Add Itcwb green range

* Itcwb history msg - first tooltips

* Remove force-extra because always used

* reused force-extra to use entire CIExy for sampling datas

* Removed inwanted text in console

* Set sensitive for Itcwbframe

* Various change - comment ..

* Small code review - chnage tooltips

* Remove settings itcwb_delta in Rawimagesource.cc to simplify

* Remove Itcwb Observer - put a single observer for everything - general - itcwb

* Fixed conflicts in colortemp.cc

* Various change - fixed bug - simplify

* Fixed limits for settings pp3 - chnage tooltip

* Clean unused code

* Put itcwb_findgreen in GUI

* Added checkbox 'Low sampling' to find the settings of 5.9

* Set Observer to Observer 10° - preferences default

* Missing setting Low sampling

* Show white balance multipliers

* Change default settings - Itcwb_sorted

* Move observer from preferences to WB

* Make observer selectable for camera WB

* Ensure observer checkbox is in sync with PP3

* Set default ITCWB low sampling for PP3s from <=5.9

Ensure temperature correlation white balance algorithm 1 is used when
opening edits from versions 5.9 and earlier.

* Removed unused White-balance frame in Preferences

* Comment some GUI sliders checkbox

* Removed all GUI itcwb in preferences and whitebalance

* Removed forgotten code in preferences

* Remove labels tooltips history Itcwb

---------

Co-authored-by: Lawrence Lee <45837045+Lawrence37@users.noreply.github.com>
2023-03-19 07:47:58 +01:00
Lawrence Lee
20e78068cd Merge branch 'dev' into metadata-exiv2 2023-03-17 22:16:17 -07:00
Flössie
8f6d4f31c5 Consistently use Gtk::manage() in SaveFormatPanel 2023-03-02 09:17:01 +01:00
Flössie
a07c38f405 Support for saving TIFFs as BigTIFF (#6690) 2023-03-01 12:47:55 +01:00
Lawrence Lee
e3c7fd42e9 Merge branch 'dev' into metadata-exiv2 2023-02-15 22:28:18 -08:00
Lawrence Lee
cac76c18c0 Re-introduce UTF-8 validation for EXIF panel 2023-02-12 17:47:07 -08:00
Desmis
e5d46032ff Add "Inpaint opposed" to Highlight reconstruction and improved Itcwb (#6635)
* Essai HL

* Try Inpaint opposed

* Code improvment

* Add file

* Improvment to process inpaint opposed  and color propagation

* Clean code

* Change Blend to Coloropp in Profile pp3

* Enable BENCHFUN hilite_recon

* Clean rtengine cmakelist

* Comment unused code

* Neutralise unused code

* Change bad Exposure in Pop2Lab.pp3

* Try to fix bug when Inpaint Opposed is used and White balance disabled

* Changes to refreshmap

* Change to improccoordinator M_RETINEX

* Clean unused commented code

* Force Inpaint-opposed in rawimagesouce if wb change

* Suppressed message in console

* Change events and limits to 1 the number of calls to inpaint-opposed

* Comment code

* Add gain theshold to inpaint opposed

* fixed typo in procparams.cc

* Change in option.cc itcwb_sort to true

* Change itcw sorted in options and rawimagesource.cc

* Change sampling read datas Itcwb

* Allow or not purple in WB itcwb

* Added option icwb.nopurple to bypass settings

* Added code comment Itcwb

* optimize Itcwb between green and student

* Formated code used by Itcwb with Astylert.bat

* Change color_match - thanks to Lawrence37

* Remove wrong text
2023-02-09 07:14:20 +01:00
Lawrence Lee
3833c6e634 Merge branch 'dev' into metadata-exiv2 2023-02-05 12:29:58 -08:00
Lawrence Lee
2982f02328 Merge branch 'dev' into favorites-gui 2023-02-03 21:58:34 -08:00
Desmis
9a245c1acb Avoid Color shift - Gamut and Munsell Review in RT - branch Munsellgamut (#6673)
* Fixed numerous problems with gamut and Munsell in Local adjustments

* change gamut-munsell in lab adjustmnts - gamut in ciecam

* Improve XYZ colorimetry and tooltip

* Change event - format code - change labels tooltips

* Removed avoid_ and avoidmun_

* Removed avoidcolorshift in labcurve

* Push change proposed by Lawrence37 - compatibility with old pp3
2023-01-31 12:32:31 +01:00
Lawrence37
ef7676826e Merge pull request #6661 from Beep6581/external-editor-fixes
External editor fixes for Windows
2023-01-26 21:37:14 -08:00
Desmis
7afdfc1e2b Abstract profile - Gamut improvment (#6665)
* Gamut control when the chosen primaries are different from working profile

* Gamut control abstract

* Gamut label and history

* Change to Wx Wz

* Fixed crash if y primaries are set to zero

* Fomated with Astylert ImProcFunctions::workingtrc and Color::primaries_to_xyz

* Fixed black becomes green wit gamt abstract profile

* Harmonize types in color.cc

* Try to fix Multiplication result converted to larger type
2023-01-24 14:29:50 +01:00
Lawrence Lee
22edf5f069 Add radio indicator to external editor selector
Make it easier to see that the selector is for changing the current
editor and not for immediately sending the image to the clicked-on
editor.
2023-01-15 15:10:54 -08:00
Lawrence Lee
194ef397a6 Fix external editor file chooser filter (Windows)
Look for files with the MIME type "application/x-msdownload", which are
Windows executable files. The Gio function for determining if a file is
executable does not work for Windows.
2023-01-08 22:17:21 -08:00
Lawrence Lee
5468e74e57 Fall back to custom external editor launcher 2023-01-08 17:20:42 -08:00
Desmis
21afbaf90b CIECAM - Changes such as symmetric works and temperature output makes sense - issue #6656 (#6658)
* changes such as symmetric works and temperature output makes sense

* Comment code

* other Comment code and small change

* Change tint in tooltip temperature

* Improve GUI for tempout and greenout
2023-01-06 06:43:21 +01:00
Desmis
95cede9a1a Color Appearance and lighting : Remove cat02preset and all dependencies issue 5664 (#6585)
* Remove cat02preset and all dependencies issue 5664

* Normalize cmakelist
2023-01-03 07:44:46 +01:00
Lawrence Lee
143e5c6783 Merge branch 'dev' into favorites-gui 2023-01-02 15:37:07 -08:00
Lawrence Lee
4d287b4cdf Merge branch 'dev' into multi-external-editor 2023-01-02 15:06:33 -08:00
Lawrence37
57c1822b2c Strict temporary image file permissions (#6358)
* Write temp images to private tmp directory (Linux)

The directory is in /tmp with 700 permissions.

* Reduce temp image file permissions in Linux

Set temporary image file permissions to read/write for the user only.

* Use private tmp directory for temp images in MacOS

* Use private tmp directory for temp images Windows

* Use GLib to create temporary directories

* Reuse temp directory if possible
2023-01-02 21:32:15 +01:00
Ingo Weyrich
8d29d361a8 Support dnggainmap (embedded correction) for Bayer files (#6382)
* dng gainmap support, #6379
* dng GainMap: control sensitivity of checkbox, #6379
* dng GainMap: partial paste
* dng GainMap: moved isGainMapSupported() from dcraw.h to dcraw.cc
* RawImageSource::applyDngGainMap: small speedup
* Change GUI to separate gainmap from other flat-field; also reorder checkbox

Co-authored-by: Thanatomanic <6567747+Thanatomanic@users.noreply.github.com>
2023-01-02 21:30:06 +01:00
Niklas Haas
2101b846c3 Implement file sorting in thumbnail view (#6449)
* Use mtime as fallback timestamp for files without EXIF data

As suggested in #6449, with date-based sorting it can be useful to have
at least *some* sort of time-relevant information for EXIF-less files,
to prevent them from falling back to getting sorted alphabetically all
the time.

This commit simply defaults the file timestamp to the file's mtime as
returned by g_stat. For annoying reasons, it doesn't suffice to merely
forward the timestamp to the FileData structs - we also need to keep
track of it inside FilesData to cover the case of a file with 0 frames
in it.

* Add DateTime to Thumbnail

Putting it here facilitate easier sorting without having to re-construct
the DateTime on every comparison.

To simplify things moving forwards, use the Glib::DateTime struct right
away. This struct also contains timezone information, but we don't
currently care about timezone - so just use the local timezone as the
best approximation. (Nothing currently depends on getting the timezone
right, anyway)

In addition to the above, this commit also changes the logic to allow
generating datetime strings even for files with missing EXIF (which
makes sense as a result of the previous commit allowing the use of mtime
instead).

* Implement file sorting in thumbnail view

For simplicity, I decided to only implement the attributes that I could
verily easily reach from the existing metadata exported by Thumbnail.
Ideally, I would also like to be able to sort by "last modified" but I'm
not sure of the best way to reach this from this place in the code.

It's worth pointing out that, with the current implementation, the list
will not dynamically re-sort itself until you re-select the sorting
method - even if you make changes to the files that would otherwise
affect the sorting (e.g. changing the rank while sorting by rank). One
might even call this a feature, not a bug, since it prevents thumbnails
from moving around while you're trying to re-label them. You can always
re-select "sort by ..." from the context menu to force a re-sort.

Fixes #3317

Co-authored-by: Thanatomanic <6567747+Thanatomanic@users.noreply.github.com>
2023-01-02 21:27:12 +01:00
Lawrence Lee
646065f643 Remove unused code
Remove the preferences code for selecting the external editor since it
is superseded by the multiple external editor preferences.
2023-01-01 21:22:47 -08:00
Nicolas Turlais
401727fba9 Add filter for Paths to dynamic profiles (#6284)
Work by @nicolas-t 
* Path filter in dynamic profile panel
* Pass filename as a function argument
* Removed unused include
* Clearer translation
2022-12-31 10:51:30 +01:00
Lawrence37
5b4cf1a040 Merge branch 'dev' into multi-external-editor 2022-12-11 12:11:16 -08:00
Alberto Griggio
7324ea7230 replace Glib::filename_to_utf8 with custom fname_to_utf8
(cherry picked from commit 30b4daf9077e3c6780cefbf6c4223da4698b8612)
2022-12-10 12:15:27 -08:00
Alberto Griggio
b409e0bab2 fixed handling IPTC metadata that admit multiple values
(cherry picked from commit 8becb08ec1417215bf8f02c54000d37c2e6920f0)
2022-12-10 11:54:43 -08:00
Alberto Griggio
a0e9a59606 do not save IPTC tags in the arp if they are unchanged
(cherry picked from commit c4c642794868c2b03fd824acc0a7db962162c16f)
2022-12-10 11:05:14 -08:00
Alberto Griggio
2ce81cccc5 metadata: fixed glitches in importing IPTC tags
(cherry picked from commit 3d03f654e22ca01f058492eab2c8fcbc564dc1b9)
2022-12-10 11:00:40 -08:00
Alberto Griggio
92befa7e81 refactored code for extracting image dimensions from metadata
(cherry picked from commit 0ece9c5bfad09bc9052238d83fa696ef39effaaa)
2022-12-10 10:37:58 -08:00
Alberto Griggio
fca1b5c5f5 added support for easier editing of some common metadata tags
(cherry picked from commit 0e3f760b520a5cbaa4e63d0f8a5ca5574093f411)
2022-12-10 10:01:57 -08:00
Alberto Griggio
393dbcf9f9 metadata: allow the user to specify XResolution/YResolution
see https://discuss.pixls.us/t/note-to-the-dev-guys-about-72-ppi-output

(cherry picked from commit ad237944699800368ba50151f6774ee203d61ed5)
2022-12-10 09:56:36 -08:00
Alberto Griggio
0415d556fc exifpanel: ignore errors when printing tags in human-readable form
(cherry picked from commit 47fa34e7365d618f250826eb412c72fe0ab8cfed)
2022-12-10 09:51:32 -08:00
Alberto Griggio
30e77ee96f fixed compilation error with Apple Clang 7.0.0
(cherry picked from commit dd5b10d9dc8eb7447e37ac30ddd7545897c878b0)
2022-12-10 09:44:24 -08:00
Alberto Griggio
38eb9f9f18 exifpanel: improved ui for editing tags
(cherry picked from commit f6f4ddf54c25e6e577bf4960ea51fc23e8434559)
2022-12-10 09:43:17 -08:00
Alberto Griggio
3f05564548 exifpanel: fixed missing markup escaping when adding tag values
Fixes #54

(cherry picked from commit 383619d6260fa10b8f112e3dc55e0323f5e99b43)
2022-12-10 09:33:40 -08:00
Alberto Griggio
1de9516ef0 metadata: better defaults and presentation of the exif tag tree
(cherry picked from commit 9edc783c1b6ba3b49c933560a73e2de126e04dc1)
2022-12-10 09:32:42 -08:00
Alberto Griggio
1935f3d76d exif panel: ensure that keys are not empty in the displayed tag tree
(cherry picked from commit da45bf30bddf311b6c7d0d990d078b2a37d4b500)
2022-12-10 09:24:41 -08:00
Alberto Griggio
b92e77fb96 improved support for metadata editing
(cherry picked from commit 85da0b51ecf7ece768c0267aead71dd94404d4dc)
2022-12-09 22:35:26 -08:00
Alberto Griggio
8a5aa6c119 exif panel: further tweaks to the metadata selection
(cherry picked from commit 207e51b64726367f2d932c000060f00b2697523f)
2022-12-09 21:26:33 -08:00
Alberto Griggio
abb052e51b metadata: allow to select which metadata tags to include in the output image
(cherry picked from commit ed64206cb8b4455870815e2c51aecbd5c09e4054)
2022-12-06 22:08:23 -08:00
Alberto Griggio
f62f6807a7 exifpanel: sort the list of exif tags
(cherry picked from commit 88e5ec5dc6a47d3a9cc751d2902aadc540ce0826)
2022-12-05 21:40:57 -08:00
Alberto Griggio
e90ffe979b metadata: catch std::exception instead of Exiv2::AnyError for better robustness
(cherry picked from commit 0e2d9332f633b060bd4d5cbcd9d47009bab0c46c)
2022-12-05 21:19:21 -08:00