[nautilus/remove-desktop-files-and-links: 6/8] general: Remove NautilusLink



commit b1cb977812054a45bb10a4b297871a25ad3262d9
Author: Carlos Soriano <csoriano gnome org>
Date:   Wed May 9 15:20:23 2018 +0200

    general: Remove NautilusLink
    
    It was used for desktop files, netscape url links and other links.
    
    However this is not really useful anymore with the desktop gone, so it
    makes sense to remove it from Nautilus and have a big clean up.
    
    This also was one of the blockers for the backend rework.

 src/meson.build                      |   4 +-
 src/nautilus-canvas-dnd.c            |   8 +-
 src/nautilus-canvas-view-container.c |   8 -
 src/nautilus-canvas-view.c           |  15 -
 src/nautilus-directory-async.c       | 298 -------------------
 src/nautilus-dnd.c                   |   1 -
 src/nautilus-file-operations.c       |   1 -
 src/nautilus-file.c                  |  65 +---
 src/nautilus-file.h                  |   1 -
 src/nautilus-files-view.c            |   1 -
 src/nautilus-files-view.h            |   1 -
 src/nautilus-link.c                  | 560 -----------------------------------
 src/nautilus-link.h                  |  45 ---
 src/nautilus-list-view-dnd.c         |   9 +-
 src/nautilus-properties-window.c     |  42 +--
 src/nautilus-tree-view-drag-dest.c   |   1 -
 16 files changed, 18 insertions(+), 1042 deletions(-)
---
diff --git a/src/meson.build b/src/meson.build
index c6fbd8808..d84482bec 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -200,8 +200,6 @@ libnautilus_sources = [
   'nautilus-keyfile-metadata.h',
   'nautilus-lib-self-check-functions.c',
   'nautilus-lib-self-check-functions.h',
-  'nautilus-link.c',
-  'nautilus-link.h',
   'nautilus-metadata.h',
   'nautilus-metadata.c',
   'nautilus-mime-application-chooser.c',
@@ -337,4 +335,4 @@ executable(
     gtk
   ],
   install: true
-)
+)
\ No newline at end of file
diff --git a/src/nautilus-canvas-dnd.c b/src/nautilus-canvas-dnd.c
index feab5d090..f3d51124a 100644
--- a/src/nautilus-canvas-dnd.c
+++ b/src/nautilus-canvas-dnd.c
@@ -36,7 +36,6 @@
 
 #include "nautilus-canvas-private.h"
 #include "nautilus-global-preferences.h"
-#include "nautilus-link.h"
 #include "nautilus-metadata.h"
 #include "nautilus-selection-canvas-item.h"
 #include <eel/eel-glib-extensions.h>
