ZIm/crates
smit e061ebb46c
editor: Fix cmd + click on a URL not working sometimes (#26128)
Closes #25647

This PR fixes two issues related to cmd + click on URL:

1. Normally cmd + click on URL, it opens browser. Now, alt + tab back to
Zed. If you cmd + click on link again it won't work, until you normal
click some where else in buffer. It won't even show underline.

2. Again, cmd + click on URL, it opens browser. Now, alt + tab back to
Zed. If you cmd + click, some where else in buffer like just normal
text, and now try to hover on URL it won't show up underline and cmd +
click on it won't work. Unless again, if you plain click somewhere else.

Problem:

Issue is when clicking we set pending anchor (for selection), and when
we mouse up we clear those. This works for normal case without pressing
any modifier.

But, in case of cmd modifier, we set pending anchor (set when
`SelectPhase::Begin`), but we don't clear it once we use that data.

Fix: 

Once we end up using selection, anchor, etc data to figure out where to
navigate either URL/defination etc, we clear selection just like how we
do it in normal click. This doesn't require to happen after navigate
task, so we do it right after our usage of it.

Before:


https://github.com/user-attachments/assets/b33d93fc-f490-4fa4-ae22-1da1fd6b77a9

After:


https://github.com/user-attachments/assets/028f039a-cd13-4651-b461-3ba52f2526de


Release Notes:

- Fixed an issue where cmd + click on a URL was not working sometimes.
2025-03-05 20:58:18 +05:30
..
activity_indicator Remove more references to 'model' in GPUI APIs (#23693) 2025-01-27 04:00:27 +00:00
anthropic Add Anthropic Claude 3.7 support (#25497) 2025-02-24 16:10:26 -05:00
assets Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
assistant Fix focus handle leak (#26090) 2025-03-05 00:50:26 +00:00
assistant2 Fix focus handle leak (#26090) 2025-03-05 00:50:26 +00:00
assistant_context_editor Make buffer search aware of search direction (#24974) 2025-03-04 19:27:37 -07:00
assistant_settings assistant: Add Bedrock support (#21092) 2025-02-24 18:10:12 -05:00
assistant_slash_command Revert "file_finder: Remove common segments of long paths in search results (#25049)" (#25163) 2025-02-19 15:32:29 +00:00
assistant_slash_commands chore: Extract PromptStore out of prompt_library (#25837) 2025-03-01 00:34:28 +01:00
assistant_tool Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
assistant_tools assistant_tools: Rename FileToolInput to NowToolInput (#25456) 2025-02-24 09:37:07 -05:00
audio Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
auto_update cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
auto_update_ui Add user-visible output for remote operations (#25849) 2025-03-03 09:20:15 +00:00
aws_http_client Add aws_http_client and bedrock crates (#25490) 2025-02-24 20:28:20 +00:00
bedrock bedrock: Add Claude 3.7 Sonnet (#25583) 2025-02-25 13:52:42 -05:00
breadcrumbs Add user-visible output for remote operations (#25849) 2025-03-03 09:20:15 +00:00
buffer_diff Disable diff hunks for untracked files, even w/ no newline at eof (#25980) 2025-03-03 22:18:27 -08:00
call cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
channel Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
cli cli: Add extra paths in detect() on Windows (#25765) 2025-03-02 00:17:55 +08:00
client Add CredentialsProvider to silence keychain prompts in development (#25266) 2025-02-20 17:58:50 +00:00
clock chore: Use workspace fields for edition and publish (#23291) 2025-01-17 17:39:22 +01:00
collab chore: Extract PromptStore out of prompt_library (#25837) 2025-03-01 00:34:28 +01:00
collab_ui keymap: Update Prev to Previous for consistency (#25909) 2025-03-03 17:44:49 +05:30
collections chore: Use workspace fields for edition and publish (#23291) 2025-01-17 17:39:22 +01:00
command_palette cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
command_palette_hooks vim: :set support (#24209) 2025-02-11 04:55:40 +00:00
component git_ui: New panel design (#25821) 2025-02-28 20:00:39 +00:00
component_preview git_ui: Prevent button overflow due to long names (#25940) 2025-03-03 18:38:15 +00:00
context_server context_server: Abstract server transport (#24528) 2025-02-26 17:19:19 +00:00
context_server_settings Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
copilot Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
credentials_provider Use the development credentials provider in development by default (#25273) 2025-02-20 19:07:16 +00:00
db cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
deepseek Add DeepSeek support (#23551) 2025-01-27 13:40:59 -05:00
diagnostics Add user-visible output for remote operations (#25849) 2025-03-03 09:20:15 +00:00
docs_preprocessor Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
editor editor: Fix cmd + click on a URL not working sometimes (#26128) 2025-03-05 20:58:18 +05:30
evals Revert "file_finder: Remove common segments of long paths in search results (#25049)" (#25163) 2025-02-19 15:32:29 +00:00
extension theme: Don't log errors for missing themes until extensions have loaded (#25098) 2025-02-18 17:47:25 +00:00
extension_api Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
extension_cli extension_cli: Make use of scrollbar_thumb.background a hard error (#25932) 2025-03-03 15:55:15 +00:00
extension_host Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
extensions_ui git_ui: Prevent button overflow due to long names (#25940) 2025-03-03 18:38:15 +00:00
feature_flags zeta: Remove predict-edits-launch feature flag (#24829) 2025-02-13 21:48:09 +00:00
feedback cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
file_finder workspace: Add trailing / to directories on completion when using OpenPathPrompt (#25430) 2025-03-04 14:01:08 +08:00
file_icons Allow icon themes to provide their own file associations (#24926) 2025-02-15 00:35:13 +00:00
fs git: Don't consider $HOME as containing git repository unless it's opened directly (#25948) 2025-03-03 20:33:02 +00:00
fsevent Deflake fs::test_event_stream_simple (#24013) 2025-01-30 23:53:36 -07:00
fuzzy workspace: Add trailing / to directories on completion when using OpenPathPrompt (#25430) 2025-03-04 14:01:08 +08:00
git git: Fix project diff shortcuts (#26045) 2025-03-04 10:32:20 -07:00
git_hosting_providers git_hosting_providers: Add support for Chromium repositories (#24881) 2025-02-20 19:11:32 -05:00
git_ui Fix diff_hunk_before in a multibuffer (#26059) 2025-03-04 20:07:19 -07:00
go_to_line project: Fine-grained language server management (#24038) 2025-02-14 15:41:49 +01:00
google_ai Partially fix assistant onboarding (#25313) 2025-02-24 07:29:55 +00:00
gpui Synchronize modal commit editor with panel editor (#26068) 2025-03-04 21:58:26 +00:00
gpui_macros Revert "Hide the mouse when the user is typing in the editor (#25040)" (#25393) 2025-02-22 10:19:23 -05:00
gpui_tokio Make the gpui_tokio crate generic over the context it spawns (#23995) 2025-01-31 02:00:55 +00:00
html_to_markdown Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
http_client Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
image_viewer image_viewer: Hide breadcrumb (#25654) 2025-02-26 17:24:35 +01:00
indexed_docs Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
inline_completion edit predictions: Show user if current project is open source (#24587) 2025-02-10 22:28:56 -03:00
inline_completion_button Support absolute disabled_globs (#25755) 2025-02-27 15:29:32 -03:00
install_cli Fix missed renames in #22632 (#23688) 2025-01-26 23:37:34 +00:00
journal cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
language Do not detach reparse tasks (#25934) 2025-03-03 22:41:46 +02:00
language_extension Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
language_model Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
language_model_selector Fix focus handle leak (#26090) 2025-03-05 00:50:26 +00:00
language_models assistant: Refine settings view's instruction visuals (#25812) 2025-02-28 12:06:47 -03:00
language_selector Refactor to use SharedString in more places (#23813) 2025-01-28 19:04:21 -05:00
language_tools Make buffer search aware of search direction (#24974) 2025-03-04 19:27:37 -07:00
languages Add typescript-language-server and vtsls to list of available language servers (#26046) 2025-03-04 15:49:27 -05:00
livekit_api Change license of crates/livekit_api from AGPL to GPL (#25206) 2025-02-19 23:32:51 +00:00
livekit_client cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
livekit_client_macos Rename livekit_server to livekit_api (#24984) 2025-02-16 20:24:12 +00:00
lmstudio lmstudio: Support missing quantization in model metadata (#24054) 2025-01-31 22:28:11 +00:00
lsp lsp: Use available workspace folders in initialize params (#25753) 2025-02-27 16:45:59 +01:00
markdown markdown: Only change the copy code icon to a check temporarily (#26079) 2025-03-04 23:02:43 +00:00
markdown_preview gpui: Maintain img aspect ratio when max_width is set (#25632) 2025-03-03 12:36:27 +01:00
media chore: Use workspace fields for edition and publish (#23291) 2025-01-17 17:39:22 +01:00
menu keymap: Update Prev to Previous for consistency (#25909) 2025-03-03 17:44:49 +05:30
migrator migration: Add for editor::GoToHunk and editor::GoToPrevHunk actions (#26017) 2025-03-04 18:39:29 +05:30
mistral assistant: Add Mistral support (#24879) 2025-02-14 13:07:41 -05:00
multi_buffer Fix diff_hunk_before in a multibuffer (#26059) 2025-03-04 20:07:19 -07:00
node_runtime Pass extra CA certs to node process if env var exists (#23662) 2025-01-30 08:56:02 -08:00
notifications Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
ollama Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
open_ai Update Assistant context limits (#25087) 2025-02-19 11:06:20 -05:00
outline keymap: Update Prev to Previous for consistency (#25909) 2025-03-03 17:44:49 +05:30
outline_panel keymap: Update Prev to Previous for consistency (#25909) 2025-03-03 17:44:49 +05:30
panel git_ui: New panel design (#25821) 2025-02-28 20:00:39 +00:00
paths Settings/keymap backup path next to files + update notification messages (#24517) 2025-02-09 16:51:37 -07:00
picker keymap: Update Prev to Previous for consistency (#25909) 2025-03-03 17:44:49 +05:30
prettier lsp: Use available workspace folders in initialize params (#25753) 2025-02-27 16:45:59 +01:00
project project: Fix issue where Cmd+Click on an import opens the wrong file (#26120) 2025-03-05 16:49:39 +05:30
project_panel keymap: Update Prev to Previous for consistency (#25909) 2025-03-03 17:44:49 +05:30
project_symbols Add user-visible output for remote operations (#25849) 2025-03-03 09:20:15 +00:00
prompt_library chore: Extract PromptStore out of prompt_library (#25837) 2025-03-01 00:34:28 +01:00
prompt_store chore: Extract PromptStore out of prompt_library (#25837) 2025-03-01 00:34:28 +01:00
proto workspace: Add trailing / to directories on completion when using OpenPathPrompt (#25430) 2025-03-04 14:01:08 +08:00
recent_projects Fix UI font size changes not applying (#25307) 2025-02-21 06:24:02 -03:00
refineable windows: Fix tests on Windows (#22616) 2025-02-05 14:30:09 +00:00
release_channel windows: Missing commit of #25412 (#25732) 2025-02-27 08:00:42 +00:00
remote ssh: Allow ssh -F ssh_config (#25619) 2025-02-26 16:23:25 -05:00
remote_server project: Fix issue where Cmd+Click on an import opens the wrong file (#26120) 2025-03-05 16:49:39 +05:30
repl keymap: Update Prev to Previous for consistency (#25909) 2025-03-03 17:44:49 +05:30
reqwest_client Redact Google Gemini API keys from error messaging and log (#24884) 2025-02-17 11:42:22 -05:00
rich_text Add user-visible output for remote operations (#25849) 2025-03-03 09:20:15 +00:00
rope Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
rpc extensions_ui: Add general structure for filtering extensions by what they provide (#24325) 2025-02-06 00:09:37 +00:00
schema_generator Add schema_generator for generating JSON schemas (#23991) 2025-01-31 01:22:10 +00:00
scripting_tool Add initial scripting_tool (#26066) 2025-03-04 17:59:19 -05:00
search Make buffer search aware of search direction (#24974) 2025-03-04 19:27:37 -07:00
semantic_index Revert "file_finder: Remove common segments of long paths in search results (#25049)" (#25163) 2025-02-19 15:32:29 +00:00
semantic_version chore: Use workspace fields for edition and publish (#23291) 2025-01-17 17:39:22 +01:00
session cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
settings keymap: Update Prev to Previous for consistency (#25909) 2025-03-03 17:44:49 +05:30
settings_ui Fix UI font size changes not applying (#25307) 2025-02-21 06:24:02 -03:00
snippet Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
snippet_provider snippets: Fix snippets not updating while containing comments (#23755) 2025-01-28 10:37:48 +01:00
snippets_ui Remove more references to 'model' in GPUI APIs (#23693) 2025-01-27 04:00:27 +00:00
sqlez Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
sqlez_macros windows: Fix tests on Windows (#22616) 2025-02-05 14:30:09 +00:00
story Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
storybook keymap: Update Prev to Previous for consistency (#25909) 2025-03-03 17:44:49 +05:30
streaming_diff chore: Use workspace fields for edition and publish (#23291) 2025-01-17 17:39:22 +01:00
sum_tree Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
supermaven Include prediction ID on edit prediction accepted/discarded events (#24480) 2025-02-07 22:06:37 +00:00
supermaven_api Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
tab_switcher keymap: Update Prev to Previous for consistency (#25909) 2025-03-03 17:44:49 +05:30
task cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
tasks_ui Use active worktree's task sources (#25784) 2025-02-27 22:57:59 +00:00
telemetry chore: Use workspace fields for edition and publish (#23291) 2025-01-17 17:39:22 +01:00
telemetry_events Add build SHA to panic reports and zed --version (on nightly/dev) (#24258) 2025-02-06 02:09:24 -07:00
terminal Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
terminal_view Make buffer search aware of search direction (#24974) 2025-03-04 19:27:37 -07:00
text Rust 1.85 (#25272) 2025-02-28 18:33:35 +01:00
theme Fix font sizes not reacting on settings change (#26060) 2025-03-04 20:57:37 +00:00
theme_extension theme: Don't log errors for missing themes until extensions have loaded (#25098) 2025-02-18 17:47:25 +00:00
theme_importer Add schema_generator for generating JSON schemas (#23991) 2025-01-31 01:22:10 +00:00
theme_selector icon_theme_selector: Add footer and related docs (#25042) 2025-02-20 00:02:24 +00:00
time_format Add an undo button to the git panel (#24593) 2025-02-12 15:57:08 -07:00
title_bar git_ui: Prevent button overflow due to long names (#25940) 2025-03-03 18:38:15 +00:00
toolchain_selector Revert "file_finder: Remove common segments of long paths in search results (#25049)" (#25163) 2025-02-19 15:32:29 +00:00
ui Fix focus handle leak (#26090) 2025-03-05 00:50:26 +00:00
ui_input Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
ui_macros Fix UI font size changes not applying (#25307) 2025-02-21 06:24:02 -03:00
util Optimize JSON merging by removing redundant key clones in serde_json operations (#25866) 2025-03-01 14:13:38 -05:00
util_macros windows: Fix tests on Windows (#22616) 2025-02-05 14:30:09 +00:00
vim vim: Add registers view (#25945) 2025-03-04 21:59:19 -07:00
vim_mode_setting Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00
welcome New commit review flow in project diff view (#25229) 2025-02-21 06:52:34 +00:00
workspace Make buffer search aware of search direction (#24974) 2025-03-04 19:27:37 -07:00
worktree git: Don't consider $HOME as containing git repository unless it's opened directly (#25948) 2025-03-03 20:33:02 +00:00
zed Add initial scripting_tool (#26066) 2025-03-04 17:59:19 -05:00
zed_actions Adds a way to toggle font size without settings adjustments (#24857) 2025-02-14 13:27:48 +02:00
zeta keymap: Update Prev to Previous for consistency (#25909) 2025-03-03 17:44:49 +05:30