 app/display/gimpdisplayshell-title.c |   29 ++++++++++++++++++++---------
 1 file changed, 20 insertions(+), 9 deletions(-)

diff --git a/app/display/gimpdisplayshell-title.c b/app/display/gimpdisplayshell-title.c
index 2cc4c28..d1b269e 100644
--- a/app/display/gimpdisplayshell-title.c
+++ b/app/display/gimpdisplayshell-title.c
@@ -61,7 +61,8 @@ static gint     gimp_display_shell_format_filename   (gchar            *buf,
                                                       gint              len,
                                                       gint              start,
                                                       GimpImage        *image,
-                                                      const gchar      *filename);
+                                                      const gchar      *filename,
+                                                      gboolean          long_format);
 
 
 /*  public functions  */
@@ -214,7 +215,7 @@ gimp_display_shell_format_title (GimpDisplayShell *shell,
               {
                 const gchar *name = gimp_image_get_display_name (image);
 
-                i += gimp_display_shell_format_filename (title, title_len, i, image, name);
+                i += gimp_display_shell_format_filename (title, title_len, i, image, name, FALSE);
               }
               break;
 
@@ -225,7 +226,7 @@ gimp_display_shell_format_title (GimpDisplayShell *shell,
 
                 filename = file_utils_uri_display_name (uri);
 
-                i += gimp_display_shell_format_filename (title, title_len, i, image, filename);
+                i += gimp_display_shell_format_filename (title, title_len, i, image, filename, TRUE);
 
                 g_free (filename);
               }
@@ -457,7 +458,8 @@ gimp_display_shell_format_filename (gchar       *buf,
                                     gint         len,
                                     gint         start,
                                     GimpImage   *image,
-                                    const gchar *filename)
+                                    const gchar *filename,
+                                    gboolean     long_format)
 {
   const gchar *source        = NULL;
   const gchar *name_format   = NULL;
@@ -483,9 +485,10 @@ gimp_display_shell_format_filename (gchar       *buf,
     }
   else
     {
-      gchar *source_no_ext = file_utils_uri_with_new_ext (source, NULL);
-      name = file_utils_uri_display_basename (source_no_ext);
-      g_free (source_no_ext);
+      if(! long_format)
+        name = file_utils_uri_display_basename (source);
+      else
+        name = file_utils_uri_display_name (source);
 
       name_format = "[%s]";
     }
@@ -494,9 +497,17 @@ gimp_display_shell_format_filename (gchar       *buf,
   if (! gimp_image_is_export_dirty (image))
     {
       gboolean is_exported;
-      is_exported = (gimp_image_get_exported_uri (image) != NULL);
+      source = gimp_image_get_exported_uri (image);
+      is_exported = (source != NULL);
       if (is_exported)
-        export_status = _(" (exported)");
+        {
+          if(! long_format)
+            name = file_utils_uri_display_basename (source);
+          else
+            name = file_utils_uri_display_name (source);
+
+          export_status = _(" (exported)");
+        }
       else if (is_imported)
         export_status = _(" (overwritten)");
       else
