bdba8b2
dart: Add Flutter runnables and tasks (#13686)
Click to expand commit body
Release Notes:
- Added runnable tasks for Flutter
Abdullah Alsigar
created
2290055
Project panel: Prevent scrollbar size from scaling with rem size (#14167)
Click to expand commit body
The underlying container had width of 0.75 rem, which was equal to 12px
at default ui_font_size. However, with larger values of ui_font_size the
scrollbar would drift towards the center of a project panel, as the
scrollbar itself has a fixed width of 12 pixels. This commit moves
towards using a fixed width of 12px for scrollbar container. The
alternative was to make the scrollbar scale with ui_font_size, but that
isn't what the Editor scrollbar does, so I decided against it.
Release Notes:
- Fixed position of scrollbar in project panel with non-default
`ui_font_size` values.
Piotr Osiewicz
created
6db0b6c
terminal: Prevent extra character on handled meta keystrokes (#14151)
Click to expand commit body
On macOS, when `terminal.option_as_meta` is enabled, pressing key
combinations like `option+b` and `option+f` would lead to both an escape
sequence being sent to the terminal (the expected behavior with
`option_as_meta == true`) AND a character being inserted (the behavior
when `option_as_meta == false`). Prevent the latter by stopping
propagation of the key-down event if it corresponds to a terminal escape
sequence and `option_as_meta` is enabled.
Fixes #7728
Release Notes:
- Fixed insertion of extra characters for some keystrokes if
`terminal.option_as_meta` is enabled
([#7728](https://github.com/zed-industries/zed/issues/7728)).
Denis Washington
created
ba11e9a
Fix SystemUIFont typo in default settings (#14158)
This let's GitHub and the Git cli optionally "skip" certain revs when
generating `git blame`.
Co-authored-by: Gilles Peiffer <gilles.peiffer.yt@gmail.com>
Peter Tripp
and
Gilles Peiffer
created
1b08f14
Document how to enable `vim_mode` in /docs/vim (#14138)
Click to expand commit body
## Documents:
- **Added** instructions on how to enable "Vim mode" to the
["Settings"](https://zed.dev/docs/vim#settings) of
[/docs/vim](https://zed.dev/docs/vim).
While [/docs/configuring-zed](https://zed.dev/docs/configuring-zed)
_does_ mention the `vim_mode` setting,
[/docs/vim](https://zed.dev/docs/vim) does not.
This can be confusing for users like me who went straight to the vim
doc, and could not figure out how to enable vim.
## Release Notes:
- N/A
Chris Hayes
created
36d3b16
Add toggle hunk diff and expand all hunk diffs key bindings (#14130)
Click to expand commit body
Noticed these were missing when I was reading through the docs.
Release Notes:
- Add toggle hunk diff and expand all hunk diffs key bindings
Release Notes:
- Fixed #5236
- Added the ability to select and copy text from information popovers
https://github.com/zed-industries/zed/assets/50590465/d5c86623-342b-474b-913e-d07cc3f76de4
---------
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
Co-authored-by: Antonio <ascii@zed.dev>
Ephram
,
Conrad Irwin
, and
Antonio
created
f1281c1
Revert Windows normal window title style to `WS_EX_APPWINDOW` (#14132)
Click to expand commit body
Release Notes:
- N/A
@ConradIrwin we must revert this little change.
https://github.com/zed-industries/zed/pull/14063#issuecomment-2221867379
For: #13417
This is a simple version, I'm not sure if we just need to limit this
feature to vim mode, or maybe in normal editor mode, which involves
other logic like the location of the setting
Release Notes:
- N/A
---------
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
5bc3846
Fix #14106 Windows title bar broken (#14122)
Click to expand commit body
Release Notes:
- N/A
----
Fix #14106
Sorry, the previous change in #14063 I have made a mistake. I shouldn't
have changed the previous logic.
```diff
- if !state_ptr.hide_title_bar {
+ if state_ptr.hide_title_bar {
```
## Test
https://github.com/zed-industries/zed/assets/5518/e03fbcac-be6b-4a9d-8937-d3b5e236b564
And the popup window limit is still works.
Jason Lee
created
e6d608f
linux: Add NewWorkspace to the Actions list in .desktop (#14097)
This PR fixes `<script context="module">` not being highlighted.
It also adds support for scss.
Release Notes:
- N/A
Sören Meier
created
15662f1
gpui: Fix TextStyle default font_family crash on Windows, use `Segoe UI` for Windows (#14040)
Click to expand commit body
Release Notes:
- Fixed default font_family crash on Windows, use `Segoe UI`.
## Crash error message
```
thread 'main' panicked at crates\gpui\src\text_system.rs:150:9:
failed to resolve font 'Helvetica' or any of the fallbacks:
Zed Plex Mono, Helvetica, Cantarell, Ubuntu, Noto Sans, DejaVu Sans
```
Jason Lee
created
1887a6d
gpui: Fix popup kind window support on Windows (#14063)
Click to expand commit body
Release Notes:
- N/A
----
Continue #14044 for Windows
## The problem
The `cx.open_window` method has provided us a `window_kind` option to
allows creating a Popup kind. This behavior can work on macOS, the popup
kind window have no-border, no-shadow, no-resize, and followed the
`is_movable` if present true it can't move.
This PR to fix those supports on Windows.
The border and shadow still exist, I have tried to use WS_POPUP
window_style, but it will crash:
> This is looks like complex, it is out of my known.
```
Blocking waiting for file lock on build directory
Compiling gpui v0.1.0 (F:\work\zed\crates\gpui)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.96s
Running `target\debug\examples\window_positioning.exe`
thread 'main' panicked at F:\Users\jason\.cargo\git\checkouts\blade-b2bcd1de1cf7ab6a\21a56f7\blade-graphics\src\vulkan\init.rs:864:18:
called `Result::unwrap()` on an `Err` value: ERROR_OUT_OF_DEVICE_MEMORY
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
error: process didn't exit successfully: `target\debug\examples\window_positioning.exe` (exit code: 0xc0000409, STATUS_STACK_BUFFER_OVERRUN)
```
So I just make a simple change, to use `WS_EX_TOOLWINDOW` this can
disable resize, and connect `is_movable` to `handle_hit_test_msg` to
disable move, and also no Status Bar icon.
## Before
https://github.com/zed-industries/zed/assets/5518/76740a71-e0ba-401f-958d-f4afdeb417c6
## After
https://github.com/zed-industries/zed/assets/5518/dca49f13-914c-425a-b8b6-b9fc15f8d208
Jason Lee
created
fa9360f
windows: Work around font rendering clipping issue (#14075)
Click to expand commit body
Release Notes:
- N/A
张小白
created
3ff738f
Fix panic clicking on multibyte chars (#14086)
Click to expand commit body
Fixes: #12011
When hovering over a multibyte character in a debug build, Zed would
panic.
Follow up to #11296
Release Notes:
- N/A
Conrad Irwin
created
77b31d1
Allow rpc_url to be assigned on Client with test-support feature (#13430)
Click to expand commit body
Also, allow proto messages to be deserialized. This is to support
translating these messages JS types in a new server implementation based
on CloudFlare durable objects.
Release Notes:
- N/A
Release Notes:
- Changed the `modified` color on the one-light color theme to a more
readable value
The current color in the file tree for modified files is basically
unreadable in the default light mode
<img width="238" alt="image"
src="https://github.com/zed-industries/zed/assets/50590465/e553673f-1c24-41d9-b1b9-1dbbb7419d1e">
This change just changes the color to match that of the one-light theme
present in vscode
~~old proposal:
https://github.com/zed-industries/zed/assets/50590465/b4dc4030-bcd8-429a-84b8-2744e213e492~~
new proposal:
<img width="378" alt="image"
src="https://github.com/zed-industries/zed/assets/50590465/41c53019-8cf3-4927-9879-47937388cde8">
This does have a side-effect of changing the modified color on the side
in the editor, but personally I think this change is negligable.
Release Notes:
- Fixed line wrap for CJK characters.
## Demo
https://github.com/zed-industries/zed/assets/5518/c6695bb4-b170-4ce0-9a84-c36b051de438

Fix issues: #4623 #11202
### Render case
```
## fr
Bien démarrer avec la documentation GitHub Découvrez comment commencer à créer, à livrer et à gérer des logiciels avec GitHub. Explorez nos produits, inscrivez-vous pour obtenir un compte et connectez-vous à la plus grande communauté de développement du monde.
## zh
GitHub 入门文档 了解如何开始构建、运输和维护具有 GitHub 的软件。 了解我们的产品,注册一个帐户,与世界上最大的发展社区建立联系。
## es
Documentación sobre la introducción a GitHub Aprende cómo comenzar a crear, enviar y mantener software con GitHub. Explora nuestros productos, regístrate para una cuenta y conéctate con la comunidad de desarrollo más grande del mundo.
## kr
GitHub 설명서 시작 GitHub를 사용하여 소프트웨어 빌드, 납품 및 유지 관리를 시작하는 방법을 알아봅니다. 제품을 탐색하고, 계정에 등록하고, 세계 최대의 개발 커뮤니티와 연결합니다.
## ja
GitHub の概要に関するドキュメント GitHub を使用してソフトウェアの構築、出荷、および保守を始める方法を学びます。 当社の製品を探索し、アカウントにサインアップして、世界最大の開発コミュニティと繋がりましょう。
## pt
Documentação de introdução ao GitHub Aprenda a começar a criar, enviar e manter um software com a GitHub. Explore nossos produtos, inscreva-se em uma conta e conecte-se com a maior comunidade de desenvolvimento do mundo.
## ru
Начало работы с документацией по GitHub Узнайте, как начать создание, доставку и обслуживание программного обеспечения с помощью GitHub. Изучите наши продукты, зарегистрируйте учетную запись и присоединитесь к крупнейшему в мире сообществу разработчиков.
```
Minor breadcrumb style updates
Before:

After:

Release Notes:
- N/A
Nate Butler
created
ee623f7
linux/x11: Restore differentiation of mouse/keyboard focus (#13995)
Click to expand commit body
This restores https://github.com/zed-industries/zed/pull/13943 which was
reverted in #13974 because it was possible to get in a state where focus
could not be restored on a window.
In this PR there's an additional change: `FocusIn` and `FocusOut` events
are always handled, even if the `event.mode` is not "NORMAL". In my
testing, `alt-tabbing` between windows didn't produce `FocusIn` and
`FocusOut` events when we had that check. Now, with the check removed,
it's possible to switch focus between two windows again with `alt-tab`.
Release Notes:
- N/A
---------
Co-authored-by: Conrad <conrad@zed.dev>
Co-authored-by: Conrad Irwin <conrad.irwin@gmail.com>
8a659af
gpui_macros: Enable `extra-traits` feature for `syn` (#14067)
Click to expand commit body
Must enable extra-traits of syn feature to enable Debug trait of
Visibility
Release Notes:
- N/A
---------
Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
sgj123456
and
Marshall Bowers
created
07dc405
Do not bind cmd-enter for repl::Run when in AssistantContext (#14066)
Click to expand commit body
Don't pollute cmd-enter in the Assistant's `ContextEditor`.
Release Notes:
- N/A
Kyle Kelley
created
896b9bd
Stick REPL icon in quick action bar (#14064)
Click to expand commit body
REPL Quick Actions
<img width="325" alt="image"
src="https://github.com/zed-industries/zed/assets/836375/faaf4c8f-ef12-4417-a9dd-158d5beae8ba">
When the Jupyter REPL is enabled and a kernel is available, show the
status in the editor bar:

Release Notes:
- N/A
---------
Co-authored-by: Nate Butler <iamnbutler@gmail.com>
The biggest hurdle turned out to be use of `Arc<Language>` in maps, as
`clippy::mutable_key_type` started triggering on it (due to - I suppose
- internal mutability on `HighlightMap`?). I switched over to using
`LanguageId` as the key type in some of the callsites, as that's what
`Language` uses anyways for it's hash/eq, though I've still had to
suppress the lint outside of language crate.
/cc @maxdeviant , le clippy guru.
Release Notes:
- N/A
Piotr Osiewicz
created
d4ddc4c
gpui: Fix `cx.bounds`, `cx.open_window` position on macOS (#14044)
Click to expand commit body
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

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">
Jason Lee
created
8944af7
Lay the groundwork for collaborating on assistant panel (#13991)
Click to expand commit body
This pull request introduces collaboration for the assistant panel by
turning `Context` into a CRDT. `ContextStore` is responsible for sending
and applying operations, as well as synchronizing missed changes while
the connection was lost.
Contexts are shared on a per-project basis, and only the host can share
them for now. Shared contexts can be accessed via the `History` tab in
the assistant panel.
<img width="1819" alt="image"
src="https://github.com/zed-industries/zed/assets/482957/c7ae46d2-cde3-4b03-b74a-6e9b1555c154">
Please note that this doesn't implement following yet, which is
scheduled for a subsequent pull request.
Release Notes:
- N/A
Antonio Scandurra
created
1662993
windows: Revert "windows: Fix font clipping issue" (#14045)
Click to expand commit body
The implemetation of that PR is totally wrong, sorry for that!
Release Notes:
- N/A
张小白
created
7ef64fe
vim: Add ctrl-m binding (equivalent to <CR>) (#14057)
Click to expand commit body
Now that we have macros I noticed how much I rely on this.
Release Notes:
- vim: `ctrl-m` now is equivalent to `enter` in editor.
e1a6efa
go: Quote targeting expression on runnables (#14055)
Click to expand commit body
Release Notes:
- Go: fix test runnables in fish shell.
Daniel Schmidt
created
ba7d5a3
Fixed keymap for toggling right dock in linux (#14041)
Click to expand commit body
Release Notes:
- N/A
Saurabh
created
6f99399
extensions: Add support for snippets provided by extensions (#14020)
Click to expand commit body
For now extensions can only register global snippets, but there'll be
follow-up work to support scope attribute in snippets.json.
Release Notes:
- Extensions can now provide snippets by including `snippets.json` file
next to the extension manifest.
---------
Co-authored-by: Marshall <marshall@zed.dev>
Co-authored-by: Marshall Bowers <elliott.codes@gmail.com>
Piotr Osiewicz
,
Marshall
, and
Marshall Bowers
created
2f2047a
outline_panel: Fix outline panel should autoscroll when selection has changed (#14038)
d01d764
gpui: Expose more granular style macros (#14035)
Click to expand commit body
This PR extract more GPUI style methods into macros that can be composed
together to selectively add styles to components.
Release Notes:
- N/A
Marshall Bowers
created
a46a562
ui: Add margin style methods to `Label` and `LabelLike` (#14032)
Click to expand commit body
This PR adds margin style methods to the `Label` and `LabelLike`
components.
This allows for callers to provide a margin to these components without
needing to introduce a wrapping `div` to do so.
Release Notes:
- N/A
Marshall Bowers
created
4bb8a08
Measure maximum width of each cell to render table (#14026)
Kyle Kelley
created
c4bca87
assistant: Replace margin with gap (#14027)
Click to expand commit body
This PR replaces a usage of margin with a gap. This allows us to remove
an extra wrapping `div`.
Release Notes:
- N/A