From adf732f34d13c2e91dc7bafa853c5f7ac8a7b1e2 Mon Sep 17 00:00:00 2001 From: Joe Carstairs Date: Sun, 15 Dec 2024 17:08:06 +0000 Subject: Styles window --- schist_gtk4_gui/src/lib.rs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'schist_gtk4_gui/src/lib.rs') diff --git a/schist_gtk4_gui/src/lib.rs b/schist_gtk4_gui/src/lib.rs index 4c3055c..99c090e 100644 --- a/schist_gtk4_gui/src/lib.rs +++ b/schist_gtk4_gui/src/lib.rs @@ -1,6 +1,6 @@ mod window; -use gtk::{gio, glib, prelude::*, Application}; +use gtk::{gdk::Display, gio, glib, prelude::*, Application, CssProvider}; const APP_ID: &str = "net.joeac.schist"; @@ -9,6 +9,7 @@ pub fn run() -> glib::ExitCode { .expect("failed to register resources"); let app = Application::builder().application_id(APP_ID).build(); + app.connect_startup(|_| load_css()); app.connect_activate(build_window); app.run() } @@ -17,3 +18,14 @@ fn build_window(app: &Application) { let window = window::Window::new(app); window.present() } + +fn load_css() { + let css_provider = CssProvider::new(); + css_provider.load_from_resource("/net/joeac/schist/css/styles.css"); + + gtk::style_context_add_provider_for_display( + &Display::default().expect("failed to connect to a display"), + &css_provider, + gtk::STYLE_PROVIDER_PRIORITY_APPLICATION, + ); +} -- cgit v1.2.3