mirror of
https://github.com/Zedfrigg/ironbar.git
synced 2025-04-19 19:34:24 +02:00
Merge pull request #416 from JakeStanger/fix/style-watcher
fix(style): file watcher not working for relative paths
This commit is contained in:
commit
a2a7e2ea52
1 changed files with 8 additions and 0 deletions
|
@ -5,6 +5,7 @@ use gtk::prelude::CssProviderExt;
|
|||
use gtk::{gdk, gio, CssProvider, StyleContext};
|
||||
use notify::event::ModifyKind;
|
||||
use notify::{recommended_watcher, Event, EventKind, RecursiveMode, Result, Watcher};
|
||||
use std::env;
|
||||
use std::path::PathBuf;
|
||||
use std::time::Duration;
|
||||
use tokio::sync::mpsc;
|
||||
|
@ -17,6 +18,13 @@ use tracing::{debug, error, info};
|
|||
/// Installs a file watcher and reloads CSS when
|
||||
/// write changes are detected on the file.
|
||||
pub fn load_css(style_path: PathBuf) {
|
||||
// file watcher requires absolute path
|
||||
let style_path = if style_path.is_absolute() {
|
||||
style_path
|
||||
} else {
|
||||
env::current_dir().expect("to exist").join(style_path)
|
||||
};
|
||||
|
||||
let provider = CssProvider::new();
|
||||
|
||||
match provider.load_from_file(&gio::File::for_path(&style_path)) {
|
||||
|
|
Loading…
Add table
Reference in a new issue