[nautilus] file: Set activation URI for certain files only



commit c6f6f07f72f030d358e41f2a11f8f03df0c27814
Author: Ondrej Holy <oholy redhat com>
Date:   Fri Apr 21 15:32:16 2017 +0200

    file: Set activation URI for certain files only
    
    Drag&drop of native Google Drive files doesn't work correctly, because
    target path is used, which causes requests for HTTP backend and fails.
    The activation URI is used for drag&drop since commit 1d1488c. Recently,
    this behavior has been disabled for trash locations by commit bc22321.
    This behavior seems to make sense for recent locations in order to allow
    dropping in applications, which are not based on GLib/GIO. It also makes
    sense for afpbrowse, dnssd, network, and smbbrowse backends when mounting
    and bookmarking. Let's set the activation URI only for the mentioned.
    This change should not affect nautilus links (i.e. desktop files and
    symlinks), which are handled by different codepath, it should affect
    only certain GVfs backends.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=768168

 src/nautilus-file.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
---
diff --git a/src/nautilus-file.c b/src/nautilus-file.c
index c630aac..e7e96dc 100644
--- a/src/nautilus-file.c
+++ b/src/nautilus-file.c
@@ -2690,7 +2690,8 @@ update_info_internal (NautilusFile *file,
     file->details->type = file_type;
 
     if (!file->details->got_custom_activation_uri &&
-        !nautilus_file_is_in_trash (file))
+        (g_file_info_get_attribute_boolean (info, G_FILE_ATTRIBUTE_STANDARD_IS_VIRTUAL) ||
+         nautilus_file_is_in_recent (file)))
     {
         activation_uri = g_file_info_get_attribute_string (info, G_FILE_ATTRIBUTE_STANDARD_TARGET_URI);
         if (activation_uri == NULL)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]