Commit graph

327 commits

Author SHA1 Message Date
Piotr Osiewicz
390ecb5b0c Merge branch 'main' into collab_ui-zed2 2023-11-23 15:02:55 +01:00
Piotr Osiewicz
c191943849 Add basic call/user UI in top-right corner.
Allow ui::Avatar to take custom data instead of always relying on URI resolution
2023-11-23 15:00:13 +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
Mikayla
6e84d8fbc0
Merge branch 'main' into panic-hunting 2023-11-22 13:47:17 -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
Piotr Osiewicz
fa74c49dbb Add dummy call handler for tests 2023-11-22 19:23:58 +01:00
Nathan Sobo
c23f17ee0b Reorganize element-related traits 2023-11-22 11:19:43 -07:00
Marshall Bowers
031fca4105 Simplify ContextMenu by not storing list components 2023-11-22 12:41:29 -05:00
Mikayla
469b05684f
Fix a few identity mixups in GPUI
co-authored-by: nathan <nathan@zed.dev>
2023-11-21 17:12:32 -08:00
Piotr Osiewicz
7e7a778d11 Move CallFactory into AppState
Fix crash caused by double borrow of window handle
2023-11-21 22:04:02 +01:00
Piotr Osiewicz
abe5a9c85f Finish up decoupling workspace from call 2023-11-21 20:51:53 +01:00
Piotr Osiewicz
ebccdb64bc Move CallHandler impl into call2 2023-11-21 20:18:35 +01:00
Piotr Osiewicz
170291ff96 Start decoupling workspace and call crates 2023-11-21 19:57:24 +01:00
Nate Butler
bec61123fd Update toolbar.rs 2023-11-21 11:06:27 -05:00
Nate Butler
453aa5ffd7 TextColor -> Color 2023-11-21 01:05:29 -05:00
Piotr Osiewicz
3e329861f9 Brave new world awaits
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-11-21 00:47:47 +01:00
Piotr Osiewicz
54a3b56935 Merge remote-tracking branch 'origin/callback-handles' into search2 2023-11-21 00:40:20 +01:00
Conrad Irwin
8049ec674e Fix last thing 2023-11-20 16:35:56 -07: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
3ddfc7ff61 Remove unused import 2023-11-20 18:44:51 +01:00
Piotr Osiewicz
07cc5904f8 Merge branch 'main' into search2 2023-11-20 18:37:41 +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
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
Mikayla Maki
30b7da0e4a
N/t6 (#3360)
[[PR Description]]

- Fix broken pane group spacing
- Work on diagnostics styling (still wip)

Release Notes:

- N/A
2023-11-17 23:29:18 -08:00
Mikayla
55dbcf2039
Remove unused imports 2023-11-17 23:14:14 -08:00
Nate Butler
f9804feefa Remove flex_1 from bottom dock to fix pane group spacing 2023-11-18 02:06:51 -05:00
Mikayla Maki
e1285b9780
Add nightly release channel for zed2 (#3355)
Release Notes:

- N/A
2023-11-17 22:12:18 -08:00
Nate Butler
101fe7fbb5 Update diagnostic status bar tool 2023-11-18 00:54:01 -05:00
Mikayla
dd283b471a
Add autoupdate2
co-authoredby: max@zed.dev
2023-11-17 15:48:32 -08:00
Julia
189ddf9380 Merge branch 'main' into unborked-git-zed2-diagnostics-view 2023-11-17 16:43:29 -05:00
Julia
3655a96e54 Merge branch 'main' into unborked-git-zed2-diagnostics-view 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
Conrad Irwin
624bd0a05a
Collab ui2 (#3357)
* Clickable context menus & movable panels – what will they think of
next?!

Release Notes:

- N/A
2023-11-17 13:33:18 -07:00
Conrad Irwin
ceb20dea96 Refactorings 2023-11-17 13:23:12 -07:00
Conrad Irwin
eb04160d2d Dock menu 2023-11-17 12:14:06 -07:00
Piotr Osiewicz
dca2dc7b6b Merge branch 'main' into search2 2023-11-17 13:22:30 +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
Conrad Irwin
2d1d75f482 +ManagedView
And some games with rust traits
2023-11-16 23:02:10 -07:00
Conrad Irwin
6d4276ea5f Merge branch 'main' into collab_ui2 2023-11-16 22:08:42 -07:00
Conrad Irwin
c0ad15756c More attachment configuration for context menus 2023-11-16 21:59:23 -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
4de2c0f7ef
Re-implement actions as derive macros instead of blanket impls 2023-11-16 17:32:02 -08:00
Conrad Irwin
074a221e0f Progress on ContextMenu 2023-11-16 16:59:27 -07:00
Nate Butler
3223e21d9f Add dock borders 2023-11-16 16:17:17 -05: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
Conrad Irwin
267e07472d Checkpoint, MenuHandle can open one 2023-11-16 13:32:19 -07:00
Nate Butler
fa9f4a9355 Init rem_size in the workspace at the start of the render
Co-Authored-By: Mikayla Maki <mikayla.c.maki@gmail.com>
2023-11-16 13:43:36 -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
Conrad Irwin
4540f04dbe Add more detail to panel switcher interaction 2023-11-16 09:57:59 -07:00
Piotr Osiewicz
6b6a30c3da Merge branch 'main' into search2 2023-11-16 17:16:15 +01:00
Kirill Bulatov
fd61683c46 WIP 2023-11-16 10:40:02 +02:00
Kirill Bulatov
a238368296 More compilation fixes 2023-11-16 10:04:18 +02:00
Mikayla
9da0b78ead
Merge branch 'main' into tabs-n-splits 2023-11-15 23:41:25 -08:00
Mikayla
c70c0f9ae9
Remove initialize_workspace 2023-11-15 23:11:31 -08:00
Conrad Irwin
0a9fb3978b Enable panel switching 2023-11-15 21:01:00 -07:00
Mikayla
78cea69172
Add focusable view and restore workspace deserialization. Partially restore split and tab functions 2023-11-15 16:36:43 -08:00
Mikayla
e905ababcd
Add back splitting 2023-11-15 15:21:19 -08:00
Conrad Irwin
793fa6e3a4 Move placeholder titlebar render to collab_ui 2023-11-15 16:09:21 -07:00
Mikayla
faf93aed4e
checkpoint 2023-11-15 14:17:04 -08:00
Conrad Irwin
cebc8428c8 FileFinder tests 2023-11-15 13:16:28 -07:00
Piotr Osiewicz
b11bfa8821 Merge branch 'main' into search2 2023-11-15 12:54:26 +01:00
Mikayla
7f72df6dcf
Merge branch 'main' into element-types 2023-11-14 15:49:10 -08:00
Mikayla Maki
df64a3c701
Not working yet file-finder2 (#3321)
Porting file_finder

Release Notes:

- N/A
2023-11-14 15:22:59 -08:00
Conrad Irwin
1109cd11c8 Abandon ship 2023-11-14 16:17:24 -07:00
Mikayla
6b25841e2a
WIP 2023-11-14 14:48:34 -08:00
Nate Butler
008655b879 Set Pane Size 2023-11-14 16:47:52 -05:00
Conrad Irwin
3b01a032ba In the middle of stuff 2023-11-14 14:38:23 -07:00
Conrad Irwin
80b7f75d24 Merge branch 'main' into file_finder 2023-11-14 13:34:25 -07:00
Conrad Irwin
3a4c5aa440 Implement FileFinder 2023-11-14 13:34:14 -07:00
Conrad Irwin
37d0b8424c Merge branch 'main' into element-types 2023-11-14 12:10:26 -07:00
Marshall Bowers
5c8db996ee
Extend Label & Tooltip (#3322)
This PR extends the `Label` component with additional functionality,
partially for use in the `TextTooltip` component.

- [x] `Label` should take a `size` (`Default` & `Small` for now)
  - These should use `text_ui` and `text_ui_sm`
- [x] Fold `LabelColor` and `IconColor` into one enum
  - `TextColor`
- [x] `TextTooltip`'s keybinding field should take whatever we use for
keybindings instead of a string, and render the keybinding component
- [x] `TextTooltip` should use small `Label`s

Release Notes:

- N/A
2023-11-14 13:56:05 -05:00
Marshall Bowers
76c15229c1 Combine LabelColor and IconColor into TextColor 2023-11-14 13:48:01 -05:00
Conrad Irwin
5dda105182 Merge branch 'main' into element-types 2023-11-14 11:45:19 -07:00
Marshall Bowers
90d7033fd0 Pass KeyBindings to TextTooltips 2023-11-14 13:36:03 -05:00
Marshall Bowers
aa1471948f Merge branch 'main' into extend-label-and-tooltip 2023-11-14 13:14:10 -05:00
Mikayla
caa0bae04f
Merge branch 'main' into core-actions 2023-11-14 10:11:39 -08:00
Nate Butler
251b4640c6 Extend tooltip to take meta + kb 2023-11-14 12:59:53 -05:00
Max Brunsfeld
c7d80c7aac
Start work on creating gpui2 version of project panel (#3299)
I'm gonna land what I have, even though some features aren't ported yet,
since we're working on all of this code so actively.

* [x] get the basic structure compiling
* [x] get the panel laying out correctly
* [ ] rename / new file editor
* [ ] enable the tests
* [ ] drag and drop
* [ ] context menu
2023-11-14 09:56:46 -08:00
Max Brunsfeld
b893ac2a02 Merge branch 'main' into project-panel2 2023-11-14 09:33:48 -08:00
Piotr Osiewicz
c14efb74d7 Finish up touchups for search UI.
Co-authored-by: Nate <nate@zed.dev>
2023-11-14 18:18:52 +01:00
Piotr Osiewicz
08dde94299 WIP styling
Co-authored-by: Nate <nate@zed.dev>
2023-11-14 17:59:53 +01:00
Conrad Irwin
7d94d8940c Not working yet file-finder2 2023-11-14 09:28:18 -07:00
Antonio Scandurra
40c634e056 Merge remote-tracking branch 'origin/main' into editor2-blocks 2023-11-14 17:16:58 +01:00
Piotr Osiewicz
6c69e40e5c WIP 2023-11-14 16:56:31 +01:00
Antonio Scandurra
d855e91e43 Honor cmd-w to close active item
Co-Authored-By: Julia <julia@zed.dev>
2023-11-14 16:38:20 +01:00
Nate Butler
6b366c102e
Allow a button to take a color (#3315)
[[PR Description]]
- Allows a button to take a color and resolve it into `IconColor` and
`LabelColor`
- Extend `IconColor` and `LabelColor` to allow them to take a
`Player(i)`
- `impl From<LabelColor> for IconColor`

Release Notes:

- N/A
2023-11-14 10:36:52 -05:00
Nathan Sobo
6abaacc457 Fix formatting 2023-11-14 01:58:10 -07:00
Nathan Sobo
364e3e7de5 Merge remote-tracking branch 'origin/main' into element-types 2023-11-14 01:55:58 -07:00
Nathan Sobo
c6e8a097a3 Rename back to div 2023-11-14 01:41:55 -07:00
Nathan Sobo
80014a28ea No compile errors or warnings 2023-11-14 01:23:09 -07:00
Nathan Sobo
27fb381cca Checkpoint 2023-11-14 01:15:48 -07:00
Mikayla
ee4957dd47
Implement most core actions 2023-11-14 00:06:33 -08:00
Mikayla
ec16e70336
Sketch in core zed actions code 2023-11-13 22:13:07 -08:00
Conrad Irwin
ad017a5df5 Allow clicking on commands in the command palette 2023-11-13 21:42:27 -07:00
Nate Butler
38888696db Allow a button to take a color 2023-11-13 19:46:15 -05:00
Mikayla
7d1593b90c
Merge branch 'main' into editor-tests 2023-11-13 15:53:22 -08:00
Mikayla
a4e9fea133
WIP
co-authored-by: conrad <conrad.irwin@zed.dev>
2023-11-13 15:53:04 -08:00
Marshall Bowers
92f2e8eb34 Combine related conditions 2023-11-13 18:22:04 -05:00
Marshall Bowers
53117eb5e5 Merge branch 'main' into one-themes 2023-11-13 18:16:45 -05:00
Nate Butler
701f954448 Start refining tab 2023-11-13 17:51:58 -05:00
Max Brunsfeld
2eedd2ad03 Merge branch 'main' into project-panel2 2023-11-13 13:39:13 -08:00
Conrad Irwin
f464d69ff8 Merge branch 'main' into dispatch-tree 2023-11-13 13:21:57 -07:00
Mikayla
0e3fd92bd0
Get editor tests compiling 2023-11-13 12:10:14 -08:00
Piotr Osiewicz
dfd68d4cb8 WIP: start search2 2023-11-13 20:38:37 +01:00
Max Brunsfeld
1968becf94 Merge branch 'main' into project-panel2 2023-11-13 11:26:51 -08:00
Max Brunsfeld
13dd912817 Get left, right, and bottom docks rendering in the right places in the workspace
Co-authored-by: Julia <julia@zed.dev>
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-13 10:47:15 -08:00
Antonio Scandurra
44534b926d Register actions on the right div 2023-11-13 15:21:47 +01:00
Kirill Bulatov
a9c17e7407 Uncomment all inlay hint cache code and tests 2023-11-13 14:07:48 +02:00
Mikayla
13255ef133
Poke at getting the project panel showing up 2023-11-12 23:22:02 -08:00
Nathan Sobo
7eaba8fabc WIP 2023-11-10 14:47:45 -07:00
Nathan Sobo
74a0d9316a Add a DispatchTree which will replace the existing key dispatch strategy
Instead of freezing a stack, we will record the entire dispatch tree so we can
change focus.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-11-10 11:56:14 -07:00
Conrad Irwin
cc9fb9dea0 Fix panic caused by focusing the same thing twice 2023-11-09 22:25:46 -07:00
Conrad Irwin
5a711886d4 Refactor to make ModalLayer a View 2023-11-09 22:15:44 -07:00
Conrad Irwin
d4b1d1b528 Move from register_modals to register_workspace_action 2023-11-09 21:51:48 -07:00
Conrad Irwin
e6d6806693 Tidy up some more modal behaviour 2023-11-09 21:11:44 -07:00
Conrad Irwin
77d92ff65a Tidy up 2023-11-09 20:58:35 -07:00
Max Brunsfeld
b9e098ead8 Start work on creating gpui2 version of project panel 2023-11-09 16:51:03 -08:00
Piotr Osiewicz
194d615691 Fix up keybindings propagation
Co-authored-by: Conrad <conrad@zed.dev>
2023-11-09 18:33:36 +01:00
Piotr Osiewicz
d184e0d426 Start working on command_palette2 2023-11-09 17:54:05 +01:00
Mikayla
2c67cc80ba
Merge branch 'main' into event-emitter 2023-11-08 20:10:38 -08:00
Mikayla
a97c8bf58f
Get workspace compiling with new event emitters 2023-11-08 19:29:00 -08:00
Conrad Irwin
b90e34aeb2
go to line2 (#3261)
- MODAL
- center a div
- MOAR CODE
- Beautiful go to line modal


Release Notes:
- N/A
2023-11-08 17:16:00 -07:00
Conrad Irwin
cef8fa5570 tidy tidy 2023-11-08 17:09:38 -07:00
Conrad Irwin
1b9f76c01d Refactor GoToLine to use cx.observe_new_views() 2023-11-08 16:23:05 -07:00
Conrad Irwin
6a802e2fda Make Modals dismissable in theory 2023-11-08 14:45:54 -07:00
Mikayla
097efdebc5
WIP 2023-11-08 12:49:09 -08:00
Mikayla
409e17ad30
Merge branch 'main' into go-to-line2 2023-11-08 11:32:36 -08:00
Nate Butler
e4ca2cb20b Update titlebar 2023-11-08 12:57:31 -05:00
Max Brunsfeld
bdec1c8202 Merge branch 'main' into picker 2023-11-07 16:57:47 -08:00
Max Brunsfeld
9fe3073af7 Get basic text input working
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-07 16:33:02 -08:00
Conrad Irwin
7cdece4857 Beautiful go to line modal
Co-authored-by: Julia <julia@zed.dev>
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-07 15:32:34 -07:00
Conrad Irwin
5751303ea4 MOAR CODE 2023-11-07 14:44:36 -07:00
Nate Butler
3a85beeaa5 center a div 2023-11-07 16:23:41 -05:00
Conrad Irwin
acab2f9003 MODAL 2023-11-07 13:23:27 -07:00
Max Brunsfeld
10c94cc8b7 Remove unused import 2023-11-07 11:47:49 -08:00
Mikayla Maki
a3bd04fed2
Merge branch 'main' into picker 2023-11-07 11:44:02 -08:00
Max Brunsfeld
d690fb038d Merge branch 'main' into picker 2023-11-07 11:27:14 -08:00
Conrad Irwin
1e6a0f1c7b Wire up GoToLine modal 2023-11-07 12:12:05 -07:00
Conrad Irwin
a2a28af052 Add Modals
P.S. this is all completely different now

Co-Authored-By: Marshall <marshall@zed.dev>
Co-Authored-By: Julia <julia@zed.dev>
2023-11-07 09:18:34 -07:00
Marshall Bowers
74853ea55f
Rename ThemeVariant to Theme (#3252)
This PR renames the `ThemeVariant` type to `Theme`.

This better reflects its purpose, as well as matches the same name as we
had before, which should make porting crates slightly easier.

Release Notes:

- N/A
2023-11-07 10:41:36 -05:00
Conrad Irwin
c59817cd72 Merge branch 'main' into editor2-rendering 2023-11-06 11:06:43 -07:00
Conrad Irwin
3afdeeac1e
tooltip2 (#3237)
- Fix executor.timer() in gpui2
- Add support for tooltips 

[[PR Description]]

Release Notes:

- N/A
2023-11-06 10:51:01 -07:00
Marshall Bowers
bf80c1da5b
Rename fields in ThemeColors (#3242)
This PR applies a number of field renames in the `ThemeColors` struct
from the `import-theme` branch.

This will help prevent this branch from diverging too far from `main`.

Release Notes:

- N/A

---------

Co-authored-by: Nate Butler <iamnbutler@gmail.com>
Co-authored-by: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-06 11:53:27 -05:00