diff --git a/data/eye-outline-filled-symbolic.svg b/data/eye-outline-filled-symbolic.svg
new file mode 100644
index 0000000..103af2f
--- /dev/null
+++ b/data/eye-outline-filled-symbolic.svg
@@ -0,0 +1,2 @@
+
+
diff --git a/data/zoodex.gresource.xml b/data/zoodex.gresource.xml
index 8445e54..9d21967 100644
--- a/data/zoodex.gresource.xml
+++ b/data/zoodex.gresource.xml
@@ -2,5 +2,6 @@
application.css
+ eye-outline-filled-symbolic.svg
diff --git a/src/main.rs b/src/main.rs
index 6b69c7d..d936e26 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -8,7 +8,7 @@ use std::cmp::max;
use std::thread;
use gtk4::gdk::Display;
-use gtk4::{CssProvider, Settings, gio};
+use gtk4::{CssProvider, IconTheme, Settings, gio};
use relm4::RelmApp;
use crate::ui::App;
@@ -40,19 +40,23 @@ fn include_app_css() {
gio::resources_register_include!("zoodex.gresource")
.expect("CSS resource bundle should have valid format");
- let provider = CssProvider::new();
let display = Display::default().expect("getting the default GDK4 display should never fail");
- provider.load_from_resource("/com/kernelmaft/zoodex/application.css");
+ let css_provider = CssProvider::new();
+
+ css_provider.load_from_resource("/com/kernelmaft/zoodex/application.css");
gtk4::style_context_add_provider_for_display(
&display,
- &provider,
+ &css_provider,
gtk4::STYLE_PROVIDER_PRIORITY_APPLICATION,
);
let settings = Settings::for_display(&display);
- provider.set_prefers_color_scheme(settings.gtk_interface_color_scheme());
+ css_provider.set_prefers_color_scheme(settings.gtk_interface_color_scheme());
settings.connect_gtk_interface_color_scheme_notify(move |settings| {
- provider.set_prefers_color_scheme(settings.gtk_interface_color_scheme());
+ css_provider.set_prefers_color_scheme(settings.gtk_interface_color_scheme());
});
+
+ let icon_theme = IconTheme::for_display(&display);
+ icon_theme.add_resource_path("/com/kernelmaft/zoodex");
}
diff --git a/src/persist/data_manager.rs b/src/persist/data_manager.rs
index c7e5c46..7154b38 100644
--- a/src/persist/data_manager.rs
+++ b/src/persist/data_manager.rs
@@ -66,6 +66,12 @@ impl DataManager {
pub async fn poster(uuid: &str) -> Result