Pass app to PanelWindow::new()
This commit is contained in:
parent
4e5479cdd8
commit
7430b965e1
2 changed files with 7 additions and 4 deletions
|
|
@ -81,9 +81,9 @@ impl PanelApp {
|
|||
}
|
||||
|
||||
fn add_window_for_monitor(&self, monitor: gdk::Monitor) {
|
||||
self.add_window(&cascade! {
|
||||
PanelWindow::new(monitor);
|
||||
cascade! {
|
||||
PanelWindow::new(self, monitor);
|
||||
..show();
|
||||
});
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ use glib::clone;
|
|||
use gtk4::{gdk, glib, pango, prelude::*, subclass::prelude::*};
|
||||
use std::cell::Cell;
|
||||
|
||||
use crate::application::PanelApp;
|
||||
use crate::deref_cell::DerefCell;
|
||||
use crate::status_area::StatusArea;
|
||||
use crate::time_button::TimeButton;
|
||||
|
|
@ -121,7 +122,7 @@ glib::wrapper! {
|
|||
}
|
||||
|
||||
impl PanelWindow {
|
||||
pub fn new(monitor: gdk::Monitor) -> Self {
|
||||
pub fn new(app: &PanelApp, monitor: gdk::Monitor) -> Self {
|
||||
let obj = glib::Object::new::<Self>(&[]).unwrap();
|
||||
|
||||
monitor.connect_invalidate(clone!(@weak obj => move |_| obj.close()));
|
||||
|
|
@ -129,6 +130,8 @@ impl PanelWindow {
|
|||
obj.set_size_request(monitor.geometry().width, 0);
|
||||
obj.inner().monitor.set(monitor);
|
||||
|
||||
app.add_window(&obj);
|
||||
|
||||
obj
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue