diff --git a/src/SharpIDE.Godot/Features/SolutionExplorer/Resources/FileExtensions/GenericFileDecorations/UnknownFile.svg b/src/SharpIDE.Godot/Features/SolutionExplorer/Resources/FileExtensions/GenericFileDecorations/UnknownFile.svg
new file mode 100644
index 0000000..10eb9a5
--- /dev/null
+++ b/src/SharpIDE.Godot/Features/SolutionExplorer/Resources/FileExtensions/GenericFileDecorations/UnknownFile.svg
@@ -0,0 +1,61 @@
+
+
diff --git a/src/SharpIDE.Godot/Features/SolutionExplorer/Resources/FileExtensions/GenericFileDecorations/UnknownFile.svg.import b/src/SharpIDE.Godot/Features/SolutionExplorer/Resources/FileExtensions/GenericFileDecorations/UnknownFile.svg.import
new file mode 100644
index 0000000..33d40ff
--- /dev/null
+++ b/src/SharpIDE.Godot/Features/SolutionExplorer/Resources/FileExtensions/GenericFileDecorations/UnknownFile.svg.import
@@ -0,0 +1,18 @@
+[remap]
+
+importer="svg"
+type="DPITexture"
+uid="uid://7rqmyeiy4y82"
+path="res://.godot/imported/UnknownFile.svg-88018a88651add8ddd34b24aa2a93a30.dpitex"
+
+[deps]
+
+source_file="res://Features/SolutionExplorer/Resources/FileExtensions/GenericFileDecorations/UnknownFile.svg"
+dest_files=["res://.godot/imported/UnknownFile.svg-88018a88651add8ddd34b24aa2a93a30.dpitex"]
+
+[params]
+
+base_scale=1.0
+saturation=1.0
+color_map={}
+compress=true
diff --git a/src/SharpIDE.Godot/Features/SolutionExplorer/SolutionExplorerPanel.FileIcons.cs b/src/SharpIDE.Godot/Features/SolutionExplorer/SolutionExplorerPanel.FileIcons.cs
index cef7db2..21304dd 100644
--- a/src/SharpIDE.Godot/Features/SolutionExplorer/SolutionExplorerPanel.FileIcons.cs
+++ b/src/SharpIDE.Godot/Features/SolutionExplorer/SolutionExplorerPanel.FileIcons.cs
@@ -22,6 +22,7 @@ public partial class SolutionExplorerPanel
private readonly Texture2D _propsFileOverlayIcon = ResourceLoader.Load("uid://fa7tdmldi206");
private readonly Texture2D _configFileOverlayIcon = ResourceLoader.Load("uid://brsdisqgeah5n");
private readonly Texture2D _targetsFileOverlayIcon = ResourceLoader.Load("uid://xy5ad1lc24lv");
+ private readonly Texture2D _unknownFileOverlayIcon = ResourceLoader.Load("uid://7rqmyeiy4y82");
private (Texture2D Icon, Texture2D? OverlayIcon) GetIconForFileExtension(string fileExtension)
{
@@ -41,7 +42,7 @@ public partial class SolutionExplorerPanel
".png" or ".jpg" or ".jpeg" or ".gif" or ".bmp" or ".svg" or ".ico" or ".avif" or ".webp" => _imageFileIcon,
".fs" => _fSharpIcon,
".xml" or ".nuspec" => _xmlIcon,
- _ => _csIcon
+ _ => _genericFileIcon
};
var overlayTexture = fileExtension switch
{
@@ -50,6 +51,10 @@ public partial class SolutionExplorerPanel
".targets" => _targetsFileOverlayIcon,
_ => null
};
+ if (overlayTexture is null && texture == _genericFileIcon)
+ {
+ overlayTexture = _unknownFileOverlayIcon;
+ }
return (texture, overlayTexture);
}