diff options
-rw-r--r-- | libnautilus-private/nautilus-file.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/libnautilus-private/nautilus-file.c b/libnautilus-private/nautilus-file.c index 22e29ddd8..1efe626e8 100644 --- a/libnautilus-private/nautilus-file.c +++ b/libnautilus-private/nautilus-file.c @@ -4581,6 +4581,20 @@ nautilus_file_get_thumbnail_icon (NautilusFile *file, return icon; } +static gboolean +nautilus_thumbnail_is_limited_by_zoom (int size, + int scale) +{ + int zoom_level; + + zoom_level = size * scale; + + if (zoom_level <= NAUTILUS_LIST_ICON_SIZE_SMALL) + return TRUE; + + return FALSE; +} + NautilusIconInfo * nautilus_file_get_icon (NautilusFile *file, int size, @@ -4608,7 +4622,8 @@ nautilus_file_get_icon (NautilusFile *file, flags & NAUTILUS_FILE_ICON_FLAGS_FORCE_THUMBNAIL_SIZE); if (flags & NAUTILUS_FILE_ICON_FLAGS_USE_THUMBNAILS && - nautilus_file_should_show_thumbnail (file)) { + nautilus_file_should_show_thumbnail (file) && + !nautilus_thumbnail_is_limited_by_zoom (size, scale)) { icon = nautilus_file_get_thumbnail_icon (file, size, scale, flags); } |