1
0
Fork 0
mirror of https://github.com/Zedfrigg/ironbar.git synced 2025-08-16 14:21:03 +02:00

refactor: ensure one copy of icon_overrides

This commit is contained in:
BowDown097 2025-02-08 04:42:27 -08:00
parent 2fd49e0f3a
commit c2beda852d
2 changed files with 18 additions and 2 deletions

View file

@ -8,6 +8,7 @@ use gtk::gdk::Monitor;
use gtk::prelude::*;
use gtk::{Application, ApplicationWindow, IconTheme, Orientation, Window, WindowType};
use gtk_layer_shell::LayerShell;
use std::collections::HashMap;
use std::rc::Rc;
use std::sync::Arc;
use std::time::Duration;
@ -24,6 +25,7 @@ pub struct Bar {
name: String,
monitor_name: String,
monitor_size: (i32, i32),
icon_overrides: Arc<HashMap<String, String>>,
position: BarPosition,
ironbar: Rc<Ironbar>,
@ -44,6 +46,7 @@ impl Bar {
app: &Application,
monitor_name: String,
monitor_size: (i32, i32),
icon_overrides: Arc<HashMap<String, String>>,
config: BarConfig,
ironbar: Rc<Ironbar>,
) -> Self {
@ -93,6 +96,7 @@ impl Bar {
name,
monitor_name,
monitor_size,
icon_overrides,
position,
ironbar,
window,
@ -269,7 +273,7 @@ impl Bar {
output_name: &self.monitor_name,
location: $location,
icon_theme: &icon_theme,
icon_overrides: Arc::new(self.ironbar.config.borrow().icon_overrides.clone()),
icon_overrides: self.icon_overrides.clone(),
}
};
}
@ -400,9 +404,17 @@ pub fn create_bar(
monitor: &Monitor,
monitor_name: String,
monitor_size: (i32, i32),
icon_overrides: Arc<HashMap<String, String>>,
config: BarConfig,
ironbar: Rc<Ironbar>,
) -> Result<Bar> {
let bar = Bar::new(app, monitor_name, monitor_size, config, ironbar);
let bar = Bar::new(
app,
monitor_name,
monitor_size,
icon_overrides,
config,
ironbar,
);
bar.init(monitor)
}

View file

@ -383,6 +383,7 @@ fn load_output_bars(
};
let config = ironbar.config.borrow();
let icon_overrides = Arc::new(config.icon_overrides.clone());
let display = get_display();
// let pos = output.logical_position.unwrap_or_default();
@ -406,6 +407,7 @@ fn load_output_bars(
&monitor,
monitor_name.to_string(),
output_size,
icon_overrides,
config.clone(),
ironbar.clone(),
)?]
@ -418,6 +420,7 @@ fn load_output_bars(
&monitor,
monitor_name.to_string(),
output_size,
icon_overrides.clone(),
config.clone(),
ironbar.clone(),
)
@ -428,6 +431,7 @@ fn load_output_bars(
&monitor,
monitor_name.to_string(),
output_size,
icon_overrides,
config.bar.clone(),
ironbar.clone(),
)?],