Commit Graph

12651 Commits

Author SHA1 Message Date
Max Brunsfeld
8a96562adf Handle contexts correctly for disabled key bindings 2024-01-05 13:06:59 -08:00
Julia
a86f401a7c
Moar terminal bugs de2ified (#3894)
Release Notes:

- N/A
2024-01-04 18:40:55 -05:00
Max Brunsfeld
1d09c9ad41
Fix accidental load of default keymap *after* loading user keymap (#3901) 2024-01-04 15:37:04 -08:00
Max Brunsfeld
c29a7f28b1
Fix terminal selection when cursor leaves terminal bounds (#3898)
Previously, terminal mouse selection didn't work when the cursor moved
outside the bounds of the terminal, which made it difficult to select
large amounts of text in the terminal.
2024-01-04 15:32:53 -08:00
Max Brunsfeld
ad20bc39c5 Fix accidental load of default keymap *after* loading user keymap
Co-authored-by: Mikayla <mikayla@zed.dev>
Co-authored-by: Marshall <marshall@zed.dev>
2024-01-04 15:31:00 -08:00
Piotr Osiewicz
783256c80e Move Registrar implementation for Workspace to outer scope.
This fixes various actions like "Activate regex mode" that were dispatched onto main pane instead of assistant search bar.
2024-01-05 00:10:23 +01:00
Piotr Osiewicz
b6655def70 Add DivRegistrar to reduce code duplication 2024-01-05 00:10:23 +01:00
Piotr Osiewicz
9cdcdbea41 Use Registrar in Assistant Panel.
This fixes various actions like "Activate regex mode" that were dispatched onto main pane instead of assistant search bar.
2024-01-05 00:10:23 +01:00
Piotr Osiewicz
5ad125a9e9 Touchups to registrar API 2024-01-05 00:10:23 +01:00
Piotr Osiewicz
f70eddc988 Explore registrar-based API for search bar.
This commit adds a Registrar trait for use by search crate. Registrar can register actions on some target and search can utilize that trait to opaquely add actions on that target.
Notably, search is now opt-in (it always was in zed2 actually). Having editor doesn't make it searchable straight out of the gate. You might have to call BufferSearchBar::new a bunch more.
2024-01-05 00:10:23 +01:00
Piotr Osiewicz
cd0b15e23d fixup! terminal/search: Partially fix search in terminal. There are two issues with search in terminal as is: - terminal's pane is not registered as a "legit" pane, so we dispatch buffer search bar::Deploy on the most recent "legit" pane. By legit I mean that workspace::active_pane will *never* return terminal pane as active. - We've had the implementation of as_searchable commented out. Duh! 2024-01-05 00:10:23 +01:00
Piotr Osiewicz
b3d8b23139 terminal/search: Partially fix search in terminal.
There are two issues with search in terminal as is:
- terminal's pane is not registered as a "legit" pane, so we dispatch buffer search bar::Deploy on the most recent "legit" pane. By legit I mean that
  workspace::active_pane will *never* return terminal pane as active.
- We've had the implementation of as_searchable commented out. Duh!

This commit fixes second issue. That means that if you drag the terminal over to the main editor pane (so that it's in a "legit" pane), it'll work. 1st issue still stands though.
2024-01-05 00:10:23 +01:00
Marshall Bowers
3f06a05060
Iterate on collab panel filter input style (#3900)
This PR takes another pass at the collab panel filter input to improve
its styling.

Release Notes:

- Improved the look of the filter input in the collab panel.
2024-01-04 18:08:28 -05:00
Max Brunsfeld
ba13540c77 Fix inconsistent selection start when dragging outside of terminal bounds
Co-authored-by: Mikayla <mikayla@zed.dev>
2024-01-04 15:05:39 -08:00
Max Brunsfeld
61db60b3e2 Fix incorrect placement of terminal selection when dragging
Co-authored-by: Mikayla <mikayla@zed.dev>
2024-01-04 14:55:45 -08:00
Joseph T. Lyons
269b665618 Remove outdated TODO 2024-01-04 17:32:00 -05:00
Joseph T. Lyons
a8efb41e56 Remove outdated TODOs 2024-01-04 17:28:07 -05:00
Marshall Bowers
47476faef1
Fix label color for inactive tabs (#3899)
This PR fixes an issue where certain tabs were not using the correct
color for their labels when they were inactive.

Release Notes:

- Fixed an issue where some inactive tabs were not using the correct
label color.
2024-01-04 17:25:11 -05:00
Marshall Bowers
32cd4d778a
Render an empty placeholder when not showing file icons in the project panel (#3897)
This PR makes it so when we're not showing file icons in the project
panel we render an empty placeholder instead of nothing.

This prevents the indentation of the items in the file tree from
changing based on the presence of the icon.

Release Notes:

- Fixed layout shift when `project_panel.file_icons` is set to `false`.
2024-01-04 17:10:08 -05:00
Max Brunsfeld
0c4e2ef419 Fix terminal selection when cursor leaves terminal bounds 2024-01-04 14:08:18 -08:00
Max Brunsfeld
5e3d4885bf
Fix some bugs in keymap handling (#3895)
- `base_keymap` setting was not respected, now it is
- without a `~/.config/zed/keymap.json` file, we would fail to load the
*default* keymap

Co-authored-by: Marshall <marshall@zed.dev>
2024-01-04 16:04:17 -05:00
Julia
bf8f3e3d68 Unbork test relying on old keystroke behavior
Previously it would both send the keydown *and then* the action, now
it send the action, and then because there was an action, does not send
the keydown

Co-Authored-By: Conrad Irwin <conrad@zed.dev>
2024-01-04 15:07:46 -05:00
Marshall Bowers
2da314fb79
Fix font resolution for UI text so we render with the fallback font (#3893)
This PR updates the font resolution for shaped text to use the new
`resolve_font` method on the text system.

This makes it so we use the fallback font if the desired font cannot be
found rather than rendering nothing.

Release Notes:

- Fixed an issue where nothing would render when the font set in
`ui_font_family` was not found.
2024-01-04 14:26:08 -05:00
Marshall Bowers
e4aa7ba4f2
Try to load fallback fonts instead of panicking when a font is not found (#3891)
This PR adjusts our font resolution code to attempt to use a fallback
font if the specified font cannot be found.

Right now our fallback font stack is `Zed Mono`, followed by `Helvetica`
(in practice we should always be able to resolve `Zed Mono` since we
bundle it with the app).

In the future we'll want to surface the ability to set the fallback font
stack from GPUI consumers, and potentially even support specifying font
stacks in the user settings (as opposed to a single font family).

Release Notes:

- Fixed a panic when trying to load a font that could not be found.
2024-01-04 14:10:46 -05:00
Julia
09b32e6a0e Attempt to run keystroke actions before attempting key listeners 2024-01-04 14:01:01 -05:00
Piotr Osiewicz
3d1023ef52 lsp: Do not cache initialization options 2024-01-04 19:54:58 +01:00
Max Brunsfeld
c209712b32
Fix version comparison in auto update (#3889) 2024-01-04 10:01:07 -08:00
Max Brunsfeld
90fc1ebaf6 Fix version comparison in auto update
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2024-01-04 09:53:57 -08:00
Julia
d79b8e4b98 Fix SendText/SendKeystroke having the wrong context name in terminal
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2024-01-04 12:35:51 -05:00
Conrad Irwin
4e1b9873b4
Implement "open in terminal" (#3888) 2024-01-04 10:35:17 -07:00
Antonio Scandurra
8d07246f7d
Prevent scrolling editor and resizing panels at the same time (#3887)
Release Notes:

- Fixed a bug that would cause Zed to never stop resizing panels when
the drag handle overlapped with an editor scrollbar.
2024-01-04 18:06:22 +01:00
Conrad Irwin
4e310b99aa Implement "open in terminal" 2024-01-04 09:45:39 -07:00
Antonio Scandurra
6f4a08ba5a Prevent scrolling editor and resizing panels at the same time
This fixes a bug that would cause Zed to never stop resizing
panels when the drag handle overlapped with an editor scrollbar.

Co-Authored-By: Marshall <marshall@zed.dev>
2024-01-04 17:25:02 +01:00
Julia
a7550de8c5 Show pointer hand on tab & give last tab border right 2024-01-04 11:08:56 -05:00
Antonio Scandurra
7f62a17276
Re-enable key bindings for AssistantPanel (#3885)
Release Notes:

- Fixed a bug that caused `cmd-g` and `cmd-shift-g` to not work anymore
in the assistant panel.
2024-01-04 16:42:07 +01:00
Antonio Scandurra
5a1509ef26 Re-enable key bindings for AssistantPanel 2024-01-04 16:37:13 +01:00
Antonio Scandurra
f14149503d
Fix border rendering (#3884)
After implementing it a while ago, our previous interpolation scheme
didn't really make sense to me and was causing borders to be rendered
incorrectly. We don't really draw backgrounds and borders as part of the
same draw call anymore, but it seemed reasonable to have a correct
implementation in the shader anyway.

This commit uses Porter-Duff compositing (i.e., `over`) to produce a
color that is the result of superimposing the border on top of the
background. Then, we linearly interpolate towards the background color
as we slide out of the border and into the background.

Release Notes:

- Fixed incorrect rendering of borders.
2024-01-04 16:35:09 +01:00
Antonio Scandurra
3ab2062614 Fix border rendering
After implementing it a while ago, our previous interpolation scheme
didn't really make sense to me and was causing borders to be rendered
incorrectly. We don't really draw backgrounds and borders as part of
the same draw call anymore, but it seemed reasonable to have a correct
implementation in the shader anyway.

This commit uses Porter-Duff compositing (i.e., `over`) to produce
a color that is the result of superimposing the border on top of the
background. Then, we linearly interpolate towards the background color
as we slide out of the border and into the background.
2024-01-04 16:27:20 +01:00
Antonio Scandurra
e5156d1f85
Clip List items that partially overflow (#3882)
Release Notes:

- Fixed a visual bug that caused channels to overlap with the filter
input.
2024-01-04 15:21:41 +01:00
Antonio Scandurra
b78497bf54 Clip List items that partially overflow 2024-01-04 15:12:25 +01:00
Antonio Scandurra
8ad741817e
Fix quitting Zed when project was unshared (#3881)
Release Notes:

- Fixed a bug that would disable `cmd-q` after a remote project was
unshared.
2024-01-04 15:12:25 +01:00
Antonio Scandurra
f6af7ab27c Fix quitting Zed when project was unshared 2024-01-04 15:00:36 +01:00
Antonio Scandurra
f4290c9805
Show scrollbar even when buffer search highlights are outside viewport (#3880)
Release Notes:

- Fixed a bug that prevented scrollbars from being shown when search
matches were outside the viewport.
2024-01-04 12:45:55 +01:00
Antonio Scandurra
f0afa3f9e3 Show scrollbar even when buffer search highlights are outside viewport 2024-01-04 12:39:15 +01:00
Piotr Osiewicz
5a43cbacbe channels: Move name of the channel to the same line as the hash icon. 2024-01-04 12:11:23 +01:00
Joseph T. Lyons
2972ee8ced Move telemetry settings check into telemetry module 2024-01-04 01:13:21 -05:00
Nate Butler
c76fcb3ca5
UI grab bag (#3875)
- Tidy up some ui crate docs
- Update "checking" diagnostic color + add icon
- Make scrollbar track transparent in all themes
- Update border variant color in all themes
- Use theme colors for muted/speaking indicators

Release Notes:

- N/A
2024-01-03 23:26:02 -05:00
Nate Butler
77647fa088 Use theme colors for muted/speaking indicators 2024-01-03 23:19:47 -05:00
Nate Butler
20a897d511 Update border variant color 2024-01-03 23:13:26 -05:00
Nate Butler
d643d99943 Make scrollbar track transparent 2024-01-03 23:09:24 -05:00