Commit Graph
11205 Commits
Author SHA1 Message Date
Conrad Irwin fd165206bf gpui2: Notifications (#3407)
Release Notes:

- N/A
2023-11-27 09:22:31 -07:00
Kirill Bulatov cd4ea344a6 Slightly less errors in terminal_element2 2023-11-27 16:55:48 +02:00
Nate Butler 56d3d663a5 UI progress (#3405)
[[PR Description]]

- Start outlining unfinished elements in `gpui::red()`
- Update tabs so they don't jump when activated
- Mock out a number of ui elements we haven't started yet.

Release Notes:

- N/A
2023-11-27 09:25:52 -05:00
Antonio Scandurra 0d1d01687b Finish autocomplete (#3404)
![image](https://github.com/zed-industries/zed/assets/482957/f1f40bec-4e8b-457b-8801-ce10ecb6fc80)


TODO:

- [x] Respect max height imposed by editor element
- [x] Ensure mouse down event handler in `EditorElement` doesn't prevent
links from being clicked

Release Notes:

- N/A
2023-11-27 15:24:59 +01:00
Antonio Scandurra 3ba5dbb9e8 Prevent mousedown on docs from being propagated to the editor 2023-11-27 15:15:57 +01:00
Nate Butler c40ab3c3da Update theme2.rs 2023-11-27 09:11:51 -05:00
Antonio Scandurra eb647be685 Pass max height manually 2023-11-27 14:56:46 +01:00
Conrad Irwin 039c933d8e gpui2: Notifications 2023-11-26 22:28:53 -07:00
Nate Butler 2e61a84bd6 Update tab borders 2023-11-24 16:57:50 -05:00
Nate Butler 48a9f2be4c Update one theme colors 2023-11-24 16:57:35 -05:00
Antonio Scandurra 682712f132 Account for previous line lengths when returning index 2023-11-24 18:32:48 +01:00
Antonio Scandurra 047cfe5108 Fix painting when underlines and quads appeared after a wrap boundary 2023-11-24 18:23:08 +01:00
Antonio Scandurra f227c3284d Consume newline from run if it spans it 2023-11-24 17:53:48 +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
Nate Butler d965ddba27 Start debugging tab borders 2023-11-24 09:33:44 -05:00
Nate Butler 6a3925c3e1 Add copilot icons 2023-11-24 09:22:31 -05:00
Nate Butler 31565a810d Outline statusbar items 2023-11-24 09:16:19 -05:00
Antonio Scandurra e5b6b0ee9e WIP 2023-11-24 15:05:04 +01:00
Nate Butler 3c46e81533 More outlines 2023-11-24 09:03:14 -05:00
Nate Butler 7e61d340ce Outline some unfinished elements 2023-11-24 08:58:49 -05: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 TextRuns in combine_syntax_and_fuzzy_match_highlights 2023-11-24 13:00:20 +01:00
Kirill Bulatov e19860d3b0 Avoid binary target name conflicts 2023-11-24 13:29:01 +02:00
Kirill Bulatov 879a069b35 Port to gpui2 2023-11-24 13:05:53 +02:00
Kirill Bulatov 31a4acf98a Fix collab tests 2023-11-24 12:56:58 +02:00
Kirill Bulatov 95a413847a Properly ignore FS events of excluded files 2023-11-24 11:59:13 +02:00
Kirill Bulatov 4a060db801 Add a test 2023-11-24 11:59:13 +02:00
Joseph T. Lyons 18d3b1c397 Add app close events 2023-11-23 21:14:59 -05: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
Antonio Scandurra 1ad22231d2 Allow providing a background color in a TextRun 2023-11-23 18:55:16 +01:00
Kirill Bulatov df7b89b6cb Allow to include gitignored files into project search (#3394) 2023-11-23 19:28:11 +02:00
Antonio Scandurra 56d043f671 Allow finding which ranges were clicked on an InteractiveText 2023-11-23 18:08:49 +01: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 cee6fd8dd3 Port to gpui2 2023-11-23 10:44:05 +02:00
Kirill Bulatov eee63835fb Exclude more ignored/worktree-less/project-less buffers from inlay hint requests 2023-11-23 10:30:52 +02:00
Kirill Bulatov c2751c717e Parallelize ignored entries for search lookup 2023-11-23 09:53:00 +02:00
Joseph T. Lyons f33c0e80a6 Add app events (#3372)
Adds app events (`first open` and `open`). For the time being, I'm
abandonding trying to add `close`, after running into many issues
trying. The code is in place for me to continue on that work, but at the
moment, we require having the telemetry settings in hand when calling
any of the methods that log an event, so we can honor the user's
preference for sending telemetry or not, but when running the
`on_app_close` method, to send off an app `close` event, the settings
are no longer available (probably the order of teardown?), which causes
some tests to end up failing. I'm not sure how to solve this. Maybe we
keep the settings on the telemetry struct and update it each time any
event is logged, then, on app shutdown, when logging the app `close`
event, we can use the stored version (idk).

Release Notes:

- N/A
2023-11-22 23:16:28 -05:00
Joseph T. Lyons 35f35dd476 Remove unused import 2023-11-22 23:03:11 -05:00
Joseph T. Lyons 575ab81409 Disable app close event 2023-11-22 23:01:31 -05:00
Joseph T. Lyons a876b6f700 Remove comments 2023-11-22 23:01:18 -05:00
Julia 88af458f62 zed2(ish) Cancel completion resolution when new list (#3391)
Release Notes:

- N/A
2023-11-22 18:44:34 -05:00
Mikayla 6e84d8fbc0 Merge branch 'main' into panic-hunting 2023-11-22 13:47:17 -08:00
Mikayla eb74ad7caa Fix failing test 2023-11-22 13:41:48 -08:00
Piotr Osiewicz 6da57cbc6e Decouple workspace from call (#3380)
This PR decouples `call2` from `workspace2` in order to improve our
compile times.
Why pick such a small, innocent crate as `call`? It depends on
`live_kit_client`, which is not-so-innocent and is in fact stalling our
clean builds.
In this PR, `call2` depends on `workspace2`; workspace crate defines a
`CallHandler` trait for which the implementation resides in `call`; it
it then all tied together in `zed`, which passes a factory of `Box<dyn
CallHandler>` into workspace's `AppState`.
Clean debug build before this change: ~1m45s
Clean debug build after this change: ~1m25s

Clean release build before this change: ~6m30s
Clean release build after this change: ~4m30s

~Gonna follow up with release timings where I expect the change to be
more impactful (as this allows 2/3 of the infamous trio of
"project-workspace-editor" long pole to proceed quicker, without being
blocked on live-kit-client build script)~.
This should have little effect (if any) in incremental scenarios, where
live_kit_client is already built.
[release
timings.zip](https://github.com/zed-industries/zed/files/13431121/release.timings.zip)

Release Notes:
- N/A
2023-11-22 22:31:47 +01:00
Julia 37e3cc1291 zed2(ish) Cancel completion resolution when new list 2023-11-22 16:26:27 -05:00
Joseph T. Lyons 0def2bc0d2 Remove dbg 2023-11-22 16:26:15 -05:00
Joseph T. Lyons ee2b6834bd Revert "Convert telemetry into a model"
This reverts commit 6e4268a471.
2023-11-22 16:16:44 -05:00