OBS User unknown 2008-11-17 16:30:10 +00:00 committed by Git OBS Bridge
parent 8e6f5c4cd8
commit f54a2035ef
3 changed files with 125 additions and 3 deletions

View File

@ -81,10 +81,10 @@ index f4ce320..ad84b4b 100644
gboolean
diff --git a/libnautilus-private/nautilus-debug-log.h b/libnautilus-private/nautilus-debug-log.h
index ad0152e..7ed1af1 100644
index ad0152e..2976a1f 100644
--- a/libnautilus-private/nautilus-debug-log.h
+++ b/libnautilus-private/nautilus-debug-log.h
@@ -27,10 +27,12 @@
@@ -27,10 +27,13 @@
#include <glib.h>
@ -98,6 +98,7 @@ index ad0152e..7ed1af1 100644
+#define NAUTILUS_DEBUG_LOG_DOMAIN_LOCKDOWN "lockdown" /* when things get *not* done due to lockdown */
+#define NAUTILUS_DEBUG_LOG_DOMAIN_DESKTOP_ITEMS "desktop-items" /* used for predefined desktop items (this is useful for sysadmins) */
+#define NAUTILUS_DEBUG_LOG_DOMAIN_DEBUG_DESKTOP_ITEMS "debug-desktop-items" /* debugging the machinery for predefined desktop items */
+#define NAUTILUS_DEBUG_LOG_DOMAIN_ICON_POSITIONS "icon-positions" /* debugging where icon positions get loaded/saved */
void nautilus_debug_log (gboolean is_milestone, const char *domain, const char *format, ...);
@ -1786,6 +1787,40 @@ index cbe0419..ba67a75 100644
directory->details->directory_loaded = TRUE;
directory->details->directory_loaded_sent_notification = FALSE;
diff --git a/libnautilus-private/nautilus-directory.c b/libnautilus-private/nautilus-directory.c
index 9e6e435..b5d75e1 100644
--- a/libnautilus-private/nautilus-directory.c
+++ b/libnautilus-private/nautilus-directory.c
@@ -25,6 +25,7 @@
#include <config.h>
#include "nautilus-directory-private.h"
+#include "nautilus-debug-log.h"
#include "nautilus-directory-metafile.h"
#include "nautilus-directory-notify.h"
#include "nautilus-file-attributes.h"
@@ -1593,6 +1594,8 @@ nautilus_directory_schedule_position_set (GList *position_setting_list)
char str[64];
for (p = position_setting_list; p != NULL; p = p->next) {
+ GList node;
+
item = (NautilusFileChangesQueuePosition *) p->data;
file = nautilus_file_get (item->location);
@@ -1608,6 +1611,12 @@ nautilus_directory_schedule_position_set (GList *position_setting_list)
NULL,
str);
+ node.data = file;
+ node.prev = NULL;
+ node.next = NULL;
+ nautilus_debug_log_with_file_list (FALSE, NAUTILUS_DEBUG_LOG_DOMAIN_ICON_POSITIONS, &node,
+ "Directory - saving icon position to \"%s\"", str);
+
if (item->set) {
g_snprintf (str, sizeof (str), "%d", item->screen);
} else {
diff --git a/libnautilus-private/nautilus-global-preferences.h b/libnautilus-private/nautilus-global-preferences.h
index e3de760..d414bed 100644
--- a/libnautilus-private/nautilus-global-preferences.h
@ -1798,6 +1833,82 @@ index e3de760..d414bed 100644
void nautilus_global_preferences_init (void);
char *nautilus_global_preferences_get_default_folder_viewer_preference_as_iid (void);
diff --git a/src/file-manager/fm-directory-view.c b/src/file-manager/fm-directory-view.c
index 78d5044..5eafc70 100644
--- a/src/file-manager/fm-directory-view.c
+++ b/src/file-manager/fm-directory-view.c
@@ -8264,14 +8264,11 @@ load_directory (FMDirectoryView *view,
view->details->reported_load_error = FALSE;
- /* FIXME bugzilla.gnome.org 45062: In theory, we also need to monitor metadata here (as
- * well as doing a call when ready), in case external forces
- * change the directory's file metadata.
- */
attributes =
NAUTILUS_FILE_ATTRIBUTE_INFO |
NAUTILUS_FILE_ATTRIBUTE_MOUNT |
- NAUTILUS_FILE_ATTRIBUTE_FILESYSTEM_INFO;
+ NAUTILUS_FILE_ATTRIBUTE_FILESYSTEM_INFO |
+ NAUTILUS_FILE_ATTRIBUTE_METADATA;
view->details->metadata_for_directory_as_file_pending = TRUE;
view->details->metadata_for_files_in_directory_pending = TRUE;
nautilus_file_call_when_ready
diff --git a/src/file-manager/fm-icon-view.c b/src/file-manager/fm-icon-view.c
index a5186d6..827ad5e 100644
--- a/src/file-manager/fm-icon-view.c
+++ b/src/file-manager/fm-icon-view.c
@@ -42,6 +42,7 @@
#include <gtk/gtk.h>
#include <glib/gi18n.h>
#include <gio/gio.h>
+#include <libnautilus-private/nautilus-debug-log.h>
#include <libnautilus-private/nautilus-directory-background.h>
#include <libnautilus-private/nautilus-directory.h>
#include <libnautilus-private/nautilus-dnd.h>
@@ -236,6 +237,7 @@ get_stored_icon_position_callback (NautilusIconContainer *container,
char *position_string, *scale_string;
gboolean position_good;
char c;
+ GList node;
g_assert (NAUTILUS_IS_ICON_CONTAINER (container));
g_assert (NAUTILUS_IS_FILE (file));
@@ -252,6 +254,13 @@ get_stored_icon_position_callback (NautilusIconContainer *container,
position_good = sscanf
(position_string, " %d , %d %c",
&position->x, &position->y, &c) == 2;
+
+ node.data = file;
+ node.prev = NULL;
+ node.next = NULL;
+ nautilus_debug_log_with_file_list (FALSE, NAUTILUS_DEBUG_LOG_DOMAIN_ICON_POSITIONS, &node,
+ "get_stored_icon_position_callback(): read icon position as \"%s\"", position_string);
+
g_free (position_string);
/* If it is the desktop directory, maybe the gnome-libs metadata has information about it */
@@ -2274,11 +2283,20 @@ icon_position_changed_callback (NautilusIconContainer *container,
/* Store the new position of the icon in the metadata. */
if (!fm_icon_view_using_auto_layout (icon_view)) {
+ GList node;
+
position_string = g_strdup_printf
("%d,%d", position->x, position->y);
nautilus_file_set_metadata
(file, NAUTILUS_METADATA_KEY_ICON_POSITION,
NULL, position_string);
+
+ node.data = file;
+ node.prev = NULL;
+ node.next = NULL;
+ nautilus_debug_log_with_file_list (FALSE, NAUTILUS_DEBUG_LOG_DOMAIN_ICON_POSITIONS, &node,
+ "icon_position_changed_callback() - saving icon position to \"%s\"", position_string);
+
g_free (position_string);
}
diff --git a/src/nautilus-desktop-window.c b/src/nautilus-desktop-window.c
index 6871bde..ea0fc61 100644
--- a/src/nautilus-desktop-window.c

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Tue Nov 11 18:27:21 CST 2008 - federico@novell.com
- Updated nautilus-sysadmin-desktop-items.diff to fix
https://bugzilla.novell.com/show_bug.cgi?id=438277 - icon positions
in the desktop don't get restored.
-------------------------------------------------------------------
Fri Nov 7 10:36:51 EST 2008 - jpr@novell.com

View File

@ -41,7 +41,7 @@ BuildRequires: update-desktop-files
License: GPL v2 or later
Group: Productivity/File utilities
Version: 2.24.1
Release: 4
Release: 5
Summary: The GNOME 2.x Desktop File Manager
Source: ftp://ftp.gnome.org/pub/gnome/sources/nautilus/2.20/%{name}-%{version}.tar.bz2
Url: http://www.gnome.org
@ -209,6 +209,10 @@ fi
%{_datadir}/gtk-doc/html/libnautilus-extension
%changelog
* Tue Nov 11 2008 federico@novell.com
- Updated nautilus-sysadmin-desktop-items.diff to fix
https://bugzilla.novell.com/show_bug.cgi?id=438277 - icon positions
in the desktop don't get restored.
* Fri Nov 07 2008 jpr@novell.com
- Add --no-desktop to nautilus search desktop file patch (bnc#439475)
* Wed Nov 05 2008 federico@novell.com