use metadata_read_* functions where possible
[geeqie.git] / src / pan-view.c
index 4619867..15fba2f 100644 (file)
@@ -18,6 +18,7 @@
 #include "dnd.h"
 #include "editors.h"
 #include "exif.h"
+#include "metadata.h"
 #include "fullscreen.h"
 #include "history_list.h"
 #include "img-view.h"
@@ -1434,13 +1435,10 @@ static gint pan_window_key_press_cb(GtkWidget *widget, GdkEventKey *event, gpoin
 
 static void pan_info_add_exif(PanTextAlignment *ta, FileData *fd)
 {
-       ExifData *exif;
        GList *work;
        gint i;
 
        if (!fd) return;
-       exif = exif_read_fd(fd);
-       if (!exif) return;
 
        pan_text_alignment_add(ta, NULL, NULL);
 
@@ -1449,11 +1447,11 @@ static void pan_info_add_exif(PanTextAlignment *ta, FileData *fd)
                gchar *label;
                gchar *desc;
                gchar *text;
-               gchar *utf8_text;
 
                if (ExifUIList[i].current == EXIF_UI_OFF) continue;
 
-               text = exif_get_data_as_text(exif, ExifUIList[i].key);
+               text = metadata_read_string(fd, ExifUIList[i].key, METADATA_FORMATTED);
+               
                if (ExifUIList[i].current == EXIF_UI_IFSET && (!text || !*text))
                        {
                        g_free(text);
@@ -1463,11 +1461,9 @@ static void pan_info_add_exif(PanTextAlignment *ta, FileData *fd)
                desc = exif_get_description_by_key(ExifUIList[i].key);
                label = g_strdup_printf("%s:", desc);
                g_free(desc);
-               utf8_text = utf8_validate_or_convert(text);
-               g_free(text);
-               pan_text_alignment_add(ta, label, utf8_text);
+               pan_text_alignment_add(ta, label, text);
                g_free(label);
-               g_free(utf8_text);
+               g_free(text);
                }
 
        work = g_list_last(history_list_get_by_key("exif_extras"));
@@ -1480,20 +1476,15 @@ static void pan_info_add_exif(PanTextAlignment *ta, FileData *fd)
                name = work->data;
                work = work->prev;
 
-               text = exif_get_data_as_text(exif, name);
+               text =  metadata_read_string(fd, name, METADATA_FORMATTED);
                if (text)
                        {
                        gchar *label = g_strdup_printf("%s:", name);
-                       gchar *utf8_text = utf8_validate_or_convert(text);
-
-                       g_free(text);
-                       pan_text_alignment_add(ta, label, utf8_text);
+                       pan_text_alignment_add(ta, label, text);
                        g_free(label);
-                       g_free(utf8_text);
+                       g_free(text);
                        }
                }
-
-       exif_free_fd(fd, exif);
 }
 
 static void pan_info_update(PanWindow *pw, PanItem *pi)