diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index dd92f1401..9219179e3 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -1,6 +1,6 @@ -RAWTHERAPEE 5.12-rc2 RELEASE NOTES +RAWTHERAPEE 5.12 RELEASE NOTES -This is Release Candidate 2 of RawTherapee 5.12, released on 2025-05-04. This is not the final release yet. +This is RawTherapee 5.12, released on 2025-05-28. diff --git a/com.rawtherapee.RawTherapee.appdata.xml b/com.rawtherapee.RawTherapee.appdata.xml index c5474c95e..d55046a24 100644 --- a/com.rawtherapee.RawTherapee.appdata.xml +++ b/com.rawtherapee.RawTherapee.appdata.xml @@ -22,8 +22,7 @@ https://rawpedia.rawtherapee.com/Main_Page#Localization rawtherapee.desktop - - + diff --git a/rtdata/images/splash.svg b/rtdata/images/splash.svg index 9862df8f4..457019cb2 100644 --- a/rtdata/images/splash.svg +++ b/rtdata/images/splash.svg @@ -1069,8 +1069,8 @@ inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="1.1038687" - inkscape:cx="333.82594" - inkscape:cy="197.0343" + inkscape:cx="348.77336" + inkscape:cy="196.1284" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="false" @@ -1332,11 +1332,5 @@ id="text40750" transform="matrix(1,0,0.05240778,1,-2.8268676,-2.1582909)" aria-label="12" /> - diff --git a/rtdata/languages/Nederlands b/rtdata/languages/Nederlands index 84f84f77e..438e9dd98 100644 --- a/rtdata/languages/Nederlands +++ b/rtdata/languages/Nederlands @@ -3562,7 +3562,7 @@ TP_LOCALLAB_MEDNONE;Geen TP_LOCALLAB_MERCOL;Kleur TP_LOCALLAB_MERDCOL;Voeg samen met achtergrond (ΔE) TP_LOCALLAB_MERELE;Alleen ophelderen -TP_LOCALLAB_MERFIV;Optellinh +TP_LOCALLAB_MERFIV;Optelling TP_LOCALLAB_MERFOR;Kleur tegenhouden TP_LOCALLAB_MERFOU;Vermenigvuldig TP_LOCALLAB_MERGE1COLFRA;Voeg samen met Origineel/Vorige/Achtergrond @@ -4527,8 +4527,8 @@ TP_WAVELET_SUPE;Extra TP_WAVELET_THR;Drempel schaduwen TP_WAVELET_THRDEN_TOOLTIP;Genereert een getrapte curve die wordt gebruikt om de ruisonderdrukking aan te sturen als functie van lokaal contrast. De ruisonderdrukking zal worden toegepast op uniforme gebieden met laag lokaal contrast. Gebieden met details (hoger lokaal contrast) worden behouden. TP_WAVELET_THREND;Drempel lokaal contrast -TP_WAVELET_THRESHOLD;Hoge lichten: Aantal te gebruiken niveaus (fijn naar grof - leidend) -TP_WAVELET_THRESHOLD2;Schaduwen: Aantal te gebruiken niveaus (grof naar fijn) +TP_WAVELET_THRESHOLD;Fijnere niveaus +TP_WAVELET_THRESHOLD2;Grovere niveaus TP_WAVELET_THRESHOLD2_TOOLTIP;Alleen niveaus van de gekozen waarde tot het gekozen aantal Wavelet-niveaus zullen worden beïnvloed door het Schaduwluminantiebereik. TP_WAVELET_THRESHOLD_TOOLTIP;Alleen niveaus beneden en inclusief de gekozen waarde zullen worden beïnvloed door het luminantiebereik van de hoge lichten. TP_WAVELET_THRH;Drempel hoge lichten diff --git a/rtengine/hilite_recon.cc b/rtengine/hilite_recon.cc index 653ce80a2..fd3ef3f35 100644 --- a/rtengine/hilite_recon.cc +++ b/rtengine/hilite_recon.cc @@ -32,7 +32,7 @@ #include "opthelper.h" #include "rawimagesource.h" #include "rt_math.h" -#define BENCHMARK +//#define BENCHMARK #include "StopWatch.h" #include "guidedfilter.h" #include "settings.h" diff --git a/rtengine/iplocallab.cc b/rtengine/iplocallab.cc index f54e0cd39..54daf19d4 100644 --- a/rtengine/iplocallab.cc +++ b/rtengine/iplocallab.cc @@ -47,7 +47,7 @@ #include "cplx_wavelet_dec.h" #include "ciecam02.h" -#define BENCHMARK +//#define BENCHMARK #include "StopWatch.h" #include "guidedfilter.h" #include "boxblur.h" diff --git a/rtengine/ipretinex.cc b/rtengine/ipretinex.cc index 22c3ecf7b..f3e961c7c 100644 --- a/rtengine/ipretinex.cc +++ b/rtengine/ipretinex.cc @@ -52,7 +52,7 @@ #include "rawimagesource.h" #include "rtengine.h" #include "shmap.h" -#define BENCHMARK +//#define BENCHMARK #include "StopWatch.h" #include "guidedfilter.h" #include "boxblur.h" diff --git a/rtengine/ipwavelet.cc b/rtengine/ipwavelet.cc index 618b3f336..d9d5fb2e4 100644 --- a/rtengine/ipwavelet.cc +++ b/rtengine/ipwavelet.cc @@ -50,7 +50,7 @@ #endif #include "cplx_wavelet_dec.h" -#define BENCHMARK +//#define BENCHMARK #include "StopWatch.h" namespace rtengine diff --git a/rtengine/rawimagesource.cc b/rtengine/rawimagesource.cc index 11305e9aa..c39ee4823 100644 --- a/rtengine/rawimagesource.cc +++ b/rtengine/rawimagesource.cc @@ -47,7 +47,7 @@ #include "lensmetadata.h" #include "rtgui/options.h" -#define BENCHMARK +//#define BENCHMARK #include "StopWatch.h" #ifdef _OPENMP diff --git a/rtengine/rtlensfun.cc b/rtengine/rtlensfun.cc index 8bda820a9..47b0d6172 100644 --- a/rtengine/rtlensfun.cc +++ b/rtengine/rtlensfun.cc @@ -30,16 +30,6 @@ namespace { -bool isCStringIn(const char *str, const char *const *list) -{ - for (auto element_ptr = list; *element_ptr; element_ptr++) { - if (!strcmp(str, *element_ptr)) { - return true; - } - } - return false; -} - bool isNextLensCropFactorBetter(const lfLens *current_lens, const lfCamera *camera, float next_lens_crop_factor) { if (!current_lens) { @@ -75,8 +65,7 @@ bool isNextLensCropFactorBetter(const lfLens *current_lens, const lfCamera *came bool isNextLensBetter(const lfCamera *camera, const lfLens *current_lens, const lfLens &next_lens, const Glib::ustring &lens_name, const Glib::ustring &next_lens_name) { return isNextLensCropFactorBetter(current_lens, camera, next_lens.CropFactor) && - lens_name == next_lens_name && - (!camera || isCStringIn(camera->Mount, next_lens.Mounts)); + lens_name == next_lens_name; } /** diff --git a/rtgui/locallabtools2.cc b/rtgui/locallabtools2.cc index 6c8cabe99..aabdd199a 100644 --- a/rtgui/locallabtools2.cc +++ b/rtgui/locallabtools2.cc @@ -2117,7 +2117,7 @@ LocallabSharp::LocallabSharp(): sharcontrast(Gtk::manage(new Adjuster(M("TP_SHARPENING_CONTRAST"), 0, 200, 1, 20))), sharblur(Gtk::manage(new Adjuster(M("TP_LOCALLAB_SHARBLUR"), 0.2, 2.0, 0.05, 0.2))), shargam(Gtk::manage(new Adjuster(M("TP_LOCALLAB_GAMC"), 0.5, 3.0, 0.05, 1.))), - sharamount(Gtk::manage(new Adjuster(M("TP_LOCALLAB_SHARAMOUNT"), 0, 100, 1, 100))), + sharamount(Gtk::manage(new Adjuster(M("TP_LOCALLAB_SHARAMOUNT"), 1, 100, 1, 100))), shardamping(Gtk::manage(new Adjuster(M("TP_LOCALLAB_SHARDAMPING"), 0, 100, 1, 0))), shariter(Gtk::manage(new Adjuster(M("TP_LOCALLAB_SHARITER"), 5, 100, 1, 30))), sharradius(Gtk::manage(new Adjuster(M("TP_LOCALLAB_SHARRADIUS"), 0.4, 2.5, 0.01, 0.75))), @@ -2413,7 +2413,7 @@ void LocallabSharp::convertParamToNormal() // Set hidden GUI widgets in Normal mode to default spot values sharcontrast->setValue((double)defSpot.sharcontrast); sharblur->setValue(defSpot.sharblur); - sharamount->setValue(defSpot.sharamount); + // sharamount->setValue(defSpot.sharamount); shardamping->setValue((double)defSpot.shardamping); shariter->setValue((double)defSpot.shariter); shargam->setValue(defSpot.shargam); @@ -2440,12 +2440,14 @@ void LocallabSharp::convertParamToSimple() void LocallabSharp::updateGUIToMode(const modeType new_type) { + const LocallabParams::LocallabSpot defSpot; + switch (new_type) { case Simple: // Expert and Normal mode widgets are hidden in Simple mode sharcontrast->hide(); sharblur->hide(); - sharamount->hide(); + sharamount->show(); shardamping->hide(); shariter->hide(); sharFrame->hide(); @@ -2458,7 +2460,7 @@ void LocallabSharp::updateGUIToMode(const modeType new_type) sharcontrast->hide(); sharblur->hide(); shargam->hide(); - sharamount->hide(); + sharamount->show(); shardamping->hide(); shariter->hide(); // Specific Simple mode widgets are shown in Normal mode @@ -2475,11 +2477,25 @@ void LocallabSharp::updateGUIToMode(const modeType new_type) shardamping->show(); shariter->show(); sharFrame->show(); + if (inverssha->get_active()) { + shargam->hide(); + shargam->setValue(defSpot.shargam); + } } } void LocallabSharp::inversshaChanged() { + const LocallabParams::LocallabSpot defSpot; + const int mode = complexity->get_active_row_number(); + if (inverssha->get_active()) { + shargam->hide(); + shargam->setValue(defSpot.shargam); + } else { + if(mode == Expert) { + shargam->show(); + } + } if (isLocActivated && exp->getEnabled()) { if (listener) { if (inverssha->get_active()) { diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index 21876607d..769f1256f 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -221,7 +221,7 @@ ModifyInstallNames 2>&1 cp ${LOCAL_PREFIX}/lib/libpng16.16.dylib "${CONTENTS}/Frameworks/libpng16.16.dylib" # Copy libjxl_cms to the app bundle -cp ${LOCAL_PREFIX}/lib/libjxl_cms.0.10.dylib "${CONTENTS}/Frameworks/libjxl_cms.0.10.dylib" +cp ${LOCAL_PREFIX}/lib/libjxl_cms.*.dylib "${CONTENTS}/Frameworks" # Copy graphite to Frameworks cp ${LOCAL_PREFIX}/lib/libgraphite2.3.dylib "${CONTENTS}/Frameworks" @@ -269,13 +269,16 @@ done msg "Build GTK3 databases:" mkdir -p "${RESOURCES}"/share/gtk-3.0 mkdir -p "${ETC}"/gtk-3.0 -"${LOCAL_PREFIX}"/bin/gdk-pixbuf-query-loaders "${LIB}"/libpixbufloader-*.so > "${ETC}"/gtk-3.0/gdk-pixbuf.loaders +"${LOCAL_PREFIX}"/bin/gdk-pixbuf-query-loaders "${LIB}"/libpixbufloader*.so > "${ETC}"/gtk-3.0/gdk-pixbuf.loaders "${LOCAL_PREFIX}"/bin/gtk-query-immodules-3.0 "${LIB}"/im-* > "${ETC}"/gtk-3.0/gtk.immodules || "${LOCAL_PREFIX}"/bin/gtk-query-immodules "${LIB}"/im-* > "${ETC}"/gtk-3.0/gtk.immodules sed -i.bak -e "s|${PWD}/RawTherapee.app/Contents/|/Applications/RawTherapee.app/Contents/|" "${ETC}"/gtk-3.0/gdk-pixbuf.loaders "${ETC}/gtk-3.0/gtk.immodules" sed -i.bak -e "s|${LOCAL_PREFIX}/share/|/Applications/RawTherapee.app/Contents/Resources/share/|" "${ETC}"/gtk-3.0/gtk.immodules sed -i.bak -e "s|${LOCAL_PREFIX}/|/Applications/RawTherapee.app/Contents/Frameworks/|" "${ETC}"/gtk-3.0/gtk.immodules rm "${ETC}"/*/*.bak +# Change a relative path for the SVG pixbufloader +sudo install_name_tool -change @rpath/librsvg-2.2.dylib /Applications/RawTherapee.app/Contents/Frameworks/librsvg-2.2.dylib RawTherapee.app/Contents/Frameworks/libpixbufloader_svg.so + # Install names ModifyInstallNames 2>/dev/null