summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Soriano <csoriano@gnome.org>2016-04-04 12:33:03 +0200
committerCarlos Soriano <csoriano@gnome.org>2016-04-14 10:35:17 +0200
commit9f85cff088587fb73fac99ad3f35cdc1fa7124e1 (patch)
tree602a8caf3a2c6601f8971ef8ffcdf8ae9a8bb748
parent43f65836bb50bffc299595c0fac2cf1cdda82129 (diff)
downloadnautilus-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.c4
-rw-r--r--src/nautilus-desktop-canvas-view-container.c24
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