diff --git a/apps/files/css/files.scss b/apps/files/css/files.scss
index 8d5d245a6ce7448187ee3db121837dceeef797a5..7c2d3b0bb1cbffecdd1633637c80433851cbba2d 100644
--- a/apps/files/css/files.scss
+++ b/apps/files/css/files.scss
@@ -296,11 +296,19 @@ table td.filename a.name {
 	line-height: 50px;
 	padding: 0;
 }
+table td.filename label.icon-loading-small {
+	&:after {
+		z-index: 10;
+	}
+	.thumbnail {
+		opacity: 0.2;
+	}
+}
 table td.filename .thumbnail {
 	display: inline-block;
 	width: 32px;
 	height: 32px;
-	margin-left: 8px;
+	margin-left: 9px;
 	margin-top: 9px;
 	cursor: pointer;
 	float: left;
diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index 48ac0f4e33ac4bf5086028d1f262dc0b61e3b16c..fd13deedc0df5ae41eacda657a295037465b676d 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -2540,11 +2540,9 @@
 				$tr.toggleClass('busy', state);
 
 				if (state) {
-					$thumbEl.attr('data-oldimage', $thumbEl.css('background-image'));
-					$thumbEl.css('background-image', 'url('+ OC.imagePath('core', 'loading.gif') + ')');
+					$thumbEl.parent().addClass('icon-loading-small');
 				} else {
-					$thumbEl.css('background-image', $thumbEl.attr('data-oldimage'));
-					$thumbEl.removeAttr('data-oldimage');
+					$thumbEl.parent().removeClass('icon-loading-small');
 				}
 			});
 		},