diff --git a/Components/ChatMessageList.razor b/Components/ChatMessageList.razor
index 53afe92239..c412ae8519 100644
--- a/Components/ChatMessageList.razor
+++ b/Components/ChatMessageList.razor
@@ -280,8 +280,27 @@
internal static string FormatUserMessage(string content)
{
- var escaped = System.Net.WebUtility.HtmlEncode(content);
- return escaped.Replace("\n", "
");
+ if (string.IsNullOrEmpty(content)) return "";
+ var lines = content.Split('\n');
+ var sb = new System.Text.StringBuilder();
+ foreach (var line in lines)
+ {
+ var trimmed = line.Trim();
+ if (trimmed.StartsWith('/') && ImageExtensions.Any(ext =>
+ trimmed.EndsWith(ext, StringComparison.OrdinalIgnoreCase)) &&
+ System.IO.File.Exists(trimmed))
+ {
+ var dataUri = FileToDataUri(trimmed);
+ if (dataUri != null)
+ {
+ sb.Append($"
{System.Net.WebUtility.HtmlEncode(System.IO.Path.GetFileName(trimmed))} ");
+ continue;
+ }
+ }
+ if (sb.Length > 0) sb.Append("
");
+ sb.Append(System.Net.WebUtility.HtmlEncode(line));
+ }
+ return sb.ToString();
}
internal static int LineCount(string? text)
diff --git a/Components/ChatMessageList.razor.css b/Components/ChatMessageList.razor.css
index 797543eb53..debbdb4f89 100644
--- a/Components/ChatMessageList.razor.css
+++ b/Components/ChatMessageList.razor.css
@@ -296,3 +296,34 @@
@keyframes spin { to { transform: rotate(360deg); } }
::deep .spin { animation: spin 1s linear infinite; }
+
+/* === User image attachments inline === */
+::deep .user-image-attachment {
+ display: inline-block;
+ margin: 0.3rem 0.2rem 0.3rem 0;
+ border-radius: 8px;
+ overflow: hidden;
+ border: 1px solid rgba(255,255,255,0.15);
+ background: rgba(0,0,0,0.2);
+ max-width: 300px;
+ vertical-align: top;
+}
+
+::deep .user-image-attachment img {
+ max-width: 300px;
+ max-height: 200px;
+ object-fit: contain;
+ display: block;
+ border-radius: 8px 8px 0 0;
+}
+
+::deep .user-image-name {
+ display: block;
+ font-size: 0.65rem;
+ color: rgba(255,255,255,0.4);
+ padding: 2px 6px 4px;
+ text-align: center;
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis;
+}
diff --git a/Components/Pages/Home.razor b/Components/Pages/Home.razor
index 25c3504835..f0b562a878 100644
--- a/Components/Pages/Home.razor
+++ b/Components/Pages/Home.razor
@@ -68,7 +68,7 @@
}
-