diff --git a/Cargo.lock b/Cargo.lock
index 9b0cee1f..69773b0e 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -8804,6 +8804,7 @@ dependencies = [
"anyhow",
"gpui",
"gpui-component",
+ "rust-embed",
]
[[package]]
diff --git a/examples/window_title/Cargo.toml b/examples/window_title/Cargo.toml
index a2bacdbe..1bfc0ada 100644
--- a/examples/window_title/Cargo.toml
+++ b/examples/window_title/Cargo.toml
@@ -9,6 +9,7 @@ version = "0.3.0"
anyhow.workspace = true
gpui.workspace = true
gpui-component = { workspace = true }
+rust-embed = { version = "8", features = ["interpolate-folder-path"] }
[lints]
workspace = true
diff --git a/examples/window_title/assets/icons/window-close.svg b/examples/window_title/assets/icons/window-close.svg
new file mode 100644
index 00000000..62b6b0c7
--- /dev/null
+++ b/examples/window_title/assets/icons/window-close.svg
@@ -0,0 +1,9 @@
+
diff --git a/examples/window_title/assets/icons/window-maximize.svg b/examples/window_title/assets/icons/window-maximize.svg
new file mode 100644
index 00000000..9da4cd7e
--- /dev/null
+++ b/examples/window_title/assets/icons/window-maximize.svg
@@ -0,0 +1,9 @@
+
diff --git a/examples/window_title/assets/icons/window-minimize.svg b/examples/window_title/assets/icons/window-minimize.svg
new file mode 100644
index 00000000..708e27be
--- /dev/null
+++ b/examples/window_title/assets/icons/window-minimize.svg
@@ -0,0 +1,9 @@
+
diff --git a/examples/window_title/assets/icons/window-restore.svg b/examples/window_title/assets/icons/window-restore.svg
new file mode 100644
index 00000000..896b6b60
--- /dev/null
+++ b/examples/window_title/assets/icons/window-restore.svg
@@ -0,0 +1,10 @@
+
+
diff --git a/examples/window_title/src/main.rs b/examples/window_title/src/main.rs
index 6e9c79b4..c3fe14b6 100644
--- a/examples/window_title/src/main.rs
+++ b/examples/window_title/src/main.rs
@@ -1,8 +1,34 @@
+use anyhow::anyhow;
use gpui::*;
use gpui_component::{
button::{Button, ButtonVariants},
v_flex, Root, TitleBar,
};
+use rust_embed::Embed;
+use std::borrow::Cow;
+
+#[derive(Embed)]
+#[folder = "./assets"]
+#[include = "icons/**/*.svg"]
+pub struct Assets;
+
+impl AssetSource for Assets {
+ fn load(&self, path: &str) -> Result