Make browse cards fully clickable
This commit is contained in:
@@ -351,7 +351,6 @@ impl BrowsePanel {
|
||||
}
|
||||
|
||||
fn render_card(&self, candidate: &GroupCandidate, cx: &mut Context<Self>) -> AnyElement {
|
||||
let registry = GroupsRegistry::global(cx);
|
||||
let hide_avatar = AppSettings::get_hide_avatar(cx);
|
||||
let dock = self.dock.clone();
|
||||
|
||||
@@ -370,21 +369,8 @@ impl BrowsePanel {
|
||||
.display_about()
|
||||
.map(|about| SharedString::from(about.to_owned()));
|
||||
|
||||
let member = registry
|
||||
.read(cx)
|
||||
.group(&key, cx)
|
||||
.is_some_and(|group| matches!(group.read(cx).membership(), Membership::Member));
|
||||
|
||||
let action = Button::new(format!("open-{seed}"))
|
||||
.label(if member { "Open" } else { "Preview" })
|
||||
.small()
|
||||
.ghost()
|
||||
.on_click(move |_event, window, cx| {
|
||||
Self::open_panel(&dock, key.clone(), window, cx);
|
||||
})
|
||||
.into_any_element();
|
||||
|
||||
v_flex()
|
||||
.id(SharedString::from(format!("card-{seed}")))
|
||||
.flex_1()
|
||||
.min_w_0()
|
||||
.h_full()
|
||||
@@ -392,6 +378,11 @@ impl BrowsePanel {
|
||||
.border_1()
|
||||
.border_color(cx.theme().border)
|
||||
.rounded(cx.theme().radius)
|
||||
.cursor_pointer()
|
||||
.hover(|this| {
|
||||
this.border_color(cx.theme().border_focused)
|
||||
.bg(cx.theme().surface_background)
|
||||
})
|
||||
.child(
|
||||
v_flex()
|
||||
.flex_1()
|
||||
@@ -425,8 +416,7 @@ impl BrowsePanel {
|
||||
.text_color(cx.theme().text_placeholder)
|
||||
.child(relay),
|
||||
),
|
||||
)
|
||||
.child(action),
|
||||
),
|
||||
)
|
||||
.child(
|
||||
div()
|
||||
@@ -457,6 +447,9 @@ impl BrowsePanel {
|
||||
),
|
||||
),
|
||||
)
|
||||
.on_click(move |_event, window, cx| {
|
||||
Self::open_panel(&dock, key.clone(), window, cx);
|
||||
})
|
||||
.into_any_element()
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user