diff --git a/CHANGELOG b/CHANGELOG index 1774e3b..45dcfb0 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,9 +1,15 @@ v0.11.0 - ??? + BREAKING CHANGES + + Require Exiv2, GExiv2, and GExiv2 Introspection Data. + CHANGES + Add keywords to mirage.desktop (Thanks Lucas de Castro Borges ) + Use `gimp %F &` instead of `gimp-remote-2.4 %F` as the default command to open with GIMP (Thanks Jakub Wilk ) + + BUG FIXES + + Keep EXIF/IPTC/XMP tags after image modification v0.10.1 - June 04, 2020 BUG FIXES diff --git a/README b/README index 719c7c0..63a8978 100644 --- a/README +++ b/README @@ -6,6 +6,9 @@ (Required) PyGObject >= 3.29.3 (Required) PyGObject Cairo bindings (Required) PyCairo + (Required) GExiv2 Introspection Data + (Required) GExiv2 + (Required) Exiv2 (Required) GTK >= 3.24.0 (Extensions) python3-dev and libX11-dev (on some distros) diff --git a/mirage/__init__.py b/mirage/__init__.py index 05e36c8..7c2ac7d 100755 --- a/mirage/__init__.py +++ b/mirage/__init__.py @@ -25,7 +25,7 @@ gi.require_version("Gtk", "3.0") -from gi.repository import Gtk, Gdk, GdkPixbuf, GLib, Gio +from gi.repository import Gtk, Gdk, GdkPixbuf, GLib, Gio, GExiv2 import cairo import os, sys, getopt, configparser, string, gc import random, urllib.request, locale @@ -1667,10 +1667,13 @@ 0 ].get_name() if self.filetype_is_writable(filetype): + metadata = GExiv2.Metadata.new() + metadata.open_path(self.currimg_name) self.currimg_pixbuf_original.savev( dest_name, filetype, ["quality"], [str(self.quality_save)] ) self.currimg_name = dest_name + metadata.save_file(self.currimg_name) self.image_list[self.curr_img_in_list] = dest_name self.update_title() self.update_statusbar()