diff --git a/apps/files/js/dist/sidebar.js b/apps/files/js/dist/sidebar.js
index 8d59959ff62b7dccccaab26caf30028cf324c20a..9d78d14a6c97f02562d3b382350b0c2d91ede1a9 100644
Binary files a/apps/files/js/dist/sidebar.js and b/apps/files/js/dist/sidebar.js differ
diff --git a/apps/files/js/dist/sidebar.js.map b/apps/files/js/dist/sidebar.js.map
index 22c5c01670a2fd3cacc461827f86acc1cce8bd8e..d85b37bde59f68d44935d62fbd6faecd63ebc1f1 100644
Binary files a/apps/files/js/dist/sidebar.js.map and b/apps/files/js/dist/sidebar.js.map differ
diff --git a/apps/files/src/views/Sidebar.vue b/apps/files/src/views/Sidebar.vue
index be6f8dee1f583b1c1d5cf86dff4016e7d89828cf..4bee3c67759eb5c214b67ce4c60c884df466c4cc 100644
--- a/apps/files/src/views/Sidebar.vue
+++ b/apps/files/src/views/Sidebar.vue
@@ -176,6 +176,7 @@ export default {
 					starred: this.fileInfo.isFavourited,
 					subtitle: this.subtitle,
 					title: this.fileInfo.name,
+					'data-mimetype': this.fileInfo.mimetype,
 				}
 			} else if (this.error) {
 				return {
@@ -381,8 +382,17 @@ export default {
 </script>
 <style lang="scss" scoped>
 #app-sidebar {
-	&.has-preview::v-deep .app-sidebar-header__figure {
-		background-size: cover;
+	&.has-preview::v-deep {
+		.app-sidebar-header__figure {
+			background-size: cover;
+		}
+
+		&[data-mimetype="text/plain"],
+		&[data-mimetype="text/markdown"] {
+			.app-sidebar-header__figure {
+				background-size: contain;
+			}
+		}
 	}
 }
 </style>
diff --git a/lib/private/Preview/TXT.php b/lib/private/Preview/TXT.php
index 06f60457aff876afd3dbfdaf318618800ac1e337..3090446ac4dcefc2f1b3141494b2c5cef951fac5 100644
--- a/lib/private/Preview/TXT.php
+++ b/lib/private/Preview/TXT.php
@@ -68,7 +68,7 @@ class TXT extends ProviderV2 {
 		$lines = preg_split("/\r\n|\n|\r/", $content);
 
 		// Define text size of text file preview
-		$fontSize = $maxX ? (int) ((2 / 32) * $maxX) : 5; //5px
+		$fontSize = $maxX ? (int) ((1 / 32) * $maxX) : 5; //5px
 		$lineSize = ceil($fontSize * 1.5);
 
 		$image = imagecreate($maxX, $maxY);