Hello community,

here is the log from the commit of package sushi for openSUSE:Factory checked 
in at 2018-04-23 15:26:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sushi (Old)
 and      /work/SRC/openSUSE:Factory/.sushi.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "sushi"

Mon Apr 23 15:26:25 2018 rev:38 rq:599994 version:3.28.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/sushi/sushi.changes      2018-03-09 
10:39:52.581198797 +0100
+++ /work/SRC/openSUSE:Factory/.sushi.new/sushi.changes 2018-04-23 
15:26:38.300856793 +0200
@@ -1,0 +2,20 @@
+Fri Apr 20 21:18:30 UTC 2018 - [email protected]
+
+- Update to version 3.28.2:
+  + Fix another LibreOffice to PDF conversion regression.
+- Changes from version 3.28.1:
+  + Fix LibreOffice to PDF conversion regression.
+  + Add support for docx/pptx/xlsx MIME types.
+- Changes from version 3.28.0:
+  + Add support for GIF animations.
+  + Use LibreOffice directly instead of unoconv.
+  + Prefer LibreOffice from flatpak when installed.
+- Drop unoconv BuildRequires and Recommends, following upstream
+  changes.
+- Replace gobject-introspection-devel with
+  pkgconfig(gobject-introspection-1.0) BuildRequires.
+- Drop no longer needed post(un) handling of
+  glib2_gsettings_schema_post(un) and
+  glib2_gsettings_schema_requires macro.
+
+-------------------------------------------------------------------

Old:
----
  sushi-3.24.0.tar.xz

New:
----
  sushi-3.28.2.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ sushi.spec ++++++
--- /var/tmp/diff_new_pack.qoMkbX/_old  2018-04-23 15:26:39.252822300 +0200
+++ /var/tmp/diff_new_pack.qoMkbX/_new  2018-04-23 15:26:39.252822300 +0200
@@ -17,14 +17,13 @@
 
 
 Name:           sushi
-Version:        3.24.0
+Version:        3.28.2
 Release:        0
 Summary:        Quick Previewer for Nautilus
 License:        SUSE-GPL-2.0-with-plugin-exception
 Group:          Productivity/File utilities
 URL:            http://www.gnome.org
-Source0:        
http://download.gnome.org/sources/sushi/3.24/%{name}-%{version}.tar.xz
-BuildRequires:  gobject-introspection-devel
+Source0:        
http://download.gnome.org/sources/sushi/3.28/%{name}-%{version}.tar.xz
 BuildRequires:  intltool
 BuildRequires:  pkgconfig
 BuildRequires:  pkgconfig(clutter-1.0) >= 1.11.4
@@ -36,6 +35,7 @@
 BuildRequires:  pkgconfig(freetype2)
 BuildRequires:  pkgconfig(gjs-1.0) >= 1.38.0
 BuildRequires:  pkgconfig(glib-2.0) >= 2.29.14
+BuildRequires:  pkgconfig(gobject-introspection-1.0) >= 0.9.6
 BuildRequires:  pkgconfig(gstreamer-1.0)
 BuildRequires:  pkgconfig(gstreamer-pbutils-1.0)
 BuildRequires:  pkgconfig(gstreamer-tag-1.0)
@@ -45,15 +45,10 @@
 BuildRequires:  pkgconfig(libmusicbrainz5)
 BuildRequires:  pkgconfig(webkit2gtk-4.0)
 Recommends:     %{name}-lang
-Recommends:     unoconv
 Supplements:    nautilus
 # libsushi and the typelib were erronously installed in the system libdir...
 Obsoletes:      libsushi-1_0-0 < %{version}
 Obsoletes:      typelib-1_0-Sushi-1_0 < %{version}
-%glib2_gsettings_schema_requires
-%ifarch %{ix86} x86_64
-BuildRequires:  unoconv
-%endif
 
 %description
 Sushi is a quick previewer for Nautilus, the GNOME desktop file manager.
@@ -72,12 +67,6 @@
 find %{buildroot} -type f -name "*.la" -delete -print
 %find_lang %{name} %{?no_lang_C}
 
-%post
-%glib2_gsettings_schema_post
-
-%postun
-%glib2_gsettings_schema_postun
-
 %files
 %license COPYING
 %doc AUTHORS NEWS README

++++++ sushi-3.24.0.tar.xz -> sushi-3.28.2.tar.xz ++++++
++++ 2212 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/sushi-3.24.0/NEWS new/sushi-3.28.2/NEWS
--- old/sushi-3.24.0/NEWS       2017-04-29 01:43:09.000000000 +0200
+++ new/sushi-3.28.2/NEWS       2018-04-20 20:25:19.000000000 +0200
@@ -1,3 +1,21 @@
+3.28.2
+======
+
+- Fix another LibreOffice to PDF conversion regression
+
+3.28.1
+======
+
+- Fix LibreOffice to PDF conversion regression (Robert McQueen)
+- Add support for docx/pptx/xlsx MIME types (Robert McQueen)
+
+3.28.0
+======
+
+- Add support for GIF animations (Princeton Ferro)
+- Use LibreOffice directly instead of unoconv (Robert McQueen)
+- Prefer LibreOffice from flatpak when installed (Robert McQueen)
+
 3.24.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/sushi-3.24.0/config/compile new/sushi-3.28.2/config/compile
