Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package ristretto for openSUSE:Factory checked in at 2022-07-11 19:09:51 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ristretto (Old) and /work/SRC/openSUSE:Factory/.ristretto.new.1523 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ristretto" Mon Jul 11 19:09:51 2022 rev:51 rq:988333 version:0.12.3 Changes: -------- --- /work/SRC/openSUSE:Factory/ristretto/ristretto.changes 2022-01-20 00:13:26.950633160 +0100 +++ /work/SRC/openSUSE:Factory/.ristretto.new.1523/ristretto.changes 2022-07-11 19:11:13.839768338 +0200 @@ -1,0 +2,25 @@ +Sun Jul 10 17:19:40 UTC 2022 - Marcel Kuehlhorn <[email protected]> + +- Update to version 0.12.3 + * thumbnailer: Fall back on lower qualities in case of + unsupported flavor (gxo#apps/ristretto#81) + * Secure error handling when opening multiple files + * Use `G_FILE_MONITOR_WATCH_MOVES` for file monitoring + * Do not keep sticky state when current file is removed + * Fix management of transaction source id + * Correctly handle deletion when there is only one image + (gxo#apps/ristretto#89) + * Update iter list on insertion and deletion + (gxo#apps/ristretto#88) + * build: Fix intltool lock file problem during make distcheck + * Display error message on stderr + * i18n: Use `xfce_textdomain()` to initialize translations + * Ensure that an error is set if no pixbuf is available + * Fix some memory leaks + * flatpak: Some updates from Flathub + * Remove old icon files + * Remove TODO file + * Flatpak: Add libopenraw dependency + * Translation Updates + +------------------------------------------------------------------- Old: ---- ristretto-0.12.2.tar.bz2 New: ---- ristretto-0.12.3.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ristretto.spec ++++++ --- /var/tmp/diff_new_pack.MiFEws/_old 2022-07-11 19:11:14.267768959 +0200 +++ /var/tmp/diff_new_pack.MiFEws/_new 2022-07-11 19:11:14.271768965 +0200 @@ -18,7 +18,7 @@ %bcond_with git Name: ristretto -Version: 0.12.2 +Version: 0.12.3 Release: 0lib Summary: Image viewer for the Xfce Desktop Environment License: GPL-2.0-or-later ++++++ ristretto-0.12.2.tar.bz2 -> ristretto-0.12.3.tar.bz2 ++++++ ++++ 2160 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/ChangeLog new/ristretto-0.12.3/ChangeLog --- old/ristretto-0.12.2/ChangeLog 2022-01-14 12:26:53.000000000 +0100 +++ new/ristretto-0.12.3/ChangeLog 2022-07-09 22:49:33.000000000 +0200 @@ -1,3 +1,271 @@ +commit 5aade5c6e1b4b0a815aa4c336fabb3b2a7a92b5a +Author: Anonymous <[email protected]> +Date: Tue Jul 5 00:49:58 2022 +0200 + + I18n: Update translation ko (100%). + + 206 translated messages. + + Transifex (https://www.transifex.com/xfce/public/). + +commit 4b67569ed5061d36279c32ac72b8dd649760d958 +Author: Ga??l Bonithon <[email protected]> +Date: Sun Jul 3 16:11:17 2022 +0200 + + thumbnailer: Fall back on lower qualities in case of unsupported flavor + + Replaces: de65c2f23ce2b5b84d5f6de9e7568e707073bf3f + Related: #81 + +commit f40f8cd591b773aeed6afac0e22715cd5bb8d4a9 +Author: Ga??l Bonithon <[email protected]> +Date: Sun Jul 3 11:28:57 2022 +0200 + + Secure error handling when opening multiple files + + Although this opening mode is made for a small number of files, there is + no guarantee that this is respected and there is therefore a risk of + integer overflow. + + Related: !33 + +commit e77550803f83d64dfcc02f49452476f602887748 +Author: Anonymous <[email protected]> +Date: Fri Jul 1 12:51:07 2022 +0200 + + I18n: Update translation tr (100%). + + 206 translated messages. + + Transifex (https://www.transifex.com/xfce/public/). + +commit 34dd6350c288c7e76fc168e7476515113b36c99b +Author: Ga??l Bonithon <[email protected]> +Date: Tue Jun 14 09:10:01 2022 +0200 + + Use `G_FILE_MONITOR_WATCH_MOVES` for file monitoring + + For file monitoring only, not for directory monitoring, where this is + unnecessary. The rationale is that it allows for proper handling of file + renaming, which otherwise requires directory monitoring to receive the + `G_FILE_MONITOR_EVENT_CREATED` event. + + Requires: GLib 2.46 + +commit f02794eb51a1c48ac64efcbdb46f0dba39051c4f +Author: Ga??l Bonithon <[email protected]> +Date: Mon Jun 13 22:52:17 2022 +0200 + + Do not keep sticky state when current file is removed + + Unlike what was done in d135e3ad185c90cf3527b786b856e1bfffe30cfc. This + allows in particular to stay on the current image when renaming it, + which is done via a deleted-created pair, at least when the monitoring + is done at the directory level. The case of file monitoring, which only + works halfway, is treated in the next commit. + +commit 89dfeeb7f5e38826d98b78c896e6d93a4935eb92 +Author: Ga??l Bonithon <[email protected]> +Date: Mon Jun 13 18:25:57 2022 +0200 + + Fix management of transaction source id + +commit fe18deb2b60c98b314ecda0605d117ff778dacb4 +Author: Ga??l Bonithon <[email protected]> +Date: Sun Jun 12 12:13:12 2022 +0200 + + flatpak: Some updates from Flathub + +commit 37cb321608508cd0d556f409d8da9897edc3232a +Author: Ga??l Bonithon <[email protected]> +Date: Tue Jun 7 19:14:04 2022 +0200 + + Correctly handle deletion when there is only one image + + A double regression, introduced in: + d135e3ad185c90cf3527b786b856e1bfffe30cfc + a849a32050cd5b484da71cc515b70386f46d1f9b + + The first one causes a crash (division by zero), the second one causes + critical warnings. + + Fixes: #89 + +commit 3605979c12e4adf2f971d4074ec9e7f7ecc136e0 +Author: Ga??l Bonithon <[email protected]> +Date: Sat May 14 19:20:47 2022 +0200 + + Update iter list on insertion and deletion + + Another mistake in a849a32050cd5b484da71cc515b70386f46d1f9b, from which + this update becomes necessary. + + Fixes: #88 + +commit 103b7af4adaa21088525a0f7a073039b169dccbd +Author: Ga??l Bonithon <[email protected]> +Date: Fri May 13 19:00:58 2022 +0200 + + build: Fix intltool lock file problem during make distcheck + + See https://mail.xfce.org/pipermail/xfce4-dev/2022-May/032915.html + +commit 69e75422c82c91a0072e872a7901a61698b68d0a +Author: Anonymous <[email protected]> +Date: Sun Apr 24 12:53:52 2022 +0200 + + I18n: Update translation ms (100%). + + 206 translated messages. + + Transifex (https://www.transifex.com/xfce/public/). + +commit 2a6a2b7867293bb8ef1c67504ef3bb5411c362ce +Author: Anonymous <[email protected]> +Date: Fri Apr 1 00:50:31 2022 +0200 + + I18n: Update translation tr (100%). + + 206 translated messages. + + Transifex (https://www.transifex.com/xfce/public/). + +commit 20924941a3989109388ced8d617589051282d2e8 +Author: Anonymous <[email protected]> +Date: Sun Mar 20 00:50:28 2022 +0100 + + I18n: Update translation da (100%). + + 206 translated messages. + + Transifex (https://www.transifex.com/xfce/public/). + +commit 44327a53d3a1dfe63b72efbe651642d6a91b3733 +Author: Ga??l Bonithon <[email protected]> +Date: Thu Mar 17 12:11:12 2022 +0100 + + Remove old icon files + + Related to !10. + +commit cc2de997d2a93453393d151cad7929e5ddcd2168 +Author: ??po <[email protected]> +Date: Thu Mar 17 00:52:19 2022 +0100 + + I18n: Update translation el (100%). + + 206 translated messages. + + Transifex (https://www.transifex.com/xfce/public/). + +commit f50734aa276e08dfc6e976fb098497edda59a378 +Author: Anonymous <[email protected]> +Date: Mon Mar 14 12:52:30 2022 +0100 + + I18n: Update translation da (100%). + + 206 translated messages. + + Transifex (https://www.transifex.com/xfce/public/). + +commit df97e49a803998b6d3e1de02cca713ebf7eb2c03 +Author: Anonymous <[email protected]> +Date: Mon Mar 14 00:50:20 2022 +0100 + + I18n: Update translation da (98%). + + 203 translated messages, 3 untranslated messages. + + Transifex (https://www.transifex.com/xfce/public/). + +commit 9b05cb65f475ded3e1d0ca0bc5ec836a41e24f19 +Author: Ga??l Bonithon <[email protected]> +Date: Sat Mar 12 20:32:51 2022 +0100 + + Display error message on stderr + +commit 63ada24f0a07efb79ff437dbb2cf56b97c109535 +Author: Ga??l Bonithon <[email protected]> +Date: Sat Mar 12 16:33:06 2022 +0100 + + i18n: Use `xfce_textdomain()` to initialize translations + + We already depend on libxfce4util, it's the same code in one line, and + the check for `bind_textdomain_codeset()` was not done here while it is + done in libxfce4util, which is safer: see + https://www.gnu.org/software/gnulib/manual/html_node/bind_005ftextdomain_005fcodeset.html + +commit 1aa42b3be7cc301a59d982a8701a4696874aa17e +Author: Michael Martins <[email protected]> +Date: Tue Mar 8 12:51:39 2022 +0100 + + I18n: Update translation pt_BR (100%). + + 206 translated messages. + + Transifex (https://www.transifex.com/xfce/public/). + +commit 388cd3918c3e32fc0e917d01dd0a1b2e14ad0b02 +Author: ???????????? <[email protected]> +Date: Tue Mar 1 12:51:24 2022 +0100 + + I18n: Update translation zh_CN (100%). + + 206 translated messages. + + Transifex (https://www.transifex.com/xfce/public/). + +commit c95e1efb8839af21758298c83546c8b4d63a48f8 +Author: Ga??l Bonithon <[email protected]> +Date: Tue Feb 8 15:52:12 2022 +0100 + + Remove TODO file + +commit 3eea0ee4c1916e2233fd6f452a2228e8df37e59a +Author: Ga??l Bonithon <[email protected]> +Date: Mon Feb 7 22:29:46 2022 +0100 + + Flatpak: Add libopenraw dependency + +commit dd09dba0d8572847115770def727a00bc6f23ba8 +Author: Ga??l Bonithon <[email protected]> +Date: Sat Feb 5 10:46:41 2022 +0100 + + Ensure that an error is set if no pixbuf is available + + It shouldn't happen, but it does: see e.g. + https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/issues/204. + + Related to https://gitlab.xfce.org/xfce/tumbler/-/issues/44#note_42317. + +commit c59f3b849a138184e618f23b39a461a4e14e0064 +Author: Anonymous <[email protected]> +Date: Fri Feb 4 00:50:08 2022 +0100 + + I18n: Update translation pt_BR (100%). + + 206 translated messages. + + Transifex (https://www.transifex.com/xfce/public/). + +commit 22f7d07ed22d6921dd2b6bec5263f566113a5037 +Author: Ga??l Bonithon <[email protected]> +Date: Sat Jan 15 19:47:52 2022 +0100 + + Fix some memory leaks + +commit 75f9a64af99eb06e82852925179749d733914703 +Author: Ga??l Bonithon <[email protected]> +Date: Fri Jan 14 12:30:51 2022 +0100 + + Back to development + +commit f40fa28e4c249809e398e918a2e3983c3c63efd5 +Author: Ga??l Bonithon <[email protected]> +Date: Fri Jan 14 12:29:25 2022 +0100 + + Updates for release + commit 3cad2c06e59ad6325cb74954026346050d3ea91a Author: Ga??l Bonithon <[email protected]> Date: Tue Jan 11 11:52:42 2022 +0100 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/Makefile.am new/ristretto-0.12.3/Makefile.am --- old/ristretto-0.12.2/Makefile.am 2022-01-09 17:47:54.000000000 +0100 +++ new/ristretto-0.12.3/Makefile.am 2022-07-03 15:34:17.000000000 +0200 @@ -30,6 +30,7 @@ intltool-extract \ intltool-merge \ intltool-update \ + po/.intltool-merge-cache.lock \ $(desktop_DATA) \ $(appdata_DATA) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/NEWS new/ristretto-0.12.3/NEWS --- old/ristretto-0.12.2/NEWS 2022-01-14 12:25:41.000000000 +0100 +++ new/ristretto-0.12.3/NEWS 2022-07-09 22:48:09.000000000 +0200 @@ -1,3 +1,29 @@ +0.12.3 (2022-07-09) +====== +- Bug Fixes: + - thumbnailer: Fall back on lower qualities in case of unsupported flavor (#81) + - Secure error handling when opening multiple files + - Use `G_FILE_MONITOR_WATCH_MOVES` for file monitoring + - Do not keep sticky state when current file is removed + - Fix management of transaction source id + - Correctly handle deletion when there is only one image (#89) + - Update iter list on insertion and deletion (#88) + - build: Fix intltool lock file problem during make distcheck + - Display error message on stderr + - i18n: Use `xfce_textdomain()` to initialize translations + - Ensure that an error is set if no pixbuf is available + - Fix some memory leaks + +- Code Refactoring: + - flatpak: Some updates from Flathub + - Remove old icon files + - Remove TODO file + - Flatpak: Add libopenraw dependency + +- Translation Updates: + Chinese (China), Danish, Greek, Korean, Malay, Portuguese (Brazil), + Turkish + 0.12.2 (2022-01-14) ====== - New Features: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/config.h.in new/ristretto-0.12.3/config.h.in --- old/ristretto-0.12.2/config.h.in 2022-01-14 12:26:29.000000000 +0100 +++ new/ristretto-0.12.3/config.h.in 2022-07-09 22:49:05.000000000 +0200 @@ -9,12 +9,15 @@ /* Name of default gettext domain */ #undef GETTEXT_PACKAGE -/* Warn when using post 2_44 APIs */ +/* Warn when using post 2_46 APIs */ #undef GLIB_VERSION_MAX_ALLOWED -/* Don't warn about post 2_44 deprecations */ +/* Don't warn about post 2_46 deprecations */ #undef GLIB_VERSION_MIN_REQUIRED +/* Use GLib structured logging */ +#undef G_LOG_USE_STRUCTURED + /* Define to 1 if you have the <inttypes.h> header file. */ #undef HAVE_INTTYPES_H diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/configure.ac new/ristretto-0.12.3/configure.ac --- old/ristretto-0.12.2/configure.ac 2022-01-14 12:26:11.000000000 +0100 +++ new/ristretto-0.12.3/configure.ac 2022-07-09 22:48:36.000000000 +0200 @@ -16,8 +16,8 @@ dnl *************************** m4_define([ristretto_version_major], [0]) m4_define([ristretto_version_minor], [12]) -m4_define([ristretto_version_micro], [2]) -m4_define([ristretto_version_build], [r3cad2c06]) +m4_define([ristretto_version_micro], [3]) +m4_define([ristretto_version_build], [r5aade5c6]) m4_define([ristretto_version_tag], []) # Leave empty for releases m4_define([ristretto_version], [ristretto_version_major().ristretto_version_minor().ristretto_version_micro()ifelse(ristretto_version_tag(), [], [], [ristretto_version_tag()-ristretto_version_build()])]) @@ -55,9 +55,9 @@ dnl Check for i18n support XDT_I18N([]) -AC_DEFINE(GLIB_VERSION_MAX_ALLOWED, GLIB_VERSION_2_44, Warn when using post 2_44 APIs) -AC_DEFINE(GLIB_VERSION_MIN_REQUIRED, GLIB_VERSION_2_44, Don't warn about post 2_44 deprecations) -XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.44.0]) +AC_DEFINE(GLIB_VERSION_MAX_ALLOWED, GLIB_VERSION_2_46, Warn when using post 2_46 APIs) +AC_DEFINE(GLIB_VERSION_MIN_REQUIRED, GLIB_VERSION_2_46, Don't warn about post 2_46 deprecations) +XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.46.0]) XDT_CHECK_PACKAGE([GTK], [gtk+-3.0], [3.22.0]) XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-2], [4.16.0]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/org.xfce.ristretto.appdata.xml.in new/ristretto-0.12.3/org.xfce.ristretto.appdata.xml.in --- old/ristretto-0.12.2/org.xfce.ristretto.appdata.xml.in 2022-01-14 12:25:41.000000000 +0100 +++ new/ristretto-0.12.3/org.xfce.ristretto.appdata.xml.in 2022-07-09 22:48:09.000000000 +0200 @@ -36,6 +36,7 @@ <launchable type="desktop-id">org.xfce.ristretto.desktop</launchable> <content_rating type="oars-1.1"/> <releases> + <release date="2022-07-09" version="0.12.3"/> <release date="2022-01-14" version="0.12.2"/> <release date="2021-11-26" version="0.12.1"/> <release date="2021-10-11" version="0.12.0"/> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/po/da.po new/ristretto-0.12.3/po/da.po --- old/ristretto-0.12.2/po/da.po 2021-12-11 18:09:21.000000000 +0100 +++ new/ristretto-0.12.3/po/da.po 2022-07-03 15:34:18.000000000 +0200 @@ -4,14 +4,14 @@ # # Translators: # Per Kongstad <[email protected]>, 2008-2009 -# scootergrisen, 2016-2021 +# scootergrisen, 2016-2022 msgid "" msgstr "" "Project-Id-Version: Xfce Apps\n" "Report-Msgid-Bugs-To: [email protected]\n" "POT-Creation-Date: 2021-12-10 12:50+0100\n" -"PO-Revision-Date: 2021-12-10 11:50+0000\n" -"Last-Translator: Xfce Bot <[email protected]>\n" +"PO-Revision-Date: 2013-07-03 18:30+0000\n" +"Last-Translator: scootergrisen, 2016-2022\n" "Language-Team: Danish (http://www.transifex.com/xfce/xfce-apps/language/da/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -54,17 +54,17 @@ #: ../src/main_window.c:42 msgid "Some files could not be opened: see the text logs for details" -msgstr "" +msgstr "Nogle filer kunne ikke ??bnes: se tekstloggene for detaljer" #: ../src/main_window.c:43 #, c-format msgid "An error occurred when deleting image '%s' from disk" -msgstr "" +msgstr "Der opstod en fejl under sletning af billedet '%s' fra disken" #: ../src/main_window.c:44 #, c-format msgid "An error occurred when sending image '%s' to trash" -msgstr "" +msgstr "Der opstod en fejl under sending af billedet '%s' til papirkurven" #: ../src/main_window.c:329 msgid "_File" @@ -545,7 +545,7 @@ #: ../src/main_window.c:2929 msgid "translator-credits" -msgstr "Per Kongstad\n\nDansk-gruppen\nWebsted http://dansk-gruppen.dk\nE-mail <[email protected]>" +msgstr "Per Kongstad" #: ../src/main_window.c:3479 msgid "Open image" @@ -870,19 +870,19 @@ #: ../src/image_list.c:32 msgid "No supported image type found in the directory" -msgstr "" +msgstr "Ingen underst??ttede billedtype fundet i mappen" #: ../src/image_list.c:33 msgid "Directory only partially loaded" -msgstr "" +msgstr "Mappe kun delvist indl??st" #: ../src/image_list.c:34 msgid "Could not load directory" -msgstr "" +msgstr "Kunne ikke indl??se mappe" #: ../src/image_list.c:35 msgid "Unsupported mime type" -msgstr "" +msgstr "Ikke-underst??ttet MIME-type" #: ../src/thumbnailer.c:292 msgid "" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/po/el.po new/ristretto-0.12.3/po/el.po --- old/ristretto-0.12.2/po/el.po 2021-12-11 18:09:21.000000000 +0100 +++ new/ristretto-0.12.3/po/el.po 2022-07-03 15:34:18.000000000 +0200 @@ -3,6 +3,7 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: +# ??po. <[email protected]>, 2022 # ??po. <[email protected]>, 2016 # ??po. <[email protected]>, 2017 # Efstathios Iosifidis <[email protected]>, 2012 @@ -16,8 +17,8 @@ "Project-Id-Version: Xfce Apps\n" "Report-Msgid-Bugs-To: [email protected]\n" "POT-Creation-Date: 2021-12-10 12:50+0100\n" -"PO-Revision-Date: 2021-12-10 11:50+0000\n" -"Last-Translator: Xfce Bot <[email protected]>\n" +"PO-Revision-Date: 2013-07-03 18:30+0000\n" +"Last-Translator: ??po. <[email protected]>, 2022\n" "Language-Team: Greek (http://www.transifex.com/xfce/xfce-apps/language/el/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -60,17 +61,17 @@ #: ../src/main_window.c:42 msgid "Some files could not be opened: see the text logs for details" -msgstr "" +msgstr "???????????????? ???????????????????? ?????????????????? ??????????????: ?????????? ?????? ???????????????????? ?????? ????????????????????????" #: ../src/main_window.c:43 #, c-format msgid "An error occurred when deleting image '%s' from disk" -msgstr "" +msgstr "???????????? ???????? ?????? ???????????????? ?????? ?????????????? '%s' ?????? ???? ??????????" #: ../src/main_window.c:44 #, c-format msgid "An error occurred when sending image '%s' to trash" -msgstr "" +msgstr "???????????? ???????? ?????? ???????????????? ?????? ?????????????? '%s' ?????? ????????????????????" #: ../src/main_window.c:329 msgid "_File" @@ -145,7 +146,7 @@ #: ../src/main_window.c:378 msgid "_Copy image to clipboard" -msgstr "" +msgstr "_?????????????????? ?????????????? ?????? ????????????????" #: ../src/main_window.c:384 msgid "_Open with" @@ -257,7 +258,7 @@ #: ../src/main_window.c:471 msgid "_Default Zoom" -msgstr "" +msgstr "_?????????????????????????? ??????????????????" #: ../src/main_window.c:478 msgid "_Rotation" @@ -458,7 +459,7 @@ #. Icon-name #: ../src/main_window.c:736 msgid "_Smart Zoom" -msgstr "" +msgstr "_???????????? ??????????????????" #: ../src/main_window.c:874 msgid "Images" @@ -876,19 +877,19 @@ #: ../src/image_list.c:32 msgid "No supported image type found in the directory" -msgstr "" +msgstr "?????? ?????????????? ?????????????????????????????? ?????????? ?????????????? ?????????????? ???????? ????????????????" #: ../src/image_list.c:33 msgid "Directory only partially loaded" -msgstr "" +msgstr "???????????? ?????????????? ??????????????????" #: ../src/image_list.c:34 msgid "Could not load directory" -msgstr "" +msgstr "???????????????? ???????????????? ??????????????????" #: ../src/image_list.c:35 msgid "Unsupported mime type" -msgstr "" +msgstr "???? ?????????????????????????????? ?????????? mime" #: ../src/thumbnailer.c:292 msgid "" @@ -950,11 +951,11 @@ #: ../org.xfce.ristretto.appdata.xml.in.h:1 msgid "Ristretto" -msgstr "" +msgstr "Ristretto" #: ../org.xfce.ristretto.appdata.xml.in.h:2 msgid "Fast and lightweight image viewer" -msgstr "" +msgstr "?????????????? ?????? ???????????? ?????????????????? ???????????????????????? ??????????????" #: ../org.xfce.ristretto.appdata.xml.in.h:4 msgid "" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/po/ko.po new/ristretto-0.12.3/po/ko.po --- old/ristretto-0.12.2/po/ko.po 2021-12-11 18:09:21.000000000 +0100 +++ new/ristretto-0.12.3/po/ko.po 2022-07-09 22:34:08.000000000 +0200 @@ -4,14 +4,14 @@ # # Translators: # ?????????(Jung-Kyu Park) <[email protected]>, 2016-2017 -# Seong-ho Cho <[email protected]>, 2012-2013,2015-2016,2019 +# Seong-ho Cho <[email protected]>, 2012-2013,2015-2016,2019,2022 msgid "" msgstr "" "Project-Id-Version: Xfce Apps\n" "Report-Msgid-Bugs-To: [email protected]\n" "POT-Creation-Date: 2021-12-10 12:50+0100\n" -"PO-Revision-Date: 2021-12-10 11:50+0000\n" -"Last-Translator: Xfce Bot <[email protected]>\n" +"PO-Revision-Date: 2013-07-03 18:30+0000\n" +"Last-Translator: Seong-ho Cho <[email protected]>, 2012-2013,2015-2016,2019,2022\n" "Language-Team: Korean (http://www.transifex.com/xfce/xfce-apps/language/ko/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -54,17 +54,17 @@ #: ../src/main_window.c:42 msgid "Some files could not be opened: see the text logs for details" -msgstr "" +msgstr "?????? ????????? ??? ??? ????????????: ????????? ????????? ????????? ????????? ??????????????????" #: ../src/main_window.c:43 #, c-format msgid "An error occurred when deleting image '%s' from disk" -msgstr "" +msgstr "??????????????? '%s' ????????? ?????? ??? ????????? ??????????????????" #: ../src/main_window.c:44 #, c-format msgid "An error occurred when sending image '%s' to trash" -msgstr "" +msgstr "???????????? '%s' ????????? ????????? ??? ????????? ??????????????????" #: ../src/main_window.c:329 msgid "_File" @@ -139,7 +139,7 @@ #: ../src/main_window.c:378 msgid "_Copy image to clipboard" -msgstr "" +msgstr "????????? ??????????????? ??????(_C)" #: ../src/main_window.c:384 msgid "_Open with" @@ -251,7 +251,7 @@ #: ../src/main_window.c:471 msgid "_Default Zoom" -msgstr "" +msgstr "?????? ?????????(_D)" #: ../src/main_window.c:478 msgid "_Rotation" @@ -452,7 +452,7 @@ #. Icon-name #: ../src/main_window.c:736 msgid "_Smart Zoom" -msgstr "" +msgstr "????????? ??????(_S)" #: ../src/main_window.c:874 msgid "Images" @@ -870,19 +870,19 @@ #: ../src/image_list.c:32 msgid "No supported image type found in the directory" -msgstr "" +msgstr "??????????????? ???????????? ?????? ?????? ????????? ????????????" #: ../src/image_list.c:33 msgid "Directory only partially loaded" -msgstr "" +msgstr "?????????????????? ????????? ??????????????????" #: ../src/image_list.c:34 msgid "Could not load directory" -msgstr "" +msgstr "???????????? ????????? ????????? ??? ????????????" #: ../src/image_list.c:35 msgid "Unsupported mime type" -msgstr "" +msgstr "???????????? ?????? MIME ??????" #: ../src/thumbnailer.c:292 msgid "" @@ -944,11 +944,11 @@ #: ../org.xfce.ristretto.appdata.xml.in.h:1 msgid "Ristretto" -msgstr "" +msgstr "???????????????" #: ../org.xfce.ristretto.appdata.xml.in.h:2 msgid "Fast and lightweight image viewer" -msgstr "" +msgstr "????????? ????????? ?????? ?????? ????????????" #: ../org.xfce.ristretto.appdata.xml.in.h:4 msgid "" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/po/ms.po new/ristretto-0.12.3/po/ms.po --- old/ristretto-0.12.2/po/ms.po 2021-12-11 18:09:21.000000000 +0100 +++ new/ristretto-0.12.3/po/ms.po 2022-07-03 15:34:18.000000000 +0200 @@ -3,15 +3,15 @@ # This file is distributed under the same license as the PACKAGE package. # # Translators: -# abuyop <[email protected]>, 2014-2017,2019 +# abuyop <[email protected]>, 2014-2017,2019,2022 # Puretech <[email protected]>, 2016 msgid "" msgstr "" "Project-Id-Version: Xfce Apps\n" "Report-Msgid-Bugs-To: [email protected]\n" "POT-Creation-Date: 2021-12-10 12:50+0100\n" -"PO-Revision-Date: 2021-12-10 11:50+0000\n" -"Last-Translator: Xfce Bot <[email protected]>\n" +"PO-Revision-Date: 2013-07-03 18:30+0000\n" +"Last-Translator: abuyop <[email protected]>, 2014-2017,2019,2022\n" "Language-Team: Malay (http://www.transifex.com/xfce/xfce-apps/language/ms/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -54,17 +54,17 @@ #: ../src/main_window.c:42 msgid "Some files could not be opened: see the text logs for details" -msgstr "" +msgstr "Beberapa fail gagal dibuka; sila rujuk log teks untuk perincian" #: ../src/main_window.c:43 #, c-format msgid "An error occurred when deleting image '%s' from disk" -msgstr "" +msgstr "Satu ralat berlaku ketika memadam imej '%s' daripada cakera" #: ../src/main_window.c:44 #, c-format msgid "An error occurred when sending image '%s' to trash" -msgstr "" +msgstr "Satu ralat berlaku ketika menghantar imej '%s' ke dalam tong sampah" #: ../src/main_window.c:329 msgid "_File" @@ -139,7 +139,7 @@ #: ../src/main_window.c:378 msgid "_Copy image to clipboard" -msgstr "" +msgstr "Sa_lin imej ke papan keratan" #: ../src/main_window.c:384 msgid "_Open with" @@ -251,7 +251,7 @@ #: ../src/main_window.c:471 msgid "_Default Zoom" -msgstr "" +msgstr "Zum _Lalai" #: ../src/main_window.c:478 msgid "_Rotation" @@ -452,7 +452,7 @@ #. Icon-name #: ../src/main_window.c:736 msgid "_Smart Zoom" -msgstr "" +msgstr "Zum _Pintar" #: ../src/main_window.c:874 msgid "Images" @@ -870,19 +870,19 @@ #: ../src/image_list.c:32 msgid "No supported image type found in the directory" -msgstr "" +msgstr "Tiada jenis imej disokong ditemui dalam direktori" #: ../src/image_list.c:33 msgid "Directory only partially loaded" -msgstr "" +msgstr "Direktori hanya dimuatkan separa" #: ../src/image_list.c:34 msgid "Could not load directory" -msgstr "" +msgstr "Tidak dapat memuatkan direktori" #: ../src/image_list.c:35 msgid "Unsupported mime type" -msgstr "" +msgstr "Jenis mime tidak disokong" #: ../src/thumbnailer.c:292 msgid "" @@ -944,11 +944,11 @@ #: ../org.xfce.ristretto.appdata.xml.in.h:1 msgid "Ristretto" -msgstr "" +msgstr "Ristretto" #: ../org.xfce.ristretto.appdata.xml.in.h:2 msgid "Fast and lightweight image viewer" -msgstr "" +msgstr "Pelihat imej yang ringan dan pantas" #: ../org.xfce.ristretto.appdata.xml.in.h:4 msgid "" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/po/pt_BR.po new/ristretto-0.12.3/po/pt_BR.po --- old/ristretto-0.12.2/po/pt_BR.po 2021-12-11 18:09:21.000000000 +0100 +++ new/ristretto-0.12.3/po/pt_BR.po 2022-07-03 15:34:18.000000000 +0200 @@ -6,6 +6,7 @@ # Andre Miranda <[email protected]>, 2019 # Andre Miranda <[email protected]>, 2016-2017 # Andre Miranda <[email protected]>, 2015 +# C. E., 2022 # Frederico Schardong <[email protected]>, 2011 # Lucas Wilm <[email protected]>, 2021 # Michael Martins <[email protected]>, 2019 @@ -15,8 +16,8 @@ "Project-Id-Version: Xfce Apps\n" "Report-Msgid-Bugs-To: [email protected]\n" "POT-Creation-Date: 2021-12-10 12:50+0100\n" -"PO-Revision-Date: 2021-12-10 11:50+0000\n" -"Last-Translator: Xfce Bot <[email protected]>\n" +"PO-Revision-Date: 2022-03-08 01:02+0000\n" +"Last-Translator: Michael Martins <[email protected]>\n" "Language-Team: Portuguese (Brazil) (http://www.transifex.com/xfce/xfce-apps/language/pt_BR/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -457,7 +458,7 @@ #. Icon-name #: ../src/main_window.c:736 msgid "_Smart Zoom" -msgstr "" +msgstr "_Smart Zoom" #: ../src/main_window.c:874 msgid "Images" @@ -949,7 +950,7 @@ #: ../org.xfce.ristretto.appdata.xml.in.h:1 msgid "Ristretto" -msgstr "" +msgstr "Ristretto" #: ../org.xfce.ristretto.appdata.xml.in.h:2 msgid "Fast and lightweight image viewer" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/po/tr.po new/ristretto-0.12.3/po/tr.po --- old/ristretto-0.12.2/po/tr.po 2021-12-11 18:09:21.000000000 +0100 +++ new/ristretto-0.12.3/po/tr.po 2022-07-03 17:08:03.000000000 +0200 @@ -6,7 +6,7 @@ # Ali Polatel <[email protected]>, 2015 # Ayhan YAL??INSOY <[email protected]>, 2012 # Demiray Muhterem <[email protected]>, 2019,2021 -# Emin Tufan ??etin <[email protected]>, 2020-2021 +# Emin Tufan ??etin <[email protected]>, 2020-2022 # Emin Tufan ??etin <[email protected]>, 2020 # G??kmen G??rgen <[email protected]>, 2008 # Necdet Y??cel <[email protected]>, 2015-2017 @@ -18,8 +18,8 @@ "Project-Id-Version: Xfce Apps\n" "Report-Msgid-Bugs-To: [email protected]\n" "POT-Creation-Date: 2021-12-10 12:50+0100\n" -"PO-Revision-Date: 2021-12-10 11:50+0000\n" -"Last-Translator: Xfce Bot <[email protected]>\n" +"PO-Revision-Date: 2013-07-03 18:30+0000\n" +"Last-Translator: Emin Tufan ??etin <[email protected]>, 2020-2022\n" "Language-Team: Turkish (http://www.transifex.com/xfce/xfce-apps/language/tr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -72,7 +72,7 @@ #: ../src/main_window.c:44 #, c-format msgid "An error occurred when sending image '%s' to trash" -msgstr "'%s' resmi ????p kutusuna g??nderilirken bir hata olu??tu " +msgstr "'%s' resmi ????p kutusuna g??nderilirken hata olu??tu " #: ../src/main_window.c:329 msgid "_File" @@ -249,7 +249,7 @@ #. Icon-name #: ../src/main_window.c:464 ../src/main_window.c:748 msgid "_Normal Size" -msgstr "_Normal boyut" +msgstr "_Ola??an boyut" #. Label-text #. Keyboard shortcut @@ -259,7 +259,7 @@ #: ../src/main_window.c:471 msgid "_Default Zoom" -msgstr "_Varsay??lan Yak??nla??t??rma" +msgstr "??_ntan??ml?? Yak??nla??t??rma" #: ../src/main_window.c:478 msgid "_Rotation" @@ -443,7 +443,7 @@ #: ../src/main_window.c:707 msgid "Normal" -msgstr "_Normal" +msgstr "_Ola??an" #: ../src/main_window.c:713 msgid "Large" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/po/zh_CN.po new/ristretto-0.12.3/po/zh_CN.po --- old/ristretto-0.12.2/po/zh_CN.po 2021-12-11 18:09:21.000000000 +0100 +++ new/ristretto-0.12.3/po/zh_CN.po 2022-07-03 15:34:18.000000000 +0200 @@ -7,15 +7,15 @@ # Hunt Xu <[email protected]>, 2008-2010,2016 # Mingcong Bai <[email protected]>, 2016-2017 # wuli <[email protected]>, 2008 -# ???????????? <[email protected]>, 2015-2016,2019-2021 +# ???????????? <[email protected]>, 2015-2016,2019-2022 # Mingcong Bai <[email protected]>, 2015 msgid "" msgstr "" "Project-Id-Version: Xfce Apps\n" "Report-Msgid-Bugs-To: [email protected]\n" "POT-Creation-Date: 2021-12-10 12:50+0100\n" -"PO-Revision-Date: 2021-12-10 11:50+0000\n" -"Last-Translator: Xfce Bot <[email protected]>\n" +"PO-Revision-Date: 2022-03-01 04:51+0000\n" +"Last-Translator: ???????????? <[email protected]>\n" "Language-Team: Chinese (China) (http://www.transifex.com/xfce/xfce-apps/language/zh_CN/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -850,7 +850,7 @@ #: ../src/properties_dialog.c:165 msgid "General" -msgstr "??????" +msgstr "??????" #: ../src/properties_dialog.c:171 msgid "Image" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/src/file.c new/ristretto-0.12.3/src/file.c --- old/ristretto-0.12.2/src/file.c 2022-01-09 17:49:48.000000000 +0100 +++ new/ristretto-0.12.3/src/file.c 2022-07-03 17:17:29.000000000 +0200 @@ -567,7 +567,12 @@ const gchar *thumbnail_path; guint n_pixels; + /* get the flavor, trying to fall back on lower qualities if necessary */ flavor = rstto_util_get_thumbnail_flavor (size); + while (r_file->priv->thumbnail_states[flavor] == RSTTO_THUMBNAIL_STATE_ERROR + && flavor > RSTTO_THUMBNAIL_FLAVOR_NORMAL) + flavor--; + switch (r_file->priv->thumbnail_states[flavor]) { case RSTTO_THUMBNAIL_STATE_PROCESSED: @@ -616,6 +621,9 @@ return NULL; } + if (r_file->priv->pixbufs[size] != NULL) + g_object_unref (r_file->priv->pixbufs[size]); + n_pixels = rstto_util_get_thumbnail_n_pixels (size); r_file->priv->pixbufs[size] = gdk_pixbuf_new_from_file_at_scale (thumbnail_path, n_pixels, n_pixels, TRUE, &error); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/src/image_list.c new/ristretto-0.12.3/src/image_list.c --- old/ristretto-0.12.2/src/image_list.c 2022-01-03 12:48:59.000000000 +0100 +++ new/ristretto-0.12.3/src/image_list.c 2022-07-03 17:08:03.000000000 +0200 @@ -239,7 +239,8 @@ g_signal_connect (image_list->priv->thumbnailer, "ready", G_CALLBACK (cb_rstto_thumbnailer_ready), image_list); - + g_signal_connect (image_list->priv->thumbnailer, "error", + G_CALLBACK (cb_rstto_thumbnailer_ready), image_list); } static void @@ -322,6 +323,7 @@ RsttoFile *r_file, GError **error) { + RsttoImageListIter *r_iter; GtkTreePath *path; GtkTreeIter t_iter; GFileMonitor *monitor; @@ -346,9 +348,15 @@ if (image_list->priv->dir_monitor == NULL) { - monitor = g_file_monitor_file (rstto_file_get_file (r_file), G_FILE_MONITOR_NONE, NULL, NULL); - g_signal_connect (monitor, "changed", G_CALLBACK (cb_file_monitor_changed), image_list); - image_list->priv->image_monitors = g_list_prepend (image_list->priv->image_monitors, monitor); + monitor = g_file_monitor_file (rstto_file_get_file (r_file), + G_FILE_MONITOR_WATCH_MOVES, NULL, NULL); + if (monitor != NULL) + { + g_signal_connect (monitor, "changed", + G_CALLBACK (cb_file_monitor_changed), image_list); + image_list->priv->image_monitors = + g_list_prepend (image_list->priv->image_monitors, monitor); + } } path = gtk_tree_path_new (); @@ -362,8 +370,16 @@ gtk_tree_path_free (path); for (iter = image_list->priv->iterators; iter != NULL; iter = iter->next) - if (! RSTTO_IMAGE_LIST_ITER (iter->data)->priv->sticky) + { + r_iter = iter->data; + if (! r_iter->priv->sticky) + { rstto_image_list_iter_find_file (iter->data, r_file); + r_iter->priv->sticky = TRUE; + } + else + rstto_image_list_iter_find_file (r_iter, r_iter->priv->r_file); + } return TRUE; } @@ -427,30 +443,32 @@ continue; if (r_iter->priv->link == image_list->priv->images->tail) - iter_previous (r_iter, r_iter->priv->sticky); + iter_previous (r_iter, FALSE); else - iter_next (r_iter, r_iter->priv->sticky); - - /* if the image is still the same, it's a single item list, - * and we should force the image in this iter to NULL */ - if (r_iter->priv->r_file == r_file) - { - r_iter->priv->r_file = NULL; - r_iter->priv->link = NULL; - r_iter->priv->index = -1; - g_signal_emit (r_iter, - rstto_image_list_iter_signals[RSTTO_IMAGE_LIST_ITER_SIGNAL_CHANGED], - 0, NULL); - } + iter_next (r_iter, FALSE); } - g_queue_remove (image_list->priv->images, r_file); - g_object_unref (r_file); + if (image_list->priv->images->length == 1) + { + rstto_image_list_remove_all (image_list); + return; + } + else + { + g_queue_remove (image_list->priv->images, r_file); + g_object_unref (r_file); + } path_ = gtk_tree_path_new (); gtk_tree_path_append_index (path_, index_); gtk_tree_model_row_deleted (GTK_TREE_MODEL (image_list), path_); gtk_tree_path_free (path_); + + for (iter = image_list->priv->iterators; iter != NULL; iter = iter->next) + { + r_iter = iter->data; + rstto_image_list_iter_find_file (r_iter, r_iter->priv->r_file); + } } static void @@ -734,6 +752,7 @@ switch (event_type) { case G_FILE_MONITOR_EVENT_DELETED: + case G_FILE_MONITOR_EVENT_MOVED_OUT: rstto_image_list_remove_file (image_list, r_file); if (image_list->priv->dir_monitor == NULL) { @@ -777,6 +796,13 @@ case G_FILE_MONITOR_EVENT_CHANGED: /* wait for DONE_HINT to update the image, so that we can get its mime type */ break; + case G_FILE_MONITOR_EVENT_RENAMED: + cb_file_monitor_changed (monitor, file, other_file, + G_FILE_MONITOR_EVENT_DELETED, user_data); + g_object_unref (r_file); + r_file = rstto_file_new (other_file); + rstto_image_list_add_file (image_list, r_file, NULL); + break; default: break; } @@ -881,7 +907,6 @@ iter->priv->r_file = r_file; iter->priv->index = index; iter->priv->link = g_queue_peek_nth_link (image_list->priv->images, iter->priv->index); - iter->priv->sticky = TRUE; g_signal_emit (iter, rstto_image_list_iter_signals[RSTTO_IMAGE_LIST_ITER_SIGNAL_CHANGED], @@ -960,18 +985,19 @@ { if (iter->priv->link->next != NULL) { + ret_val = TRUE; iter->priv->link = iter->priv->link->next; iter->priv->index++; } else { + ret_val = image_list->priv->images->length > 1; iter->priv->link = image_list->priv->images->head; iter->priv->index = 0; } iter->priv->r_file = iter->priv->link->data; iter->priv->sticky = sticky; - ret_val = TRUE; } if (ret_val == TRUE) @@ -1018,18 +1044,19 @@ { if (iter->priv->link->prev != NULL) { + ret_val = TRUE; iter->priv->link = iter->priv->link->prev; iter->priv->index--; } else { + ret_val = image_list->priv->images->length > 1; iter->priv->link = image_list->priv->images->tail; iter->priv->index = image_list->priv->images->length - 1; } iter->priv->r_file = iter->priv->link->data; iter->priv->sticky = sticky; - ret_val = TRUE; } if (ret_val == TRUE) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/src/image_viewer.c new/ristretto-0.12.3/src/image_viewer.c --- old/ristretto-0.12.2/src/image_viewer.c 2022-01-12 15:34:18.000000000 +0100 +++ new/ristretto-0.12.3/src/image_viewer.c 2022-07-03 15:34:18.000000000 +0200 @@ -43,6 +43,8 @@ #define MIN_VIEW_PERCENT 0.1 #define RSTTO_LINE_WIDTH 1.0 +#define ERROR_UNDETERMINED "Undetermined error" + enum { PROP_0, @@ -606,6 +608,8 @@ { RsttoImageViewer *viewer = RSTTO_IMAGE_VIEWER (object); + if (viewer->priv->transaction && viewer->priv->transaction->loader_closed_id != 0) + REMOVE_SOURCE (viewer->priv->transaction->loader_closed_id); if (viewer->priv->settings) { g_object_unref (viewer->priv->settings); @@ -641,6 +645,11 @@ g_object_unref (viewer->priv->file); viewer->priv->file = NULL; } + if (viewer->priv->error) + { + g_error_free (viewer->priv->error); + viewer->priv->error = NULL; + } G_OBJECT_CLASS (rstto_image_viewer_parent_class)->finalize (object); } @@ -1391,7 +1400,6 @@ transaction->file = file; transaction->viewer = viewer; transaction->scale = scale; - transaction->loader_closed_id = 0; if (viewer->priv->limit_quality) { @@ -1430,8 +1438,6 @@ { tr->viewer->priv->transaction = NULL; } - if (tr->loader_closed_id != 0) - REMOVE_SOURCE (tr->loader_closed_id); if (tr->error) { g_error_free (tr->error); @@ -1735,14 +1741,23 @@ { RsttoImageViewerTransaction *transaction = data; RsttoImageViewer *viewer = transaction->viewer; + GdkPixbuf *pixbuf; GtkWidget *widget = GTK_WIDGET (viewer); if (viewer->priv->transaction == transaction) { + pixbuf = gdk_pixbuf_loader_get_pixbuf (transaction->loader); + + /* cover any case where no pixbuf is available and no error is set: + * see e.g. https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/issues/204 */ + if (transaction->error == NULL && pixbuf == NULL) + g_set_error (&transaction->error, GDK_PIXBUF_ERROR, + GDK_PIXBUF_ERROR_FAILED, ERROR_UNDETERMINED); + if (transaction->error == NULL || ( g_error_matches (transaction->error, GDK_PIXBUF_ERROR, GDK_PIXBUF_ERROR_CORRUPT_IMAGE) - && gdk_pixbuf_loader_get_pixbuf (transaction->loader) != NULL + && pixbuf != NULL )) { gtk_widget_set_tooltip_text (widget, NULL); @@ -2118,7 +2133,7 @@ cairo_region_t *region; cairo_status_t status; GtkAllocation alloc; - const gchar *message = "Undetermined error"; + const gchar *message = ERROR_UNDETERMINED; /* do not redraw the image */ gtk_widget_get_allocation (user_data, &alloc); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/src/main.c new/ristretto-0.12.3/src/main.c --- old/ristretto-0.12.2/src/main.c 2022-01-01 16:12:24.000000000 +0100 +++ new/ristretto-0.12.3/src/main.c 2022-07-03 15:34:18.000000000 +0200 @@ -83,16 +83,13 @@ RsttoImageList *image_list; GtkWidget *window; - setlocale (LC_ALL, ""); - bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR); - bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); - textdomain (GETTEXT_PACKAGE); + xfce_textdomain (GETTEXT_PACKAGE, LOCALEDIR, "UTF-8"); if (!gtk_init_with_args (&argc, &argv, NULL, entries, PACKAGE, &cli_error)) { if (cli_error != NULL) { - g_print ( + g_printerr ( _("%s: %s\n\n" "Try %s --help to see a full list of\n" "available command line options.\n"), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/src/main_window.c new/ristretto-0.12.3/src/main_window.c --- old/ristretto-0.12.2/src/main_window.c 2022-01-14 12:25:41.000000000 +0100 +++ new/ristretto-0.12.3/src/main_window.c 2022-07-03 17:08:03.000000000 +0200 @@ -4094,22 +4094,21 @@ { RsttoFile *r_file; GError *error = NULL, *tmp_error = NULL; - GSList *file; + GSList *file, *deleted = NULL, *invalid = NULL; GFileInfo *info; GFile *dir; gchar *uri; - guint n, deleted = 0, invalid = 0; /* in case of several files, open only those, adding them to the list one by one: this * is expensive and supposed to be done only for a limited number of files */ if (g_slist_length (files) > 1) { - for (file = files, n = 0; file != NULL; file = file->next, n++) + for (file = files; file != NULL; file = file->next) { /* we will show only one dialog for all deleted files later */ if (! g_file_query_exists (file->data, NULL)) { - deleted |= 1 << n; + deleted = g_slist_prepend (deleted, file->data); continue; } @@ -4119,7 +4118,7 @@ if (error == NULL) error = g_error_copy (tmp_error); - invalid |= 1 << n; + invalid = g_slist_prepend (invalid, file->data); g_object_unref (r_file); g_clear_error (&tmp_error); @@ -4136,10 +4135,10 @@ /* in case of a single file, replace the list with the contents of the parent directory, * or the directory itself if the file is a directory */ else if (! g_file_query_exists (files->data, NULL)) - deleted = 1; + deleted = g_slist_prepend (deleted, files->data); else if ((info = g_file_query_info (files->data, "standard::type,standard::content-type", G_FILE_QUERY_INFO_NONE, NULL, &error)) == NULL) - invalid = 1; + invalid = g_slist_prepend (invalid, files->data); else { /* add the directory contents asynchronously */ @@ -4158,7 +4157,7 @@ rstto_main_window_add_file_to_recent_files (rstto_file_get_uri (r_file), rstto_file_get_content_type (r_file)); else - invalid = 1; + invalid = g_slist_prepend (invalid, files->data); g_object_unref (dir); g_object_unref (r_file); @@ -4167,25 +4166,26 @@ g_object_unref (info); } - if (deleted > 0 || invalid > 0) + if (deleted != NULL || invalid != NULL) { - for (n = 0; (1U << n) <= deleted; n++) - if (deleted & (1 << n)) - { - uri = g_file_get_uri (g_slist_nth_data (files, n)); - g_message ("Could not open file '%s': File does not exist", uri); - g_free (uri); - } + for (file = deleted; file != NULL; file = file->next) + { + uri = g_file_get_uri (file->data); + g_message ("Could not open file '%s': File does not exist", uri); + g_free (uri); + } - for (n = 0; (1U << n) <= invalid; n++) - if (invalid & (1 << n)) - { - uri = g_file_get_uri (g_slist_nth_data (files, n)); - g_message ("Could not open file '%s': %s", uri, error->message); - g_free (uri); - } + for (file = invalid; file != NULL; file = file->next) + { + uri = g_file_get_uri (file->data); + g_message ("Could not open file '%s': %s", uri, error->message); + g_free (uri); + } rstto_util_dialog_error (ERROR_OPEN_FAILED, NULL); + + g_slist_free (deleted); + g_slist_free (invalid); if (error != NULL) g_error_free (error); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/src/thumbnailer.c new/ristretto-0.12.3/src/thumbnailer.c --- old/ristretto-0.12.2/src/thumbnailer.c 2022-01-09 22:17:39.000000000 +0100 +++ new/ristretto-0.12.3/src/thumbnailer.c 2022-07-03 17:08:03.000000000 +0200 @@ -29,6 +29,7 @@ enum { RSTTO_THUMBNAILER_SIGNAL_READY = 0, + RSTTO_THUMBNAILER_SIGNAL_ERROR, RSTTO_THUMBNAILER_SIGNAL_COUNT }; @@ -139,6 +140,17 @@ 1, G_TYPE_OBJECT, NULL); + rstto_thumbnailer_signals[RSTTO_THUMBNAILER_SIGNAL_ERROR] = g_signal_new ("error", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, + 0, + NULL, + NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, + 1, + G_TYPE_OBJECT, + NULL); } /** @@ -448,7 +460,12 @@ if (error_code == G_IO_ERROR_CANCELLED) rstto_thumbnailer_queue_file (thumbnailer, flavor, iter->data); else + { rstto_file_set_thumbnail_state (iter->data, flavor, RSTTO_THUMBNAIL_STATE_ERROR); + g_signal_emit (thumbnailer, + rstto_thumbnailer_signals[RSTTO_THUMBNAILER_SIGNAL_ERROR], + 0, iter->data, NULL); + } g_object_unref (iter->data); thumbnailer->priv->in_process_queues[flavor] = diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/ristretto-0.12.2/src/tumbler.c new/ristretto-0.12.3/src/tumbler.c --- old/ristretto-0.12.2/src/tumbler.c 2022-01-10 19:23:57.000000000 +0100 +++ new/ristretto-0.12.3/src/tumbler.c 2022-07-09 22:49:36.000000000 +0200 @@ -728,7 +728,7 @@ * * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-thumbnails-Thumbnailer1.Queue">Queue()</link> D-Bus method. * - * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call tumbler_thumbnailer1_complete_queue() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call tumbler_thumbnailer1_complete_queue() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. * * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. */ @@ -751,7 +751,7 @@ * * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-thumbnails-Thumbnailer1.Dequeue">Dequeue()</link> D-Bus method. * - * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call tumbler_thumbnailer1_complete_dequeue() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call tumbler_thumbnailer1_complete_dequeue() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. * * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. */ @@ -773,7 +773,7 @@ * * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-thumbnails-Thumbnailer1.GetSupported">GetSupported()</link> D-Bus method. * - * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call tumbler_thumbnailer1_complete_get_supported() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call tumbler_thumbnailer1_complete_get_supported() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. * * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. */ @@ -795,7 +795,7 @@ * * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-thumbnails-Thumbnailer1.GetSchedulers">GetSchedulers()</link> D-Bus method. * - * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call tumbler_thumbnailer1_complete_get_schedulers() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call tumbler_thumbnailer1_complete_get_schedulers() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. * * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. */ @@ -817,7 +817,7 @@ * * Signal emitted when a remote caller is invoking the <link linkend="gdbus-method-org-freedesktop-thumbnails-Thumbnailer1.GetFlavors">GetFlavors()</link> D-Bus method. * - * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call tumbler_thumbnailer1_complete_get_flavors() or e.g. g_dbus_method_invocation_return_error() on it) and no order signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. + * If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call tumbler_thumbnailer1_complete_get_flavors() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned. * * Returns: %G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run. */
