SOURCES: nautilus-copy_label.patch (NEW), nautilus-dnd-user-owned....
freetz
freetz at pld-linux.org
Sun May 21 12:44:31 CEST 2006
Author: freetz Date: Sun May 21 10:44:31 2006 GMT
Module: SOURCES Tag: HEAD
---- Log message:
- bugfixes (gnome cvs stable gnome-2-14 branch)
http://bugzilla.gnome.org/show_bug.cgi?id=339965
http://bugzilla.gnome.org/show_bug.cgi?id=338377
http://bugzilla.gnome.org/show_bug.cgi?id=331810
rel.2, STBR
---- Files affected:
SOURCES:
nautilus-copy_label.patch (NONE -> 1.1) (NEW), nautilus-dnd-user-owned.patch (NONE -> 1.1) (NEW), nautilus-dont_delete_wrong_bookmark.patch (NONE -> 1.1) (NEW), nautilus-exif_taken_date.patch (NONE -> 1.1) (NEW), nautilus-fix_sftp_ftp_permissions_display.patch (NONE -> 1.1) (NEW), nautilus-fix_slow_filesystems_crasher.patch (NONE -> 1.1) (NEW), nautilus-make_open_folder_translatable.patch (NONE -> 1.1) (NEW), nautilus-sort_volumes_list.patch (NONE -> 1.1) (NEW), nautilus-width_of_text_selection.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: SOURCES/nautilus-copy_label.patch
diff -u /dev/null SOURCES/nautilus-copy_label.patch:1.1
--- /dev/null Sun May 21 12:44:31 2006
+++ SOURCES/nautilus-copy_label.patch Sun May 21 12:44:26 2006
@@ -0,0 +1,41 @@
+===================================================================
+RCS file: /cvs/gnome/nautilus/libnautilus-private/nautilus-file-operations.c,v
+retrieving revision 1.207
+retrieving revision 1.207.2.1
+diff -u -r1.207 -r1.207.2.1
+--- nautilus-file-operations.c 2006/03/20 15:47:55 1.207
++++ libnautilus-private/nautilus-file-operations.c 2006/05/08 23:05:30 1.207.2.1
+@@ -575,22 +575,17 @@
+ /* fall through */
+ case GNOME_VFS_XFER_PHASE_COPYING:
+ if (transfer_info->progress_dialog != NULL) {
+- if (progress_info->bytes_copied == 0) {
+- progress_dialog_set_to_from_item_text
+- (transfer_info->progress_dialog,
+- transfer_info->progress_verb,
+- progress_info->source_name,
+- progress_info->target_name,
+- progress_info->file_index,
+- progress_info->file_size);
+- } else {
+- nautilus_file_operations_progress_update_sizes
+- (transfer_info->progress_dialog,
+- MIN (progress_info->bytes_copied,
+- progress_info->bytes_total),
+- MIN (progress_info->total_bytes_copied,
+- progress_info->bytes_total));
+- }
++ progress_dialog_set_to_from_item_text (transfer_info->progress_dialog,
++ transfer_info->progress_verb,
++ progress_info->source_name,
++ progress_info->target_name,
++ progress_info->file_index,
++ progress_info->file_size);
++ nautilus_file_operations_progress_update_sizes (transfer_info->progress_dialog,
++ MIN (progress_info->bytes_copied,
++ progress_info->bytes_total),
++ MIN (progress_info->total_bytes_copied,
++ progress_info->bytes_total));
+ }
+ return 1;
+
================================================================
Index: SOURCES/nautilus-dnd-user-owned.patch
diff -u /dev/null SOURCES/nautilus-dnd-user-owned.patch:1.1
--- /dev/null Sun May 21 12:44:31 2006
+++ SOURCES/nautilus-dnd-user-owned.patch Sun May 21 12:44:26 2006
@@ -0,0 +1,67 @@
+Index: libnautilus-private/nautilus-dnd.c
+===================================================================
+RCS file: /cvs/gnome/nautilus/libnautilus-private/nautilus-dnd.c,v
+retrieving revision 1.24
+diff -u -p -r1.24 nautilus-dnd.c
+--- libnautilus-private/nautilus-dnd.c 18 Mar 2006 07:13:49 -0000 1.24
++++ libnautilus-private/nautilus-dnd.c 20 Apr 2006 11:19:18 -0000
+@@ -302,6 +302,26 @@ nautilus_drag_default_drop_action_for_ur
+ return context->suggested_action;
+ }
+
++static gboolean
++uri_is_user_owned (GnomeVFSURI *uri)
++{
++ gboolean user_owned;
++
++ user_owned = FALSE;
++
++ if (uri != NULL && !strcmp (gnome_vfs_uri_get_scheme (uri), "file")) {
++ GnomeVFSFileInfo *info;
++
++ info = gnome_vfs_file_info_new ();
++ if (gnome_vfs_get_file_info_uri (uri, info, GNOME_VFS_FILE_INFO_GET_ACCESS_RIGHTS) == GNOME_VFS_OK) {
++ user_owned = (info->valid_fields & GNOME_VFS_FILE_INFO_FIELDS_IDS) &&
++ geteuid () == info->uid;
++ }
++ gnome_vfs_file_info_unref (info);
++ }
++
++ return user_owned;
++}
+
+ void
+ nautilus_drag_default_drop_action_for_icons (GdkDragContext *context,
+@@ -385,11 +405,12 @@ nautilus_drag_default_drop_action_for_ic
+ if (dropped_uri != NULL) {
+ gnome_vfs_check_same_fs_uris (dropped_uri, target_uri, &same_fs);
+ target_is_source_parent = gnome_vfs_uri_is_parent (target_uri, dropped_uri, FALSE);
+- gnome_vfs_uri_unref (dropped_uri);
+ }
+- gnome_vfs_uri_unref (target_uri);
+-
+- if (same_fs || target_is_source_parent) {
++
++ if ((same_fs || target_is_source_parent) &&
++ /* use copy by default when dragging from user-owned location
++ * to location owned by somebody else */
++ !(uri_is_user_owned (dropped_uri) && !uri_is_user_owned (target_uri))) {
+ if (actions & GDK_ACTION_MOVE) {
+ *action = GDK_ACTION_MOVE;
+ } else {
+@@ -402,6 +423,15 @@ nautilus_drag_default_drop_action_for_ic
+ *action = context->suggested_action;
+ }
+ }
++
++ if (dropped_uri != NULL) {
++ gnome_vfs_uri_unref (dropped_uri);
++ }
++
++ if (target_uri != NULL) {
++ gnome_vfs_uri_unref (target_uri);
++ }
++
+ }
+
+ /* Encode a "x-special/gnome-icon-list" selection.
================================================================
Index: SOURCES/nautilus-dont_delete_wrong_bookmark.patch
diff -u /dev/null SOURCES/nautilus-dont_delete_wrong_bookmark.patch:1.1
--- /dev/null Sun May 21 12:44:31 2006
+++ SOURCES/nautilus-dont_delete_wrong_bookmark.patch Sun May 21 12:44:26 2006
@@ -0,0 +1,30 @@
+===================================================================
+RCS file: /cvs/gnome/nautilus/src/nautilus-places-sidebar.c,v
+retrieving revision 1.17
+retrieving revision 1.18
+diff -u -r1.17 -r1.18
+--- nautilus-places-sidebar.c 2006/04/07 00:17:11 1.17
++++ src/nautilus-places-sidebar.c 2006/04/15 16:19:44 1.18
+@@ -961,6 +961,7 @@
+ {
+ GtkTreeIter iter;
+ GtkTreeSelection *selection;
++ PlaceType type;
+ int index;
+
+ selection = gtk_tree_view_get_selection (sidebar->tree_view);
+@@ -970,6 +971,14 @@
+ }
+
+ gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
++ PLACES_SIDEBAR_COLUMN_ROW_TYPE, &type,
++ -1);
++
++ if (type != PLACES_BOOKMARK) {
++ return;
++ }
++
++ gtk_tree_model_get (GTK_TREE_MODEL (sidebar->store), &iter,
+ PLACES_SIDEBAR_COLUMN_INDEX, &index,
+ -1);
+
================================================================
Index: SOURCES/nautilus-exif_taken_date.patch
diff -u /dev/null SOURCES/nautilus-exif_taken_date.patch:1.1
--- /dev/null Sun May 21 12:44:31 2006
+++ SOURCES/nautilus-exif_taken_date.patch Sun May 21 12:44:26 2006
@@ -0,0 +1,43 @@
+diff -Nur nautilus-2.14.1/src/nautilus-image-properties-page.c nautilus-2.14.1.new/src/nautilus-image-properties-page.c
+--- nautilus-2.14.1/src/nautilus-image-properties-page.c 2006-03-18 07:45:15.000000000 +0100
++++ nautilus-2.14.1.new/src/nautilus-image-properties-page.c 2006-05-09 17:53:34.000000000 +0200
+@@ -191,7 +191,7 @@
+ return utf8_value;
+ }
+
+-static void
++static gboolean
+ append_tag_value_pair (GString *string, ExifData *data, ExifTag tag, gchar *description)
+ {
+ char *utf_attribute;
+@@ -203,13 +203,14 @@
+ if ((utf_attribute == NULL) || (utf_value == NULL)) {
+ g_free (utf_attribute);
+ g_free (utf_value);
+- return;
++ return FALSE;
+ }
+
+ g_string_append_printf (string, "<b>%s:</b> %s\n", (description != NULL) ? description : utf_attribute, utf_value);
+
+ g_free (utf_attribute);
+ g_free (utf_value);
++ return TRUE;
+ }
+
+ static void
+@@ -218,7 +219,13 @@
+ if (exifdata->ifd[0] && exifdata->ifd[0]->count) {
+ append_tag_value_pair (string, exifdata, EXIF_TAG_MAKE, _("Camera Brand"));
+ append_tag_value_pair (string, exifdata, EXIF_TAG_MODEL, _("Camera Model"));
+- append_tag_value_pair (string, exifdata, EXIF_TAG_DATE_TIME, _("Date Taken"));
++
++ /* Choose which date to show in order of relevance */
++ if (!append_tag_value_pair (string, exifdata, EXIF_TAG_DATE_TIME_ORIGINAL, _("Date Taken")))
++ {
++ append_tag_value_pair (string, exifdata, EXIF_TAG_DATE_TIME, _("Date Modified"));
++ }
++
+ append_tag_value_pair (string, exifdata, EXIF_TAG_EXPOSURE_TIME, _("Exposure Time"));
+ append_tag_value_pair (string, exifdata, EXIF_TAG_EXPOSURE_PROGRAM, _("Exposure Program"));
+ append_tag_value_pair (string, exifdata, EXIF_TAG_APERTURE_VALUE, _("Aperture Value"));
================================================================
Index: SOURCES/nautilus-fix_sftp_ftp_permissions_display.patch
diff -u /dev/null SOURCES/nautilus-fix_sftp_ftp_permissions_display.patch:1.1
--- /dev/null Sun May 21 12:44:31 2006
+++ SOURCES/nautilus-fix_sftp_ftp_permissions_display.patch Sun May 21 12:44:26 2006
@@ -0,0 +1,71 @@
+===================================================================
+RCS file: /cvs/gnome/nautilus/libnautilus-private/nautilus-file.c,v
+retrieving revision 1.386
+retrieving revision 1.386.2.1
+diff -u -r1.386 -r1.386.2.1
+--- nautilus-file.c 2006/04/18 16:54:31 1.386
++++ libnautilus-private/nautilus-file.c 2006/04/27 14:01:24 1.386.2.1
+@@ -671,7 +671,7 @@
+ /* File system does not provide permission bits.
+ * Can't determine specific permissions, do not deny permission at all.
+ */
+- if (!nautilus_file_can_get_permissions (file)) {
++ if (nautilus_file_info_missing (file, GNOME_VFS_FILE_INFO_FIELDS_ACCESS)) {
+ return FALSE;
+ }
+
+@@ -3409,7 +3409,7 @@
+ gboolean
+ nautilus_file_can_get_permissions (NautilusFile *file)
+ {
+- return !nautilus_file_info_missing (file, GNOME_VFS_FILE_INFO_FIELDS_ACCESS);
++ return !nautilus_file_info_missing (file, GNOME_VFS_FILE_INFO_FIELDS_PERMISSIONS);
+ }
+
+ /**
+@@ -3429,29 +3429,27 @@
+ {
+ uid_t user_id;
+
+- /* Not allowed to set the permissions if we can't
+- * even read them. This can happen on non-UNIX file
+- * systems.
+- */
+- if (!nautilus_file_can_get_permissions (file)) {
+- return FALSE;
+- }
++ if (file->details->info->valid_fields & GNOME_VFS_FILE_INFO_FIELDS_IDS) {
++ /* Check the user. */
++ user_id = geteuid();
+
+- /* Check the user. */
+- user_id = geteuid();
++ /* Owner is allowed to set permissions. */
++ if (user_id == (uid_t) file->details->info->uid) {
++ return TRUE;
++ }
+
+- /* Owner is allowed to set permissions. */
+- if (user_id == (uid_t) file->details->info->uid) {
+- return TRUE;
+- }
++ /* Root is also allowed to set permissions. */
++ if (user_id == 0) {
++ return TRUE;
++ }
+
+- /* Root is also allowed to set permissions. */
+- if (user_id == 0) {
+- return TRUE;
++ /* Nobody else is allowed. */
++ return FALSE;
+ }
+
+- /* Nobody else is allowed. */
+- return FALSE;
++ /* pretend to have full chmod rights when no info is available, relevant when
++ * the FS can't provide ownership info, for instance for FTP */
++ return TRUE;
+ }
+
+ GnomeVFSFilePermissions
================================================================
Index: SOURCES/nautilus-fix_slow_filesystems_crasher.patch
diff -u /dev/null SOURCES/nautilus-fix_slow_filesystems_crasher.patch:1.1
--- /dev/null Sun May 21 12:44:31 2006
+++ SOURCES/nautilus-fix_slow_filesystems_crasher.patch Sun May 21 12:44:26 2006
@@ -0,0 +1,15 @@
+===================================================================
+RCS file: /cvs/gnome/nautilus/src/nautilus-window-manage-views.c,v
+retrieving revision 1.365
+retrieving revision 1.365.2.1
+diff -u -r1.365 -r1.365.2.1
+--- nautilus-window-manage-views.c 2006/03/18 07:13:52 1.365
++++ src/nautilus-window-manage-views.c 2006/05/08 23:17:09 1.365.2.1
+@@ -960,6 +960,7 @@
+
+ /* We disconnected this, so we need to re-connect it */
+ viewed_file = nautilus_file_get (window->details->location);
++ nautilus_window_set_viewed_file (window, viewed_file);
+ nautilus_file_monitor_add (viewed_file, &window->details->viewed_file, 0);
+ g_signal_connect_object (viewed_file, "changed",
+ G_CALLBACK (viewed_file_changed_callback), window, 0);
================================================================
Index: SOURCES/nautilus-make_open_folder_translatable.patch
diff -u /dev/null SOURCES/nautilus-make_open_folder_translatable.patch:1.1
--- /dev/null Sun May 21 12:44:31 2006
+++ SOURCES/nautilus-make_open_folder_translatable.patch Sun May 21 12:44:26 2006
@@ -0,0 +1,30 @@
+===================================================================
+RCS file: /cvs/gnome/nautilus/nautilus-folder-handler.desktop.in,v
+retrieving revision 1.6
+retrieving revision 1.6.2.1
+diff -u -r1.6 -r1.6.2.1
+--- nautilus-folder-handler.desktop.in 2006/03/19 14:23:39 1.6
++++ nautilus/nautilus-folder-handler.desktop.in 2006/05/17 17:07:13 1.6.2.1
+@@ -1,6 +1,6 @@
+ [Desktop Entry]
+ Encoding=UTF-8
+-Name=Open Folder
++_Name=Open Folder
+ TryExec=nautilus
+ Exec=nautilus --no-desktop %U
+ NoDisplay=true
+===================================================================
+RCS file: /cvs/gnome/nautilus/po/POTFILES.in,v
+retrieving revision 1.166
+retrieving revision 1.166.2.1
+diff -u -r1.166 -r1.166.2.1
+--- POTFILES.in 2006/03/18 07:13:49 1.166
++++ po/POTFILES.in 2006/05/17 17:07:14 1.166.2.1
+@@ -36,6 +36,7 @@
+ libnautilus-private/nautilus-undo-signal-handlers.c
+ nautilus-computer.desktop.in
+ nautilus-file-management-properties.desktop.in
++nautilus-folder-handler.desktop.in
+ nautilus-home.desktop.in
+ nautilus.desktop.in
+ src/Nautilus_shell.server.in
================================================================
Index: SOURCES/nautilus-sort_volumes_list.patch
diff -u /dev/null SOURCES/nautilus-sort_volumes_list.patch:1.1
--- /dev/null Sun May 21 12:44:31 2006
+++ SOURCES/nautilus-sort_volumes_list.patch Sun May 21 12:44:26 2006
@@ -0,0 +1,15 @@
+===================================================================
+RCS file: /cvs/gnome/nautilus/src/file-manager/fm-tree-view.c,v
+retrieving revision 1.24
+retrieving revision 1.25
+diff -u -r1.24 -r1.25
+--- fm-tree-view.c 2006/03/18 07:27:37 1.24
++++ src/file-manager/fm-tree-view.c 2006/04/25 12:25:20 1.25
+@@ -1251,6 +1251,7 @@
+
+ volume_monitor = gnome_vfs_get_volume_monitor ();
+ volumes = gnome_vfs_volume_monitor_get_mounted_volumes (volume_monitor);
++ volumes = g_list_sort (volumes, (GCompareFunc) gnome_vfs_volume_compare);
+ for (l = volumes; l != NULL; l = l->next) {
+ add_root_for_volume (view, l->data);
+ gnome_vfs_volume_unref (l->data);
================================================================
Index: SOURCES/nautilus-width_of_text_selection.patch
diff -u /dev/null SOURCES/nautilus-width_of_text_selection.patch:1.1
--- /dev/null Sun May 21 12:44:31 2006
+++ SOURCES/nautilus-width_of_text_selection.patch Sun May 21 12:44:26 2006
@@ -0,0 +1,108 @@
+===================================================================
+RCS file: /cvs/gnome/nautilus/libnautilus-private/nautilus-icon-canvas-item.c,v
+retrieving revision 1.200
+retrieving revision 1.200.2.1
+diff -u -r1.200 -r1.200.2.1
+--- nautilus-icon-canvas-item.c 2006/04/18 16:54:31 1.200
++++ libnautilus-private/nautilus-icon-canvas-item.c 2006/04/26 15:00:23 1.200.2.1
+@@ -80,6 +80,7 @@
+ NautilusEmblemAttachPoints *attach_points;
+
+ /* Size of the text at current font. */
++ int text_dx;
+ int text_width;
+ int text_height;
+
+@@ -715,20 +716,22 @@
+ {
+ ArtIRect text_rectangle;
+ double pixels_per_unit;
+- double text_width, text_height;
++ double text_width, text_height, text_dx;
+
+ pixels_per_unit = EEL_CANVAS_ITEM (item)->canvas->pixels_per_unit;
+ if (canvas_coords) {
+ text_width = item->details->text_width;
+ text_height = item->details->text_height;
++ text_dx = item->details->text_dx;
+ } else {
+ text_width = item->details->text_width / pixels_per_unit;
+ text_height = item->details->text_height / pixels_per_unit;
++ text_dx = item->details->text_dx / pixels_per_unit;
+ }
+
+ if (NAUTILUS_ICON_CONTAINER (EEL_CANVAS_ITEM (item)->canvas)->details->label_position == NAUTILUS_ICON_LABEL_POSITION_BESIDE) {
+ text_rectangle.x0 = icon_rectangle.x1;
+- text_rectangle.x1 = text_rectangle.x0 + text_width;
++ text_rectangle.x1 = text_rectangle.x0 + text_dx + text_width;
+ text_rectangle.y0 = (icon_rectangle.y0 + icon_rectangle.y1) / 2- (int) text_height / 2;
+ text_rectangle.y1 = text_rectangle.y0 + text_height + LABEL_OFFSET / pixels_per_unit;
+ } else {
+@@ -923,13 +926,17 @@
+ static void
+ layout_get_full_size (PangoLayout *layout,
+ int *width,
+- int *height)
++ int *height,
++ int *dx)
+ {
+ PangoRectangle logical_rect;
++ int total_width;
+
+ pango_layout_get_extents (layout, NULL, &logical_rect);
+- *width = (logical_rect.x + logical_rect.width + PANGO_SCALE / 2) / PANGO_SCALE;
+- *height = (logical_rect.y + logical_rect.height + PANGO_SCALE / 2) / PANGO_SCALE;
++ *width = (logical_rect.width + PANGO_SCALE / 2) / PANGO_SCALE;
++ total_width = (logical_rect.x + logical_rect.width + PANGO_SCALE / 2) / PANGO_SCALE;
++ *dx = total_width - *width;
++ *height = (logical_rect.height + PANGO_SCALE / 2) / PANGO_SCALE;
+ }
+
+
+@@ -941,8 +948,8 @@
+ {
+ NautilusIconCanvasItemDetails *details;
+ NautilusIconContainer *container;
+- guint editable_height, editable_width;
+- guint additional_height, additional_width;
++ guint editable_height, editable_width, editable_dx;
++ guint additional_height, additional_width, additional_dx;
+ EelCanvasItem *canvas_item;
+ PangoLayout *editable_layout;
+ PangoLayout *additional_layout;
+@@ -1000,8 +1007,10 @@
+
+ editable_width = 0;
+ editable_height = 0;
++ editable_dx = 0;
+ additional_width = 0;
+ additional_height = 0;
++ additional_dx = 0;
+
+ max_text_width = floor (nautilus_icon_canvas_item_get_max_text_width (item));
+
+@@ -1011,15 +1020,21 @@
+
+ if (have_editable) {
+ editable_layout = get_label_layout (&details->editable_text_layout, item, details->editable_text);
+- layout_get_full_size (editable_layout, &editable_width, &editable_height);
++ layout_get_full_size (editable_layout, &editable_width, &editable_height, &editable_dx);
+ }
+
+ if (have_additional) {
+ additional_layout = get_label_layout (&details->additional_text_layout, item, details->additional_text);
+- layout_get_full_size (additional_layout, &additional_width, &additional_height);
++ layout_get_full_size (additional_layout, &additional_width, &additional_height, &additional_dx);
+ }
+
+- details->text_width = MAX (editable_width, additional_width);
++ if (editable_width > additional_width) {
++ details->text_width = editable_width;
++ details->text_dx = editable_dx;
++ } else {
++ details->text_width = additional_width;
++ details->text_dx = additional_dx;
++ }
+
+ if (have_additional) {
+ details->text_height = editable_height + LABEL_LINE_SPACING + additional_height;
================================================================
More information about the pld-cvs-commit
mailing list