From 0fca8b72f331c7148936fefed08b288d890b7b34 Mon Sep 17 00:00:00 2001 From: Julian Sparber Date: Thu, 9 Sep 2021 17:05:33 +0200 Subject: [PATCH] sidebar: disconnect signal when row is disposed --- src/session/sidebar/room_row.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/session/sidebar/room_row.rs b/src/session/sidebar/room_row.rs index a8234300..fba21688 100644 --- a/src/session/sidebar/room_row.rs +++ b/src/session/sidebar/room_row.rs @@ -77,6 +77,14 @@ mod imp { _ => unimplemented!(), } } + + fn dispose(&self, _obj: &Self::Type) { + if let Some(room) = self.room.take() { + if let Some(id) = self.signal_handler.take() { + room.disconnect(id); + } + } + } } impl WidgetImpl for RoomRow {}