Piotr Osiewicz
aed11ee8cb
editor tests: Reintroduce block_on_ticks.
...
Co-authored-by: Antonio <antonio@zed.dev>
2023-12-01 17:22:12 +01:00
Julia
13f4cc563c
Merge branch 'main' into zed2-breadcrumbs
2023-12-01 11:02:34 -05:00
Antonio Scandurra
5fefc121bf
Add mouse context menu to editor2
...
Co-Authored-By: Piotr <piotr@zed.dev>
2023-12-01 16:01:56 +01:00
Antonio Scandurra
f0c205be5d
Respond to modifiers changed event in editor2 and set cursor
2023-12-01 14:26:49 +01:00
Antonio Scandurra
f0bc4a04bd
Uncomment git gutter painting
2023-12-01 13:45:14 +01:00
Antonio Scandurra
1abc876c15
Merge remote-tracking branch 'origin/main' into no-more-todos-in-editor
...
# Conflicts:
# crates/editor2/src/items.rs
2023-12-01 12:40:48 +01:00
Antonio Scandurra
8e4f2fb25a
Remove all todos in Editor's Item implementation
2023-12-01 12:32:30 +01:00
Antonio Scandurra
faa896343b
Register NewFile and NewFileInDirection from Editor
2023-12-01 12:11:54 +01:00
Antonio Scandurra
a8a5785ec5
Re-enable opening excerpts in Editor
2023-12-01 12:03:21 +01:00
Antonio Scandurra
c9be637b6b
Re-introduce auto-height in editor2
( #3471 )
...
Release Notes:
- N/A
2023-12-01 12:02:45 +01:00
Antonio Scandurra
0b7e324d86
🔥
2023-12-01 11:53:47 +01:00
Antonio Scandurra
8c59a2d2c0
Delete commented out code for editor element
2023-12-01 11:52:40 +01:00
Antonio Scandurra
21d3ae603d
Remove stray dbg statements
2023-12-01 11:49:25 +01:00
Antonio Scandurra
1b07fd6a70
Fix edits not being reported when rewrapping
2023-12-01 11:48:21 +01:00
Conrad Irwin
0441b4805a
Show cursor position in status bar ( #3464 )
...
Passes the compiler so it must work!
(though it doesn't show up until we fix pane focus)
Release Notes:
- N/A
2023-11-30 16:40:42 -07:00
Max Brunsfeld
c63ca09eed
Reintroduce pane navigation history in zed2
2023-11-30 12:10:25 -08:00
Conrad Irwin
75afb65b26
Show cursor position in status bar
2023-11-30 10:16:24 -07:00
Antonio Scandurra
0e1597d385
WIP
2023-11-30 18:00:41 +01:00
Julia
428c517693
Merge branch 'main' into zed2-breadcrumbs
2023-11-30 11:38:29 -05:00
Antonio Scandurra
d2c1897385
Fix error in tests
2023-11-30 11:45:10 +01:00
Max Brunsfeld
c95a7c7387
Address some TODOs in editor2 crate ( #3445 )
...
* Fix crash when jumping to definition
* Enabling resolution of completions
* Make links in interactive text clickable
* Enable code paths that use `select_anchors`
2023-11-29 16:32:02 -08:00
Marshall Bowers
b357ae4dc3
Add new Button
and IconButton
components ( #3448 )
...
This PR adds new `Button` and `IconButton` components built on top of
our new button abstractions.
Both of these buttons are built from the common `ButtonLike` base, and
implement the `ButtonCommon` (name TBD) trait in order to provide a
common interface.
There are still some visual tweaks that we'll need to make to the new
buttons, but those should be straightforward to make after we land this.
Release Notes:
- N/A
2023-11-29 17:41:44 -05:00
Max Brunsfeld
0b8f9067ff
Implement highlighting of go-to-definition links
2023-11-29 14:30:31 -08:00
Max Brunsfeld
9451bd605d
Implement completion-resolution in editor2
...
Enable the completion tests in editor2.
2023-11-29 14:20:47 -08:00
Max Brunsfeld
2bd428102b
Use pointer cursor style for clickable ranges in InteractiveText
2023-11-29 12:42:09 -08:00
Max Brunsfeld
fc2251e7ed
Implement SelectionsCollection::select_anchor_ranges
2023-11-29 12:41:22 -08:00
Nate Butler
3c05d57e6a
Style hover popover
2023-11-29 14:56:23 -05:00
Conrad Irwin
75891e83f3
Fix mouse events when element is occluded ( #3417 )
...
This commit adds a depth map to the frame so we can find the "top most"
opaque layer by stacking order for a given point.
This lets us determine whether the element being hovered was part of the
given layer in the previous frame, which fixes the hover issue.
Still to do:
* [ ] Fix up mouse events too (I tried this, but it's not working yet,
and I want to understand why)
Release Notes:
- N/A
2023-11-28 15:57:22 -07:00
Conrad Irwin
a761e6ca0e
More mouse occlusion work
2023-11-28 09:59:58 -07:00
Nate Butler
ca2052b0c1
Merge branch 'main' into completions-styles
2023-11-27 19:22:07 -05:00
Conrad Irwin
107c3d7f67
Fix esc in command palette
...
Also: add editor.register_action
2023-11-27 14:32:22 -07:00
Julia
d551b41aae
zed2: Mostly port breadcrumbs & improve StyledText
api
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-11-27 16:09:31 -05:00
Conrad Irwin
82f6f77117
Use editor's overlay implementation
2023-11-27 11:49:51 -07:00
Conrad Irwin
212d9254e1
Merge branch 'main' into completions-styles
2023-11-27 11:49:39 -07:00
Conrad Irwin
7a8aba329b
Break content mask for hoverables
2023-11-27 11:43:14 -07:00
Antonio Scandurra
3ea12ad0d7
Remove commented out code
2023-11-27 19:19:56 +01:00
Antonio Scandurra
fc4b621b32
Use element_hover instead of red
2023-11-27 19:16:06 +01:00
Antonio Scandurra
8c53f1b9c2
Uncomment hover popover tests
2023-11-27 19:14:58 +01:00
Antonio Scandurra
1e6214440d
Show diagnostic hover popover
2023-11-27 19:08:25 +01:00
Antonio Scandurra
a5951df21f
Start on hover popover
2023-11-27 18:56:37 +01:00
Nate Butler
8a35a02863
Checkpoint - try using overlay for completions popover
...
[no ci]
2023-11-27 11:22:19 -05:00
Nate Butler
1acc6b462f
Start on completions styles
2023-11-27 10:29:29 -05:00
Antonio Scandurra
3ba5dbb9e8
Prevent mousedown on docs from being propagated to the editor
2023-11-27 15:15:57 +01:00
Antonio Scandurra
eb647be685
Pass max height manually
2023-11-27 14:56:46 +01:00
Antonio Scandurra
0baa9a782b
Start on wiring up render_parsed_markdown
2023-11-24 17:28:59 +01:00
Antonio Scandurra
d31b53b912
Extract a gpui::combine_highlights
function
2023-11-24 16:31:38 +01:00
Antonio Scandurra
e5b6b0ee9e
WIP
2023-11-24 15:05:04 +01:00
Antonio Scandurra
19bfed165b
Show single-line docs in autocomplete and apply completion on mousedown
2023-11-24 13:22:25 +01:00
Antonio Scandurra
54357d6553
Syntax highlight completions
2023-11-24 13:10:56 +01:00
Antonio Scandurra
bf39968105
Return TextRun
s in combine_syntax_and_fuzzy_match_highlights
2023-11-24 13:00:20 +01:00
Antonio Scandurra
510320bb47
Introduce InteractiveText
( #3397 )
...
This new element will let us react to click events on arbitrary ranges
of some rendered text, e.g.:
```rs
InteractiveText::new(
"element-id",
StyledText::new("Hello world, how is it going?").with_runs(vec![
cx.text_style().to_run(6),
TextRun {
background_color: Some(green()),
..cx.text_style().to_run(5)
},
cx.text_style().to_run(18),
]),
)
.on_click(vec![2..4, 1..3, 7..9], |range_ix, cx| {
println!("Clicked range {range_ix}");
})
```
As part of this, I also added the ability to give text runs a background
color.
Release Notes:
- N/A
2023-11-23 19:35:03 +01:00
Antonio Scandurra
7eeb8078f6
Allow setting text background color via TextStyle
2023-11-23 19:22:18 +01:00
Kirill Bulatov
df7b89b6cb
Allow to include gitignored files into project search ( #3394 )
2023-11-23 19:28:11 +02:00
Antonio Scandurra
3b918bfee8
Merge branch 'main' into rename-element-traits
...
# Conflicts:
# crates/gpui2/src/elements/uniform_list.rs
# crates/ui2/src/components/context_menu.rs
# crates/ui2/src/components/list.rs
2023-11-23 12:47:46 +01:00
Kirill Bulatov
eee63835fb
Exclude more ignored/worktree-less/project-less buffers from inlay hint requests
2023-11-23 10:30:52 +02:00
Julia
37e3cc1291
zed2(ish) Cancel completion resolution when new list
2023-11-22 16:26:27 -05:00
Nathan Sobo
c23f17ee0b
Reorganize element-related traits
2023-11-22 11:19:43 -07:00
Antonio Scandurra
524f892fb0
Correctly swap position of context menu
2023-11-22 19:02:44 +01:00
Antonio Scandurra
8aaa46a1b6
Track scroll in editor's context menu
2023-11-22 17:58:00 +01:00
Antonio Scandurra
2b6e8de11f
Don't perform wrapping in completions
2023-11-22 14:23:09 +01:00
Antonio Scandurra
3a8e9b5697
Avoid holding borrow to editor while painting child elements
2023-11-22 11:40:38 +01:00
Antonio Scandurra
f2c63781f9
Merge branch 'main' into editor2-autocomplete
...
# Conflicts:
# crates/editor2/src/editor.rs
2023-11-21 17:43:09 +01:00
Nate Butler
453aa5ffd7
TextColor
-> Color
2023-11-21 01:05:29 -05:00
Piotr Osiewicz
54a3b56935
Merge remote-tracking branch 'origin/callback-handles' into search2
2023-11-21 00:40:20 +01:00
Mikayla
2c4d83c9af
WIP
...
co-authored-by: conrad <conrad@zed.dev>
co-authored-by: Nathan <nathan@zed.dev>
2023-11-20 14:46:01 -08:00
Piotr Osiewicz
d60855b06d
Merge branch 'main' into search2
2023-11-20 19:23:35 +01:00
Piotr Osiewicz
07cc5904f8
Merge branch 'main' into search2
2023-11-20 18:37:41 +01:00
Piotr Osiewicz
3d28495c67
fixup! Remove dbg statements
2023-11-20 18:35:39 +01:00
Piotr Osiewicz
c1f0ac30a0
Fix up tests once and for good
2023-11-20 18:24:37 +01:00
Conrad Irwin
f86480ba5d
Merge followup mess
2023-11-20 09:58:05 -07:00
Conrad Irwin
0798cfd58c
Merge branch 'main' into derive-element-redux
2023-11-20 09:15:38 -07:00
Joseph T. Lyons
8e612e4287
Restore commented-out code
2023-11-19 22:00:01 -05:00
Joseph T. Lyons
3abd376d6a
Add timestamp delta to telemetry events
2023-11-19 21:52:28 -05:00
Nathan Sobo
33cd6f520a
Clean compile with redesigned element traits
2023-11-18 21:51:47 -07:00
Nathan Sobo
0673606de8
WIP
2023-11-18 20:22:43 -07:00
Nathan Sobo
adc355a1e6
Element refinement passing on ui2
2023-11-18 20:05:47 -07:00
Nathan Sobo
2515bbf990
Move self in Element::paint
...
Remove mutable state borrows in favor of state ownership in render processes to streamline element rendering.
2023-11-17 23:32:55 -07:00
Nate Butler
d6f173866e
Use muted color for fold indicators
2023-11-18 01:02:40 -05:00
Julia
3655a96e54
Merge branch 'main' into unborked-git-zed2-diagnostics-view
2023-11-17 16:32:35 -05:00
Julia
c6d22af416
Get diagnostic2 tests building and running
2023-11-17 16:32:35 -05:00
Julia
a464a7da2a
Merge branch 'main' into unborked-git-zed2-diagnostics-view
2023-11-17 16:32:35 -05:00
Julia
f4eb219c75
Get diagnostics view almost building in the zed2 world
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-11-17 16:32:35 -05:00
Piotr Osiewicz
dca2dc7b6b
Merge branch 'main' into search2
2023-11-17 13:22:30 +01:00
Antonio Scandurra
27cd7b204d
Merge branch 'main' into editor2-autocomplete
2023-11-17 11:03:25 +01:00
Mikayla
1693718637
Merge branch 'main' into saving-2
2023-11-16 23:11:38 -08:00
Mikayla
9a3cd073c7
Restore a bunch of random workspace stuff
2023-11-16 23:05:28 -08:00
Nathan Sobo
2fb13cf1ca
Separate WrappedLines from ShapedLines ( #3350 )
...
ShapedLines are never wrapped, whereas WrappedLines are optionally
wrapped if they are associated with a wrap width. Originally, when
rewriting GPUI, I tried to combine everything because wrapping is
inherently optional for the Text element, but we have a bunch of APIs
that don't make sense on a line that may wrap, so we need a distinct
type for that case.
This is a precursor to implementing clickable links in markdown. I
noticed multiple places where we were confused about whether or not the
line was wrapped so this felt important.
Release Notes:
- N/A
2023-11-16 23:20:35 -07:00
Nathan Sobo
9558da8681
Separate WrappedLines from ShapedLines
...
ShapedLines are never wrapped, whereas WrappedLines are optionally wrapped if
they are associated with a wrap width. I tried to combine everything because
wrapping is inherently optional for the Text element, but we have a bunch of
APIs that don't make sense on a line that may wrap, so we need a distinct type
for that case.
2023-11-16 23:10:51 -07:00
Mikayla Maki
61bd6bab09
Actions‽ ( #3349 )
...
This PR re-implements our actions with macros instead of a blanket impl.
Release Notes:
- N/A
2023-11-16 18:18:04 -08:00
Mikayla
49d3e1cc4b
Add default derive
2023-11-16 17:39:05 -08:00
Mikayla
4de2c0f7ef
Re-implement actions as derive macros instead of blanket impls
2023-11-16 17:32:02 -08:00
Nate Butler
a526f23c81
Add ui_font settings and set default rem size accordingly ( #3346 )
...
[[PR Description]]
- Adds ui_font_family, ui_font_features, ui_font_size to settings and
default settings
- Use the new ui font settings to set the rem size when the workspace is
created.
Release Notes:
- N/A
2023-11-16 15:40:33 -05:00
Marshall Bowers
b559bfd80f
Parameterize theme2::init
to allow loading just the base theme ( #3345 )
...
This PR adds a parameter to the `theme2::init` method to indicate what
the theme-loading behavior should be.
This allows us to indicate when we want to load all of the additional
built-in user themes (like in the Zed binary and in the storybook), and
when we don't want to load the user themes (like in tests).
We're using an enum over just a `bool` here for clarity at the call
site.
Release Notes:
- N/A
2023-11-16 13:03:30 -05:00
Nate Butler
38d0fdc09a
Remove todo
...
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-16 11:42:23 -05:00
Nate Butler
c71e522b4e
Allow users to set UI font properties in their settings
...
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-16 11:37:46 -05:00
Piotr Osiewicz
6b6a30c3da
Merge branch 'main' into search2
2023-11-16 17:16:15 +01:00
Antonio Scandurra
c08ce1c3b8
Start rendering autocompletion menu
2023-11-16 14:55:06 +01:00
Kirill Bulatov
fd61683c46
WIP
2023-11-16 10:40:02 +02:00
Mikayla
9da0b78ead
Merge branch 'main' into tabs-n-splits
2023-11-15 23:41:25 -08:00
Conrad Irwin
8c14a8fa95
Merge branch 'main' into collab_ui2
2023-11-15 21:04:47 -07:00