diff --git a/Cargo.lock b/Cargo.lock index e26a66ca8719c68fc4cee02fece16213a030e446..cf9d7d17e1269875ae128324a8bf14724dca60d6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4642,7 +4642,6 @@ dependencies = [ "sysinfo 0.37.2", "task", "tasks_ui", - "telemetry", "terminal_view", "text", "theme", @@ -7149,7 +7148,6 @@ dependencies = [ "call", "cloud_llm_client", "collections", - "command_palette_hooks", "component", "ctor", "db", diff --git a/assets/images/debugger_grid.svg b/assets/images/debugger_grid.svg deleted file mode 100644 index 8b40dbd707da3ee842b83e6c7cc9171179c792b5..0000000000000000000000000000000000000000 --- a/assets/images/debugger_grid.svg +++ /dev/null @@ -1,890 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/crates/agent_ui/src/agent_panel.rs b/crates/agent_ui/src/agent_panel.rs index 3a70896c351a4ae3510db2904a0bcd46259ca209..ddef58888c0f172d17b0b5f759527180cb42903f 100644 --- a/crates/agent_ui/src/agent_panel.rs +++ b/crates/agent_ui/src/agent_panel.rs @@ -24,7 +24,7 @@ use crate::{ agent_configuration::{AgentConfiguration, AssistantConfigurationEvent}, slash_command::SlashCommandCompletionProvider, text_thread_editor::{AgentPanelDelegate, TextThreadEditor, make_lsp_adapter_delegate}, - ui::{AgentOnboardingModal, EndTrialUpsell}, + ui::EndTrialUpsell, }; use crate::{ ExpandMessageEditor, @@ -72,9 +72,7 @@ use workspace::{ }; use zed_actions::{ DecreaseBufferFontSize, IncreaseBufferFontSize, ResetBufferFontSize, - agent::{ - OpenAcpOnboardingModal, OpenOnboardingModal, OpenSettings, ResetAgentZoom, ResetOnboarding, - }, + agent::{OpenAcpOnboardingModal, OpenSettings, ResetAgentZoom, ResetOnboarding}, assistant::{OpenRulesLibrary, Toggle, ToggleFocus}, }; @@ -232,9 +230,6 @@ pub fn init(cx: &mut App) { }); } }) - .register_action(|workspace, _: &OpenOnboardingModal, window, cx| { - AgentOnboardingModal::toggle(workspace, window, cx) - }) .register_action(|workspace, _: &OpenAcpOnboardingModal, window, cx| { AcpOnboardingModal::toggle(workspace, window, cx) }) diff --git a/crates/agent_ui/src/ui.rs b/crates/agent_ui/src/ui.rs index 5e0dd5ff5b49b9ba0cfda2d4cb9a5d7f4d43e473..4df34592cfe73db514c25368c933637e8c18f720 100644 --- a/crates/agent_ui/src/ui.rs +++ b/crates/agent_ui/src/ui.rs @@ -5,7 +5,6 @@ mod end_trial_upsell; mod hold_for_default; mod mention_crease; mod model_selector_components; -mod onboarding_modal; pub use acp_onboarding_modal::*; pub use agent_notification::*; @@ -14,4 +13,3 @@ pub use end_trial_upsell::*; pub use hold_for_default::*; pub use mention_crease::*; pub use model_selector_components::*; -pub use onboarding_modal::*; diff --git a/crates/agent_ui/src/ui/onboarding_modal.rs b/crates/agent_ui/src/ui/onboarding_modal.rs deleted file mode 100644 index b8ec2b00657efca29fede32a5cc23b669ede66e7..0000000000000000000000000000000000000000 --- a/crates/agent_ui/src/ui/onboarding_modal.rs +++ /dev/null @@ -1,174 +0,0 @@ -use gpui::{ - ClickEvent, DismissEvent, Entity, EventEmitter, FocusHandle, Focusable, MouseDownEvent, Render, -}; -use ui::{TintColor, Vector, VectorName, prelude::*}; -use workspace::{ModalView, Workspace}; - -use crate::agent_panel::AgentPanel; - -macro_rules! agent_onboarding_event { - ($name:expr) => { - telemetry::event!($name, source = "Agent Onboarding"); - }; - ($name:expr, $($key:ident $(= $value:expr)?),+ $(,)?) => { - telemetry::event!($name, source = "Agent Onboarding", $($key $(= $value)?),+); - }; -} - -pub struct AgentOnboardingModal { - focus_handle: FocusHandle, - workspace: Entity, -} - -impl AgentOnboardingModal { - pub fn toggle(workspace: &mut Workspace, window: &mut Window, cx: &mut Context) { - let workspace_entity = cx.entity(); - workspace.toggle_modal(window, cx, |_window, cx| Self { - workspace: workspace_entity, - focus_handle: cx.focus_handle(), - }); - } - - fn open_panel(&mut self, _: &ClickEvent, window: &mut Window, cx: &mut Context) { - self.workspace.update(cx, |workspace, cx| { - workspace.focus_panel::(window, cx); - }); - - cx.emit(DismissEvent); - - agent_onboarding_event!("Open Panel Clicked"); - } - - fn view_blog(&mut self, _: &ClickEvent, _: &mut Window, cx: &mut Context) { - cx.open_url("https://zed.dev/blog/fastest-ai-code-editor"); - cx.notify(); - - agent_onboarding_event!("Blog Link Clicked"); - } - - fn cancel(&mut self, _: &menu::Cancel, _: &mut Window, cx: &mut Context) { - cx.emit(DismissEvent); - } -} - -impl EventEmitter for AgentOnboardingModal {} - -impl Focusable for AgentOnboardingModal { - fn focus_handle(&self, _cx: &App) -> FocusHandle { - self.focus_handle.clone() - } -} - -impl ModalView for AgentOnboardingModal {} - -impl Render for AgentOnboardingModal { - fn render(&mut self, window: &mut Window, cx: &mut Context) -> impl IntoElement { - let window_height = window.viewport_size().height; - let max_height = window_height - px(200.); - - let base = v_flex() - .id("agent-onboarding") - .key_context("AgentOnboardingModal") - .relative() - .w(px(450.)) - .h_full() - .max_h(max_height) - .p_4() - .gap_2() - .elevation_3(cx) - .track_focus(&self.focus_handle(cx)) - .overflow_hidden() - .on_action(cx.listener(Self::cancel)) - .on_action(cx.listener(|_, _: &menu::Cancel, _window, cx| { - agent_onboarding_event!("Canceled", trigger = "Action"); - cx.emit(DismissEvent); - })) - .on_any_mouse_down(cx.listener(|this, _: &MouseDownEvent, window, cx| { - this.focus_handle.focus(window, cx); - })) - .child( - div() - .absolute() - .top_0() - .right(px(-1.0)) - .w(px(441.)) - .h(px(240.)) - .child( - Vector::new(VectorName::Grid, rems_from_px(441.), rems_from_px(240.)) - .color(ui::Color::Custom(cx.theme().colors().text.alpha(0.05))), - ), - ) - .child( - div() - .absolute() - .top(px(-8.0)) - .right_0() - .w(px(400.)) - .h(px(92.)) - .child( - Vector::new(VectorName::AiGrid, rems_from_px(400.), rems_from_px(92.)) - .color(ui::Color::Custom(cx.theme().colors().text.alpha(0.32))), - ), - ) - .child( - div() - .absolute() - .inset_0() - .size_full() - .bg(gpui::linear_gradient( - 175., - gpui::linear_color_stop( - cx.theme().colors().elevated_surface_background, - 0., - ), - gpui::linear_color_stop( - cx.theme().colors().elevated_surface_background.opacity(0.), - 0.8, - ), - )), - ) - .child( - v_flex() - .w_full() - .gap_1() - .child( - Label::new("Introducing") - .size(LabelSize::Small) - .color(Color::Muted), - ) - .child(Headline::new("Agentic Editing in Zed").size(HeadlineSize::Large)), - ) - .child(h_flex().absolute().top_2().right_2().child( - IconButton::new("cancel", IconName::Close).on_click(cx.listener( - |_, _: &ClickEvent, _window, cx| { - agent_onboarding_event!("Cancelled", trigger = "X click"); - cx.emit(DismissEvent); - }, - )), - )); - - let open_panel_button = Button::new("open-panel", "Get Started with the Agent Panel") - .icon_size(IconSize::Indicator) - .style(ButtonStyle::Tinted(TintColor::Accent)) - .full_width() - .on_click(cx.listener(Self::open_panel)); - - let blog_post_button = Button::new("view-blog", "Check out the Blog Post") - .icon(IconName::ArrowUpRight) - .icon_size(IconSize::Indicator) - .icon_color(Color::Muted) - .full_width() - .on_click(cx.listener(Self::view_blog)); - - let copy = "Zed now natively supports agentic editing, enabling fluid collaboration between humans and AI."; - - base.child(Label::new(copy).color(Color::Muted)).child( - v_flex() - .w_full() - .mt_2() - .gap_2() - .child(open_panel_button) - .child(blog_post_button), - ) - } -} diff --git a/crates/debugger_ui/Cargo.toml b/crates/debugger_ui/Cargo.toml index fb79b1b0790b28d7204774720bf9c413cfed64e6..f95712b05129b7f86699f658c4c2c3effbd7d216 100644 --- a/crates/debugger_ui/Cargo.toml +++ b/crates/debugger_ui/Cargo.toml @@ -64,7 +64,6 @@ settings.workspace = true sysinfo.workspace = true task.workspace = true tasks_ui.workspace = true -telemetry.workspace = true terminal_view.workspace = true text.workspace = true theme.workspace = true diff --git a/crates/debugger_ui/src/debugger_ui.rs b/crates/debugger_ui/src/debugger_ui.rs index 16094f89a9dc4c9ea6a7330a00967cd88fae0284..3a70216ec743f78ebeaa98ad86d3c0dddba60efb 100644 --- a/crates/debugger_ui/src/debugger_ui.rs +++ b/crates/debugger_ui/src/debugger_ui.rs @@ -4,7 +4,6 @@ use debugger_panel::DebugPanel; use editor::{Editor, MultiBufferOffsetUtf16}; use gpui::{Action, App, DispatchPhase, EntityInputHandler, actions}; use new_process_modal::{NewProcessModal, NewProcessMode}; -use onboarding_modal::DebuggerOnboardingModal; use project::debugger::{self, breakpoint_store::SourceBreakpoint, session::ThreadStatus}; use schemars::JsonSchema; use serde::Deserialize; @@ -14,14 +13,12 @@ use tasks_ui::{Spawn, TaskOverrides}; use ui::{FluentBuilder, InteractiveElement}; use util::maybe; use workspace::{ItemHandle, ShutdownDebugAdapters, Workspace}; -use zed_actions::debugger::OpenOnboardingModal; use zed_actions::{Toggle, ToggleFocus}; pub mod attach_modal; pub mod debugger_panel; mod dropdown_menus; mod new_process_modal; -mod onboarding_modal; mod persistence; pub(crate) mod session; mod stack_trace_view; @@ -147,9 +144,6 @@ pub fn init(cx: &mut App) { }) }, ) - .register_action(|workspace, _: &OpenOnboardingModal, window, cx| { - DebuggerOnboardingModal::toggle(workspace, window, cx) - }) .register_action_renderer(|div, workspace, _, cx| { let Some(debug_panel) = workspace.panel::(cx) else { return div; diff --git a/crates/debugger_ui/src/onboarding_modal.rs b/crates/debugger_ui/src/onboarding_modal.rs deleted file mode 100644 index b6f1ab944183c4f44d2bc5f6855731abb65ce1f7..0000000000000000000000000000000000000000 --- a/crates/debugger_ui/src/onboarding_modal.rs +++ /dev/null @@ -1,166 +0,0 @@ -use gpui::{ - ClickEvent, DismissEvent, Entity, EventEmitter, FocusHandle, Focusable, MouseDownEvent, Render, -}; -use ui::{TintColor, Vector, VectorName, prelude::*}; -use workspace::{ModalView, Workspace}; - -use crate::DebugPanel; - -macro_rules! debugger_onboarding_event { - ($name:expr) => { - telemetry::event!($name, source = "Debugger Onboarding"); - }; - ($name:expr, $($key:ident $(= $value:expr)?),+ $(,)?) => { - telemetry::event!($name, source = "Debugger Onboarding", $($key $(= $value)?),+); - }; -} - -pub struct DebuggerOnboardingModal { - focus_handle: FocusHandle, - workspace: Entity, -} - -impl DebuggerOnboardingModal { - pub fn toggle(workspace: &mut Workspace, window: &mut Window, cx: &mut Context) { - let workspace_entity = cx.entity(); - workspace.toggle_modal(window, cx, |_window, cx| Self { - workspace: workspace_entity, - focus_handle: cx.focus_handle(), - }); - } - - fn open_panel(&mut self, _: &ClickEvent, window: &mut Window, cx: &mut Context) { - self.workspace.update(cx, |workspace, cx| { - workspace.focus_panel::(window, cx); - }); - - cx.emit(DismissEvent); - - debugger_onboarding_event!("Open Panel Clicked"); - } - - fn view_blog(&mut self, _: &ClickEvent, _: &mut Window, cx: &mut Context) { - cx.open_url("https://zed.dev/blog/debugger"); - cx.notify(); - - debugger_onboarding_event!("Blog Link Clicked"); - } - - fn cancel(&mut self, _: &menu::Cancel, _: &mut Window, cx: &mut Context) { - cx.emit(DismissEvent); - } -} - -impl EventEmitter for DebuggerOnboardingModal {} - -impl Focusable for DebuggerOnboardingModal { - fn focus_handle(&self, _cx: &App) -> FocusHandle { - self.focus_handle.clone() - } -} - -impl ModalView for DebuggerOnboardingModal {} - -impl Render for DebuggerOnboardingModal { - fn render(&mut self, window: &mut Window, cx: &mut Context) -> impl IntoElement { - let window_height = window.viewport_size().height; - let max_height = window_height - px(200.); - - let base = v_flex() - .id("debugger-onboarding") - .key_context("DebuggerOnboardingModal") - .relative() - .w(px(450.)) - .h_full() - .max_h(max_height) - .p_4() - .gap_2() - .elevation_3(cx) - .track_focus(&self.focus_handle(cx)) - .overflow_hidden() - .on_action(cx.listener(Self::cancel)) - .on_action(cx.listener(|_, _: &menu::Cancel, _window, cx| { - debugger_onboarding_event!("Canceled", trigger = "Action"); - cx.emit(DismissEvent); - })) - .on_any_mouse_down(cx.listener(|this, _: &MouseDownEvent, window, cx| { - this.focus_handle.focus(window, cx); - })) - .child( - div() - .absolute() - .top(px(-8.0)) - .right_0() - .w(px(400.)) - .h(px(92.)) - .child( - Vector::new( - VectorName::DebuggerGrid, - rems_from_px(400.), - rems_from_px(92.), - ) - .color(ui::Color::Custom(cx.theme().colors().text.alpha(0.32))), - ), - ) - .child( - div() - .absolute() - .inset_0() - .size_full() - .bg(gpui::linear_gradient( - 175., - gpui::linear_color_stop( - cx.theme().colors().elevated_surface_background, - 0., - ), - gpui::linear_color_stop( - cx.theme().colors().elevated_surface_background.opacity(0.), - 0.8, - ), - )), - ) - .child( - v_flex() - .w_full() - .gap_1() - .child( - Label::new("Introducing") - .size(LabelSize::Small) - .color(Color::Muted), - ) - .child(Headline::new("Zed's Debugger").size(HeadlineSize::Large)), - ) - .child(h_flex().absolute().top_2().right_2().child( - IconButton::new("cancel", IconName::Close).on_click(cx.listener( - |_, _: &ClickEvent, _window, cx| { - debugger_onboarding_event!("Cancelled", trigger = "X click"); - cx.emit(DismissEvent); - }, - )), - )); - - let open_panel_button = Button::new("open-panel", "Get Started with the Debugger") - .icon_size(IconSize::Indicator) - .style(ButtonStyle::Tinted(TintColor::Accent)) - .full_width() - .on_click(cx.listener(Self::open_panel)); - - let blog_post_button = Button::new("view-blog", "Check out the Blog Post") - .icon(IconName::ArrowUpRight) - .icon_size(IconSize::Indicator) - .icon_color(Color::Muted) - .full_width() - .on_click(cx.listener(Self::view_blog)); - - let copy = "It's finally here: Native support for debugging across multiple programming languages."; - - base.child(Label::new(copy).color(Color::Muted)).child( - v_flex() - .w_full() - .mt_2() - .gap_2() - .child(open_panel_button) - .child(blog_post_button), - ) - } -} diff --git a/crates/git_ui/Cargo.toml b/crates/git_ui/Cargo.toml index a7b330dc7b96cdffad5f357ce4efa1e0b889d81e..f779570be471fd1a097e350d59ef2fb1d4003d2b 100644 --- a/crates/git_ui/Cargo.toml +++ b/crates/git_ui/Cargo.toml @@ -23,7 +23,6 @@ buffer_diff.workspace = true call.workspace = true cloud_llm_client.workspace = true collections.workspace = true -command_palette_hooks.workspace = true component.workspace = true db.workspace = true editor.workspace = true diff --git a/crates/git_ui/src/git_ui.rs b/crates/git_ui/src/git_ui.rs index f767d5a6d801ebf7fd1aa2cbebd5f2dd765d1ca6..ca7063d18336fa4fcfdb2883ac78d1c1dff2f54f 100644 --- a/crates/git_ui/src/git_ui.rs +++ b/crates/git_ui/src/git_ui.rs @@ -1,7 +1,4 @@ -use std::any::Any; - use anyhow::anyhow; -use command_palette_hooks::CommandPaletteFilter; use commit_modal::CommitModal; use editor::{Editor, actions::DiffClipboardWithSelectionData}; @@ -19,11 +16,9 @@ use git::{ status::{FileStatus, StatusCode, UnmergedStatus, UnmergedStatusCode}, }; use gpui::{ - Action, App, Context, DismissEvent, Entity, EventEmitter, FocusHandle, Focusable, SharedString, - Window, actions, + App, Context, DismissEvent, Entity, EventEmitter, FocusHandle, Focusable, SharedString, Window, }; use menu::{Cancel, Confirm}; -use onboarding::GitOnboardingModal; use project::git_store::Repository; use project_diff::ProjectDiff; use ui::prelude::*; @@ -44,7 +39,6 @@ pub mod git_panel; mod git_panel_settings; pub mod git_picker; pub mod multi_diff_view; -pub mod onboarding; pub mod picker_prompt; pub mod project_diff; pub(crate) mod remote_output; @@ -53,14 +47,6 @@ pub mod stash_picker; pub mod text_diff_view; pub mod worktree_picker; -actions!( - git, - [ - /// Resets the git onboarding state to show the tutorial again. - ResetOnboarding - ] -); - pub fn init(cx: &mut App) { editor::set_blame_renderer(blame_ui::GitBlameRenderer, cx); commit_view::init(cx); @@ -197,21 +183,6 @@ pub fn init(cx: &mut App) { panel.uncommit(window, cx); }) }); - CommandPaletteFilter::update_global(cx, |filter, _cx| { - filter.hide_action_types(&[ - zed_actions::OpenGitIntegrationOnboarding.type_id(), - // ResetOnboarding.type_id(), - ]); - }); - workspace.register_action( - move |workspace, _: &zed_actions::OpenGitIntegrationOnboarding, window, cx| { - GitOnboardingModal::toggle(workspace, window, cx) - }, - ); - workspace.register_action(move |_, _: &ResetOnboarding, window, cx| { - window.dispatch_action(workspace::RestoreBanner.boxed_clone(), cx); - window.refresh(); - }); workspace.register_action(|workspace, _action: &git::Init, window, cx| { let Some(panel) = workspace.panel::(cx) else { return; diff --git a/crates/git_ui/src/onboarding.rs b/crates/git_ui/src/onboarding.rs deleted file mode 100644 index eccb18a5400647ff86e44f4426d271d6c9361164..0000000000000000000000000000000000000000 --- a/crates/git_ui/src/onboarding.rs +++ /dev/null @@ -1,145 +0,0 @@ -use gpui::{ - ClickEvent, DismissEvent, Entity, EventEmitter, FocusHandle, Focusable, MouseDownEvent, Render, - svg, -}; -use ui::{TintColor, prelude::*}; -use workspace::{ModalView, Workspace}; - -use crate::git_panel::GitPanel; - -macro_rules! git_onboarding_event { - ($name:expr) => { - telemetry::event!($name, source = "Git Onboarding"); - }; - ($name:expr, $($key:ident $(= $value:expr)?),+ $(,)?) => { - telemetry::event!($name, source = "Git Onboarding", $($key $(= $value)?),+); - }; -} - -/// Introduces user to the Git Panel and overall improved Git support -pub struct GitOnboardingModal { - focus_handle: FocusHandle, - workspace: Entity, -} - -impl GitOnboardingModal { - pub fn toggle(workspace: &mut Workspace, window: &mut Window, cx: &mut Context) { - let workspace_entity = cx.entity(); - workspace.toggle_modal(window, cx, |_window, cx| Self { - workspace: workspace_entity, - focus_handle: cx.focus_handle(), - }); - } - - fn open_panel(&mut self, _: &ClickEvent, window: &mut Window, cx: &mut Context) { - self.workspace.update(cx, |workspace, cx| { - workspace.focus_panel::(window, cx); - }); - - cx.emit(DismissEvent); - - git_onboarding_event!("Open Panel Clicked"); - } - - fn view_blog(&mut self, _: &ClickEvent, _: &mut Window, cx: &mut Context) { - cx.open_url("https://zed.dev/blog/git"); - cx.notify(); - - git_onboarding_event!("Blog Link Clicked"); - } - - fn cancel(&mut self, _: &menu::Cancel, _: &mut Window, cx: &mut Context) { - cx.emit(DismissEvent); - } -} - -impl EventEmitter for GitOnboardingModal {} - -impl Focusable for GitOnboardingModal { - fn focus_handle(&self, _cx: &App) -> FocusHandle { - self.focus_handle.clone() - } -} - -impl ModalView for GitOnboardingModal {} - -impl Render for GitOnboardingModal { - fn render(&mut self, window: &mut Window, cx: &mut Context) -> impl IntoElement { - let window_height = window.viewport_size().height; - let max_height = window_height - px(200.); - - let base = v_flex() - .id("git-onboarding") - .key_context("GitOnboardingModal") - .relative() - .w(px(450.)) - .h_full() - .max_h(max_height) - .p_4() - .gap_2() - .elevation_3(cx) - .track_focus(&self.focus_handle(cx)) - .overflow_hidden() - .on_action(cx.listener(Self::cancel)) - .on_action(cx.listener(|_, _: &menu::Cancel, _window, cx| { - git_onboarding_event!("Cancelled", trigger = "Action"); - cx.emit(DismissEvent); - })) - .on_any_mouse_down(cx.listener(|this, _: &MouseDownEvent, window, cx| { - this.focus_handle.focus(window, cx); - })) - .child( - div().p_1p5().absolute().inset_0().h(px(160.)).child( - svg() - .path("icons/git_onboarding_bg.svg") - .text_color(cx.theme().colors().icon_disabled) - .w(px(420.)) - .h(px(128.)) - .overflow_hidden(), - ), - ) - .child( - v_flex() - .w_full() - .gap_1() - .child( - Label::new("Introducing") - .size(LabelSize::Small) - .color(Color::Muted), - ) - .child(Headline::new("Native Git Support").size(HeadlineSize::Large)), - ) - .child(h_flex().absolute().top_2().right_2().child( - IconButton::new("cancel", IconName::Close).on_click(cx.listener( - |_, _: &ClickEvent, _window, cx| { - git_onboarding_event!("Cancelled", trigger = "X click"); - cx.emit(DismissEvent); - }, - )), - )); - - let open_panel_button = Button::new("open-panel", "Get Started with the Git Panel") - .icon_size(IconSize::Indicator) - .style(ButtonStyle::Tinted(TintColor::Accent)) - .full_width() - .on_click(cx.listener(Self::open_panel)); - - let blog_post_button = Button::new("view-blog", "Check out the Blog Post") - .icon(IconName::ArrowUpRight) - .icon_size(IconSize::Indicator) - .icon_color(Color::Muted) - .full_width() - .on_click(cx.listener(Self::view_blog)); - - let copy = "First-class support for staging, committing, pulling, pushing, viewing diffs, and more. All without leaving Zed."; - - base.child(Label::new(copy).color(Color::Muted)).child( - v_flex() - .w_full() - .mt_2() - .gap_2() - .child(open_panel_button) - .child(blog_post_button), - ) - } -} diff --git a/crates/ui/src/components/image.rs b/crates/ui/src/components/image.rs index 3e8cbd8fff7ba484b1b1eb9fd50da55998d7eae9..14127464dfc8b20dd6ad51ea9f39dc28c633fe6b 100644 --- a/crates/ui/src/components/image.rs +++ b/crates/ui/src/components/image.rs @@ -5,7 +5,6 @@ use gpui::{App, IntoElement, Rems, RenderOnce, Size, Styled, Window, svg}; use serde::{Deserialize, Serialize}; use strum::{EnumIter, EnumString, IntoStaticStr}; -use crate::Color; use crate::prelude::*; use crate::traits::transformable::Transformable; @@ -18,7 +17,6 @@ pub enum VectorName { AcpLogo, AcpLogoSerif, AiGrid, - DebuggerGrid, Grid, ProTrialStamp, ProUserStamp, diff --git a/crates/zed_actions/src/lib.rs b/crates/zed_actions/src/lib.rs index 5b0295b903242e1c8405ae91016fe2bfea815404..356011e4daeac05189a1081fb5b536af960e3595 100644 --- a/crates/zed_actions/src/lib.rs +++ b/crates/zed_actions/src/lib.rs @@ -500,20 +500,6 @@ pub mod assistant { } } -pub mod debugger { - use gpui::actions; - - actions!( - debugger, - [ - /// Opens the debugger onboarding modal. - OpenOnboardingModal, - /// Resets the debugger onboarding state. - ResetOnboarding - ] - ); -} - /// Opens the recent projects interface. #[derive(PartialEq, Clone, Deserialize, Default, JsonSchema, Action)] #[action(namespace = projects)]