Keith Simmons
c50be72214
Format including missing formatting changes from previous PR
2022-03-11 15:38:01 -08:00
Keith Simmons
16afb3d5b1
Add some tests for global events and fix potential bug in subscriptions when subscription is dropped inside of it's own callback
...
Co-authored-by: Nathan Sobo <nathan@zed.dev >
2022-03-11 15:34:04 -08:00
Keith Simmons
144591d639
Minor renames for clarity
2022-03-11 11:25:36 -08:00
Keith Simmons
81fc812221
Add global events to MutableAppContext and raise global event when new workspace is created
2022-03-10 20:03:01 -08:00
Antonio Scandurra
ef1ec88523
Remove delegate support from GPUI
...
We added this because we thought it would save some allocations when
sending operations given that we could move them to the delegate upon
notifying it, but the reality is that we serialize operations and that
only requires a reference.
2022-03-09 10:48:52 +01:00
317a1bb07b
Remove language servers from buffers
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
Co-Authored-By: Antonio Scandurra <antonio@zed.dev >
Co-Authored-By: Keith Simmons <keith@zed.dev >
2022-03-08 15:16:07 -08:00
Antonio Scandurra
b49951ac57
Implement {ModelHandle,ViewHandle}::become_delegate
2022-03-08 09:30:32 +01:00
Nathan Sobo
f2848a092b
WIP: Start on a delegation... like events, but single consumer that takes ownership of event
2022-03-08 09:01:57 +01:00
Nathan Sobo
40c0b9e7a5
Halt keystroke dispatch when a global action is dispatched
2022-03-06 09:46:33 -07:00
Antonio Scandurra and Nathan Sobo
c38de3243d
🎨
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-03-04 17:54:48 +01:00
Antonio Scandurra and Nathan Sobo
77e913b5a4
Blur focused view when project becomes read-only
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-03-04 17:37:26 +01:00
Max Brunsfeld
8b7a9367fa
Avoid storing type name string on AnyViewHandle
...
It won't be needed for leak error messages, because the typed
view handle will typically be created first. And this avoids
increasing the size of the handle used in production.
2022-03-01 18:22:09 -08:00
a25f21df39
Remove debug_elements_callbacks from App
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
Co-Authored-By: Max Brunsfeld <max@zed.dev >
2022-03-01 19:16:58 +01:00
Antonio Scandurra
bc9c034baa
Fix Presenter leak when removing windows
2022-03-01 18:50:05 +01:00
Antonio Scandurra and Nathan Sobo
83a3402235
Make TestAppContext and its dependencies available only in tests
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-03-01 17:01:52 +01:00
Antonio Scandurra and Nathan Sobo
0d6f6bf5bb
Detect when view handles are leaked
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-03-01 16:11:12 +01:00
Antonio Scandurra and Nathan Sobo
aa03ebce0e
Enable leak backtraces by setting LEAK_BACKTRACE=1
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-03-01 16:00:40 +01:00
Antonio Scandurra
466db69780
Pass a reference to TestAppContext in tests
...
This allows us to drop the context *after* we ran all futures to
completion and that's crucial otherwise we'll never drop entities
and/or flush effects.
2022-03-01 12:01:02 +01:00
Antonio Scandurra
7ce6f23ed4
Remove all windows on dropping TestAppContext
...
This allows us to remove the dropped entities and flush effects as
necessary.
2022-03-01 10:55:12 +01:00
Antonio Scandurra
10a872a370
Avoid reference cycle between Client and its models
2022-03-01 10:55:05 +01:00
Max Brunsfeld
426e0e3d4f
Flush effects when dropping a TestAppContext
...
This way, at the end of a test, dropped entities will be removed, and will drop
the handles that they hold.
2022-02-28 22:17:20 -08:00
Max Brunsfeld and Nathan Sobo
7d53e37672
Start work on detecting leaked handles in tests
...
For now, just track models. Tests fail because we don't
yet clear the app contexts at the right time.
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-02-28 22:02:43 -08:00
Nathan Sobo
cb230ad574
Re-activate the most recently-activated project search on cmd-shift-F
...
This commits adds the beginnings of an application state facility as a non-static place to store the most recently-activated search for each project.
I also store workspace items by descending order of their entity id so that we always fetch the newest item of a given type when calling `Workspace::item_of_type`.
2022-02-27 18:07:46 -07:00
Nathan Sobo
71241b1fb8
Add capture phase for action dispatch
...
Just like the DOM, we now bubble events down the tree during a capture phase before bubbling them back up.
2022-02-27 16:14:40 -07:00
Nathan Sobo and Max Brunsfeld
ed6c8b1836
Allow actions to be propagated from nested ViewContexts
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2022-02-25 16:14:16 -07:00
Antonio Scandurra
38e4ec9157
Replace Inconsolata with Zed Mono and Zed Sans
2022-02-18 14:55:11 +01:00
Max Brunsfeld
10580f96a3
Automatically include current view id in element state ids
2022-02-17 13:44:46 -08:00
Antonio Scandurra
1fbcea6c0d
Randomly detach requests on guest to let them race with other local ops
2022-02-17 09:05:06 +01:00
Max Brunsfeld and Nathan Sobo
1ca1595490
Add AnyWeakModelHandle
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-02-15 17:56:50 -08:00
Antonio Scandurra
a11495af19
Start on a randomized integration test
2022-02-15 17:33:43 +01:00
Max Brunsfeld and Nathan Sobo
ddc1f237a6
Panic if element state is used twice in the same frame
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-02-14 14:04:27 -08:00
Antonio Scandurra
1eea2f3653
Add integration test for code actions
2022-02-14 11:42:56 +01:00
Antonio Scandurra and Nathan Sobo
2fcdcac080
Fetch code actions on cursor movement instead of on-demand
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-02-11 14:41:19 +01:00
Nathan Sobo
dc20be256e
Start on code action confirmation
2022-02-05 12:37:34 -07:00
Antonio Scandurra and Nathan Sobo
5c862bfe98
Maintain search results as query and active editor changes
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-01-28 15:19:58 +01:00
Nathan Sobo
b755b2d602
Add ViewHandle::defer
...
It's like update, but happens after the current effect instead of synchronously. Also, it doesn't allow the callback to return a value because there would be nothing to do with it.
2022-01-22 13:21:59 -07:00
Nathan Sobo
8b04c5d3ac
Add a ViewContext::defer
...
This takes a closure that will be enqueued as an effect to ensure there are no entities on the stack.
2022-01-22 13:14:25 -07:00
Max Brunsfeld and Nathan Sobo
f1fc0bde99
Flush effects after every spawned future completes
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-01-21 17:43:24 -08:00
Nathan Sobo
19751e9200
Merge remote-tracking branch 'origin/main' into go-to-definition
2022-01-21 11:12:38 -07:00
Antonio Scandurra and Nathan Sobo
e5662dd426
Allow observing the release of entities
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-01-21 14:34:14 +01:00
Nathan Sobo
fbca28337a
When opening a path in an existing window, move it to the foreground
2022-01-20 20:45:30 -07:00
Antonio Scandurra
634340dd84
Return a task from Workspace::save_active_item
...
This required changing our approach to OS prompts and this commit greatly
simplifies that. We now avoid passing a callback and return a simple future
instead. This lets callers spawn tasks to handle those futures.
2022-01-20 09:51:29 +01:00
Max Brunsfeld
ed88fdcea2
Add unit test for diagnostic + path header ordering
2022-01-12 11:34:57 -08:00
Max Brunsfeld and Nathan Sobo
ce6f3d7f3e
Reuse views when moving between diagnostic view and editors
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-01-07 11:00:12 -08:00
Antonio Scandurra and Nathan Sobo
794d214eee
Refactor opening workspace items
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2022-01-07 17:38:37 +01:00
Nathan Sobo and Max Brunsfeld
943571af2a
Report backtraces of pending conditions when deterministic executor illegally parks
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2022-01-06 13:33:55 -07:00
Nathan Sobo and Antonio Scandurra
d7a78e14ac
Allow disk-based diagnostic progress begin/end events to interleave
...
When multiple saves occur, we can have multiple start events followed by multiple end events. We don't want to update our project diagnostics view until all pending progress is finished.
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2022-01-06 09:32:08 -07:00
Max Brunsfeld
8728d3292d
Merge branch 'main' into polish-project-diagnostics
...
Also fix false failure in ModelHandle::condition when parking is not forbidden.
2022-01-05 10:53:18 -08:00
Max Brunsfeld and Antonio Scandurra
d8b888c9cb
Replicate diagnostic summaries
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2022-01-04 14:29:22 -08:00
Max Brunsfeld
f5d4e26799
Remove unused context variable
2021-12-27 15:34:07 -08:00