summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog19
-rw-r--r--HACKING3
-rw-r--r--libnautilus-extensions/nautilus-list.c7
-rw-r--r--libnautilus-private/nautilus-list.c7
-rw-r--r--src/file-manager/fm-icon-view.c35
-rw-r--r--src/file-manager/fm-properties-window.c1
6 files changed, 49 insertions, 23 deletions
diff --git a/ChangeLog b/ChangeLog
index 03dc4849f..1e12a59fc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,23 @@
+2000-05-02 Darin Adler <darin@eazel.com>
+
+ * HACKING: Added a mention of "killall oafd" and "killall gconfd".
+
+ * libnautilus-extensions/nautilus-list.c (nautilus_list_destroy):
+ Fixed a bug where we'd free the details structure and then write
+ to it afterwards. This was torturing John today. It happens when
+ you leave a page that's set to list view.
+
+ * src/file-manager/fm-icon-view.c
+ (fm_icon_view_icon_changed_callback): Fixed bug 663 that was
+ about the issue of similar but not identical floating point
+ numbers and also bug 661 that wasn't a bug at all!
+
+ * src/file-manager/fm-properties-window.c
+ (get_pixmap_and_mask_for_properties_window):
+ Removed the FIXME from this file, since the bug is fixed.
+
2000-05-2 Cody Russell <car0969@gamma2.uta.edu>
+
* src/ntl-window.c: Respect the user's GNOME preferences. Lock
down the "Location" toolbar if the user has "Can detach and
move toolbars" disabled in gnomecc.
diff --git a/HACKING b/HACKING
index d7627c245..86877d191 100644
--- a/HACKING
+++ b/HACKING
@@ -34,5 +34,8 @@ ORBit requires you to install popt-1.5, which can be fetched from:
* Build and install nautilus into your selected prefix.
+Also, you need to do a "killall oafd; killall gconfd" before
+running Nautilus if OAF, GConf, or any of the .oafinfo files
+in any module changed.
All patches should go through nautilus-list@lists.eazel.com
diff --git a/libnautilus-extensions/nautilus-list.c b/libnautilus-extensions/nautilus-list.c
index 196b751c3..c31fa37f0 100644
--- a/libnautilus-extensions/nautilus-list.c
+++ b/libnautilus-extensions/nautilus-list.c
@@ -420,9 +420,12 @@ nautilus_list_destroy (GtkObject *object)
click_policy_changed_callback,
list);
- g_free (list->details);
-
NAUTILUS_CALL_PARENT_CLASS (GTK_OBJECT_CLASS, destroy, (object));
+
+ /* Must do this after calling the parent, because GtkCList calls
+ * the clear method, which must have a valid details pointer.
+ */
+ g_free (list->details);
}
static void
diff --git a/libnautilus-private/nautilus-list.c b/libnautilus-private/nautilus-list.c
index 196b751c3..c31fa37f0 100644
--- a/libnautilus-private/nautilus-list.c
+++ b/libnautilus-private/nautilus-list.c
@@ -420,9 +420,12 @@ nautilus_list_destroy (GtkObject *object)
click_policy_changed_callback,
list);
- g_free (list->details);
-
NAUTILUS_CALL_PARENT_CLASS (GTK_OBJECT_CLASS, destroy, (object));
+
+ /* Must do this after calling the parent, because GtkCList calls
+ * the clear method, which must have a valid details pointer.
+ */
+ g_free (list->details);
}
static void
diff --git a/src/file-manager/fm-icon-view.c b/src/file-manager/fm-icon-view.c
index ceac63c1a..09b7caa37 100644
--- a/src/file-manager/fm-icon-view.c
+++ b/src/file-manager/fm-icon-view.c
@@ -1087,7 +1087,7 @@ fm_icon_view_icon_changed_callback (NautilusIconContainer *container,
{
NautilusDirectory *directory;
char *position_string;
- char *scale_string;
+ char *scale_string, *scale_string_x, *scale_string_y;
g_assert (FM_IS_ICON_VIEW (icon_view));
g_assert (container == get_icon_container (icon_view));
@@ -1106,30 +1106,29 @@ fm_icon_view_icon_changed_callback (NautilusIconContainer *container,
icon_view);
}
- /* Store the new position of the icon in the metadata.
- * FIXME bugzilla.eazel.com 661:
- * Is a comma acceptable in locales where it is the decimal separator?
- */
+ /* Store the new position of the icon in the metadata. */
directory = fm_directory_view_get_model (FM_DIRECTORY_VIEW (icon_view));
- position_string = g_strdup_printf ("%d,%d", x, y);
- nautilus_file_set_metadata (file,
- NAUTILUS_METADATA_KEY_ICON_POSITION,
- NULL,
- position_string);
+ if (!nautilus_icon_container_is_auto_layout (container)) {
+ position_string = g_strdup_printf ("%d,%d", x, y);
+ nautilus_file_set_metadata (file,
+ NAUTILUS_METADATA_KEY_ICON_POSITION,
+ NULL,
+ position_string);
+ }
/* FIXME bugzilla.eazel.com 662:
* %.2f is not a good format for the scale factor. We'd like it to
* say "2" or "2x" instead of "2.00".
- * FIXME bugzilla.eazel.com 663:
- * scale_x == scale_y is too strict a test. It would be better to
- * check if the string representations match instead of the FP values.
- * FIXME bugzilla.eazel.com 661:
- * Is a comma acceptable in locales where it is the decimal separator?
*/
- if (scale_x == scale_y) {
- scale_string = g_strdup_printf ("%.2f", scale_x);
+ scale_string_x = g_strdup_printf ("%.2f", scale_x);
+ scale_string_y = g_strdup_printf ("%.2f", scale_y);
+ if (strcmp (scale_string_x, scale_string_y) == 0) {
+ scale_string = scale_string_x;
+ g_free (scale_string_y);
} else {
- scale_string = g_strdup_printf ("%.2f,%.2f", scale_x, scale_y);
+ scale_string = g_strconcat (scale_string_x, ",", scale_string_y);
+ g_free (scale_string_x);
+ g_free (scale_string_y);
}
nautilus_file_set_metadata (file,
NAUTILUS_METADATA_KEY_ICON_SCALE,
diff --git a/src/file-manager/fm-properties-window.c b/src/file-manager/fm-properties-window.c
index 58b591fe3..27cbb9552 100644
--- a/src/file-manager/fm-properties-window.c
+++ b/src/file-manager/fm-properties-window.c
@@ -72,7 +72,6 @@ get_pixmap_and_mask_for_properties_window (NautilusFile *file,
g_assert (NAUTILUS_IS_FILE (file));
- /* FIXME bugzilla.eazel.com 413: Do something about giant icon sizes here */
pixbuf = nautilus_icon_factory_get_pixbuf_for_file (file, NAUTILUS_ICON_SIZE_STANDARD);
gdk_pixbuf_render_pixmap_and_mask (pixbuf, pixmap_return, mask_return, 128);
gdk_pixbuf_unref (pixbuf);