Nate Butler
ab6b3adb2b
Add a theme entry for whitespace, use it to style whitespaces
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Kirill Bulatov <mail4score@gmail.com>
2023-05-08 19:36:51 +03:00
Kirill Bulatov
fb3ef4bcf6
Fix wrapped line detection
2023-05-08 19:36:51 +03:00
Kirill Bulatov
075bab2ea9
Use more convntional name for the settings
2023-05-08 19:36:51 +03:00
Kirill Bulatov
706f6f495a
Add a test
2023-05-08 19:36:51 +03:00
Kirill Bulatov
ec725fe399
Do not print extra invisibles on line wraps
2023-05-08 19:36:51 +03:00
Kirill Bulatov
95bcd19020
Refactor line glyphs drawing methods
2023-05-08 19:36:51 +03:00
Kirill Bulatov
4aaf44df94
Support invisibles in the selection
2023-05-08 19:36:51 +03:00
Kirill Bulatov
1eeeec157e
Use cached standard glyphs for invisible symbols
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2023-05-08 19:36:51 +03:00
Kirill Bulatov
714734d279
Add whitespaces rendering
2023-05-08 19:36:51 +03:00
Kirill Bulatov
2d8c88ad73
Draw tabs with svg icons in editor code only
2023-05-08 19:36:51 +03:00
Kirill Bulatov
f0a88b3337
Make invisibles display configurable
2023-05-08 19:36:51 +03:00
Kirill Bulatov
ad731ea6d2
Draft invisibles' tabs display
2023-05-08 19:36:51 +03:00
Max Brunsfeld
4f8607039c
Add is_tab field to chunks
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-05-08 19:36:51 +03:00
Julia
332b364a30
Prevent some cases of clipping icons due to pixel coord rounding
2023-05-08 11:42:00 -04:00
Kirill Bulatov
6cb0bc89d2
Remove unused dependencies
2023-05-07 21:07:55 +03:00
Antonio Scandurra
0296974ab1
Merge pull request #2441 from zed-industries/implicit-ancestry
...
Determine view ancestry during layout
2023-05-05 10:58:00 +02:00
Antonio Scandurra
5e16f70067
💄
2023-05-05 10:53:15 +02:00
Antonio Scandurra
080a1f00a3
Delay focus_in
event for window activation till after layout
2023-05-05 10:47:42 +02:00
Antonio Scandurra
b9ed327b94
Replace usages of is_parent_view_focused
with is_self_focused
...
Previously, this was used because we didn't have access to the current
view and `EventContext` was an element-only abstraction. Now that the
`EventContext` wraps the current view's `ViewContext` we can simply check
for the view's focus and avoid querying ancestors.
2023-05-05 10:08:22 +02:00
Antonio Scandurra
80ad59a620
Make focusing the parent an effect to avoid querying ancestors
2023-05-05 10:04:54 +02:00
Joseph T. Lyons
c55a4c0feb
Merge pull request #2447 from zed-industries/fix-auto-update
...
Do not use post_json() to auto update
2023-05-04 17:15:09 -04:00
Mikayla Maki
89af803565
Rearrange the state machine
2023-05-04 13:45:31 -07:00
Julia
eacea55aaf
Fixup cases using buffer model handle id as buffer id
2023-05-04 12:32:31 -04:00
Julia
1883e260ce
Offload text::Buffer
construction to background worker
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-05-04 12:32:31 -04:00
Julia
7e06062bdb
Store history base text as rope
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-05-04 12:32:31 -04:00
Joseph Lyons
8313414e1e
Do not use post_json() to auto update
2023-05-04 12:12:36 -04:00
Antonio Scandurra
d6b0569bed
Merge branch 'main' into implicit-ancestry
2023-05-04 17:19:06 +02:00
Antonio Scandurra
64e0c16baa
Use Workspace::toggle_sidebar_item
when clicking on sidebar button
...
Previously, we were mistakenly using `Sidebar::toggle_item`, which only
performs part of the toggle operation.
2023-05-04 17:06:37 +02:00
Antonio Scandurra
912a4cf549
Avoid calling update_window
twice in blurred
event handler
...
This was preventing us from unhooking vim when performing a rename,
which prevented typing in the rename editor.
2023-05-04 16:18:01 +02:00
Antonio Scandurra
0f93714d4f
Merge pull request #2442 from zed-industries/filter-vim-commands
...
Filter out vim commands when vim mode is disabled
2023-05-04 15:00:19 +02:00
Antonio Scandurra
b3baebde22
Filter out vim commands when vim mode is disabled
2023-05-04 14:52:34 +02:00
Antonio Scandurra
da19edc3e3
Merge branch 'main' into implicit-ancestry
2023-05-04 14:39:58 +02:00
Antonio Scandurra
121264d35a
Fix panic when opening multiple definitions in a multibuffer
...
The editor is on the stack, so adding an item to the `Pane` containing
the editor will cause a double borrow and a consequent panic. This
commit fixes the issue by deferring the opening of the definitions.
2023-05-04 14:34:42 +02:00
Antonio Scandurra
5cc6304fa6
Verify keystrokes can be queried while views are on the stack
2023-05-04 12:09:32 +02:00
Antonio Scandurra
3d679ddb26
Avoid re-allocating KeymapContext
after every view notification
2023-05-04 12:04:30 +02:00
Antonio Scandurra
18e39ef2fa
Cache view's type id and keymap context into a separate map
...
During `layout`, we now pass a mutable reference to the element's
parent view. This is a recursive process that causes the view to
be removed from `AppContext` and then re-inserted back into it once
the layout is complete.
As such, querying parent views during `layout` does not work as such
views will have been removed from `AppContext` and not yet re-inserted
into it. This caused a bug in `KeystrokeLabel`, which used the `keystrokes_for_action`
method to query its ancestors to determine their type id and keymap context.
Now, any time a view notifies, we will cache its keymap context so that
we don't need to query the parent view during `layout`.
2023-05-04 10:47:56 +02:00
Antonio Scandurra
7b7a495be3
Remove stray dbg!
statement
2023-05-04 09:56:49 +02:00
Antonio Scandurra
f6f18be9c3
Remove WindowContext::is_child_focused
2023-05-04 09:53:35 +02:00
Antonio Scandurra
67a3891f15
Make dispatch_event related methods public to the crate only
2023-05-04 09:53:35 +02:00
Antonio Scandurra
92183e0d72
Ensure querying keystrokes or actions is safe
...
This is achieved by moving `available_actions` into `AsyncAppContext` (where
we know no view/window is on the stack) and `keystrokes_for_action` into `LayoutContext`
where we'll fetch the previous frame's ancestors and notify the current view if those
change after we perform a layout.
2023-05-04 09:53:31 +02:00
Joseph Lyons
053b34875b
collab 0.11.0
2023-05-03 14:59:04 -04:00
Joseph Lyons
653ea3a85d
v0.86.x dev
2023-05-03 14:38:41 -04:00
Max Brunsfeld
9d41f83b1b
Merge branch 'main' into copilot-disabled-globs
2023-05-03 10:53:28 -07:00
Antonio Scandurra
040cc4d4c3
Allow notifying views when the ancestry of another view is outdated
2023-05-03 19:25:00 +02:00
Max Brunsfeld
8eb1312deb
Add copilot menu item for enabling paths by glob
2023-05-03 10:14:01 -07:00
Antonio Scandurra
7250754f8e
Make dispatch_keystroke public to the crate only
2023-05-03 19:13:17 +02:00
Antonio Scandurra
9e8f852afb
Remove ViewContext::is_child
2023-05-03 19:09:07 +02:00
Antonio Scandurra
5157442703
Fix integration test relying on deferred happening after focus
...
Focus is now one of the last things that happens during `flush_effects`,
and we shouldn't have relied on `defer` in the first place to verify
focus changes.
2023-05-03 19:00:32 +02:00
Antonio Scandurra
c65465b0b5
Ensure workspace gets rendered in collab integration tests
2023-05-03 18:31:07 +02:00
Antonio Scandurra
e9ed40da37
Remove the ability to retrieve the view's parent
2023-05-03 16:52:55 +02:00