Was chatting with @wilhelmklopp, he pointed out that our current UI-accessible way to access the project search was pretty obscure. <img width="393" alt="Screenshot 2025-04-08 at 6 57 51 PM" src="https://github.com/user-attachments/assets/636053cd-5a88-4a5e-8155-6d41d189b7db" /> Release Notes: - Added a button to open the project search to the status bar
48 lines
1.4 KiB
Rust
48 lines
1.4 KiB
Rust
use ui::{
|
|
ButtonCommon, ButtonLike, Clickable, Color, Context, Icon, IconName, IconSize, ParentElement,
|
|
Render, Styled, Tooltip, Window, h_flex,
|
|
};
|
|
use workspace::{ItemHandle, StatusItemView};
|
|
|
|
pub struct SearchButton;
|
|
|
|
impl SearchButton {
|
|
pub fn new() -> Self {
|
|
Self {}
|
|
}
|
|
}
|
|
|
|
impl Render for SearchButton {
|
|
fn render(&mut self, _window: &mut Window, cx: &mut Context<Self>) -> impl ui::IntoElement {
|
|
h_flex().gap_2().child(
|
|
ButtonLike::new("project-search-indicator")
|
|
.child(
|
|
Icon::new(IconName::MagnifyingGlass)
|
|
.size(IconSize::Small)
|
|
.color(Color::Default),
|
|
)
|
|
.tooltip(|window, cx| {
|
|
Tooltip::for_action(
|
|
"Project Search",
|
|
&workspace::DeploySearch::default(),
|
|
window,
|
|
cx,
|
|
)
|
|
})
|
|
.on_click(cx.listener(|_this, _, window, cx| {
|
|
window.dispatch_action(Box::new(workspace::DeploySearch::default()), cx);
|
|
})),
|
|
)
|
|
}
|
|
}
|
|
|
|
impl StatusItemView for SearchButton {
|
|
fn set_active_pane_item(
|
|
&mut self,
|
|
_active_pane_item: Option<&dyn ItemHandle>,
|
|
_window: &mut Window,
|
|
_cx: &mut Context<Self>,
|
|
) {
|
|
}
|
|
}
|