aboutsummaryrefslogtreecommitdiff
path: root/src/backend
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2024-01-23 12:02:52 +0400
committerIvan Molodetskikh <yalterz@gmail.com>2024-01-23 12:02:52 +0400
commitab9706cb30c26dafe46c807f0cf073e594c84ef0 (patch)
treed31171e10e37ae4b75e8a32a2e9b91bf8f3fbbd7 /src/backend
parent05f2a3709b3447ac4d362980b166c3351a7129b2 (diff)
downloadniri-ab9706cb30c26dafe46c807f0cf073e594c84ef0.tar.gz
niri-ab9706cb30c26dafe46c807f0cf073e594c84ef0.tar.bz2
niri-ab9706cb30c26dafe46c807f0cf073e594c84ef0.zip
screencast: Emit MonitorsChanged
Diffstat (limited to 'src/backend')
-rw-r--r--src/backend/tty.rs16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/backend/tty.rs b/src/backend/tty.rs
index ee689ef0..f85b8d7b 100644
--- a/src/backend/tty.rs
+++ b/src/backend/tty.rs
@@ -710,13 +710,8 @@ impl Tty {
let sequence_delta_plot_name =
tracy_client::PlotName::new_leak(format!("{output_name} sequence delta"));
- self.enabled_outputs
- .lock()
- .unwrap()
- .insert(output_name.clone(), output.clone());
-
let surface = Surface {
- name: output_name,
+ name: output_name.clone(),
compositor,
dmabuf_feedback,
vblank_frame: None,
@@ -730,6 +725,13 @@ impl Tty {
niri.add_output(output.clone(), Some(refresh_interval(mode)));
+ self.enabled_outputs
+ .lock()
+ .unwrap()
+ .insert(output_name, output.clone());
+ #[cfg(feature = "dbus")]
+ niri.on_enabled_outputs_changed();
+
// Power on all monitors if necessary and queue a redraw on the new one.
niri.event_loop.insert_idle(move |state| {
state.niri.activate_monitors(&state.backend);
@@ -769,6 +771,8 @@ impl Tty {
};
self.enabled_outputs.lock().unwrap().remove(&surface.name);
+ #[cfg(feature = "dbus")]
+ niri.on_enabled_outputs_changed();
}
fn on_vblank(