diff options
author | Carlos Soriano <csoriano@gnome.org> | 2016-04-04 12:33:03 +0200 |
---|---|---|
committer | Carlos Soriano <csoriano@gnome.org> | 2016-04-14 10:35:17 +0200 |
commit | 9f85cff088587fb73fac99ad3f35cdc1fa7124e1 (patch) | |
tree | 602a8caf3a2c6601f8971ef8ffcdf8ae9a8bb748 | |
parent | 43f65836bb50bffc299595c0fac2cf1cdda82129 (diff) | |
download | nautilus-9f85cff088587fb73fac99ad3f35cdc1fa7124e1.tar.gz |
desktop-canvas-view-container: override get icon description
Now that we have a subclass we can override the function instead of
special casing in the parent.
https://bugzilla.gnome.org/show_bug.cgi?id=712620
-rw-r--r-- | src/nautilus-canvas-view-container.c | 4 | ||||
-rw-r--r-- | src/nautilus-desktop-canvas-view-container.c | 24 |
2 files changed, 24 insertions, 4 deletions
diff --git a/src/nautilus-canvas-view-container.c b/src/nautilus-canvas-view-container.c index 03c6ecfa3..a56ec66e8 100644 --- a/src/nautilus-canvas-view-container.c +++ b/src/nautilus-canvas-view-container.c @@ -85,10 +85,6 @@ nautilus_canvas_view_container_get_icon_description (NautilusCanvasContainer *co file = NAUTILUS_FILE (data); g_assert (NAUTILUS_IS_FILE (file)); - if (NAUTILUS_IS_DESKTOP_ICON_FILE (file)) { - return NULL; - } - mime_type = nautilus_file_get_mime_type (file); description = g_content_type_get_description (mime_type); g_free (mime_type); diff --git a/src/nautilus-desktop-canvas-view-container.c b/src/nautilus-desktop-canvas-view-container.c index f0960ffaf..48e6f95d6 100644 --- a/src/nautilus-desktop-canvas-view-container.c +++ b/src/nautilus-desktop-canvas-view-container.c @@ -17,6 +17,7 @@ */ #include "nautilus-desktop-canvas-view-container.h" +#include "nautilus-desktop-icon-file.h" struct _NautilusDesktopCanvasViewContainer { @@ -25,6 +26,26 @@ struct _NautilusDesktopCanvasViewContainer G_DEFINE_TYPE (NautilusDesktopCanvasViewContainer, nautilus_desktop_canvas_view_container, NAUTILUS_TYPE_CANVAS_VIEW_CONTAINER) +static char * +real_get_icon_description (NautilusCanvasContainer *container, + NautilusCanvasIconData *data) +{ + NautilusFile *file; + + file = NAUTILUS_FILE (data); + g_assert (NAUTILUS_IS_FILE (file)); + + if (NAUTILUS_IS_DESKTOP_ICON_FILE (file)) + { + return NULL; + } + else + { + return NAUTILUS_CANVAS_CONTAINER_CLASS (G_OBJECT_GET_CLASS (container))->get_icon_description (container, + data); + } +} + NautilusDesktopCanvasViewContainer * nautilus_desktop_canvas_view_container_new (void) { @@ -34,6 +55,9 @@ nautilus_desktop_canvas_view_container_new (void) static void nautilus_desktop_canvas_view_container_class_init (NautilusDesktopCanvasViewContainerClass *klass) { + NautilusCanvasContainerClass *container_class = NAUTILUS_CANVAS_CONTAINER_CLASS (klass); + + container_class->get_icon_description = real_get_icon_description; } static void |