--- old/sushi-3.24.0/config/compile     2017-04-29 01:43:57.000000000 +0200
+++ new/sushi-3.28.2/config/compile     2018-04-19 03:40:00.000000000 +0200
@@ -3,7 +3,7 @@
 
 scriptversion=2012-10-14.11; # UTC
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 # Written by Tom Tromey <[email protected]>.
 #
 # This program is free software; you can redistribute it and/or modify
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/sushi-3.24.0/config/missing new/sushi-3.28.2/config/missing
--- old/sushi-3.24.0/config/missing     2017-04-29 01:43:57.000000000 +0200
+++ new/sushi-3.28.2/config/missing     2018-04-19 03:40:00.000000000 +0200
@@ -3,7 +3,7 @@
 
 scriptversion=2013-10-28.13; # UTC
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 # Originally written by Fran,cois Pinard <[email protected]>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
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/sushi-3.24.0/configure.ac new/sushi-3.28.2/configure.ac
--- old/sushi-3.24.0/configure.ac       2017-04-29 01:42:53.000000000 +0200
+++ new/sushi-3.28.2/configure.ac       2018-04-20 20:25:19.000000000 +0200
@@ -1,6 +1,6 @@
 dnl -*- mode: m4 -*-
 AC_PREREQ(2.63)
-AC_INIT([sushi],[3.24.0],[],[sushi])
+AC_INIT([sushi],[3.28.2],[],[sushi])
 
 AC_CONFIG_HEADERS([config/config.h])
 AC_CONFIG_SRCDIR([src/main.c])
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/sushi-3.24.0/m4/libtool.m4 new/sushi-3.28.2/m4/libtool.m4
--- old/sushi-3.24.0/m4/libtool.m4      2017-04-29 01:43:52.000000000 +0200
+++ new/sushi-3.28.2/m4/libtool.m4      2018-04-19 03:39:36.000000000 +0200
@@ -728,7 +728,6 @@
     cat <<_LT_EOF >> "$cfgfile"
 #! $SHELL
 # Generated automatically by $as_me ($PACKAGE) $VERSION
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 
 # Provide generalized library-building support services.
@@ -2867,9 +2866,6 @@
   # before this can be enabled.
   hardcode_into_libs=yes
 
-  # Add ABI-specific directories to the system library path.
-  sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
-
   # Ideally, we could use ldconfig to report *all* directores which are
   # searched for libraries, however this is still not possible.  Aside from not
   # being certain /sbin/ldconfig is available, command
@@ -2878,7 +2874,7 @@
   # appending ld.so.conf contents (and includes) to the search path.
   if test -f /etc/ld.so.conf; then
     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 
2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < 
/etc/ld.so.conf | $SED -e 's/#.*//;/^[  ]*hwcap[        ]/d;s/[:,      ]/ 
/g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
+    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
   # We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -2890,6 +2886,18 @@
   dynamic_linker='GNU/Linux ld.so'
   ;;
 
+netbsdelf*-gnu)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}${shared_ext}$versuffix 
${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+  soname_spec='${libname}${release}${shared_ext}$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=no
+  hardcode_into_libs=yes
+  dynamic_linker='NetBSD ld.elf_so'
+  ;;
+
 netbsd*)
   version_type=sunos
   need_lib_prefix=no
@@ -3549,7 +3557,7 @@
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-netbsd*)
+netbsd* | netbsdelf*-gnu)
   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
     lt_cv_deplibs_check_method='match_pattern 
/lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
   else
@@ -4427,7 +4435,7 @@
            ;;
        esac
        ;;
-      netbsd*)
+      netbsd* | netbsdelf*-gnu)
        ;;
       *qnx* | *nto*)
         # QNX uses GNU C++, but need to define -shared option too, otherwise
@@ -4939,6 +4947,9 @@
       ;;
     esac
     ;;
+  linux* | k*bsd*-gnu | gnu*)
+    _LT_TAGVAR(link_all_deplibs, $1)=no
+    ;;
   *)
     _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | 
$global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
     ;;
@@ -5001,6 +5012,9 @@
   openbsd* | bitrig*)
     with_gnu_ld=no
     ;;
+  linux* | k*bsd*-gnu | gnu*)
+    _LT_TAGVAR(link_all_deplibs, $1)=no
+    ;;
   esac
 
   _LT_TAGVAR(ld_shlibs, $1)=yes
@@ -5255,7 +5269,7 @@
       fi
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
        _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs 