@@ -250,11 +249,8 @@ icon_get_data_binder (NautilusCanvasIcon *icon,
 
     uri = nautilus_canvas_container_get_icon_uri (container, icon);
     file = nautilus_file_get_by_uri (uri);
-    if (!nautilus_file_is_nautilus_link (file))
-    {
-        g_free (uri);
-        uri = nautilus_canvas_container_get_icon_activation_uri (container, icon);
-    }
+    g_free (uri);
+    uri = nautilus_canvas_container_get_icon_activation_uri (container, icon);
 
     if (uri == NULL)
     {
diff --git a/src/nautilus-canvas-view-container.c b/src/nautilus-canvas-view-container.c
index a6fe5be57..0811080e1 100644
--- a/src/nautilus-canvas-view-container.c
+++ b/src/nautilus-canvas-view-container.c
@@ -247,14 +247,6 @@ nautilus_canvas_view_container_get_icon_text (NautilusCanvasContainer  *containe
         return;
     }
 
-    if (nautilus_file_is_nautilus_link (file))
-    {
-        /* Don't show the normal extra information for desktop files,
-         * it doesn't make sense. */
-        *additional_text = NULL;
-        return;
-    }
-
     /* Find out what attributes go below each icon. */
     attributes = nautilus_canvas_view_container_get_icon_text_attribute_names (container,
                                                                                &num_attributes);
diff --git a/src/nautilus-canvas-view.c b/src/nautilus-canvas-view.c
index f99ddd9a6..a3683da4a 100644
--- a/src/nautilus-canvas-view.c
+++ b/src/nautilus-canvas-view.c
@@ -42,7 +42,6 @@
 #include "nautilus-global-preferences.h"
 #include "nautilus-canvas-container.h"
 #include "nautilus-canvas-dnd.h"
-#include "nautilus-link.h"
 #include "nautilus-metadata.h"
 #include "nautilus-clipboard.h"
 
@@ -1431,18 +1430,6 @@ initialize_canvas_container (NautilusCanvasView      *canvas_view,
     gtk_widget_show (GTK_WIDGET (canvas_container));
 }
 
-/* Handles an URL received from Mozilla */
-static void
-canvas_view_handle_netscape_url (NautilusCanvasContainer *container,
-                                 const char              *encoded_url,
-                                 const char              *target_uri,
-                                 GdkDragAction            action,
-                                 NautilusCanvasView      *view)
-{
-    nautilus_files_view_handle_netscape_url_drop (NAUTILUS_FILES_VIEW (view),
-                                                  encoded_url, target_uri, action);
-}
-
 static void
 canvas_view_handle_uri_list (NautilusCanvasContainer *container,
                              const char              *item_uris,
@@ -1632,8 +1619,6 @@ nautilus_canvas_view_init (NautilusCanvasView *canvas_view)
                               G_CALLBACK (text_attribute_names_changed_callback),
                               canvas_view);
 
-    g_signal_connect_object (canvas_container, "handle-netscape-url",
-                             G_CALLBACK (canvas_view_handle_netscape_url), canvas_view, 0);
     g_signal_connect_object (canvas_container, "handle-uri-list",
                              G_CALLBACK (canvas_view_handle_uri_list), canvas_view, 0);
     g_signal_connect_object (canvas_container, "handle-text",
diff --git a/src/nautilus-directory-async.c b/src/nautilus-directory-async.c
index 91305a7cb..ab3f0dc32 100644
--- a/src/nautilus-directory-async.c
+++ b/src/nautilus-directory-async.c
@@ -28,7 +28,6 @@
 #include "nautilus-file-utilities.h"
 #include "nautilus-signaller.h"
 #include "nautilus-global-preferences.h"
-#include "nautilus-link.h"
 #include "nautilus-profile.h"
 #include "nautilus-metadata.h"
 #include <eel/eel-glib-extensions.h>
@@ -47,13 +46,6 @@
 /* Keep async. jobs down to this number for all directories. */
 #define MAX_ASYNC_JOBS 10
 
-struct LinkInfoReadState
-{
-    NautilusDirectory *directory;
-    GCancellable *cancellable;
-    NautilusFile *file;
-};
-
 struct ThumbnailState
 {
     NautilusDirectory *directory;
@@ -181,12 +173,6 @@ static gboolean request_is_satisfied (NautilusDirectory *directory,
 static void     cancel_loading_attributes (NautilusDirectory     *directory,
                                            NautilusFileAttributes file_attributes);
 static void     add_all_files_to_work_queue (NautilusDirectory *directory);
-static void     link_info_done (NautilusDirectory *directory,
-                                NautilusFile      *file,
-                                const char        *uri,
-                                const char        *name,
-                                GIcon             *icon,
-                                gboolean           is_launcher);
 static void     move_file_to_low_priority_queue (NautilusDirectory *directory,
                                                  NautilusFile      *file);
 static void     move_file_to_extension_queue (NautilusDirectory *directory,
@@ -531,18 +517,6 @@ mime_list_cancel (NautilusDirectory *directory)
     }
 }
 
-static void
-link_info_cancel (NautilusDirectory *directory)
-{
-    if (directory->details->link_info_read_state != NULL)
-    {
-        g_cancellable_cancel (directory->details->link_info_read_state->cancellable);
-        directory->details->link_info_read_state->directory = NULL;
-        directory->details->link_info_read_state = NULL;
-        async_job_end (directory, "link info");
-    }
-}
-
 static void
 thumbnail_cancel (NautilusDirectory *directory)
 {
@@ -698,12 +672,6 @@ nautilus_directory_set_up_request (NautilusFileAttributes file_attributes)
         REQUEST_SET_TYPE (request, REQUEST_FILE_INFO);
     }
 
-    if (file_attributes & NAUTILUS_FILE_ATTRIBUTE_LINK_INFO)
-    {
-        REQUEST_SET_TYPE (request, REQUEST_FILE_INFO);
-        REQUEST_SET_TYPE (request, REQUEST_LINK_INFO);
-    }
-
     if ((file_attributes & NAUTILUS_FILE_ATTRIBUTE_EXTENSION_INFO) != 0)
     {
         REQUEST_SET_TYPE (request, REQUEST_EXTENSION_INFO);
@@ -739,7 +707,6 @@ mime_db_changed_callback (GObject           *ignore,
     g_assert (dir->details != NULL);
 
     attrs = NAUTILUS_FILE_ATTRIBUTE_INFO |
-            NAUTILUS_FILE_ATTRIBUTE_LINK_INFO |
             NAUTILUS_FILE_ATTRIBUTE_DIRECTORY_ITEM_MIME_TYPES;
 
     nautilus_directory_force_reload_internal (dir, attrs);
@@ -1703,12 +1670,6 @@ nautilus_async_destroying_file (NautilusFile *file)
         directory->details->get_info_file = NULL;
         changed = TRUE;
     }
-    if (directory->details->link_info_read_state != NULL &&
-        directory->details->link_info_read_state->file == file)
-    {
-        directory->details->link_info_read_state->file = NULL;
-        changed = TRUE;
-    }
     if (directory->details->extension_info_file == file)
     {
         directory->details->extension_info_file = NULL;
@@ -1789,28 +1750,6 @@ should_get_mime_list (NautilusFile *file)
            && !file->details->loading_directory;
 }
 
-static gboolean
-lacks_link_info (NautilusFile *file)
-{
-    if (file->details->file_info_is_up_to_date &&
-        !file->details->link_info_is_up_to_date)
-    {
-        if (nautilus_file_is_nautilus_link (file))
-        {
-            return TRUE;
-        }
-        else
-        {
-            link_info_done (file->details->directory, file, NULL, NULL, NULL, FALSE);
-            return FALSE;
-        }
-    }
-    else
-    {
-        return FALSE;
-    }
-}
-
 static gboolean
 lacks_extension_info (NautilusFile *file)
 {
@@ -1935,14 +1874,6 @@ request_is_satisfied (NautilusDirectory *directory,
         }
     }
 
-    if (REQUEST_WANTS_TYPE (request, REQUEST_LINK_INFO))
-    {
-        if (has_problem (directory, file, lacks_link_info))
-        {
-            return FALSE;
-        }
-    }
-
     return TRUE;
 }
 
@@ -3541,211 +3472,6 @@ file_info_start (NautilusDirectory *directory,
     g_object_unref (location);
 }
 
-static void
-link_info_done (NautilusDirectory *directory,
-                NautilusFile      *file,
-                const char        *uri,
-                const char        *name,
-                GIcon             *icon,
-                gboolean           is_launcher)
-{
-    file->details->link_info_is_up_to_date = TRUE;
-    file->details->got_link_info = TRUE;
-    g_clear_object (&file->details->custom_icon);
-
-    if (uri)
-    {
-        g_free (file->details->activation_uri);
-        file->details->activation_uri = NULL;
-        file->details->got_custom_activation_uri = TRUE;
-        file->details->activation_uri = g_strdup (uri);
-    }
-    if (icon != NULL)
-    {
-        file->details->custom_icon = g_object_ref (icon);
-    }
-    file->details->is_launcher = is_launcher;
-
-    nautilus_directory_async_state_changed (directory);
-}
-
-static void
-link_info_stop (NautilusDirectory *directory)
-{
-    NautilusFile *file;
-
-    if (directory->details->link_info_read_state != NULL)
-    {
-        file = directory->details->link_info_read_state->file;
-
-        if (file != NULL)
-        {
-            g_assert (NAUTILUS_IS_FILE (file));
-            g_assert (file->details->directory == directory);
-            if (is_needy (file,
-                          lacks_link_info,
-                          REQUEST_LINK_INFO))
-            {
-                return;
-            }
-        }
-
-        /* The link info is not wanted, so stop it. */
-        link_info_cancel (directory);
-    }
-}
-
-static void
-link_info_got_data (NautilusDirectory *directory,
-                    NautilusFile      *file,
-                    gboolean           result,
-                    goffset            bytes_read,
-                    char              *file_contents)
-{
-    char *link_uri, *uri, *name;
-    GIcon *icon;
-    gboolean is_launcher;
-
-    nautilus_directory_ref (directory);
-
-    uri = NULL;
-    name = NULL;
-    icon = NULL;
-    is_launcher = FALSE;
-
-    /* Handle the case where we read the Nautilus link. */
-    if (result)
-    {
-        link_uri = nautilus_file_get_uri (file);
-        nautilus_link_get_link_info_given_file_contents (file_contents, bytes_read, link_uri,
-                                                         &uri, &name, &icon, &is_launcher);
-        g_free (link_uri);
-    }
-    else
-    {
-        /* FIXME bugzilla.gnome.org 42433: We should report this error to the user. */
-    }
-
-    nautilus_file_ref (file);
-    link_info_done (directory, file, uri, name, icon, is_launcher);
-    nautilus_file_changed (file);
-    nautilus_file_unref (file);
-
-    g_free (uri);
-    g_free (name);
-
-    if (icon != NULL)
-    {
-        g_object_unref (icon);
-    }
-
-    nautilus_directory_unref (directory);
-}
-
-static void
-link_info_read_state_free (LinkInfoReadState *state)
-{
-    g_object_unref (state->cancellable);
-    g_free (state);
-}
-
-static void
-link_info_nautilus_link_read_callback (GObject      *source_object,
-                                       GAsyncResult *res,
-                                       gpointer      user_data)
-{
-    LinkInfoReadState *state;
-    gsize file_size;
-    char *file_contents;
-    gboolean result;
-    NautilusDirectory *directory;
-
-    state = user_data;
-
-    if (state->directory == NULL)
-    {
-        /* Operation was cancelled. Bail out */
-        link_info_read_state_free (state);
-        return;
-    }
-
-    directory = nautilus_directory_ref (state->directory);
-
-    result = g_file_load_contents_finish (G_FILE (source_object),
-                                          res,
-                                          &file_contents, &file_size,
-                                          NULL, NULL);
-
-    state->directory->details->link_info_read_state = NULL;
-    async_job_end (state->directory, "link info");
-
-    link_info_got_data (state->directory, state->file, result, file_size, file_contents);
-
-    if (result)
-    {
-        g_free (file_contents);
-    }
-
-    link_info_read_state_free (state);
-
-    nautilus_directory_unref (directory);
-}
-
-static void
-link_info_start (NautilusDirectory *directory,
-                 NautilusFile      *file,
-                 gboolean          *doing_io)
-{
-    GFile *location;
-    gboolean nautilus_style_link;
-    LinkInfoReadState *state;
-
-    if (directory->details->link_info_read_state != NULL)
-    {
-        *doing_io = TRUE;
-        return;
-    }
-
-    if (!is_needy (file,
-                   lacks_link_info,
-                   REQUEST_LINK_INFO))
-    {
-        return;
-    }
-    *doing_io = TRUE;
-
-    /* Figure out if it is a link. */
-    nautilus_style_link = nautilus_file_is_nautilus_link (file);
-    location = nautilus_file_get_location (file);
-
-    /* If it's not a link we are done. If it is, we need to read it. */
-    if (!nautilus_style_link)
-    {
-        link_info_done (directory, file, NULL, NULL, NULL, FALSE);
-    }
-    else
-    {
-        if (!async_job_start (directory, "link info"))
-        {
-            g_object_unref (location);
-            return;
-        }
-
-        state = g_new0 (LinkInfoReadState, 1);
-        state->directory = directory;
-        state->file = file;
-        state->cancellable = g_cancellable_new ();
-
-        directory->details->link_info_read_state = state;
-
-        g_file_load_contents_async (location,
-                                    state->cancellable,
-                                    link_info_nautilus_link_read_callback,
-                                    state);
-    }
-    g_object_unref (location);
-}
-
 static void
 thumbnail_done (NautilusDirectory *directory,
                 NautilusFile      *file,
@@ -4563,7 +4289,6 @@ start_or_stop_io (NautilusDirectory *directory)
     directory_count_stop (directory);
     deep_count_stop (directory);
     mime_list_stop (directory);
-    link_info_stop (directory);
     extension_info_stop (directory);
     mount_stop (directory);
     thumbnail_stop (directory);
@@ -4577,7 +4302,6 @@ start_or_stop_io (NautilusDirectory *directory)
 
         /* Start getting attributes if possible */
         file_info_start (directory, file, &doing_io);
-        link_info_start (directory, file, &doing_io);
 
         if (doing_io)
         {
@@ -4670,7 +4394,6 @@ nautilus_directory_cancel (NautilusDirectory *directory)
     directory_count_cancel (directory);
     file_info_cancel (directory);
     file_list_cancel (directory);
-    link_info_cancel (directory);
     mime_list_cancel (directory);
     new_files_cancel (directory);
     extension_info_cancel (directory);
@@ -4763,18 +4486,6 @@ cancel_filesystem_info_for_file (NautilusDirectory *directory,
     }
 }
 
-static void
-cancel_link_info_for_file (NautilusDirectory *directory,
-                           NautilusFile      *file)
-{
-    if (directory->details->link_info_read_state != NULL &&
-        directory->details->link_info_read_state->file == file)
-    {
-        link_info_cancel (directory);
-    }
-}
-
-
 static void
 cancel_loading_attributes (NautilusDirectory      *directory,
                            NautilusFileAttributes  file_attributes)
@@ -4803,11 +4514,6 @@ cancel_loading_attributes (NautilusDirectory      *directory,
     {
         filesystem_info_cancel (directory);
     }
-    if (REQUEST_WANTS_TYPE (request, REQUEST_LINK_INFO))
-    {
-        link_info_cancel (directory);
-    }
-
     if (REQUEST_WANTS_TYPE (request, REQUEST_EXTENSION_INFO))
     {
         extension_info_cancel (directory);
@@ -4857,10 +4563,6 @@ nautilus_directory_cancel_loading_file_attributes (NautilusDirectory      *direc
     {
         cancel_filesystem_info_for_file (directory, file);
     }
-    if (REQUEST_WANTS_TYPE (request, REQUEST_LINK_INFO))
-    {
-        cancel_link_info_for_file (directory, file);
-    }
     if (REQUEST_WANTS_TYPE (request, REQUEST_THUMBNAIL))
     {
         cancel_thumbnail_for_file (directory, file);
diff --git a/src/nautilus-dnd.c b/src/nautilus-dnd.c
index 4ead3f831..d35032306 100644
--- a/src/nautilus-dnd.c
+++ b/src/nautilus-dnd.c
@@ -25,7 +25,6 @@
 #include "nautilus-dnd.h"
 
 #include "nautilus-program-choosing.h"
-#include "nautilus-link.h"
 #include <eel/eel-glib-extensions.h>
 #include <eel/eel-gtk-extensions.h>
 #include <eel/eel-string.h>
diff --git a/src/nautilus-file-operations.c b/src/nautilus-file-operations.c
index 7e229f60e..13736397c 100644
--- a/src/nautilus-file-operations.c
+++ b/src/nautilus-file-operations.c
@@ -54,7 +54,6 @@
 #include "nautilus-file-changes-queue.h"
 #include "nautilus-file-private.h"
 #include "nautilus-global-preferences.h"
-#include "nautilus-link.h"
 #include "nautilus-trash-monitor.h"
 #include "nautilus-file-utilities.h"
 #include "nautilus-file-undo-operations.h"
diff --git a/src/nautilus-file.c b/src/nautilus-file.c
index 8072034bf..2df7f5dd8 100644
--- a/src/nautilus-file.c
+++ b/src/nautilus-file.c
@@ -31,7 +31,6 @@
 #include "nautilus-file-utilities.h"
 #include "nautilus-global-preferences.h"
 #include "nautilus-lib-self-check-functions.h"
-#include "nautilus-link.h"
 #include "nautilus-metadata.h"
 #include "nautilus-module.h"
 #include "nautilus-thumbnails.h"
@@ -1593,24 +1592,6 @@ nautilus_file_poll_for_media (NautilusFile *file)
     }
 }
 
-static gboolean
-is_desktop_file (NautilusFile *file)
-{
-    return nautilus_file_is_mime_type (file, "application/x-desktop");
-}
-
-static gboolean
-can_rename_desktop_file (NautilusFile *file)
-{
-    GFile *location;
-    gboolean res;
-
-    location = nautilus_file_get_location (file);
-    res = g_file_is_native (location);
-    g_object_unref (location);
-    return res;
-}
-
 /**
  * nautilus_file_can_rename:
  *
@@ -1936,11 +1917,7 @@ nautilus_file_can_rename_file (NautilusFile                  *file,
                                gpointer                       callback_data)
 {
     GError *error;
-    gboolean success;
-    gboolean name_changed;
     gchar *new_file_name;
-    gchar *uri;
-    gchar *old_name;
 
     /* Return an error for incoming names containing path separators.
      * But not for .desktop files as '/' are allowed for them */
@@ -4535,34 +4512,15 @@ nautilus_file_get_activation_location (NautilusFile *file)
     return nautilus_file_get_location (file);
 }
 
-
 char *
 nautilus_file_get_target_uri (NautilusFile *file)
 {
-    char *uri, *target_uri;
-    GFile *location;
+    char *uri;
 
     g_return_val_if_fail (NAUTILUS_IS_FILE (file), NULL);
 
     uri = nautilus_file_get_uri (file);
 
-    /* Check for Nautilus link */
-    if (nautilus_file_is_nautilus_link (file))
-    {
-        location = nautilus_file_get_location (file);
-        /* FIXME bugzilla.gnome.org 43020: This does sync. I/O and works only locally. */
-        if (g_file_is_native (location))
-        {
-            target_uri = nautilus_link_local_get_link_uri (uri);
-            if (target_uri != NULL)
-            {
-                g_free (uri);
-                uri = target_uri;
-            }
-        }
-        g_object_unref (location);
-    }
-
     return uri;
 }
 
@@ -8002,27 +7960,6 @@ nautilus_file_get_symbolic_link_target_uri (NautilusFile *file)
     }
 }
 
-/**
- * nautilus_file_is_nautilus_link
- *
- * Check if this file is a "nautilus link", meaning a historical
- * nautilus xml link file or a desktop file.
- * @file: NautilusFile representing the file in question.
- *
- * Returns: True if the file is a nautilus link.
- *
- **/
-gboolean
-nautilus_file_is_nautilus_link (NautilusFile *file)
-{
-    if (file->details->mime_type == NULL)
-    {
-        return FALSE;
-    }
-    return g_content_type_equals (eel_ref_str_peek (file->details->mime_type),
-                                  "application/x-desktop");
-}
-
 /**
  * nautilus_file_is_regular_file
  *
diff --git a/src/nautilus-file.h b/src/nautilus-file.h
index 7da949cc3..ad25a1b10 100644
--- a/src/nautilus-file.h
+++ b/src/nautilus-file.h
@@ -203,7 +203,6 @@ char *                  nautilus_file_get_volume_name                   (Nautilu
 char *                  nautilus_file_get_symbolic_link_target_path     (NautilusFile                   
*file);
 char *                  nautilus_file_get_symbolic_link_target_uri      (NautilusFile                   
*file);
 gboolean                nautilus_file_is_broken_symbolic_link           (NautilusFile                   
*file);
-gboolean                nautilus_file_is_nautilus_link                  (NautilusFile                   
*file);
 gboolean                nautilus_file_is_executable                     (NautilusFile                   
*file);
 gboolean                nautilus_file_is_directory                      (NautilusFile                   
*file);
 gboolean                nautilus_file_is_regular_file                   (NautilusFile                   
*file);
diff --git a/src/nautilus-files-view.c b/src/nautilus-files-view.c
index 782d3fb68..5151c7f23 100644
--- a/src/nautilus-files-view.c
+++ b/src/nautilus-files-view.c
@@ -77,7 +77,6 @@
 #include "nautilus-new-folder-dialog-controller.h"
 #include "nautilus-compress-dialog-controller.h"
 #include "nautilus-global-preferences.h"
-#include "nautilus-link.h"
 #include "nautilus-metadata.h"
 #include "nautilus-module.h"
 #include "nautilus-profile.h"
diff --git a/src/nautilus-files-view.h b/src/nautilus-files-view.h
index ea51e53f7..954101bd6 100644
--- a/src/nautilus-files-view.h
+++ b/src/nautilus-files-view.h
@@ -29,7 +29,6 @@
 
 #include "nautilus-directory.h"
 #include "nautilus-file.h"
-#include "nautilus-link.h"
 
 #include "nautilus-window.h"
 #include "nautilus-view.h"
diff --git a/src/nautilus-list-view-dnd.c b/src/nautilus-list-view-dnd.c
index 671ec6c90..435dc5957 100644
--- a/src/nautilus-list-view-dnd.c
+++ b/src/nautilus-list-view-dnd.c
@@ -130,14 +130,7 @@ item_get_data_binder (GtkTreeModel *model,
                                  column,
                                  &cell_area);
 
-    if (nautilus_file_is_nautilus_link (file))
-    {
-        uri = nautilus_file_get_uri (file);
-    }
-    else
-    {
-        uri = nautilus_file_get_activation_uri (file);
-    }
+    uri = nautilus_file_get_activation_uri (file);
 
     nautilus_file_unref (file);
 
diff --git a/src/nautilus-properties-window.c b/src/nautilus-properties-window.c
index 477812ef9..5ebc4f6c0 100644
--- a/src/nautilus-properties-window.c
+++ b/src/nautilus-properties-window.c
@@ -50,7 +50,6 @@
 #include "nautilus-file-operations.h"
 #include "nautilus-file-utilities.h"
 #include "nautilus-global-preferences.h"
-#include "nautilus-link.h"
 #include "nautilus-metadata.h"
 #include "nautilus-mime-application-chooser.h"
 #include "nautilus-module.h"
@@ -4907,7 +4906,6 @@ is_a_special_file (NautilusFile *file)
     gboolean is_special;
 
     is_special = file == NULL ||
-                 nautilus_file_is_nautilus_link (file) ||
                  nautilus_file_is_in_trash (file) ||
                  is_computer_directory (file);
 
@@ -5515,39 +5513,25 @@ set_icon (const char               *icon_uri,
 
         for (l = properties_window->details->original_files; l != NULL; l = l->next)
         {
-            file = NAUTILUS_FILE (l->data);
+            g_autoptr (GFile) file_location = NULL;
+            g_autoptr (GFile) icon_location = NULL;
+            g_autofree gchar *real_icon_uri = NULL;
 
+            file = NAUTILUS_FILE (l->data);
             file_uri = nautilus_file_get_uri (file);
+            file_location = nautilus_file_get_location (file);
+            icon_location = g_file_new_for_uri (icon_uri);
 
-            if (nautilus_file_is_mime_type (file, "application/x-desktop"))
+            /* ’Tis a little bit of a misnomer. Actually a path. */
+            real_icon_uri = g_file_get_relative_path (icon_location,
+                                                      file_location);
+
+            if (real_icon_uri == NULL)
             {
-                if (nautilus_link_local_set_icon (file_uri, icon_path))
-                {
-                    nautilus_file_invalidate_attributes (file,
-                                                         NAUTILUS_FILE_ATTRIBUTE_INFO |
-                                                         NAUTILUS_FILE_ATTRIBUTE_LINK_INFO);
-                }
+                real_icon_uri = g_strdup (icon_uri);
             }
-            else
-            {
-                g_autoptr (GFile) file_location = NULL;
-                g_autoptr (GFile) icon_location = NULL;
-                g_autofree gchar *real_icon_uri = NULL;
 
-                file_location = nautilus_file_get_location (file);
-                icon_location = g_file_new_for_uri (icon_uri);
-
-                /* ’Tis a little bit of a misnomer. Actually a path. */
-                real_icon_uri = g_file_get_relative_path (icon_location,
-                                                          file_location);
-
-                if (real_icon_uri == NULL)
-                {
-                    real_icon_uri = g_strdup (icon_uri);
-                }
-
-                nautilus_file_set_metadata (file, NAUTILUS_METADATA_KEY_CUSTOM_ICON, NULL, real_icon_uri);
-            }
+            nautilus_file_set_metadata (file, NAUTILUS_METADATA_KEY_CUSTOM_ICON, NULL, real_icon_uri);
 
             g_free (file_uri);
         }
diff --git a/src/nautilus-tree-view-drag-dest.c b/src/nautilus-tree-view-drag-dest.c
index 7a15d7170..a99c6d520 100644
--- a/src/nautilus-tree-view-drag-dest.c
+++ b/src/nautilus-tree-view-drag-dest.c
@@ -31,7 +31,6 @@
 #include "nautilus-dnd.h"
 #include "nautilus-file-changes-queue.h"
 #include "nautilus-global-preferences.h"
-#include "nautilus-link.h"
 
 #include <gtk/gtk.h>
 


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