zed/crates
Conashimi fb0af50553
gpui: Allow OS caption/buttons for custom Windows titlebar (#48330)
## Summary
Fixes an issue where GPUI's handling of `WM_NCLBUTTONDOWN` prevented
Windows from processing default titlebar interactions (dragging, caption
buttons, and border resize).

## Changes
- Allow OS to handle `WM_NCLBUTTONDOWN` events for `HTCAPTION`, caption
button areas, and resize border areas (`HTLEFT`, `HTRIGHT`, `HTTOP`,
`HTBOTTOM`, `HTTOPLEFT`, `HTTOPRIGHT`, `HTBOTTOMLEFT`, `HTBOTTOMRIGHT`)
- Use current cursor position in `WM_NCHITTEST` for accurate hit-testing

## Testing
- Manual testing on Windows: titlebar dragging works
- Manual testing on Windows: minimize/maximize/close buttons work
- Manual testing on Windows: window border resize works in all
directions

Release Notes:
- N/A
2026-02-09 15:04:12 -05:00
..
acp_thread agent: Highlight latest models available through the Zed provider (#48614) 2026-02-06 14:03:03 -05:00
acp_tools ui: Improve performance in the CopyButton component (#47292) 2026-01-21 13:40:42 -03:00
action_log git: Side-by-side diff UI (#47349) 2026-01-22 02:31:14 -05:00
activity_indicator remote: Support opening builtin host files in remote workspaces on wsl (#46910) 2026-01-15 15:21:57 +00:00
agent Add format-on-save support to streaming edit file tool (#48663) 2026-02-09 08:57:26 -05:00
agent_servers acp: Cleanup unneeded cx from config state methods (#48353) 2026-02-04 13:12:49 +00:00
agent_settings agent: Add agent.default_model.enable_thinking setting (#48536) 2026-02-05 23:35:44 +00:00
agent_ui Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
agent_ui_v2 agent_ui: Refactor AcpThreadView (#48339) 2026-02-04 18:51:57 +01:00
ai_onboarding Add student plan (#47866) 2026-01-28 21:34:10 +00:00
anthropic Strip broken thinking blocks from Anthropic requests (#48548) 2026-02-07 04:21:58 +00:00
askpass Revert "Allow always_allow patterns for Nushell, Elvish, and Rc shells" (#48050) 2026-01-30 21:26:13 +00:00
assets
assistant_slash_command Handle removed IconName variants in text thread deserialization (#47624) 2026-01-26 23:56:55 +00:00
assistant_slash_commands build: Tear up crate graph (move terminal closer to editor) (#48602) 2026-02-06 20:14:35 +01:00
assistant_text_thread agent: Fix disabled MCP servers disappearing from UI after restart (#47758) 2026-02-09 00:56:20 +01:00
audio gpui: Actually remove the Result from AsyncApp (#45809) 2026-01-07 12:48:24 -08:00
auto_update remote: Add configurable remote server cache retention (default 5) (#47202) 2026-01-26 07:25:51 +00:00
auto_update_helper
auto_update_ui remote: Support opening builtin host files in remote workspaces on wsl (#46910) 2026-01-15 15:21:57 +00:00
aws_http_client
bedrock bedrock: Add Claude Opus 4.6 (#48525) 2026-02-09 09:19:51 +00:00
breadcrumbs Clean up some Cargo.toml files (#48623) 2026-02-06 20:21:19 +00:00
buffer_diff multi_buffer: Optimize a bunch of things (#48519) 2026-02-05 20:10:02 +00:00
call gpui: Actually remove the Result from AsyncApp (#45809) 2026-01-07 12:48:24 -08:00
channel gpui: Actually remove the Result from AsyncApp (#45809) 2026-01-07 12:48:24 -08:00
cli cli: Teach --diff to recurse into directories and add a MultiDiffView (#45131) 2026-01-30 10:14:36 +01:00
client client: Fix ACP registry blog post URL (#47881) 2026-01-28 18:28:53 +00:00
clock
cloud_api_client
cloud_api_types Move extension API DTOs into cloud_api_types (#48689) 2026-02-07 17:54:29 +00:00
cloud_llm_client agent: Highlight latest models available through the Zed provider (#48614) 2026-02-06 14:03:03 -05:00
codestral Fix Codestral API key credentials URL mismatch (#48513) 2026-02-05 17:34:34 -05:00
collab Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
collab_ui Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
collections
command_palette Revert "Revert scheduler update (#46659)" (#46671) 2026-01-14 07:19:13 +00:00
command_palette_hooks
component
component_preview build: Simplify build graph (#47253) 2026-01-23 18:29:20 +01:00
context_server Revert "Allow always_allow patterns for Nushell, Elvish, and Rc shells" (#48050) 2026-01-30 21:26:13 +00:00
copilot Add configurable LSP timeout setting (#44745) 2026-02-07 00:36:37 +00:00
copilot_chat Revert "Remove VS Code references from Copilot integration" (#48555) 2026-02-06 03:34:34 +00:00
copilot_ui Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
crashes Revert "Revert scheduler update (#46659)" (#46671) 2026-01-14 07:19:13 +00:00
credentials_provider gpui: Actually remove the Result from AsyncApp (#45809) 2026-01-07 12:48:24 -08:00
dap dap: Make ProtoConversion::to_proto consume self (#47871) 2026-01-28 16:00:52 +00:00
dap_adapters Auto-detect Rust for CodeLLDB panic breakpoints (#48236) 2026-02-04 04:44:42 -05:00
db Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
debug_adapter_extension Revert "Revert scheduler update (#46659)" (#46671) 2026-01-14 07:19:13 +00:00
debugger_tools gpui: Actually remove the Result from AsyncApp (#45809) 2026-01-07 12:48:24 -08:00
debugger_ui Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
deepseek deepseek: Fix for max output tokens blocking completions (#45236) 2025-12-18 12:47:34 +00:00
denoise
dev_container Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
diagnostics Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
docs_preprocessor editor: Implement semantic highlighting (#46356) 2026-02-04 17:37:13 +00:00
edit_prediction ep: Compress EP requests (#48793) 2026-02-09 18:02:56 +02:00
edit_prediction_cli Do not pass zeta prompt format in production endpoint (#48541) 2026-02-06 00:31:24 -08:00
edit_prediction_context Introduce new predict_edits/v3 endpoint (#46960) 2026-01-16 02:16:34 +00:00
edit_prediction_types Differentiate between explicit rejection and ignored in ep acceptance tracking (#48409) 2026-02-04 17:54:11 -05:00
edit_prediction_ui Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
editor git: Fix panic when folding ranges (#48809) 2026-02-09 13:39:48 -05:00
encoding_selector encoding: Add "reopen with encoding" (#46553) 2026-01-27 05:27:26 +00:00
eval agent: Add support for setting thinking effort for Zed provider (#48545) 2026-02-06 01:04:53 +00:00
eval_utils Fix self-referential symbolic link (#45265) 2025-12-18 17:26:20 +01:00
explorer_command_injector
extension lsp: Add container_name to lsp::Symbol (#46822) 2026-02-04 23:03:15 +01:00
extension_api extension_api: Add digest to GithubReleaseAsset (#48413) 2026-02-05 12:13:02 +00:00
extension_cli Move extension API DTOs into cloud_api_types (#48689) 2026-02-07 17:54:29 +00:00
extension_host extension_host: Add DAP methods dispatch for v0.8.0 (#48777) 2026-02-09 11:55:00 +00:00
extensions_ui Move extension API DTOs into cloud_api_types (#48689) 2026-02-07 17:54:29 +00:00
feature_flags Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
feedback
file_finder Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
file_icons
fs fs: Cache filesystem case sensitivity (#47995) 2026-01-30 09:42:28 +01:00
fs_benchmarks
fuzzy
git Revert "git: Fix stage/unstage failure with a large number of files (#47800)" (#48238) 2026-02-03 04:24:11 +00:00
git_graph git: Use CDN endpoint for GitHub avatars to avoid rate limiting (#47894) 2026-01-31 13:49:42 -05:00
git_hosting_providers Implement extract_pull_request for GitLab provider (#47973) 2026-01-31 21:56:34 +00:00
git_ui git_ui: Dismiss modal when viewing stash (#48491) 2026-02-09 16:35:56 +00:00
go_to_line Add optional relative line jumps to go-to-line action (#46932) 2026-01-27 05:51:11 +00:00
google_ai google_ai: Refactor token count methods in Google AI (#45184) 2025-12-17 20:12:40 -06:00
gpui gpui: Allow OS caption/buttons for custom Windows titlebar (#48330) 2026-02-09 15:04:12 -05:00
gpui_macros gpui: Add min_size and max_size style methods (#47775) 2026-01-27 15:37:22 -03:00
gpui_tokio gpui: Actually remove the Result from AsyncApp (#45809) 2026-01-07 12:48:24 -08:00
html_to_markdown
http_client
http_client_tls
icons Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
image_viewer editor: Put more syntax walking features on the background (#48450) 2026-02-05 09:31:11 +00:00
inspector_ui Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
install_cli gpui: Actually remove the Result from AsyncApp (#45809) 2026-01-07 12:48:24 -08:00
journal Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
json_schema_store lsp: Add schema support for LSP settings field (#48332) 2026-02-04 23:45:52 +01:00
keymap_editor Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
language language: Return early if no grammars are added (#48685) 2026-02-08 17:54:01 +00:00
language_extension lsp: Add container_name to lsp::Symbol (#46822) 2026-02-04 23:03:15 +01:00
language_model Strip broken thinking blocks from Anthropic requests (#48548) 2026-02-07 04:21:58 +00:00
language_models bedrock: Add Claude Opus 4.6 (#48525) 2026-02-09 09:19:51 +00:00
language_onboarding
language_selector build: Simplify build graph (#47253) 2026-01-23 18:29:20 +01:00
language_tools Follow-up semantic token fixes (#48485) 2026-02-05 15:06:02 +00:00
languages languages: Remove duplicate keywords in JS syntax highlighting (#48460) 2026-02-05 12:23:39 +01:00
line_ending_selector
livekit_api Update Rust crate jsonwebtoken to v10 [SECURITY] (#48294) 2026-02-03 15:51:40 -05:00
livekit_client livekit_client: Revert #46986 for macos (#46990) 2026-01-16 14:20:23 +00:00
lmstudio
lsp Add configurable LSP timeout setting (#44745) 2026-02-07 00:36:37 +00:00
markdown markdown: Fix markdown table selection hit testing (#47720) 2026-02-02 16:37:58 +00:00
markdown_preview Add item for opening Markdown/SVG files in preview tab in right-click menu (#47821) 2026-01-28 00:19:13 -03:00
media
menu ui: Add submenus to ContextMenu (#45743) 2025-12-30 07:49:01 -03:00
migrator Fix settings migrations for nested platform/channel/profile keys (#48550) 2026-02-06 16:50:36 +00:00
miniprofiler_ui Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
mistral Fix Codestral API key credentials URL mismatch (#48513) 2026-02-05 17:34:34 -05:00
multi_buffer multi_buffer: Optimize a bunch of things (#48519) 2026-02-05 20:10:02 +00:00
nc smol: Use Unblock instead of Async for stdin, stdout and stderr handles (#46141) 2026-01-06 08:14:34 +00:00
net
node_runtime acp: Allow running NPM agents from registry (#47291) 2026-01-21 14:52:44 +00:00
notifications gpui: Actually remove the Result from AsyncApp (#45809) 2026-01-07 12:48:24 -08:00
ollama Add initial support for edit predictions via Ollama (#48233) 2026-02-04 01:33:12 +00:00
onboarding Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
open_ai ep: Use rejected_output for DPO training + OpenAI support (#47697) 2026-01-27 13:02:40 +00:00
open_path_prompt Fix open path prompt not showing hidden files (#46965) 2026-01-31 09:57:31 +02:00
open_router
outline Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
outline_panel project_panel: Show Reveal in File Manager on wsl (#47288) 2026-01-22 11:24:23 +00:00
panel build: Decouple git_ui from recent_projects (#48062) 2026-02-02 13:30:07 +01:00
paths Fix text_threads_dir() non-compliance with XDG spec (#45771) 2026-02-06 15:34:36 +00:00
picker build: Simplify build graph (#47253) 2026-01-23 18:29:20 +01:00
platform_title_bar Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
prettier Add configurable LSP timeout setting (#44745) 2026-02-07 00:36:37 +00:00
project devcontainer: Fix project search returning no results on single-CPU containers (#48798) 2026-02-09 18:53:31 +01:00
project_benchmarks ep_cli: Fix "Too many open files" errors (#47243) 2026-01-20 15:41:31 -05:00
project_panel Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
project_symbols Revert "Revert scheduler update (#46659)" (#46671) 2026-01-14 07:19:13 +00:00
prompt_store Revert "Allow always_allow patterns for Nushell, Elvish, and Rc shells" (#48050) 2026-01-30 21:26:13 +00:00
proto Support custom fold text for LSP folds (#48624) 2026-02-06 22:24:38 +02:00
recent_projects Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
refineable gpui: Make refining a Style properly refine the TextStyle (#42852) 2025-12-15 13:30:13 +00:00
release_channel
remote remote: Fix build_remote_server_from_source compression on unix (#48319) 2026-02-04 09:15:21 +00:00
remote_connection build: Decouple git_ui from recent_projects (#48062) 2026-02-02 13:30:07 +01:00
remote_server devcontainer: Fix project search returning no results on single-CPU containers (#48798) 2026-02-09 18:53:31 +01:00
repl repl: Pluck project off editor directly (#48808) 2026-02-09 20:18:24 +01:00
reqwest_client Add initial support for edit predictions via Ollama (#48233) 2026-02-04 01:33:12 +00:00
rich_text
rope rope: Fix an unintentional panic (#47019) 2026-01-20 12:23:17 +00:00
rpc Move extension API DTOs into cloud_api_types (#48689) 2026-02-07 17:54:29 +00:00
rules_library Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
scheduler Restore run_with_clock_advancement (#46930) 2026-01-15 18:39:06 +00:00
schema_generator Add project settings schema to schema_generator CLI (#44321) 2025-12-16 10:48:14 -05:00
search Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
session Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
settings git: Add a setting for the default view mode of SplittableEditor (#48440) 2026-02-07 17:26:02 +00:00
settings_content git: Add a setting for the default view mode of SplittableEditor (#48440) 2026-02-07 17:26:02 +00:00
settings_json
settings_macros
settings_profile_selector Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
settings_ui Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
shell_command_parser Extract shell_command_parser into shared crate (#48660) 2026-02-09 08:56:21 -05:00
snippet
snippet_provider extension_cli: Validate that all snippets can be parsed (#47649) 2026-01-26 13:49:26 +00:00
snippets_ui build: Simplify build graph (#47253) 2026-01-23 18:29:20 +01:00
sqlez
sqlez_macros
story
storybook collab: Improve project and call notification UI (#47964) 2026-01-29 16:33:38 -03:00
streaming_diff
sum_tree multi_buffer: Optimize a bunch of things (#48519) 2026-02-05 20:10:02 +00:00
supermaven Differentiate between explicit rejection and ignored in ep acceptance tracking (#48409) 2026-02-04 17:54:11 -05:00
supermaven_api collab: Remove Supermaven API key issuance (#46044) 2026-01-04 23:28:18 +00:00
svg_preview Add item for opening Markdown/SVG files in preview tab in right-click menu (#47821) 2026-01-28 00:19:13 -03:00
system_specs
tab_switcher Add tab switcher mode similar to vim/helix buffer picker (#47079) 2026-02-05 20:25:20 +00:00
task debugger: Wrap TaskContext in Arc to reduce cloning overhead (#47087) 2026-02-05 10:37:39 +00:00
tasks_ui tasks: Show error for unknown ZED_ variables (#45621) 2026-01-26 19:47:36 +00:00
telemetry
telemetry_events ep_cli: rated-after: query (#47906) 2026-01-28 16:36:44 -08:00
terminal Revert "Allow always_allow patterns for Nushell, Elvish, and Rc shells" (#48050) 2026-01-30 21:26:13 +00:00
terminal_view build: Tear up crate graph (move terminal closer to editor) (#48602) 2026-02-06 20:14:35 +01:00
text git: Follow-up fixes for custom blocks in the side-by-side diff (#48747) 2026-02-08 20:10:52 -05:00
theme editor: Implement semantic highlighting (#46356) 2026-02-04 17:37:13 +00:00
theme_extension
theme_importer Split settings content into its own crate (#46845) 2026-01-15 18:10:21 +00:00
theme_selector
time_format time_format: Determine year difference based on months passed (#47687) 2026-01-28 17:05:34 +01:00
title_bar Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
toolchain_selector Added support for dismissing the toolchain path selector via esc (#48201) 2026-02-02 16:56:25 +00:00
ui Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
ui_input build: Decouple git_ui from recent_projects (#48062) 2026-02-02 13:30:07 +01:00
ui_macros
ui_prompt
util Housekeeping: Improve error handling and small fixes (#48552) 2026-02-05 22:58:55 -05:00
util_macros
vercel project: Move tests to integration layer (#47596) 2026-01-25 21:35:32 +01:00
vim Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
vim_mode_setting
watch
web_search
web_search_providers Add helper method for checking if the LLM token needs to be refreshed (#47511) 2026-01-23 20:50:50 +00:00
which_key Add Vim-like Which-key Popup menu (#43618) 2025-12-17 11:53:48 -07:00
workspace Revert "New multi workspace (#47795)" (#48776) 2026-02-09 15:37:16 +01:00
worktree Don't watch parent directory of global gitexcludes file (#48408) 2026-02-06 07:02:06 +00:00
worktree_benchmarks project: Always allocate WorktreeIDs on the remote client (#47936) 2026-01-29 15:31:13 +00:00
x_ai
zed visual_tests: Init agent UI globals in runner (#48076) 2026-02-09 19:28:58 +00:00
zed_actions build: Tear up crate graph (move terminal closer to editor) (#48602) 2026-02-06 20:14:35 +01:00
zed_env_vars
zeta_prompt Do not pass zeta prompt format in production endpoint (#48541) 2026-02-06 00:31:24 -08:00
zlog
zlog_settings
ztracing ztracing: Enable memory profiling and callstack sampling (#47052) 2026-01-17 19:29:19 +00:00
ztracing_macro