ZIm/crates
Jason Lee d4ddc4c62c
gpui: Fix cx.bounds, cx.open_window position on macOS (#14044)
Release Notes:

- gpui: Fixed `cx.bounds` method to get correct `y` position on macOS.
- gpui: Fixed `cx.open_window` position when macOS Dock is existed.
- Fixed call notification and reopen window position.

## Before


![image](https://github.com/zed-industries/zed/assets/5518/4a435ffd-d7ef-4de7-a7de-44d21db4a719)


https://github.com/zed-industries/zed/assets/5518/ab925779-4253-4b27-9084-01023888087f


## After

<img width="533" alt="image"
src="https://github.com/zed-industries/zed/assets/5518/142e9aaa-ae82-4a72-9acf-04097c545bf0">


https://github.com/zed-industries/zed/assets/5518/8793824a-8b74-4913-8204-7b39649aeeed


---

The case is I have made a Popover by use child window, the coordinate of
the window is always can't placement a right position.

So, I make this example to test the `cx.bounds` and set bounds to
window.

---

By this test, is the `cx.bounds` have a bug?

For example the **Top Left** window, we give it origin (150,150), but it
`cx.bounds()` returns (150,262)

> On the window label, middle line is the `bounds` that we set to the
window, last line is `cx.bounds()` result.

Display 1:

<img width="1512" alt="CleanShot 2024-07-10 at 14 52 26@2x"
src="https://github.com/zed-industries/zed/assets/5518/3adf9e79-f237-431a-a72b-02face7b2361">


---

Or is there something I missed. Is it correct to use `cx.bounds` method
to get the bounds of the current window?

At the same time, I also found that when there are multiple screens, the
information obtained by cx.bounds is very different on different
screens, and it seems that the origin is not relative to the screen.

Display 2:

<img width="2560" alt="SCR-20240710-nkmq"
src="https://github.com/zed-industries/zed/assets/5518/d87d4151-0562-4bf8-b3b3-5da3b4d09d82">
2024-07-10 09:52:33 -06:00
..
activity_indicator Make LSP task cancellation discoverable (#13226) 2024-06-18 12:44:35 -07:00
anthropic Make Claude 3.5 the default Anthropic model (#13324) 2024-06-21 18:47:38 +02:00
assets Move from Zed fonts to IBM Plex (#13596) 2024-06-27 14:36:44 -06:00
assistant Lay the groundwork for collaborating on assistant panel (#13991) 2024-07-10 17:36:22 +02:00
assistant_slash_command Lay the groundwork for collaborating on assistant panel (#13991) 2024-07-10 17:36:22 +02:00
assistant_tooling Bring the Tool Calling README up to date (#11683) 2024-05-12 04:47:19 -07:00
audio Make tests less noisy (#12463) 2024-05-29 18:06:45 -07:00
auto_update auto-updates: Do not poll for updates on dev channel (#13311) 2024-06-20 15:00:54 +02:00
breadcrumbs Add more menus to Zed (#12940) 2024-06-18 12:16:54 -07:00
call Remove never-used client parameter from message handler functions (#13406) 2024-06-22 16:07:36 -07:00
channel Remove never-used client parameter from message handler functions (#13406) 2024-06-22 16:07:36 -07:00
cli Stop relying on binary location to be in libexec on Linux (#13374) 2024-06-26 13:00:52 -06:00
client Prevent dumping of temporary files in config_dir (#14002) 2024-07-09 12:59:17 -04:00
clock Lay the groundwork for collaborating on assistant panel (#13991) 2024-07-10 17:36:22 +02:00
collab Lay the groundwork for collaborating on assistant panel (#13991) 2024-07-10 17:36:22 +02:00
collab_ui ui: Add margin style methods to Label and LabelLike (#14032) 2024-07-09 17:41:54 -04:00
collections gpui: Add SVG rendering to img element and generic asset cache (#9931) 2024-03-29 17:09:49 -07:00
command_palette Use UpdateGlobal accessors in more places (#11925) 2024-05-16 13:30:04 -04:00
command_palette_hooks Introduce InlineCompletionProvider (#9777) 2024-03-26 13:28:06 +01:00
copilot paths: Replace lazy_static! with OnceLock (#13213) 2024-06-18 12:22:37 -04:00
db paths: Replace lazy_static! with OnceLock (#13213) 2024-06-18 12:22:37 -04:00
dev_server_projects Remove never-used client parameter from message handler functions (#13406) 2024-06-22 16:07:36 -07:00
diagnostics vim: Empty pane improvements (#13624) 2024-06-27 21:54:03 -06:00
editor extensions: Add support for snippets provided by extensions (#14020) 2024-07-10 09:40:50 +02:00
extension extensions: Add support for snippets provided by extensions (#14020) 2024-07-10 09:40:50 +02:00
extension_api zed_extension_api: Return structured slash command completions (#13879) 2024-07-05 14:08:42 -04:00
extension_cli extension_cli: Allow building without dynamically linking WebRTC (#13080) 2024-06-14 20:13:31 -04:00
extensions_ui ui: Use PopoverMenu::new for constructing PopoverMenus (#13178) 2024-06-17 18:14:37 -04:00
feature_flags assistant: Feature flag terminal inline assistant (#13732) 2024-07-02 11:47:11 +02:00
feedback Refine inline transformation UX (#12939) 2024-06-13 08:35:22 +02:00
file_finder Fix a prompt typo (#13416) 2024-06-23 07:39:01 -04:00
file_icons Make tests less noisy (#12463) 2024-05-29 18:06:45 -07:00
fs paths: Replace lazy_static! with OnceLock (#13213) 2024-06-18 12:22:37 -04:00
fsevent Retain run loop (#11241) 2024-04-30 23:31:59 -06:00
fuzzy Introduce an outline panel (#12637) 2024-06-12 23:22:52 +03:00
git Introduce an outline panel (#12637) 2024-06-12 23:22:52 +03:00
git_hosting_providers Extract http from util (#11680) 2024-05-10 15:50:20 -06:00
go_to_line Add more menus to Zed (#12940) 2024-06-18 12:16:54 -07:00
google_ai Respect requested gemini model (#13427) 2024-06-23 14:10:31 -06:00
gpui gpui: Fix cx.bounds, cx.open_window position on macOS (#14044) 2024-07-10 09:52:33 -06:00
gpui_macros gpui: Expose more granular style macros (#14035) 2024-07-09 19:49:25 -04:00
headless Remove never-used client parameter from message handler functions (#13406) 2024-06-22 16:07:36 -07:00
html_to_markdown Publish html_to_markdown (#13718) 2024-07-01 17:18:58 -04:00
http zed_extension_api: Add github_release_by_tag_name (#12172) 2024-05-22 20:40:31 -04:00
image_viewer Make tests less noisy (#12463) 2024-05-29 18:06:45 -07:00
indexed_docs assistant: Add /docs slash command (#13794) 2024-07-03 17:04:08 -04:00
inline_completion_button paths: Replace lazy_static! with OnceLock (#13213) 2024-06-18 12:22:37 -04:00
install_cli Fix flickering (#9012) 2024-03-11 10:45:57 +01:00
journal Add the ability for extensions to provide language settings (#10296) 2024-04-08 19:17:12 -04:00
language Lay the groundwork for collaborating on assistant panel (#13991) 2024-07-10 17:36:22 +02:00
language_selector Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
language_tools ui: Use PopoverMenu::new for constructing PopoverMenus (#13178) 2024-06-17 18:14:37 -04:00
languages go: Quote targeting expression on runnables (#14055) 2024-07-10 16:02:29 +02:00
live_kit_client extension_cli: Allow building without dynamically linking WebRTC (#13080) 2024-06-14 20:13:31 -04:00
live_kit_server Vendor LiveKit protocol (#11672) 2024-05-10 14:18:40 -04:00
lsp Demote LSP request time log to trace level 2024-06-22 15:59:53 -07:00
markdown Move from Zed fonts to IBM Plex (#13596) 2024-06-27 14:36:44 -06:00
markdown_preview Refine inline transformation UX (#12939) 2024-06-13 08:35:22 +02:00
media Revert "Revert "Revert dependency updates in #9836 (#10089)"" 2024-04-02 13:12:38 -06:00
menu Fix the linux keymap (#9829) 2024-03-26 16:10:09 -07:00
multi_buffer Combine multiple buffer update count fields into one (#13449) 2024-06-23 22:20:10 -07:00
node_runtime JSON: Show package.json dependency tooltips on hover (#13481) 2024-06-25 14:59:29 +02:00
notifications Remove never-used client parameter from message handler functions (#13406) 2024-06-22 16:07:36 -07:00
ollama Allow Ollama Model KeepAlive to be None, defaulting to indefinite (#13059) 2024-06-14 10:33:28 -07:00
open_ai Change tool_calls to be an Option in response (#13778) 2024-07-03 11:07:11 -04:00
outline Add a way to filter items in the outline panel (#13984) 2024-07-09 16:44:24 +03:00
outline_panel outline_panel: Fix outline panel should autoscroll when selection has changed (#14038) 2024-07-10 10:12:09 +03:00
paths settings: Load .zed/settings.json even if .gitignored (#13370) 2024-06-21 18:39:14 +02:00
picker Fix: Picker select_last not scrolling to item index (#13393) 2024-06-23 09:36:52 +02:00
prettier Fix Prettier parser values when formatting files with paths (#13666) 2024-06-29 11:37:22 +03:00
project Lay the groundwork for collaborating on assistant panel (#13991) 2024-07-10 17:36:22 +02:00
project_panel Reveal in files instead of Finder (#13432) 2024-07-09 11:54:14 -07:00
project_symbols Add more menus to Zed (#12940) 2024-06-18 12:16:54 -07:00
proto Lay the groundwork for collaborating on assistant panel (#13991) 2024-07-10 17:36:22 +02:00
quick_action_bar Reorganize Quick Action Bar (#13476) 2024-06-24 15:34:22 -04:00
recent_projects Rename ui_text_field crate to ui_input (#13949) 2024-07-08 17:05:30 -04:00
refineable Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
release_channel auto-updates: Do not poll for updates on dev channel (#13311) 2024-06-20 15:00:54 +02:00
repl Measure maximum width of each cell to render table (#14026) 2024-07-09 14:19:10 -07:00
rich_text New revision of the Assistant Panel (#10870) 2024-04-23 16:23:26 -07:00
rope Indent guides (#11503) 2024-05-23 15:50:59 +02:00
rpc Dynamicer builds (#13074) 2024-06-21 16:32:32 -07:00
search ui: Add margin style methods to Label and LabelLike (#14032) 2024-07-09 17:41:54 -04:00
semantic_index Refactor: Make it possible to share a remote worktree (#12775) 2024-06-07 12:53:01 -07:00
semantic_version Extract SemanticVersion into its own crate (#9956) 2024-03-29 12:11:57 -04:00
settings paths: Replace lazy_static! with OnceLock (#13213) 2024-06-18 12:22:37 -04:00
snippet html: Add support for autoclosing of tags (#11761) 2024-05-20 17:00:27 +02:00
snippet_provider extensions: Add support for snippets provided by extensions (#14020) 2024-07-10 09:40:50 +02:00
sqlez Remove extraneous Cargo.lock files (#14001) 2024-07-09 12:15:34 -04:00
sqlez_macros Dynamicer builds (#13074) 2024-06-21 16:32:32 -07:00
story Introduce a new markdown crate (#11556) 2024-05-09 11:03:33 +02:00
storybook Remove extraneous Cargo.lock files (#14001) 2024-07-09 12:15:34 -04:00
sum_tree Introduce Editor::insert_flaps and Editor::remove_flaps (#12096) 2024-05-21 20:23:37 +02:00
supermaven Reduce spamming of inline completion discard events (#11999) 2024-05-17 16:37:17 -04:00
supermaven_api paths: Replace lazy_static! with OnceLock (#13213) 2024-06-18 12:22:37 -04:00
tab_switcher Introduce recent files ambient context for assistant (#11791) 2024-05-14 13:48:36 +02:00
task task: Add re-run task button to terminal title (#12379) 2024-05-29 11:40:43 +02:00
tasks_ui task: Rebind UseSelectedQuery in modal to F2 (#12601) 2024-06-03 12:52:44 +02:00
telemetry_events Add metrics_id to editor_events (#13525) 2024-06-25 16:47:55 -04:00
terminal Add terminal inline assistant (#13638) 2024-07-01 20:53:56 +02:00
terminal_view Use user-defined font weight in terminal (#13926) 2024-07-08 14:43:23 +03:00
text Lay the groundwork for collaborating on assistant panel (#13991) 2024-07-10 17:36:22 +02:00
theme ui: Add NumericStepper component (#13954) 2024-07-08 18:45:49 -04:00
theme_importer Hoist indexmap to workspace level (#12901) 2024-06-11 15:31:55 -04:00
theme_selector Use UpdateGlobal accessors in more places (#11925) 2024-05-16 13:30:04 -04:00
time_format Inline git blame (#10398) 2024-04-15 14:21:52 +02:00
title_bar ui: Add margin style methods to Label and LabelLike (#14032) 2024-07-09 17:41:54 -04:00
ui Lay the groundwork for collaborating on assistant panel (#13991) 2024-07-10 17:36:22 +02:00
ui_input Rename ui_text_field crate to ui_input (#13949) 2024-07-08 17:05:30 -04:00
util Associate logs from log_err with the calling crate (#13617) 2024-06-27 17:03:47 -07:00
vcs_menu ui: Add margin style methods to Label and LabelLike (#14032) 2024-07-09 17:41:54 -04:00
vim Fix search/replace start of line anchor (#13920) 2024-07-09 12:39:24 -06:00
welcome Separate out macOS and Linux keymaps (#13792) 2024-07-08 15:05:29 -04:00
workspace Fix transparency (#14010) 2024-07-09 12:11:18 -06:00
worktree Fix a bug introduced by #13479 (#13516) 2024-06-25 10:03:29 -07:00
zed v0.145.x dev 2024-07-10 10:12:35 -04:00
zed_actions Add more menus to Zed (#12940) 2024-06-18 12:16:54 -07:00