$linker_flags -o $lib'
        wlarc=
@@ -5776,6 +5790,7 @@
        if test yes = "$lt_cv_irix_exported_symbol"; then
           _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs 
$deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && 
func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry 
$wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
        fi
+       _LT_TAGVAR(link_all_deplibs, $1)=no
       else
        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs 
$compiler_flags -soname $soname `test -n "$verstring" && func_echo_all 
"-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs 
$compiler_flags -soname $soname `test -n "$verstring" && func_echo_all 
"-set_version $verstring"` -update_registry $output_objdir/so_locations 
-exports_file $export_symbols -o $lib'
@@ -5797,7 +5812,7 @@
       esac
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
        _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs 
$linker_flags'  # a.out
       else
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/sushi-3.24.0/po/LINGUAS new/sushi-3.28.2/po/LINGUAS
--- old/sushi-3.24.0/po/LINGUAS 2017-04-29 01:42:39.000000000 +0200
+++ new/sushi-3.28.2/po/LINGUAS 2018-04-19 03:09:28.000000000 +0200
@@ -1,4 +1,5 @@
 # Keep this list sorted alphabetically
+af
 an
 ar
 as
@@ -41,6 +42,7 @@
 ml
 mr
 nb
+ne
 nl
 oc
 or
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/sushi-3.24.0/po/af.po new/sushi-3.28.2/po/af.po
--- old/sushi-3.24.0/po/af.po   1970-01-01 01:00:00.000000000 +0100
+++ new/sushi-3.28.2/po/af.po   2018-04-19 03:09:28.000000000 +0200
@@ -0,0 +1,62 @@
+# Afrikaans translation for sushi.
+# Copyright (C) 2017 sushi's COPYRIGHT HOLDER
+# This file is distributed under the same license as the sushi package.
+# pieter <[email protected]>, 2017.
+# Pieter Schoeman <[email protected]>, 2017.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: sushi master\n"
+"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?";
+"product=sushi&keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2017-10-05 12:34+0000\n"
+"PO-Revision-Date: 2017-11-24 15:10+0200\n"
+"Last-Translator: Pieter Schoeman <[email protected]>\n"
+"Language-Team: Afrikaans <[email protected]>\n"
+"Language: af\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Gtranslator 2.91.7\n"
+
+#: ../src/js/ui/fallbackRenderer.js:119
+msgid "Type"
+msgstr "Tipe"
+
+#: ../src/js/ui/fallbackRenderer.js:120 ../src/js/ui/fallbackRenderer.js:129
+#: ../src/js/ui/fallbackRenderer.js:135 ../src/js/ui/spinnerBox.js:56
+msgid "Loading…"
+msgstr "Laai tans…"
+
+#: ../src/js/ui/fallbackRenderer.js:128
+msgid "Size"
+msgstr "Grootte"
+
+#: ../src/js/ui/fallbackRenderer.js:134
+msgid "Modified"
+msgstr "Verander"
+
+#: ../src/js/viewers/audio.js:172
+msgid "from"
+msgstr "van"
+
+#: ../src/js/viewers/audio.js:174
+msgid "by"
+msgstr "deur"
+
+#: ../src/js/viewers/evince.js:77
+#, javascript-format
+msgid "%d of %d"
+msgstr "%d of %d"
+
+#: ../src/libsushi/sushi-file-loader.c:639
+#, c-format
+msgid "%d item"
+msgid_plural "%d items"
+msgstr[0] "%d item"
+msgstr[1] "%d items"
+
+#: ../src/libsushi/sushi-file-loader.c:651
+msgid "Empty Folder"
+msgstr "Leë gids"
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/sushi-3.24.0/po/[email protected] new/sushi-3.28.2/po/[email protected]
--- old/sushi-3.24.0/po/[email protected]        2017-04-02 03:30:36.000000000 
+0200
+++ new/sushi-3.28.2/po/[email protected]        2018-04-19 03:09:28.000000000 
+0200
@@ -6,39 +6,32 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: sushi master\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-09-26 01:22+0200\n"
+"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?";
+"product=sushi&keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2017-04-08 16:24+0000\n"
 "PO-Revision-Date: 2011-09-15 21:47+0100\n"
-"Last-Translator: Pau Iranzo <[email protected]>\n"
+"Last-Translator: Xavi Ivars <[email protected]>\n"
 "Language-Team: Catalan <[email protected]>\n"
-"Language: ca@valencia\n"
+"Language: ca-valencia\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bits\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 
-#: ../data/org.gnome.sushi.gschema.xml.in.h:1
-msgid "Client decoration"
-msgstr "Decoració del client"
-
-#: ../data/org.gnome.sushi.gschema.xml.in.h:2
-msgid "Whether the window draws WM decorations itself"
-msgstr "Si la mateixa finestra dibuixa les decoracions del gestor de finestres"
-
-#: ../src/js/ui/fallbackRenderer.js:120
+#: ../src/js/ui/fallbackRenderer.js:119
 msgid "Type"
 msgstr "Tipus"
 
-#: ../src/js/ui/fallbackRenderer.js:121 ../src/js/ui/fallbackRenderer.js:130
-#: ../src/js/ui/fallbackRenderer.js:136 ../src/js/ui/spinnerBox.js:57
+#: ../src/js/ui/fallbackRenderer.js:120 ../src/js/ui/fallbackRenderer.js:129
+#: ../src/js/ui/fallbackRenderer.js:135 ../src/js/ui/spinnerBox.js:56
 msgid "Loading…"
 msgstr "S'està carregant…"
 
-#: ../src/js/ui/fallbackRenderer.js:129
+#: ../src/js/ui/fallbackRenderer.js:128
 msgid "Size"
 msgstr "Mida"
 
-#: ../src/js/ui/fallbackRenderer.js:135
+#: ../src/js/ui/fallbackRenderer.js:134
 msgid "Modified"
 msgstr "Modificat"
 
@@ -50,8 +43,8 @@
 msgid "by"
 msgstr "per"
 
-#: ../src/js/viewers/evince.js:79
-#, c-format
+#: ../src/js/viewers/evince.js:77
+#, javascript-format
 msgid "%d of %d"
 msgstr "%d de %d"
 
@@ -65,3 +58,10 @@
 #: ../src/libsushi/sushi-file-loader.c:651
 msgid "Empty Folder"
 msgstr "Carpeta buida"
+
+#~ msgid "Client decoration"
+#~ msgstr "Decoració del client"
+
+#~ msgid "Whether the window draws WM decorations itself"
+#~ msgstr ""
+#~ "Si la mateixa finestra dibuixa les decoracions del gestor de finestres"
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/sushi-3.24.0/po/gd.po new/sushi-3.28.2/po/gd.po
--- old/sushi-3.24.0/po/gd.po   2017-04-02 03:30:36.000000000 +0200
+++ new/sushi-3.28.2/po/gd.po   2018-04-19 03:09:28.000000000 +0200
@@ -1,14 +1,14 @@
 # Scottish Gaelic translation for sushi.
 # Copyright (C) 2015 sushi's COPYRIGHT HOLDER
 # This file is distributed under the same license as the sushi package.
-# GunChleoc <[email protected]>, 2015.
+# GunChleoc <[email protected]>, 2015, 2018.
 msgid ""
 msgstr ""
 "Project-Id-Version: sushi master\n"
-"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=sushi&";
-"keywords=I18N+L10N&component=general\n"
-"POT-Creation-Date: 2015-11-17 14:29+0000\n"
-"PO-Revision-Date: 2015-11-17 17:49+0100\n"
+"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=sushi";
+"&keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2017-04-08 16:24+0000\n"
+"PO-Revision-Date: 2018-02-23 17:35+0100\n"
 "Last-Translator: GunChleoc <[email protected]>\n"
 "Language-Team: Fòram na Gàidhlig\n"
 "Language: gd\n"
@@ -27,7 +27,7 @@
 #: ../src/js/ui/fallbackRenderer.js:120 ../src/js/ui/fallbackRenderer.js:129
 #: ../src/js/ui/fallbackRenderer.js:135 ../src/js/ui/spinnerBox.js:56
 msgid "Loading…"
-msgstr "'Ga luchdadh…"
+msgstr "’Ga luchdadh…"
 
 #: ../src/js/ui/fallbackRenderer.js:128
 msgid "Size"
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/sushi-3.24.0/po/ne.po new/sushi-3.28.2/po/ne.po
--- old/sushi-3.24.0/po/ne.po   1970-01-01 01:00:00.000000000 +0100
+++ new/sushi-3.28.2/po/ne.po   2018-04-19 03:09:28.000000000 +0200
@@ -0,0 +1,61 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Gnome Nepali Translation Project\n"
+"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?";
+"product=sushi&keywords=I18N+L10N&component=general\n"
+"POT-Creation-Date: 2017-04-28 23:46+0000\n"
+"PO-Revision-Date: 2017-08-12 17:39+0545\n"
+"Language-Team: Nepali Translation Team <[email protected]>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Poedit 2.0.3\n"
+"Last-Translator: Pawan Chitrakar <[email protected]>\n"
+"Language: ne\n"
+
+#: ../src/js/ui/fallbackRenderer.js:119
+msgid "Type"
+msgstr "प्रकार"
+
+#: ../src/js/ui/fallbackRenderer.js:120 ../src/js/ui/fallbackRenderer.js:129
+#: ../src/js/ui/fallbackRenderer.js:135 ../src/js/ui/spinnerBox.js:56
+msgid "Loading…"
+msgstr "लोड गर्दै…"
+
+#: ../src/js/ui/fallbackRenderer.js:128
+msgid "Size"
+msgstr "साइज"
+
+#: ../src/js/ui/fallbackRenderer.js:134
+msgid "Modified"
+msgstr "परिमार्जित"
+
+#: ../src/js/viewers/audio.js:172
+msgid "from"
+msgstr "बाट"
+
+#: ../src/js/viewers/audio.js:174
+msgid "by"
+msgstr "देखि"
+
+#: ../src/js/viewers/evince.js:77
+#, javascript-format
+msgid "%d of %d"
+msgstr "%d मा %d"
+
+#: ../src/libsushi/sushi-file-loader.c:639
+#, c-format
+msgid "%d item"
+msgid_plural "%d items"
+msgstr[0] "%d सामाग्री"
+msgstr[1] "%d सामाग्रीहरू"
+
+#: ../src/libsushi/sushi-file-loader.c:651
+msgid "Empty Folder"
+msgstr "खालीफोल्डर"
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/sushi-3.24.0/src/Makefile.am new/sushi-3.28.2/src/Makefile.am
--- old/sushi-3.24.0/src/Makefile.am    2015-07-19 19:41:51.000000000 +0200
+++ new/sushi-3.28.2/src/Makefile.am    2018-04-19 03:38:40.000000000 +0200
@@ -28,8 +28,7 @@
                -e 's|@libdir[@]|$(libdir)|g' \
                -e 's|@libexecdir[@]|$(libexecdir)|g' \
                -e 's|@pkglibdir[@]|$(pkglibdir)|g' \
-               -e 's|@pkgdatadir[@]|$(pkgdatadir)|g' \
-               -e 's|@have_unoconv[@]|$(HAVE_UNOCONV)|g'
+               -e 's|@pkgdatadir[@]|$(pkgdatadir)|g'
 
 include $(INTROSPECTION_MAKEFILE)
 
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/sushi-3.24.0/src/js/viewers/evince.js 
new/sushi-3.28.2/src/js/viewers/evince.js
--- old/sushi-3.24.0/src/js/viewers/evince.js   2017-04-29 01:42:37.000000000 
+0200
+++ new/sushi-3.28.2/src/js/viewers/evince.js   2018-04-19 03:38:40.000000000 
+0200
@@ -183,6 +183,9 @@
     'application/vnd.oasis.opendocument.text',
     'application/vnd.oasis.opendocument.presentation',
     'application/vnd.oasis.opendocument.spreadsheet',
+    'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
+    'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
+    
'application/vnd.openxmlformats-officedocument.presentationml.presentation',
     'application/msword',
     'application/vnd.ms-excel',
     'application/vnd.ms-powerpoint',
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/sushi-3.24.0/src/js/viewers/image.js 
new/sushi-3.28.2/src/js/viewers/image.js
--- old/sushi-3.24.0/src/js/viewers/image.js    2017-04-29 01:42:37.000000000 
+0200
+++ new/sushi-3.28.2/src/js/viewers/image.js    2018-04-19 03:09:28.000000000 
+0200
@@ -31,6 +31,7 @@
 const Gettext = imports.gettext.domain('sushi');
 const _ = Gettext.gettext;
 const Lang = imports.lang;
+const Mainloop = imports.mainloop;
 
 const MimeHandler = imports.ui.mimeHandler;
 const Utils = imports.ui.utils;
@@ -39,6 +40,7 @@
     Name: 'ImageRenderer',
 
     _init : function(args) {
+        this._timeoutId = 0;
         this.moveOnClick = true;
         this.canFullScreen = true;
     },
@@ -69,15 +71,20 @@
     },
 
     _textureFromStream : function(stream) {
-        GdkPixbuf.Pixbuf.new_from_stream_async
+        GdkPixbuf.PixbufAnimation.new_from_stream_async
         (stream, null,
          Lang.bind(this, function(obj, res) {
-             let pix = GdkPixbuf.Pixbuf.new_from_stream_finish(res);
-             pix = pix.apply_embedded_orientation();
+             let anim = GdkPixbuf.PixbufAnimation.new_from_stream_finish(res);
+
+             this._iter = anim.get_iter(null);
+             let pix = this._iter.get_pixbuf().apply_embedded_orientation();
 
              this._texture = new GtkClutter.Texture({ keep_aspect_ratio: true 
});
              this._texture.set_from_pixbuf(pix);
 
+             if (!anim.is_static_image())
+                 this._startTimeout();
+
              /* we're ready now */
              this._callback();
 
@@ -97,6 +104,12 @@
         return Utils.getScaledSize(baseSize, allocation, fullScreen);
     },
 
+    _startTimeout : function() {
+        this._timeoutId = Mainloop.timeout_add(this._iter.get_delay_time(),
+                                               Lang.bind(this,
+                                                         this._advanceImage));
+    },
+
     createToolbar : function() {
         this._mainToolbar = new Gtk.Toolbar({ icon_size: Gtk.IconSize.MENU });
         this._mainToolbar.get_style_context().add_class('osd');
@@ -110,6 +123,23 @@
 
         return this._toolbarActor;
     },
+
+    destroy : function () {
+        /* We should do the check here because it is possible
+         * that we never created a source if our image is
+         * not animated. */
+        if (this._timeoutId) {
+            Mainloop.source_remove(this._timeoutId);
+            this._timeoutId = 0;
+        }
+    },
+
+    _advanceImage : function () {
+        this._iter.advance(null);
+        let pix = this._iter.get_pixbuf().apply_embedded_orientation();
+        this._texture.set_from_pixbuf(pix);
+        return true;
+    },
 });
 
 let handler = new MimeHandler.MimeHandler();
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/sushi-3.24.0/src/libsushi/sushi-pdf-loader.c 
new/sushi-3.28.2/src/libsushi/sushi-pdf-loader.c
--- old/sushi-3.24.0/src/libsushi/sushi-pdf-loader.c    2017-04-10 
00:10:34.000000000 +0200
+++ new/sushi-3.28.2/src/libsushi/sushi-pdf-loader.c    2018-04-20 
20:25:19.000000000 +0200
@@ -38,14 +38,16 @@
   PROP_URI
 };
 
-static void load_openoffice (SushiPdfLoader *self);
+static void load_libreoffice (SushiPdfLoader *self);
 
 struct _SushiPdfLoaderPrivate {
   EvDocument *document;
   gchar *uri;
   gchar *pdf_path;
 
-  GPid unoconv_pid;
+  gboolean checked_libreoffice_flatpak;
+  gboolean have_libreoffice_flatpak;
+  GPid libreoffice_pid;
 };
 
 static void
@@ -81,42 +83,42 @@
 }
 
 static void
-openoffice_missing_unoconv_ready_cb (GObject *source,
-                                     GAsyncResult *res,
-                                     gpointer user_data)
+libreoffice_missing_ready_cb (GObject *source,
+                              GAsyncResult *res,
+                              gpointer user_data)
 {
   SushiPdfLoader *self = user_data;
   GError *error = NULL;
 
   g_dbus_connection_call_finish (G_DBUS_CONNECTION (source), res, &error);
   if (error != NULL) {
-    /* can't install unoconv with packagekit - nothing else we can do */
+    /* can't install libreoffice with packagekit - nothing else we can do */
     /* FIXME: error reporting! */
-    g_warning ("unoconv not found, and PackageKit failed to install it with 
error %s",
+    g_warning ("libreoffice not found, and PackageKit failed to install it 
with error %s",
                error->message);
     return;
   }
 
-  /* now that we have unoconv installed, try again loading the document */
-  load_openoffice (self);
+  /* now that we have libreoffice installed, try again loading the document */
+  load_libreoffice (self);
 }
 
 static void
-openoffice_missing_unoconv (SushiPdfLoader *self)
+libreoffice_missing (SushiPdfLoader *self)
 {
   GApplication *app = g_application_get_default ();
   GtkWidget *widget = GTK_WIDGET (gtk_application_get_active_window 
(GTK_APPLICATION (app)));
   GDBusConnection *connection = g_application_get_dbus_connection (app);
   guint xid = 0;
   GdkWindow *gdk_window;
-  const gchar *unoconv_path[2];
+  const gchar *libreoffice_path[2];
 
   gdk_window = gtk_widget_get_window (widget);
   if (gdk_window != NULL)
     xid = GDK_WINDOW_XID (gdk_window);
 
-  unoconv_path[0] = "/usr/bin/unoconv";
-  unoconv_path[1] = NULL;
+  libreoffice_path[0] = "/usr/bin/libreoffice";
+  libreoffice_path[1] = NULL;
 
   g_dbus_connection_call (connection,
                           "org.freedesktop.PackageKit",
@@ -125,25 +127,25 @@
                           "InstallProvideFiles",
                           g_variant_new ("(u^ass)",
                                          xid,
-                                         unoconv_path,
+                                         libreoffice_path,
                                          "hide-confirm-deps"),
                           NULL, G_DBUS_CALL_FLAGS_NONE,
                           G_MAXINT, NULL,
-                          openoffice_missing_unoconv_ready_cb,
+                          libreoffice_missing_ready_cb,
                           self);
 }
 
 static void
-unoconv_child_watch_cb (GPid pid,
-                        gint status,
-                        gpointer user_data)
+libreoffice_child_watch_cb (GPid pid,
+                            gint status,
+                            gpointer user_data)
 {
   SushiPdfLoader *self = user_data;
   GFile *file;
   gchar *uri;
 
   g_spawn_close_pid (pid);
-  self->priv->unoconv_pid = -1;
+  self->priv->libreoffice_pid = -1;
 
   file = g_file_new_for_path (self->priv->pdf_path);
   uri = g_file_get_uri (file);
@@ -153,74 +155,159 @@
   g_free (uri);
 }
 
+#define LIBREOFFICE_FLATPAK "org.libreoffice.LibreOffice"
+
+static gboolean
+check_libreoffice_flatpak (SushiPdfLoader *self,
+                           const gchar    *flatpak_path)
+{
+  const gchar *check_argv[] = { flatpak_path, "info", LIBREOFFICE_FLATPAK, 
NULL };
+  gboolean ret;
+  gint exit_status = -1;
+  GError *error = NULL;
+
+  if (self->priv->checked_libreoffice_flatpak)
+    return self->priv->have_libreoffice_flatpak;
+
+  self->priv->checked_libreoffice_flatpak = TRUE;
+
+  ret = g_spawn_sync (NULL, (gchar **) check_argv, NULL,
+                      G_SPAWN_DEFAULT |
+                      G_SPAWN_STDERR_TO_DEV_NULL |
+                      G_SPAWN_STDOUT_TO_DEV_NULL,
+                      NULL, NULL,
+                      NULL, NULL,
+                      &exit_status, &error);
+
+  if (ret) {
+    GError *child_error = NULL;
+    if (g_spawn_check_exit_status (exit_status, &child_error)) {
+      g_debug ("Found LibreOffice flatpak!");
+      self->priv->have_libreoffice_flatpak = TRUE;
+    } else {
+      g_debug ("LibreOffice flatpak not found, flatpak info returned %i (%s)",
+               exit_status, child_error->message);
+      g_clear_error (&child_error);
+    }
+  } else {
+    g_warning ("Error while checking for LibreOffice flatpak: %s",
+               error->message);
+    g_clear_error (&error);
+  }
+
+  return self->priv->have_libreoffice_flatpak;
+}
+
 static void
-load_openoffice (SushiPdfLoader *self)
+load_libreoffice (SushiPdfLoader *self)
 {
-  gchar *doc_path, *pdf_path, *tmp_name, *tmp_path, *quoted_path;
+  gchar *flatpak_path, *libreoffice_path = NULL;
+  gboolean use_flatpak = FALSE;
   GFile *file;
+  gchar *doc_path, *doc_name, *tmp_name, *pdf_dir;
+  gchar *flatpak_doc = NULL, *flatpak_dir = NULL;
   gboolean res;
-  gchar *cmd;
-
-  gint argc;
   GPid pid;
-  gchar **argv = NULL;
   GError *error = NULL;
-  const gchar *unoconv_path;
+  const gchar **argv = NULL;
 
-  unoconv_path = g_find_program_in_path ("unoconv");
-  if (unoconv_path == NULL) {
-      openoffice_missing_unoconv (self);
+  flatpak_path = g_find_program_in_path ("flatpak");
+  if (flatpak_path != NULL)
+    use_flatpak = check_libreoffice_flatpak (self, flatpak_path);
+
+  if (!use_flatpak) {
+    libreoffice_path = g_find_program_in_path ("libreoffice");
+    if (libreoffice_path == NULL) {
+      libreoffice_missing (self);
+      g_free (flatpak_path);
       return;
+    }
   }
 
   file = g_file_new_for_uri (self->priv->uri);
   doc_path = g_file_get_path (file);
-  quoted_path = g_shell_quote (doc_path);
-
+  doc_name = g_file_get_basename (file);
   g_object_unref (file);
-  g_free (doc_path);
 
-  tmp_name = g_strdup_printf ("sushi-%d.pdf", getpid ());
-  tmp_path = g_build_filename (g_get_user_cache_dir (), "sushi", NULL);
-  self->priv->pdf_path = pdf_path =
-    g_build_filename (tmp_path, tmp_name, NULL);
-  g_mkdir_with_parents (tmp_path, 0700);
-
-  cmd = g_strdup_printf ("unoconv -f pdf -o %s %s", pdf_path, quoted_path);
+  /* libreoffice --convert-to replaces the extension with .pdf */
+  tmp_name = g_strrstr (doc_name, ".");
+  if (tmp_name)
+    *tmp_name = '\0';
+  tmp_name = g_strdup_printf ("%s.pdf", doc_name);
+  g_free (doc_name);
+
+  pdf_dir = g_build_filename (g_get_user_cache_dir (), "sushi", NULL);
+  self->priv->pdf_path = g_build_filename (pdf_dir, tmp_name, NULL);
+  g_mkdir_with_parents (pdf_dir, 0700);
 
   g_free (tmp_name);
-  g_free (tmp_path);
-  g_free (quoted_path);
-
-  res = g_shell_parse_argv (cmd, &argc, &argv, &error);
-  g_free (cmd);
 
-  if (!res) {
-    g_warning ("Error while parsing the unoconv command line: %s",
-               error->message);
-    g_error_free (error);
+  if (use_flatpak) {
+    flatpak_doc = g_strdup_printf ("--filesystem=%s:ro", doc_path);
+    flatpak_dir = g_strdup_printf ("--filesystem=%s", pdf_dir);
+
+    const gchar *flatpak_argv[] = {
+      NULL, /* to be replaced with flatpak binary */
+      "run", "--command=/app/libreoffice/program/soffice",
+      "--nofilesystem=host",
+      NULL, /* to be replaced with filesystem permissions to read document */
+      NULL, /* to be replaced with filesystem permissions to write output */
+      LIBREOFFICE_FLATPAK,
+      "--convert-to", "pdf",
+      "--outdir", NULL, /* to be replaced with output dir */
+      NULL, /* to be replaced with input file */
+      NULL
+    };
+
+    flatpak_argv[0] = flatpak_path;
+    flatpak_argv[4] = flatpak_doc;
+    flatpak_argv[5] = flatpak_dir;
+    flatpak_argv[10] = pdf_dir;
+    flatpak_argv[11] = doc_path;
+
+    argv = flatpak_argv;
+  } else {
+    const gchar *libreoffice_argv[] = {
+      NULL, /* to be replaced with binary */
+      "--convert-to", "pdf",
+      "--outdir", NULL, /* to be replaced with output dir */
+      NULL, /* to be replaced with input file */
+      NULL
+    };
+
+    libreoffice_argv[0] = libreoffice_path;
+    libreoffice_argv[4] = pdf_dir;
+    libreoffice_argv[5] = doc_path;
 
-    return;
+    argv = libreoffice_argv;
   }
 
-  res = g_spawn_async (NULL, argv, NULL,
-                       G_SPAWN_DO_NOT_REAP_CHILD |
-                       G_SPAWN_SEARCH_PATH,
+  tmp_name = g_strjoinv (" ", (gchar **) argv);
+  g_debug ("Executing LibreOffice command: %s", tmp_name);
+  g_free (tmp_name);
+
+  res = g_spawn_async (NULL, (gchar **) argv, NULL,
+                       G_SPAWN_DO_NOT_REAP_CHILD,
                        NULL, NULL,
                        &pid, &error);
 
-  g_strfreev (argv);
+  g_free (pdf_dir);
+  g_free (doc_path);
+  g_free (libreoffice_path);
+  g_free (flatpak_path);
+  g_free (flatpak_doc);
+  g_free (flatpak_dir);
 
   if (!res) {
-    g_warning ("Error while spawning unoconv: %s",
+    g_warning ("Error while spawning libreoffice: %s",
                error->message);
     g_error_free (error);
 
     return;
   }
 
-  g_child_watch_add (pid, unoconv_child_watch_cb, self);
-  self->priv->unoconv_pid = pid;
+  g_child_watch_add (pid, libreoffice_child_watch_cb, self);
+  self->priv->libreoffice_pid = pid;
 }
 
 static gboolean
@@ -269,7 +356,7 @@
   if (content_type_is_native (content_type))
     load_pdf (self, self->priv->uri);
   else
-    load_openoffice (self);
+    load_libreoffice (self);
 
   g_object_unref (info);
 }
@@ -310,9 +397,9 @@
     g_free (self->priv->pdf_path);
   }
 
-  if (self->priv->unoconv_pid != -1) {
-    kill (self->priv->unoconv_pid, SIGKILL);
-    self->priv->unoconv_pid = -1;
+  if (self->priv->libreoffice_pid != -1) {
+    kill (self->priv->libreoffice_pid, SIGKILL);
+    self->priv->libreoffice_pid = -1;
   }
 }
 
@@ -406,7 +493,7 @@
     G_TYPE_INSTANCE_GET_PRIVATE (self,
                                  SUSHI_TYPE_PDF_LOADER,
                                  SushiPdfLoaderPrivate);
-  self->priv->unoconv_pid = -1;
+  self->priv->libreoffice_pid = -1;
 }
 
 SushiPdfLoader *
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/sushi-3.24.0/src/sushi-enum-types.h new/sushi-3.28.2/src/sushi-enum-types.h
--- old/sushi-3.24.0/src/sushi-enum-types.h     2017-04-29 01:44:03.000000000 
+0200
+++ new/sushi-3.28.2/src/sushi-enum-types.h     2018-04-20 20:16:43.000000000 
+0200
@@ -7,11 +7,9 @@
 #include <glib-object.h>
 
 G_BEGIN_DECLS
-
 /* enumerations from "libsushi/sushi-sound-player.h" */
 GType sushi_sound_player_state_get_type (void) G_GNUC_CONST;
 #define SUSHI_TYPE_SOUND_PLAYER_STATE (sushi_sound_player_state_get_type())
-
 G_END_DECLS
 
 #endif /* !__SUSHI_ENUM_TYPES_H__ */


Reply via email to