assistant: Fix assistant: open prompt library
not opening the prompt library (#28156)
This PR fixes the `assistant: open prompt library` action in the command palette not opening the prompt library when the Assistant Panel did not have focus. Fixes https://github.com/zed-industries/zed/issues/28058. Release Notes: - assistant: Fixed `assistant: open prompt library` not opening the prompt library when the Assistant Panel was not focused.
This commit is contained in:
parent
caf0d6c5fa
commit
adbebb28dc
3 changed files with 17 additions and 12 deletions
|
@ -17,7 +17,7 @@ use fs::Fs;
|
|||
use gpui::{
|
||||
Action, Animation, AnimationExt as _, AnyElement, App, AsyncWindowContext, Corner, Entity,
|
||||
EventEmitter, FocusHandle, Focusable, FontWeight, KeyContext, Pixels, Subscription, Task,
|
||||
UpdateGlobal, WeakEntity, action_with_deprecated_aliases, prelude::*, pulsating_between,
|
||||
UpdateGlobal, WeakEntity, prelude::*, pulsating_between,
|
||||
};
|
||||
use language::LanguageRegistry;
|
||||
use language_model::{LanguageModelProviderTosView, LanguageModelRegistry};
|
||||
|
@ -34,7 +34,7 @@ use util::ResultExt as _;
|
|||
use workspace::Workspace;
|
||||
use workspace::dock::{DockPosition, Panel, PanelEvent};
|
||||
use zed_actions::agent::OpenConfiguration;
|
||||
use zed_actions::assistant::ToggleFocus;
|
||||
use zed_actions::assistant::{OpenPromptLibrary, ToggleFocus};
|
||||
|
||||
use crate::active_thread::ActiveThread;
|
||||
use crate::assistant_configuration::{AssistantConfiguration, AssistantConfigurationEvent};
|
||||
|
@ -48,12 +48,6 @@ use crate::{
|
|||
OpenAgentDiff, OpenHistory, ThreadEvent, ToggleContextPicker,
|
||||
};
|
||||
|
||||
action_with_deprecated_aliases!(
|
||||
assistant,
|
||||
OpenPromptLibrary,
|
||||
["assistant::DeployPromptLibrary"]
|
||||
);
|
||||
|
||||
pub fn init(cx: &mut App) {
|
||||
cx.observe_new(
|
||||
|workspace: &mut Workspace, _window, _cx: &mut Context<Workspace>| {
|
||||
|
|
|
@ -54,7 +54,15 @@ pub fn init(cx: &mut App) {
|
|||
.register_action(ContextEditor::insert_dragged_files)
|
||||
.register_action(AssistantPanel::show_configuration)
|
||||
.register_action(AssistantPanel::create_new_context)
|
||||
.register_action(AssistantPanel::restart_context_servers);
|
||||
.register_action(AssistantPanel::restart_context_servers)
|
||||
.register_action(|workspace, _: &OpenPromptLibrary, window, cx| {
|
||||
if let Some(panel) = workspace.panel::<AssistantPanel>(cx) {
|
||||
workspace.focus_panel::<AssistantPanel>(window, cx);
|
||||
panel.update(cx, |panel, cx| {
|
||||
panel.deploy_prompt_library(&OpenPromptLibrary, window, cx)
|
||||
});
|
||||
}
|
||||
});
|
||||
},
|
||||
)
|
||||
.detach();
|
||||
|
|
|
@ -190,13 +190,16 @@ pub mod agent {
|
|||
}
|
||||
|
||||
pub mod assistant {
|
||||
use gpui::{actions, impl_actions};
|
||||
use gpui::{action_with_deprecated_aliases, actions, impl_actions};
|
||||
use schemars::JsonSchema;
|
||||
use serde::Deserialize;
|
||||
|
||||
actions!(
|
||||
actions!(assistant, [ToggleFocus, ShowConfiguration]);
|
||||
|
||||
action_with_deprecated_aliases!(
|
||||
assistant,
|
||||
[ToggleFocus, OpenPromptLibrary, ShowConfiguration]
|
||||
OpenPromptLibrary,
|
||||
["assistant::DeployPromptLibrary"]
|
||||
);
|
||||
|
||||
#[derive(Clone, Default, Deserialize, PartialEq, JsonSchema)]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue