diff options
author | Alexander Larsson <alexl@redhat.com> | 2003-12-18 11:06:55 +0000 |
---|---|---|
committer | Alexander Larsson <alexl@src.gnome.org> | 2003-12-18 11:06:55 +0000 |
commit | 72aa6695e7422ad91231ccf18b26de90aceb1443 (patch) | |
tree | ab345f5b794d4c2ec87868bb937f45b6f08a55d5 /libnautilus-private/nautilus-icon-container.c | |
parent | 934d49681528e2bb95c6074e76a3d7a2072b6690 (diff) | |
download | nautilus-72aa6695e7422ad91231ccf18b26de90aceb1443.tar.gz |
Require gtk/glib 2.3.0
2003-12-18 Alexander Larsson <alexl@redhat.com>
* configure.in:
Require gtk/glib 2.3.0
* libnautilus-private/nautilus-directory.c:
Use gobject private data for details
* libnautilus-private/nautilus-file-private.h:
* libnautilus-private/nautilus-file.[ch]:
Use gobject private data for details
Add has_open_window flag and setter/getter
* libnautilus-private/nautilus-icon-container.[ch]:
* src/file-manager/fm-icon-container.c:
Support visiting modifier for icons with open windows
* src/file-manager/fm-directory-view.c:
Don't use filename extension in templates name
* src/file-manager/fm-list-model.c:
Support accept and visiting icon modifiers
* src/file-manager/fm-list-view.c:
Always set the drag_view on the model so that the accept
modifier works
* src/nautilus-window.c: (nautilus_window_set_viewed_file):
Set has_open_window on file
Diffstat (limited to 'libnautilus-private/nautilus-icon-container.c')
-rw-r--r-- | libnautilus-private/nautilus-icon-container.c | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/libnautilus-private/nautilus-icon-container.c b/libnautilus-private/nautilus-icon-container.c index 03117b798..8b6ae752a 100644 --- a/libnautilus-private/nautilus-icon-container.c +++ b/libnautilus-private/nautilus-icon-container.c @@ -4732,14 +4732,15 @@ nautilus_icon_container_get_icon_images (NautilusIconContainer *container, NautilusIconData *data, GList **emblem_icons, char **embedded_text, - gboolean *embedded_text_needs_loading) + gboolean *embedded_text_needs_loading, + gboolean *has_open_window) { NautilusIconContainerClass *klass; klass = NAUTILUS_ICON_CONTAINER_GET_CLASS (container); g_return_val_if_fail (klass->get_icon_images != NULL, NULL); - return klass->get_icon_images (container, data, emblem_icons, embedded_text, embedded_text_needs_loading); + return klass->get_icon_images (container, data, emblem_icons, embedded_text, embedded_text_needs_loading, has_open_window); } @@ -4865,6 +4866,8 @@ nautilus_icon_container_update_icon (NautilusIconContainer *container, char *embedded_text; GdkRectangle embedded_text_rect; gboolean embedded_text_needs_loading; + gboolean has_open_window; + char *modifier; if (icon == NULL) { return; @@ -4878,7 +4881,8 @@ nautilus_icon_container_update_icon (NautilusIconContainer *container, icon_name = nautilus_icon_container_get_icon_images ( container, icon->data, &emblem_icon_names, - &embedded_text, &embedded_text_needs_loading); + &embedded_text, &embedded_text_needs_loading, + &has_open_window); /* compute the maximum size based on the scale factor */ min_image_size = MINIMUM_IMAGE_SIZE * EEL_CANVAS (container)->pixels_per_unit; @@ -4889,10 +4893,18 @@ nautilus_icon_container_update_icon (NautilusIconContainer *container, icon_size = MAX (icon_size, min_image_size); icon_size = MIN (icon_size, max_image_size); + + modifier = NULL; + if (has_open_window) { + modifier = "visiting"; + } + if (icon == details->drop_target) { + modifier = "accept"; + } pixbuf = nautilus_icon_factory_get_pixbuf_for_icon (icon_name, - (icon == details->drop_target) ? "accept" : NULL, + modifier, icon_size, &attach_points, &embedded_text_rect, |