--- ./thunar/thunar-path-entry.c.orig 2010-11-13 17:37:13.000000000 +0200 +++ ./thunar/thunar-path-entry.c 2011-07-30 19:29:57.000000000 +0300 @@ -1062,8 +1062,8 @@ { do { - /* determine the real file name for the iter */ - gtk_tree_model_get (model, &iter, THUNAR_COLUMN_FILE_NAME, &name, -1); + /* determine the display name for the iter */ + gtk_tree_model_get (model, &iter, THUNAR_COLUMN_NAME, &name, -1); /* check if we have a valid prefix here */ if (g_str_has_prefix (name, text)) @@ -1143,8 +1143,8 @@ else last_slash += 1; - /* determine the real file name for the iter */ - gtk_tree_model_get (model, iter, THUNAR_COLUMN_FILE_NAME, &name, -1); + /* determine the display name for the iter */ + gtk_tree_model_get (model, iter, THUNAR_COLUMN_NAME, &name, -1); name_normalized = g_utf8_normalize (name, -1, G_NORMALIZE_ALL); g_free (name); @@ -1173,22 +1173,22 @@ const gchar *last_slash; const gchar *text; ThunarFile *file; - gchar *real_name; + gchar *name; gchar *tmp; gint offset; /* determine the file for the iterator */ gtk_tree_model_get (model, iter, THUNAR_COLUMN_FILE, &file, -1); - /* determine the real name for the file */ - gtk_tree_model_get (model, iter, THUNAR_COLUMN_FILE_NAME, &real_name, -1); + /* determine the display name for the file */ + gtk_tree_model_get (model, iter, THUNAR_COLUMN_NAME, &name, -1); /* append a slash if we have a folder here */ if (G_LIKELY (thunar_file_is_directory (file))) { - tmp = g_strconcat (real_name, G_DIR_SEPARATOR_S, NULL); - g_free (real_name); - real_name = tmp; + tmp = g_strconcat (name, G_DIR_SEPARATOR_S, NULL); + g_free (name); + name = tmp; } /* determine the UTF-8 offset of the last slash on the entry text */ @@ -1203,14 +1203,14 @@ gtk_editable_delete_text (GTK_EDITABLE (path_entry), offset, -1); /* insert the new file/folder name */ - gtk_editable_insert_text (GTK_EDITABLE (path_entry), real_name, -1, &offset); + gtk_editable_insert_text (GTK_EDITABLE (path_entry), name, -1, &offset); /* move the cursor to the end of the text entry */ gtk_editable_set_position (GTK_EDITABLE (path_entry), -1); /* cleanup */ g_object_unref (G_OBJECT (file)); - g_free (real_name); + g_free (name); return TRUE; } @@ -1378,7 +1378,7 @@ { GFile *file; gchar *text; - gchar *unescaped; + gchar *name; _thunar_return_if_fail (THUNAR_IS_PATH_ENTRY (path_entry)); _thunar_return_if_fail (current_file == NULL || THUNAR_IS_FILE (current_file)); @@ -1408,12 +1408,12 @@ } } - unescaped = g_uri_unescape_string (text, NULL); + name = g_filename_display_name (text); g_free (text); /* setup the entry text */ - gtk_entry_set_text (GTK_ENTRY (path_entry), unescaped); - g_free (unescaped); + gtk_entry_set_text (GTK_ENTRY (path_entry), name); + g_free (name); gtk_editable_set_position (GTK_EDITABLE (path_entry), -1);