ZIm/crates
smit 7450b788f3
editor: Prevent overlapping of signature/hover popovers and context menus (#31090)
Closes #29358

If hover popovers or signature popovers ever clash with the context menu
(like code completion or code actions), they find the best spot by
trying different directions around the context menu to show the popover.
If they can’t find a good spot, they just overlap with the context menu.

Not overlapping state:
<img width="350" alt="image"
src="https://github.com/user-attachments/assets/2f1bdc4c-eb01-405c-b5fb-eb28eadc9957"
/>

Overlapping case, moves popover to bottom of context menu:
<img width="350" alt="image"
src="https://github.com/user-attachments/assets/3ce4be23-7701-4711-b604-5e29682360e1"
/>

Overlapping case, moves popover to right of context menu:
<img width="350" alt="image"
src="https://github.com/user-attachments/assets/60d47518-e412-4d64-9d17-a69a17248bdf"
/> <img width="350" alt="image"
src="https://github.com/user-attachments/assets/2a3de176-7443-46d8-99d1-b2973a0ffaa6"
/>

Overlapping case, moves popover to left of context menu:
<img width="350" alt="image"
src="https://github.com/user-attachments/assets/015b799b-8c6e-4405-aee6-e205d4caebec"
/>

Overlapping case, moves popover to top of context menu:
<img width="350" alt="image"
src="https://github.com/user-attachments/assets/fbd03d84-9a49-44eb-846b-a9852d2ff43e"
/>

Release Notes:

- Fixed an issue where hover popovers or signature popovers would
overlap with existing opened completion or code actions context menus.
2025-05-21 18:45:00 +05:30
..
activity_indicator Revert "Allow updater to check for updates after downloading one (#30969)" (#31086) 2025-05-21 12:37:03 +00:00
agent chore: Make terminal_view own the TerminalSlashCommand (#31070) 2025-05-21 09:27:54 +00:00
anthropic Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
askpass askpass: Workaround rust lang 69343 (#30774) 2025-05-16 05:04:36 -04:00
assets Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
assistant_context_editor chore: Make terminal_view own the TerminalSlashCommand (#31070) 2025-05-21 09:27:54 +00:00
assistant_settings language_models: Add tool use support for Mistral models (#29994) 2025-05-19 18:36:59 +02:00
assistant_slash_command chore: Make terminal_view own the TerminalSlashCommand (#31070) 2025-05-21 09:27:54 +00:00
assistant_slash_commands chore: Make terminal_view own the TerminalSlashCommand (#31070) 2025-05-21 09:27:54 +00:00
assistant_tool Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
assistant_tools evals: Add system prompt to edit agent evals + fix edit agent (#31082) 2025-05-21 10:14:58 +00:00
audio Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
auto_update Revert "Allow updater to check for updates after downloading one (#30969)" (#31086) 2025-05-21 12:37:03 +00:00
auto_update_helper Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
auto_update_ui Restyle notification close control (#30262) 2025-05-08 14:10:30 +00:00
aws_http_client Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
bedrock Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
breadcrumbs breadcrumbs: Update multibuffer to match singleton (#28267) 2025-04-07 20:26:55 +00:00
buffer_diff Fix diff recalculation hang (#28377) 2025-04-10 22:58:41 +00:00
call Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
channel Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
cli Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
client Fix socks proxy local DNS resolution not respected (#30619) 2025-05-21 14:55:39 +08:00
clock Add the ability to follow the agent as it makes edits (#29839) 2025-05-04 08:28:39 +00:00
collab collab: Add GET /users/look_up endpoint (#31059) 2025-05-21 01:29:16 +00:00
collab_ui Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
collections Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
command_palette Simplify the SerializableItem::cleanup implementation (#29567) 2025-04-28 22:15:24 +00:00
command_palette_hooks Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
component component: Replace linkme with inventory (#30705) 2025-05-14 23:29:11 +02:00
context_server Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
copilot Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
credentials_provider Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
dap Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
dap_adapters Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
db Add end of service notifications (#30982) 2025-05-20 00:20:00 +00:00
debug_adapter_extension extension: Add debug_adapters to extension manifest (#30676) 2025-05-20 11:01:33 +02:00
debugger_tools Rename debug: commands to dev: (#30675) 2025-05-14 11:15:27 +02:00
debugger_ui Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
deepseek Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
diagnostics component: Replace linkme with inventory (#30705) 2025-05-14 23:29:11 +02:00
docs_preprocessor Simplify docs preprocessing (#30947) 2025-05-19 08:16:14 -04:00
editor editor: Prevent overlapping of signature/hover popovers and context menus (#31090) 2025-05-21 18:45:00 +05:30
eval chore: Make terminal_view own the TerminalSlashCommand (#31070) 2025-05-21 09:27:54 +00:00
extension Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
extension_api extension/dap: Add resolve_tcp_template function (#31010) 2025-05-20 15:17:13 +02:00
extension_cli Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
extension_host extension_host: fix missing debug adapters (#31069) 2025-05-21 09:01:18 +00:00
extensions_ui Improve error message around failing to install dev extensions (#30711) 2025-05-14 17:22:17 +00:00
feature_flags Add a picker for jj bookmark list (#30883) 2025-05-17 16:42:45 +00:00
feedback feedback: Update issue template URL (#28790) 2025-04-15 21:36:30 -04:00
file_finder Add icons to the built-in picker for Open (#30893) 2025-05-21 13:07:22 +03:00
file_icons Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
fs Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
fsevent Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
fuzzy Fix out-of-bounds panic in fuzzy matcher with Unicode/multibyte characters (#30546) 2025-05-12 14:43:14 +00:00
git Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
git_hosting_providers Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
git_ui Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
go_to_line editor: Add minimap (#26893) 2025-05-07 23:11:09 +03:00
google_ai Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
gpui editor: Prevent overlapping of signature/hover popovers and context menus (#31090) 2025-05-21 18:45:00 +05:30
gpui_macros ui_macros: Remove DerivePathStr macro (#30862) 2025-05-17 10:05:55 +00:00
gpui_tokio Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
html_to_markdown Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
http_client Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
http_client_tls Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
icons agent: Fix layout shift due to the "Generating" label (#30422) 2025-05-09 16:20:14 -03:00
image_viewer Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
indexed_docs Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
inline_completion Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
inline_completion_button Add end of service notifications (#30982) 2025-05-20 00:20:00 +00:00
install_cli Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
jj Add a picker for jj bookmark list (#30883) 2025-05-17 16:42:45 +00:00
jj_ui Add a picker for jj bookmark list (#30883) 2025-05-17 16:42:45 +00:00
journal VSCode Settings import (#29018) 2025-04-23 20:54:09 +00:00
language Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
language_extension debugger/extensions: Revert changes to extension store related to language config (#30225) 2025-05-08 14:01:39 +02:00
language_model Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
language_models Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
language_selector Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
language_tools Rename debug: commands to dev: (#30675) 2025-05-14 11:15:27 +02:00
languages Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
livekit_api Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
livekit_client Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
lmstudio Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
lsp Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
markdown markdown: Fix out of range panic in parser (#30510) 2025-05-11 15:08:37 +00:00
markdown_preview Use image cache to stop leaking images (#29452) 2025-04-29 19:30:16 +00:00
media Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
menu agent: Add new panel navigation dropdown (#29539) 2025-04-29 21:58:45 -03:00
migrator Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
mistral Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
multi_buffer editor: Trim indent guides at last non-empty line (#29482) 2025-05-12 17:04:46 +02:00
node_runtime Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
notifications component: Replace linkme with inventory (#30705) 2025-05-14 23:29:11 +02:00
ollama Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
open_ai Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
outline Highlight merge conflicts and provide for resolving them (#28065) 2025-04-23 12:38:46 -04:00
outline_panel chore: Bump Rust to 1.87 (#30739) 2025-05-15 22:28:52 +00:00
panel Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
paths Add a way to import ssh host names from the ssh config (#30926) 2025-05-18 20:34:47 +00:00
picker agent: Keyboard navigation improvements (#30274) 2025-05-09 13:52:06 +00:00
prettier Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
project Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
project_panel Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
project_symbols Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
prompt_store Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
proto Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
recent_projects Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
refineable Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
release_channel Fix handling of --system-specs argument so it happens before Application::new (#29240) 2025-04-22 21:32:32 +00:00
remote Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
remote_server Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
repl Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
reqwest_client Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
rich_text Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
rope extension_host: Turn on parallel compilation (#30942) 2025-05-19 18:06:33 +02:00
rpc Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
rules_library Reuse conversation cache when streaming edits (#30245) 2025-05-08 14:36:34 +02:00
schema_generator Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
search Fix project search panic (#31089) 2025-05-21 12:42:20 +00:00
semantic_index Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
semantic_version Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
session Avoid unnecessary DB writes (#29417) 2025-04-25 17:41:49 +03:00
settings Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
settings_ui Add searchable global tab switcher (#28047) 2025-04-28 09:21:27 +00:00
snippet Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
snippet_provider editor: Improve snippet completion to show key inline in completion and description as aside (#30603) 2025-05-13 05:28:59 +05:30
snippets_ui Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
sqlez Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
sqlez_macros Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
story gpui: Add a standard text example (#30747) 2025-05-16 17:35:44 +02:00
storybook Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
streaming_diff Introduce a new StreamingEditFileTool (#29733) 2025-05-01 17:37:43 +02:00
sum_tree Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
supermaven Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
supermaven_api Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
tab_switcher Add searchable global tab switcher (#28047) 2025-04-28 09:21:27 +00:00
task Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
tasks_ui debugger: Add debug task picker to new session modal (#29702) 2025-05-02 08:38:29 +00:00
telemetry Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
telemetry_events Add new action to run agent eval (#29158) 2025-04-21 21:30:21 -07:00
terminal Reduce allocations (#30693) 2025-05-14 18:29:28 +02:00
terminal_view chore: Make terminal_view own the TerminalSlashCommand (#31070) 2025-05-21 09:27:54 +00:00
text Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
theme Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
theme_extension Add workspace-hack (#27277) 2025-04-02 13:26:34 -07:00
theme_importer Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
theme_selector theme_selector: Don't select last theme when fuzzy searching (#28278) 2025-04-28 14:29:17 +00:00
time_format agent: Add date separators to Thread History (#29961) 2025-05-06 10:18:48 +00:00
title_bar title_bar: Fix config merging to respect priority (#30980) 2025-05-20 07:56:24 +00:00
toolchain_selector toolchain: Respect currently focused file when querying toolchains (#28875) 2025-04-16 19:05:57 +02:00
ui Add end of service notifications (#30982) 2025-05-20 00:20:00 +00:00
ui_input component: Replace linkme with inventory (#30705) 2025-05-14 23:29:11 +02:00
ui_macros ui_macros: Remove DerivePathStr macro (#30862) 2025-05-17 10:05:55 +00:00
ui_prompt markdown: Don't retain MarkdownStyle in favor of using MarkdownElement directly (#28255) 2025-04-07 19:03:24 +00:00
util Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
util_macros Fix license symlinks (#29758) 2025-05-01 19:24:14 +00:00
vim Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
vim_mode_setting VSCode Settings import (#29018) 2025-04-23 20:54:09 +00:00
web_search agent: Expose web search tool to beta users (#29273) 2025-04-23 15:30:20 +00:00
web_search_providers Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
welcome component: Replace linkme with inventory (#30705) 2025-05-14 23:29:11 +02:00
workspace Add excluded_files to pane::DeploySearch (#30699) 2025-05-21 13:03:39 +03:00
worktree Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
zed Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
zed_actions zed: Fix no way to open local folder from remote window (#30954) 2025-05-19 21:26:30 +05:30
zeta Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
zlog Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
zlog_settings VSCode Settings import (#29018) 2025-04-23 20:54:09 +00:00