Kirill Bulatov
1398a12062
More keybindings in macOs modals with buttons
...
Closes https://github.com/zed-industries/community/issues/1095
by forcing the non-Cancel button to get a focus.
Due to the way macOs handles buttons on modals, the focus gain had to be
achieved via certain button addition order, rather than conventional
"setFocus"-ish API, see the related comment for details.
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-05-02 21:10:20 +03:00
Antonio Scandurra
70f8cf4cf6
Move methods querying window state into AsyncAppContext
2023-05-02 19:38:48 +02:00
Antonio Scandurra
794446bf8b
Move debug_elements
to AsyncAppContext
...
Previously, `debug_elements` was available on `WindowContext`. If that
method was called while having a borrow out to a view, it would panic because
the view would already have been borrowed.
By moving it to an `AsyncAppContext` we ensure the method can't be called while
a view is being used.
2023-05-02 11:09:40 +02:00
Antonio Scandurra
4c1cba6def
Remove unnecessary Element
impl for RootElement
2023-05-02 10:09:57 +02:00
Antonio Scandurra
6c931ab9da
Inline test-only AppContext
methods
2023-05-01 16:49:17 +02:00
Antonio Scandurra
eb2cce98a7
Move dispatch_action_any_action_at
to AsyncAppContext
2023-05-01 16:40:57 +02:00
Antonio Scandurra
c4472b0786
Remove ViewContext::dispatch_action
2023-05-01 16:27:36 +02:00
Antonio Scandurra
d815fc88ae
Remove ViewContext::dispatch_any_action
2023-05-01 14:24:00 +02:00
Antonio Scandurra
029538fe21
Make dispatch_global_action
private
2023-05-01 11:45:35 +02:00
Antonio Scandurra
106ebeb386
Remove obsolete presenter modules
2023-04-28 17:37:25 +02:00
Antonio Scandurra
489b1f6a63
Merge remote-tracking branch 'origin/main' into simplify-action-dispatch
2023-04-28 17:31:12 +02:00
Antonio Scandurra
1c5376a560
Remove impl_internal_actions
macro
2023-04-28 17:29:57 +02:00
Max Brunsfeld
7258db7a4e
Merge pull request #2417 from zed-industries/hover-markdown
...
Render markdown more correctly in the editor hover popover
2023-04-27 14:15:04 -07:00
Max Brunsfeld
8eb9c6563a
Generalize Text element to let you add arbitrary scene primitives for runs of text
2023-04-27 13:58:06 -07:00
Max Brunsfeld
7960067cf9
Fix bug where Text element would wrap at the right glyph in the wrong run
2023-04-26 15:33:10 -07:00
Max Brunsfeld
1bbcff543b
Add API for adding mouse regions within Text
2023-04-26 12:00:26 -07:00
Antonio Scandurra
6317e885c7
Don't allow strong view handles to be read/updated with an AsyncAppContext
...
This avoids an invitation to hold strong view handles across async await
points, which is a common source of leaks.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-26 13:36:13 +02:00
Antonio Scandurra
689e878bd8
Use a WeakViewHandle
in Client
for view message handlers
2023-04-26 12:21:02 +02:00
Antonio Scandurra
57beec6071
Allow direct read/update of WeakViewHandle
only in AsyncAppContext
2023-04-26 12:20:57 +02:00
Antonio Scandurra
2b6830c798
Remove unnecessary calls to WeakViewHandle::upgrade
2023-04-26 11:13:46 +02:00
Antonio Scandurra
94c2eaad23
Replace ViewContext::spawn
with ViewContext::spawn_weak
2023-04-26 10:23:27 +02:00
Antonio Scandurra
7ca412ade3
Merge remote-tracking branch 'origin/main' into fewer-context-traits
2023-04-26 09:54:58 +02:00
Max Brunsfeld
a7145021b6
Extract a named struct from text_layout::Line's style runs
2023-04-25 14:05:23 -07:00
Max Brunsfeld
ebbe52e6b0
🎨 Specify more dependencies at the workspace level
2023-04-24 17:41:55 -07:00
Max Brunsfeld
abdccf7393
Use a workspace dependency for the futures crate
2023-04-24 09:43:31 -07:00
Antonio Scandurra
c165fb9be5
Remove ReadView
and UpdateView
traits
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-24 17:36:14 +02:00
Antonio Scandurra
a6115d9330
Remove UpdateModel
trait
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-24 16:52:09 +02:00
Antonio Scandurra
a9417f3d2e
Remove ReadModelWith
trait
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-24 16:44:54 +02:00
Antonio Scandurra
5f500d34b2
Remove UpgradeModelHandle
trait
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-24 16:40:30 +02:00
Antonio Scandurra
b8fab6fde9
Remove UpgradeViewHandle
trait
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2023-04-24 16:33:27 +02:00
Nathan Sobo
e6604d1641
Fix missing actions in the command palette
...
Previously, the workspace view was on the stack when we were computing the
available actions, which excluded it. This is a stopgap. We should find a
better solution ASAP.
2023-04-21 15:59:29 -06:00
Nathan Sobo
83bf3d071d
WIP
2023-04-21 15:36:52 -06:00
Nathan Sobo
55db28e074
Eliminate ReadModel trait
2023-04-21 15:05:19 -06:00
Nathan Sobo
5dac95c47c
Eliminate ReadView trait
2023-04-21 15:03:57 -06:00
Nathan Sobo
993dbf86cb
Merge remote-tracking branch 'origin/main' into into-element
2023-04-21 14:27:25 -06:00
Nathan Sobo
c1810e8ec9
Fix formatting
2023-04-21 13:09:36 -06:00
Nathan Sobo
fe492eacbf
Refine naming of element-related types and traits
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-04-21 13:06:37 -06:00
Antonio Scandurra
03619dfa55
Rename Drawable::boxed to into_element and make containers generic
...
Multi-element are now generic over any drawable child, which can be converted
into an element.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-04-21 12:43:19 -06:00
Antonio Scandurra
4ac894ffbe
Remove unnecessary lifetime parameter from WindowContext
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-21 18:06:53 +02:00
Antonio Scandurra
a860a6cd62
Make App::notify_view
private
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-21 16:50:57 +02:00
Antonio Scandurra
8c7f821d14
Introduce a new WindowContext::remove_window
API
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-21 16:39:53 +02:00
Antonio Scandurra
31e906d068
Avoid double borrow of views on up
and up_out
in DragAndDrop
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-21 16:19:51 +02:00
Antonio Scandurra
c76b9794e4
Merge branch 'main' into window_context_2
2023-04-21 10:58:08 +02:00
Max Brunsfeld
32c57bcd22
Store buffer's diagnostic sets in a smallvec
2023-04-20 08:58:41 -07:00
Antonio Scandurra
0d5eea8169
Track active window id in test platform
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-20 17:22:11 +02:00
Antonio Scandurra
d9bb37c649
Add WindowContext::update_default_global
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-20 17:13:13 +02:00
Antonio Scandurra
c52b6328b7
Merge branch 'main' into window_context_2
2023-04-20 16:01:47 +02:00
Nathan Sobo
5514349b6b
Add Component elements
2023-04-18 22:49:06 -06:00
Joseph T. Lyons
614a9c8977
Merge pull request #2377 from zed-industries/add-tab-tooltips
...
Add tab tooltips
2023-04-18 14:37:38 -04:00
Antonio Scandurra
136e599051
Merge branch 'main' into window_context_2
2023-04-18 17:29:37 +02:00
Antonio Scandurra
31e6bb4fc1
Return Result
from AsyncAppContext::update_view
2023-04-18 12:03:53 +02:00
Antonio Scandurra
493a418c91
WIP
2023-04-17 18:52:48 +02:00
Antonio Scandurra
38ab6b123f
Make production code compile again
2023-04-17 12:33:33 +02:00
Antonio Scandurra
bed94455b9
Avoid calling focus_in
when creating window
...
This is redundant because when creating a window we will receive
an activation event if the window was effectively focused. And if
it wasn't, we shouldn't call `focus_in`.
2023-04-17 11:57:51 +02:00
Joseph Lyons
ebe57254e0
Add tab tooltips
2023-04-15 06:46:14 -04:00
Max Brunsfeld
c329546570
Extract randomized test CI process into a script
2023-04-14 14:25:55 -07:00
Antonio Scandurra
f09e21aa93
WIP: force using (at least) a window context to update views
2023-04-14 17:08:13 +02:00
Antonio Scandurra
a820862165
Take WindowContext
in workspace::ItemHandle
methods
2023-04-14 16:36:23 +02:00
Antonio Scandurra
2652f65bee
Fix handle_window_activation_effect
updating the wrong view
2023-04-14 12:33:13 +02:00
Antonio Scandurra
98dce89379
Pass WindowContext
to ViewHandle::is_focused
2023-04-14 12:12:08 +02:00
Antonio Scandurra
74ca223114
Fix formatting for the entire workspace
2023-04-14 12:08:33 +02:00
Antonio Scandurra
33bc47dbe2
Merge branch 'main' into window_context_2
2023-04-14 12:07:09 +02:00
Antonio Scandurra
183b9ef809
Make full-screen and window bounds callbacks take a WindowContext
2023-04-14 11:56:31 +02:00
Antonio Scandurra
7394bf1cdc
Fix most of the warnings
2023-04-14 10:51:53 +02:00
Antonio Scandurra
5666e8301e
Log an error when a scene fails to build
2023-04-14 10:32:56 +02:00
Antonio Scandurra
9ef79735dc
Move more window-specific methods from AppContext
to WindowContext
2023-04-14 10:29:35 +02:00
Antonio Scandurra
c62357db02
Fix window activation
2023-04-14 08:24:01 +02:00
Antonio Scandurra
84d2605ccf
Avoid passing cx
when emitting from CallbackCollection
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-04-13 16:53:44 +02:00
Antonio Scandurra
ff774786bf
Reimplement AppContext::handle_focus_effect
2023-04-13 16:21:39 +02:00
Antonio Scandurra
4900e04ff3
Fix window refreshing
2023-04-13 12:19:11 +02:00
Antonio Scandurra
702c4ce403
Uncomment List
tests and fix related problems in WindowContext
2023-04-13 12:01:18 +02:00
Nathan Sobo
b89c4e06be
WIP: Compiling, many warnings, haven't tested
2023-04-12 12:54:24 -06:00
Nathan Sobo
4cb13fb39c
WIP
2023-04-12 12:22:26 -06:00
Nathan Sobo
a25f962185
WIP
2023-04-12 12:13:35 -06:00
Nathan Sobo
40896352ff
wip
2023-04-12 10:28:53 -06:00
Nathan Sobo
868301bedb
WIP
2023-04-12 10:07:17 -06:00
Antonio Scandurra
83070a19c4
WIP
2023-04-12 15:55:43 +02:00
Nathan Sobo
b54f08db77
WIP
2023-04-12 06:51:03 -06:00
Nathan Sobo
d9e4136b02
WIP
2023-04-11 21:56:37 -06:00
Nathan Sobo
e6cc132b19
WIP
2023-04-11 18:48:00 -06:00
Nathan Sobo
e115baa60c
WIP
2023-04-11 18:21:56 -06:00
Antonio Scandurra
9e6d865882
Prevent already dropped model from being upgraded during release
2023-04-11 10:43:05 +02:00
Nathan Sobo
3de8fe0f87
WIP
2023-04-10 17:27:47 -06:00
Nathan Sobo
6638407ff9
WIP: Everything shredded
2023-04-10 16:10:32 -06:00
Antonio Scandurra
016343e65d
Merge branch 'main' into randomized-tests-operation-script
2023-04-10 08:45:22 +02:00
Nathan Sobo
7536645eea
WIP
2023-04-08 08:01:05 -06:00
Nathan Sobo
9d23a98157
WIP
2023-04-08 06:43:39 -06:00
Nathan Sobo
2186de38ab
Merge AppContext impl blocks
2023-04-07 11:54:08 -06:00
Nathan Sobo
2615a11f7c
Don't export platform::* from gpui
...
I'd like to avoid cluttering the top-level namespace with all the platform-
specific types.
2023-04-07 11:45:53 -06:00
Nathan Sobo
de9bf6dfbd
Merge MutableAppContext into AppContext
...
There may have been a good reason for the difference at some point, or I was
still learning Rust. But now it's just &mut AppContext vs &AppContext.
2023-04-06 15:49:03 -06:00
Max Brunsfeld
1064b14779
Don't use TestPlan's rng in fake LSP handlers
...
These should use the test context's rng, so that they behave the same whether
a pre-recorded plan was used, or the plan is being generated.
2023-04-05 17:50:04 -07:00
Max Brunsfeld
2d63ed3ca4
Merge branch 'main' into randomized-tests-operation-script
2023-04-05 17:10:20 -07:00
Julia
6e3bf7fed4
Hesitant possible fix for lock screen crash
...
This may cause issues in this situations but as I cannot repro this I'm
making the call to try something and see how it plays out
2023-04-05 14:01:54 -04:00
Julia
77bb52f72c
Prioritize displaying right statusbar items overtop left items if needed
2023-04-05 12:08:52 -04:00
Antonio Scandurra
79d5bb45dc
Clear Copilot suggestions when it gets disabled from the settings
2023-04-04 10:45:56 +02:00
Max Brunsfeld
7b0a6c0dfa
Add an 'on_failure' attribute to gpui tests
...
This lets us perform a finalization step when a randomized test fails.
2023-04-03 18:16:08 -07:00
Max Brunsfeld
c960277349
Merge branch 'main' into randomized-tests-operation-script
2023-04-03 13:09:25 -07:00
Nathan Sobo
138aa0492a
Add downcast_ref to AnyViewHandle
...
I use unsafe code to transmute an AnyViewHandle to a ViewHandle<T> when
the type matches. Because ViewHandle<T> is repr(transparent) to the
wrapped AnyViewHandle, this is safe.
2023-04-02 16:10:16 -06:00
Nathan Sobo
27258a0889
Remove From trait for AnyViewHandle in favor of into_any method
...
I think it's more explicit.
2023-04-02 15:50:42 -06:00
Nathan Sobo
aed8df96ff
Wrap AnyWeak handles with their typed counterparts
2023-04-02 15:42:03 -06:00
Nathan Sobo
82a713fd1d
Store AnyViewHandle inside ViewHandle and Deref to it
2023-04-02 14:59:55 -06:00
Mikayla Maki
81411b9114
Merge branch 'main' into copilot
2023-03-30 16:57:18 -07:00
Mikayla Maki
cc7c5b416c
Add status bar icon reflecting copilot state to Zed status bar
2023-03-29 21:31:33 -07:00
Max Brunsfeld
b5f762ab25
Open a new window when activating Zed from the dock w/ no windows open
2023-03-29 17:24:44 -07:00
Mikayla Maki
9d8d2bb8f4
Add rough versions of all 3 modals
2023-03-28 18:00:09 -07:00
Antonio Scandurra
2f95510a2e
Start integrating Copilot with editor
...
There's still a bit to do in terms of reusing the previous suggestion
when the prefix matches, but we're getting there.
2023-03-28 09:42:01 -07:00
Antonio Scandurra
9713d1bb31
Fix invalid translation between bottom/top left coordinate spaces
...
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2023-03-28 09:42:01 -07:00
Antonio Scandurra
99cca59c84
Restructure verification code prompting to open a window instead
...
Also, prevent multiple calls to `sign_in` from racing with each other.
2023-03-28 09:42:01 -07:00
Antonio Scandurra
5471217089
Use the same serde version across the entire workspace
2023-03-28 09:42:00 -07:00
Joseph T. Lyons
e10338ed17
Merge pull request #2313 from zed-industries/unify-spelling-of-key-binding
-to-be-two-words
...
Unify spelling of `key binding` to be two words
2023-03-27 15:58:12 -04:00
Joseph Lyons
9d88cd8842
Unify spelling of key binding
to be two words
2023-03-22 13:34:12 -04:00
Max Brunsfeld
cbeb6e692d
Move postage crate version specification to workspace Cargo.toml
2023-03-21 11:26:13 -07:00
Mikayla Maki
5a1bbb96ba
Merge pull request #2302 from zed-industries/fix-dispatch-path-panic
...
Align dispatch_keystroke with other uses of ancestors iterator
2023-03-17 16:34:00 -07:00
Mikayla Maki
578c69476d
Align dispatch_keystroke with other uses of ancestors iterator and filter out non-existant views
2023-03-17 11:07:10 -07:00
Antonio Scandurra
1af8f4be19
Deserialize Theme
directly into the heap to avoid stack overflow
...
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-03-17 15:58:52 +01:00
Antonio Scandurra
786d95b8c8
Avoid storing fonts::Features
in TextStyle
...
We were only using it for debugging purposes and that was causing
the `Theme` struct to become too big to hold on the stack.
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-03-17 15:12:02 +01:00
Antonio Scandurra
4d915f4530
Don't make fonts::Features
Copy
2023-03-17 13:54:56 +01:00
Antonio Scandurra
f9d793cb4a
Honor more OpenType features
2023-03-17 13:40:00 +01:00
Antonio Scandurra
9181ac9872
Honor the calt
font feature
2023-03-17 12:01:27 +01:00
Antonio Scandurra
76167ca65c
Allow setting font features on TextStyle
2023-03-17 11:49:22 +01:00
Antonio Scandurra
7d13b00914
Allow setting font features on the terminal as well
2023-03-17 11:42:24 +01:00
Antonio Scandurra
b2c733baab
WIP: Allow specifying font features in the editor
...
This just lays the foundation for threading through a `fonts::Features`
struct, but it's not used yet.
2023-03-17 09:51:36 +01:00
Max Brunsfeld
d69868fa44
Make restart action more reliable
2023-03-15 17:44:50 -07:00
Antonio Scandurra
bca1acf6d3
Leave room on quit
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-03-13 17:52:10 +01:00
Petros Amoiridis
726c8eb43f
Use type_id to determine what has the focus
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-03-13 11:42:40 +02:00
Mikayla Maki
87ac409e51
Merge pull request #2265 from zed-industries/fix-menu-bar-greying-out
...
Fix too-agressive menu bar greying
2023-03-10 16:05:07 -08:00
Mikayla Maki
c24194156e
Merge pull request #2257 from zed-industries/check-all-contexts
...
Fix keyboard shortcuts not showing
2023-03-10 15:52:56 -08:00
Mikayla Maki
ece2af1e22
Fix a corner case in available action resolution
...
Add tests for new keybinding resolution behavior
co-authored-by: max <max@zed.dev>
2023-03-10 15:36:20 -08:00
Mikayla Maki
adf94a1681
Switch from using the key window to the main window mac platform API
...
When the help menu is open, the help menu's search field is the key window, and this was causing menu item action resolution to fail
co-authored-by: Max <max@zed.dev>
2023-03-10 14:43:28 -08:00
Mikayla Maki
00a38e4c3b
Bound the search range for the keybindings by the highest handler path
2023-03-10 12:12:32 -08:00
Mikayla Maki
37d01c7fb3
Merge pull request #2199 from zed-industries/welcome-experience
...
Welcome experience
2023-03-10 10:48:30 -08:00
Mikayla Maki
9dc608dc4b
Switch from changing the meaning of the predicate to adding an additional match_dispatch_path_context API for UI elements
2023-03-09 19:32:09 -08:00
Mikayla Maki
0384456e7d
Change context matcher to search the entire stack
2023-03-09 16:18:37 -08:00
Julia
d173b1d412
Update db followers table when user leaves a project
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-03-07 18:56:03 -05:00
Mikayla Maki
3b31f10c6f
Made the theme picker sort from dark to light
...
Added a layer into 'ConstrainedBox' to clip it
's children
Made the welcome experience responsive to small and large sizes
2023-03-06 18:36:18 -08:00
Mikayla Maki
b74553455f
Add an element to pane to take care of wiring initial mouse handlers
2023-03-06 14:26:32 -08:00
Mikayla Maki
4a8527478d
Add child item alignment to flex implementation
...
Fix checkbox styling
co-authored-by: Nathan <nathan@zed.dev>
2023-03-06 14:26:32 -08:00
Mikayla Maki
4c179875ab
Add png image loading to gpui
...
add zed logo into welcome experience
Co-authored-by: Nathan <nathan@zed.dev>
2023-03-06 14:26:32 -08:00
Mikayla Maki
416c793076
Start on welcome experience settings
2023-03-06 14:25:10 -08:00
Antonio Scandurra
0ec984f924
Tidy up SpriteCache::render_glyph
2023-03-06 17:08:35 +01:00
Mikayla Maki
50682dc685
Merge pull request #2233 from zed-industries/fix-code-folding-initialization
...
Initialize code fold indicators on buffer startup
2023-03-03 12:30:53 -08:00
Mikayla Maki
606d683f29
Add interactable fold markers
...
Change fold handlers to be driven by the fold map
Switch to a mouse region based implementation for click regions
Co-authored-by: Max <max@zed.dev>
2023-03-03 12:26:36 -08:00
Julia
ff2e6bc3bd
Fix surprising mouse propagation & avoid focusing tab while closing
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-03-03 12:22:58 -08:00
Julia
9311e01271
Avoid wrapping to the 0th glyph variant when the 4th should be used
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-03-03 10:04:44 -08:00
Mikayla Maki
e3061066c9
Add code folding indicators into the gutter.
2023-02-28 16:34:28 -08:00
Mikayla Maki
8656708de4
Revert "Remove borrow from reveal_path()"
2023-02-24 09:39:52 -08:00
Mikayla Maki
89ddf14b0e
Remove borrow from reveal_path()
2023-02-23 21:36:17 -08:00
Max Brunsfeld
93b9e762ec
Merge pull request #2212 from zed-industries/initial-traffic-light-position
...
Adjust window's traffic light position when setting its title
2023-02-23 15:02:05 -08:00
Max Brunsfeld
fbc934b884
Adjust window's traffic light position when setting its title
2023-02-23 14:44:45 -08:00
Mikayla Maki
b179fc2b99
Remove comment
2023-02-23 14:24:53 -08:00