Hiall

> Since Vladimir, Petr or I are too busy to work on Geeqie, i converted 
> geeqie current subversion repository to Git, and put it on github :
> 
> https://github.com/zas/geeqie_zas
> 
> I quickly committed patches from mailing list to it (3).

I presume that the svn repo is considered deprecated now?

> I don't have much time to work on it, but i'll try to commit submitted 
> patches if any.

Around April 2010 I submitted a diff to the ML which adds auto-rotation to
proofs, but I suspect it got overlooked at the time.  A new option control
(auto-rotate proofs) is added and if set, proofs will be automatically
rotated according to exif information.  This makes the proof sheets much
more flexible - one can evaluate an entire sheet without having to
continually rotate the printout and/or image.

I think this is a worthwhile addition to geeqie, and in any case if people
don't like it they can always turn off the option and have the original
behaviour.  Please find the diff below and consider applying it to whichever
repo is now considered the "current" one.  It was against geeqie 1.0.

Regards
  jonathan

diff -ru --unidirectional-new-file geeqie-1.0-orig/src/options.c 
geeqie-1.0/src/options.c
--- geeqie-1.0-orig/src/options.c       2010-02-18 07:51:19.000000000 +1030
+++ geeqie-1.0/src/options.c    2010-04-02 20:36:46.448672632 +1030
@@ -66,6 +66,7 @@
        options->image.dither_quality = GDK_RGB_DITHER_NORMAL;
        options->image.enable_read_ahead = TRUE;
        options->image.exif_rotate_enable = TRUE;
+       options->image.exif_proof_rotate_enable = TRUE;
        options->image.fit_window_to_image = FALSE;
        options->image.limit_autofit_size = FALSE;
        options->image.limit_window_size = TRUE;
diff -ru --unidirectional-new-file geeqie-1.0-orig/src/options.h 
geeqie-1.0/src/options.h
--- geeqie-1.0-orig/src/options.h       2010-02-18 07:51:19.000000000 +1030
+++ geeqie-1.0/src/options.h    2010-04-02 20:36:17.742672675 +1030
@@ -50,6 +50,7 @@
        /* image */
        struct {
                gboolean exif_rotate_enable;
+               gboolean exif_proof_rotate_enable;
                guint scroll_reset_method;
                gboolean fit_window_to_image;
                gboolean limit_window_size;
diff -ru --unidirectional-new-file geeqie-1.0-orig/src/preferences.c 
geeqie-1.0/src/preferences.c
--- geeqie-1.0-orig/src/preferences.c   2010-02-18 07:51:19.000000000 +1030
+++ geeqie-1.0/src/preferences.c        2010-04-02 20:41:25.949672731 +1030
@@ -285,6 +285,7 @@
                
        options->update_on_time_change = c_options->update_on_time_change;
        options->image.exif_rotate_enable = c_options->image.exif_rotate_enable;
+       options->image.exif_proof_rotate_enable = 
c_options->image.exif_proof_rotate_enable;
 
        options->duplicates_similarity_threshold = 
c_options->duplicates_similarity_threshold;
 
@@ -1309,6 +1310,9 @@
 
        pref_checkbox_new_int(group, _("Auto rotate image using Exif 
information"),
                              options->image.exif_rotate_enable, 
&c_options->image.exif_rotate_enable);
+
+       pref_checkbox_new_int(group, _("Auto rotate proofs using Exif 
information"),
+                             options->image.exif_proof_rotate_enable, 
&c_options->image.exif_proof_rotate_enable);
 }
 
 /* windows tab */
diff -ru --unidirectional-new-file geeqie-1.0-orig/src/print.c 
geeqie-1.0/src/print.c
--- geeqie-1.0-orig/src/print.c 2010-02-18 07:51:19.000000000 +1030
+++ geeqie-1.0/src/print.c      2010-04-02 20:48:31.690672852 +1030
@@ -2189,6 +2189,7 @@
        gdouble icon_w, icon_h;
        gdouble scale;
        gboolean success = TRUE;
+       GdkPixbuf *rotated = NULL;
 
        if (pw->proof_columns < 1 || pw->proof_rows < 1)
                {
@@ -2202,6 +2203,11 @@
 
        pixbuf = image_loader_get_pixbuf(il);
 
+       if (options->image.exif_proof_rotate_enable == TRUE) {
+               rotated = pixbuf_apply_orientation(pixbuf, 
il->fd->exif_orientation);
+               pixbuf = rotated;
+       }
+
        w = gdk_pixbuf_get_width(pixbuf);
        h = gdk_pixbuf_get_height(pixbuf);
 

------------------------------------------------------------------------------
Oracle to DB2 Conversion Guide: Learn learn about native support for PL/SQL,
new data types, scalar functions, improved concurrency, built-in packages, 
OCI, SQL*Plus, data movement tools, best practices and more.
http://p.sf.net/sfu/oracle-sfdev2dev 
_______________________________________________
Geeqie-devel mailing list
Geeqie-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geeqie-devel

Reply via email to