Commit Graph

3960 Commits

Author SHA1 Message Date
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
Alberto Griggio
e7fdad875a metadata: cache recent files for faster operation
(cherry picked from commit 6ee014ddb7ab77537289e1f41f13345e5db54710)
2022-12-04 17:27:02 -08:00
Alberto Griggio
b01b0fbef0 metadata: initialize thumbnail rating from exif
(cherry picked from commit 96bd2db0d2e127678bded3bee7aa3275332826c0)
2022-12-04 17:02:33 -08:00
Alberto Griggio
1a771fa211 more work on synchronizing metadata with xmp sidecars
(cherry picked from commit 81bbff6e6ae87bd35e8050a1cc621297ca24939b)
2022-12-04 15:55:09 -08:00
Lawrence Lee
4223f114cb Clean up merge 2022-12-03 21:24:17 -08:00
Lawrence Lee
255dc13843 Add Lensfun DB lookup fallback directory
Load from the bundled database directory if loading from the configured
location fails.
2022-11-24 17:08:00 -08:00
Morgan Hardwood
cf96139c3a Review of default #5664
Consistently use _TOOLTIP suffix for tooltip keys.
2022-09-23 18:09:44 +02:00
Morgan Hardwood
799452ac88 Review of default #5664 2022-09-23 16:37:46 +02:00
luzpaz
4d1d5d4539 Fix various typos (#6569)
* Fix various typos

* Fix previous commit + add follow-up grammatical fixes
2022-08-30 15:17:43 +02:00
Lawrence37
dfede05312 Add Castellano language, fix some default language detection (#6547)
Closes #6530 
Language file provided by Francisco Lorés and Javier Bartol
2022-08-26 10:44:22 +02:00
Desmis
efbcebb522 Review JzCzHz - Various changes to locallabtools2 - default - french (#6561)
* Various changes to locallabtools2 default french

* changed to German TP_LOCALLAB_LOGAUTOGRAYJZ_TOOLTIP
2022-08-25 14:01:17 +02:00
Lawrence37
0a55428205 Clean up missing language keys (#6556)
* Clean up some unused code

* Use grid for abstract profile primaries

* Remove blank line from default
2022-08-24 20:23:09 +02:00
Bezierr
24f5d85c8d Squashed commit of the following:
commit e293f0890866ddf934ba1a9dd9fa372364766bb3
Author: Bezierr <harald.aust@web.de>
Date:   Tue Aug 23 16:16:23 2022 +0200

    Added comment

commit 20a50b248dc110eeb4b526c7242920a68216c88c
Author: Bezierr <harald.aust@web.de>
Date:   Tue Aug 23 14:35:47 2022 +0200

    Follow dynamicprofile.cfg symlink instead of overwriting it

    If dynamicprofile.cfg is a symlink, write the contents to this symlink's target instead of overwriting it.

commit bad2f8c37a0d27e612150dce3219593b2f996f9c
Author: Bezierr <harald.aust@web.de>
Date:   Thu Aug 11 17:20:08 2022 +0200

    Make dynamicprofile.cfg OS independent

    dynamicprofile.cfg contains OS-dependent paths to the profiles. To fix this, replace "/" or "\", depending on OS, with the correct delimiter.

commit cd84120876be111c23dac5376eb5b6f6cb0a7328
Author: Bezierr <harald.aust@web.de>
Date:   Thu Aug 11 16:33:39 2022 +0200

    Relative paths also for Dark Frame and Flat File

    (a) Extended the "relative path" functionality to the (already existing, but apparently not used) directories for FlatField and DarkFrame
    (b) Simpler, cleaner implementation

commit a338b8726451323505bb4cff1888c562fd88929d
Author: Bezierr <harald.aust@web.de>
Date:   Sun Aug 7 18:03:46 2022 +0200

    Preference of RAW path over rtSettings path

    (a) Give path relative to a camera or lens profile in the same folder as the raw file precendence over path relative to rtSettings.
    (b) Replace backslash/slash when reading file paths, not when writing them.
2022-08-23 16:27:47 +02:00
Thanatomanic
c58f582505 Minor license path fixes (#6551)
* Fix CMakeLists
* Fix splash.cc
2022-08-18 20:58:50 +02:00
Ingo Weyrich
f564394bbc dfmanager cleanup (#6211)
* Turn `DFManager` into a singleton
* PIMPL `DFManager`
* Cleanup namespace usage in `dfmanager.cc`
* Constify `DFManager` interface
* Fix bad `reinterpret_cast` between `std::string` and `Glib::ustring`

Co-authored-by: Flössie <floessie.mail@gmail.com>
Co-authored-by: Thanatomanic <6567747+Thanatomanic@users.noreply.github.com>
2022-08-18 17:00:49 +02:00
luzpaz
65db39b9f8 Fix various typos (#6529) 2022-08-18 16:49:26 +02:00
Lawrence Lee
262d00bf1b Fix incomplete changing of input profile
Closes #6533.
2022-07-23 15:59:40 -07:00
Bezierr
1450b9bb7a Camera and Lens profiles directories
In "Preferences", added the possibility to define a "Camera profiles directory" and a "Lens profiles directory" as base paths which enable storing relative paths in the .pp3 files.
2022-07-20 12:14:05 +02:00
Pandagrapher
1e2dc30738 Local adjustments - Fix apply/paste actions with LA
- Fixes LA lost when applying partial profile (fixes #6150)
- Fixes LA behavior when using apply/paste actions: spots are now totally replaced and not anymore merged (fixes #6136 and #6411)
- Fixes a crash in specific situations when saving/copying a partial number of spots
- Partial paste dialog: Fixes Locallab button remaining inconsistent if all the spots are deselected
2022-07-18 19:03:29 +02:00
Desmis
19a4720ec7 Fixed bad GUI behavior in Color and Light - issue 6517 2022-07-06 11:01:14 +02:00
Lawrence Lee
a13c8a5a47 Make default tone eq. regularization consistent
Use 0 for the initial and reset value, which is the same as the details
in the local adjustments version.
2022-06-30 21:58:10 -07:00
Lawrence Lee
a877ac4878 Add pivot to local adjustments tone equalizer 2022-06-26 16:06:34 -07:00