diff --git a/crates/collab_ui2/src/collab_panel.rs b/crates/collab_ui2/src/collab_panel.rs index 5fc0c77d0c151a130ce9900a724dfaaa17e99cb7..ab823100948705bef58654f7e9990136ee77e730 100644 --- a/crates/collab_ui2/src/collab_panel.rs +++ b/crates/collab_ui2/src/collab_panel.rs @@ -2230,15 +2230,17 @@ impl CollabPanel { | Section::Offline => true, }; - let mut row = h_stack() + h_stack() .w_full() .group("section-header") .child( ListHeader::new(text) - .toggle(if can_collapse { - Some(!is_collapsed) - } else { - None + .when(can_collapse, |header| { + header.toggle(Some(!is_collapsed)).on_toggle(cx.listener( + move |this, event, cx| { + this.toggle_section_expanded(section, cx); + }, + )) }) .inset(true) .end_slot::(button) @@ -2253,13 +2255,7 @@ impl CollabPanel { }) .detach_and_log_err(cx) })) - }); - - if section == Section::Offline { - row = div().border_1().border_color(gpui::red()).child(row); - } - - row + }) } fn render_contact(