diff options
author | Dave Camp <dave@ximian.com> | 2004-04-09 21:18:45 +0000 |
---|---|---|
committer | Dave Camp <campd@src.gnome.org> | 2004-04-09 21:18:45 +0000 |
commit | a5805999a1cd3fc93eb92930e47a854d768be408 (patch) | |
tree | 601ed40674d14634321cdfed100f3603dad08ea8 /libnautilus-private | |
parent | 62236eb5edd732a2f764bde7dc9db94621fd90d1 (diff) | |
download | nautilus-a5805999a1cd3fc93eb92930e47a854d768be408.tar.gz |
By default set the background per-directory in spatial mode. Take out
004-04-09 Dave Camp <dave@ximian.com>
* libnautilus-private/nautilus-directory-background.c:
(nautilus_connect_desktop_background_to_file_metadata),
(background_changed_callback),
(nautilus_connect_background_to_file_metadata):
* libnautilus-private/nautilus-directory-background.h:
* libnautilus-private/nautilus-dnd.c:
(nautilus_drag_drop_background_ask):
* libnautilus-private/nautilus-dnd.h:
* libnautilus-private/nautilus-icon-dnd.c:
(get_background_drag_action):
* src/file-manager/fm-icon-view.c: (fm_icon_view_begin_loading):
By default set the background per-directory in spatial mode.
* src/file-manager/fm-list-view.c: (fm_list_view_begin_loading):
Take out background metadata stuff, we don't use an eelbackground
here.
Diffstat (limited to 'libnautilus-private')
-rw-r--r-- | libnautilus-private/nautilus-directory-background.c | 29 | ||||
-rw-r--r-- | libnautilus-private/nautilus-directory-background.h | 5 | ||||
-rw-r--r-- | libnautilus-private/nautilus-dnd.c | 4 | ||||
-rw-r--r-- | libnautilus-private/nautilus-dnd.h | 3 | ||||
-rw-r--r-- | libnautilus-private/nautilus-icon-dnd.c | 2 |
5 files changed, 23 insertions, 20 deletions
diff --git a/libnautilus-private/nautilus-directory-background.c b/libnautilus-private/nautilus-directory-background.c index 75858fd9d..75d7ddf56 100644 --- a/libnautilus-private/nautilus-directory-background.c +++ b/libnautilus-private/nautilus-directory-background.c @@ -127,7 +127,7 @@ nautilus_connect_desktop_background_to_file_metadata (NautilusIconContainer *ico * waste, but won't hurt, so I don't think it's worth refactoring the fn * at this point. */ - nautilus_connect_background_to_file_metadata (GTK_WIDGET (icon_container), file); + nautilus_connect_background_to_file_metadata (GTK_WIDGET (icon_container), file, NAUTILUS_DND_ACTION_SET_AS_FOLDER_BACKGROUND); if (GTK_WIDGET_REALIZED (icon_container)) { desktop_background_realized (icon_container, GINT_TO_POINTER (FALSE)); @@ -611,7 +611,17 @@ background_changed_callback (EelBackground *background, g_signal_handlers_block_by_func ( file, G_CALLBACK (saved_settings_changed_callback), background); - if (action != NAUTILUS_DND_ACTION_SET_AS_BACKGROUND) { + if (action != NAUTILUS_DND_ACTION_SET_AS_FOLDER_BACKGROUND && action != NAUTILUS_DND_ACTION_SET_AS_GLOBAL_BACKGROUND) { + GdkDragAction default_drag_action; + + default_drag_action = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (background), "default_drag_action")); + + + action = default_drag_action; + g_print ("checking action, default_drag_action is %d\n", action); + } + + if (action == NAUTILUS_DND_ACTION_SET_AS_GLOBAL_BACKGROUND) { nautilus_file_set_metadata (file, NAUTILUS_METADATA_KEY_LOCATION_BACKGROUND_COLOR, NULL, @@ -839,7 +849,8 @@ background_destroyed_callback (EelBackground *background, /* key routine that hooks up a background and location */ void nautilus_connect_background_to_file_metadata (GtkWidget *widget, - NautilusFile *file) + NautilusFile *file, + GdkDragAction default_drag_action) { EelBackground *background; gpointer old_file; @@ -880,6 +891,8 @@ nautilus_connect_background_to_file_metadata (GtkWidget *widget, g_object_set_data_full (G_OBJECT (background), "eel_background_file", file, (GDestroyNotify) nautilus_file_unref); + g_object_set_data (G_OBJECT (background), "default_drag_action", GINT_TO_POINTER (default_drag_action)); + /* Connect new signal handlers. */ if (file != NULL) { g_signal_connect_object (background, "settings_changed", @@ -910,13 +923,3 @@ nautilus_connect_background_to_file_metadata (GtkWidget *widget, /* Update the background based on the file metadata. */ initialize_background_from_settings (file, background); } - -void -nautilus_connect_background_to_file_metadata_by_uri (GtkWidget *widget, - const char *uri) -{ - NautilusFile *file; - file = nautilus_file_get (uri); - nautilus_connect_background_to_file_metadata (widget, file); - nautilus_file_unref (file); -} diff --git a/libnautilus-private/nautilus-directory-background.h b/libnautilus-private/nautilus-directory-background.h index e318aed4f..97823ec8a 100644 --- a/libnautilus-private/nautilus-directory-background.h +++ b/libnautilus-private/nautilus-directory-background.h @@ -29,9 +29,8 @@ #include <libnautilus-private/nautilus-icon-container.h> void nautilus_connect_background_to_file_metadata (GtkWidget *widget, - NautilusFile *file); + NautilusFile *file, + GdkDragAction default_drag_action); void nautilus_connect_desktop_background_to_file_metadata (NautilusIconContainer *icon_container, NautilusFile *file); -void nautilus_connect_background_to_file_metadata_by_uri (GtkWidget *widget, - const char *uri); gboolean nautilus_file_background_is_set (EelBackground *background); diff --git a/libnautilus-private/nautilus-dnd.c b/libnautilus-private/nautilus-dnd.c index b80fc94f9..a60721758 100644 --- a/libnautilus-private/nautilus-dnd.c +++ b/libnautilus-private/nautilus-dnd.c @@ -683,8 +683,8 @@ nautilus_drag_drop_background_ask (GtkWidget *widget, &damd); append_drop_action_menu_item (menu, _("Set as background for _this folder"), - NAUTILUS_DND_ACTION_SET_AS_BACKGROUND, - (actions & NAUTILUS_DND_ACTION_SET_AS_BACKGROUND) != 0, + NAUTILUS_DND_ACTION_SET_AS_FOLDER_BACKGROUND, + (actions & NAUTILUS_DND_ACTION_SET_AS_FOLDER_BACKGROUND) != 0, &damd); menu_item = gtk_separator_menu_item_new (); diff --git a/libnautilus-private/nautilus-dnd.h b/libnautilus-private/nautilus-dnd.h index 53fab627e..366558030 100644 --- a/libnautilus-private/nautilus-dnd.h +++ b/libnautilus-private/nautilus-dnd.h @@ -64,7 +64,8 @@ typedef enum { typedef enum { NAUTILUS_DND_ACTION_FIRST = GDK_ACTION_ASK << 1, NAUTILUS_DND_ACTION_SET_AS_BACKGROUND = NAUTILUS_DND_ACTION_FIRST << 0, - NAUTILUS_DND_ACTION_SET_AS_GLOBAL_BACKGROUND = NAUTILUS_DND_ACTION_FIRST << 1 + NAUTILUS_DND_ACTION_SET_AS_FOLDER_BACKGROUND = NAUTILUS_DND_ACTION_FIRST << 1, + NAUTILUS_DND_ACTION_SET_AS_GLOBAL_BACKGROUND = NAUTILUS_DND_ACTION_FIRST << 2 } NautilusDndAction; /* drag&drop-related information. */ diff --git a/libnautilus-private/nautilus-icon-dnd.c b/libnautilus-private/nautilus-icon-dnd.c index ccccaf87c..88f99616d 100644 --- a/libnautilus-private/nautilus-icon-dnd.c +++ b/libnautilus-private/nautilus-icon-dnd.c @@ -533,7 +533,7 @@ get_background_drag_action (NautilusIconContainer *container, GdkDragAction valid_actions; if (action == GDK_ACTION_ASK) { - valid_actions = NAUTILUS_DND_ACTION_SET_AS_BACKGROUND; + valid_actions = NAUTILUS_DND_ACTION_SET_AS_FOLDER_BACKGROUND; if (g_object_get_data (G_OBJECT (eel_get_widget_background (GTK_WIDGET (container))), "is_desktop") == 0) { valid_actions |= NAUTILUS_DND_ACTION_SET_AS_GLOBAL_BACKGROUND; } |