Isaac Clayton
b20aefc842
First draft for opening Zed.log
2022-07-28 09:25:39 +02:00
Mikayla Maki
57146b6e39
Added variable rate refreshing based on terminal throughput. Should be the last of the performance improvements for now
2022-07-27 16:46:15 -07:00
Mikayla Maki
8a48a11a00
Implemcargo
2022-07-27 16:33:15 -07:00
K Simmons
20d45221c9
Move terminal modal keymap context to the connected view
2022-07-27 11:00:54 -07:00
Mikayla Maki
0ccdc64668
Working on finding a way of estimating throughput
2022-07-27 10:58:23 -07:00
Mikayla Maki
153305f5e4
Finished long-lock style rendering. Need to dynamically adjust the notification rate to handle high throughput scenarios
2022-07-27 10:21:50 -07:00
Mikayla Maki
9dfdaae94d
Nearly done, not scheduling our own re-render yet
2022-07-27 10:11:10 -07:00
Antonio Scandurra
92de5ab000
v0.49.1
2022-07-27 13:39:29 +02:00
Antonio Scandurra
f0814c7784
Fix vim tests using old key bindings
2022-07-27 12:19:01 +02:00
Antonio Scandurra
6a718dc4da
Don't insert input when the fn
key is held
2022-07-27 12:01:44 +02:00
Antonio Scandurra
d3f14fb1c2
Dispatch application menu events if custom key equivalent wasn't found
2022-07-27 11:46:47 +02:00
Antonio Scandurra
fe7ba09d52
Honor shift when converting keystroke to native key equivalent
2022-07-27 09:28:56 +02:00
Max Brunsfeld
f547c268ce
Restructure autoindent to preserve relative indentation of inserted text
2022-07-26 17:43:43 -07:00
Max Brunsfeld
537530bf76
🎨 compute_autoindents
2022-07-26 17:09:30 -07:00
Max Brunsfeld
09ed149184
Improve calculation of which lines are new when auto-indenting
2022-07-26 17:09:30 -07:00
Mikayla Maki
d1e878f0c6
Checkpoint, still not compiling
2022-07-26 16:58:14 -07:00
Mikayla Maki
6b9c1e78c1
Merge pull request #1417 from zed-industries/working-directory-regression
...
Fixed regression in working directory code
2022-07-26 16:39:40 -07:00
Mikayla Maki
8a6605c090
Added test covering this feature
2022-07-26 16:30:51 -07:00
Mikayla Maki
88202a567c
Fixed regression in working directory code
2022-07-26 16:22:07 -07:00
Mikayla Maki
ace16b63a9
Checkpoint, still converting terminal to events. Not compiling
2022-07-26 16:17:26 -07:00
Max Brunsfeld
ef1efb615e
0.49.0
2022-07-26 14:26:45 -07:00
Mikayla Maki
71af876489
removed stray file
2022-07-26 13:10:04 -07:00
Keith Simmons
4ff007eaab
Merge pull request #1414 from zed-industries/fix-theme-issues
...
Fix tab bar themes
2022-07-26 11:55:17 -07:00
K Simmons
2bd0819ac8
Extract tab bar from workspace
2022-07-26 10:41:02 -07:00
Antonio Scandurra
8552ba15dc
Show symbols located in visible paths before ones located externally
2022-07-26 14:48:18 +02:00
Antonio Scandurra
f775cb2947
Honor sort_text
when language server provides completions
2022-07-26 10:41:39 +02:00
Antonio Scandurra
45eb0e7889
Clip invalid edits from LSP instead of reporting an error
...
This fixes an issue with the Go language server, which reports invalid
formatting ranges when there's a missing newline at the end of the file.
Specifically, if the buffer is `N` lines long, it will try to insert the
newline at `Point(N + 1, 0)`.
I confirmed the behavior is the same in VS Code, and they indeed clip the
LSP ranges as well.
2022-07-26 08:43:27 +02:00
Mikayla Maki
67e650b0e0
Fixed conflicts
2022-07-25 17:24:25 -07:00
Mikayla Maki
aea3508b69
keeping both...
2022-07-25 17:24:25 -07:00
Mikayla Maki
bc2c8e0e05
Finished refactor for mutable terminal and long-single-lock style. Currently terminal is deadlocking instantly, need to just do the full refactor
2022-07-25 17:24:25 -07:00
Mikayla Maki
be4873b92b
Checkpoint, build failing
2022-07-25 17:24:25 -07:00
Mikayla Maki
27e76e3ca2
Retouched a test, should still be failing
2022-07-25 17:24:25 -07:00
Mikayla Maki
889720d06d
Fixed conflict
2022-07-25 17:24:21 -07:00
Mikayla Maki
4d8cd6d8ea
Added event buffering, need to figure out a proper fix
2022-07-25 17:23:00 -07:00
Max Brunsfeld
9cefeb08e1
Merge pull request #1411 from zed-industries/no-gpu-log
...
Log instead of showing an alert when exiting due to no GPU
2022-07-25 16:21:05 -07:00
Max Brunsfeld
ea82b9353d
Log instead of showing an alert when exiting due to no GPU
...
Showing the alert resulted in a panic because tasks
dispatched to the app's main GCD queue continue
to run even while the alert is displayed.
2022-07-25 16:13:28 -07:00
Mikayla Maki
313316fe88
fixed
2022-07-25 16:08:31 -07:00
Julia
888405a4b2
Merge pull request #1409 from zed-industries/middle-mouse-close-tabs
...
Allow closing tabs with the middle mouse button
2022-07-25 17:05:00 -04:00
Max Brunsfeld
13097ea110
Update terminal test to reflect new text insertion approach
2022-07-25 12:21:26 -07:00
Max Brunsfeld
ab037fe844
Simulate calling of text-insertion APIs in TestAppContext::dispatch_keystroke
2022-07-25 12:20:12 -07:00
Max Brunsfeld
a54d9f1697
Add comment about noop performKeyEquivalent function
2022-07-25 11:42:54 -07:00
Max Brunsfeld
09c0211c96
Bump the RPC protocol version
2022-07-25 11:36:52 -07:00
Max Brunsfeld
4c8d9384b1
Replaces lines_utf16 with a single u32 - last_line_len_utf16
2022-07-25 11:35:42 -07:00
ForLoveOfCats
36d789ff84
Allow closing tabs with the middle mouse button
2022-07-25 14:23:38 -04:00
Antonio Scandurra
6dc27cbba2
Add test for IME composition with multiple cursors
2022-07-25 17:47:10 +02:00
Antonio Scandurra
ff99f8d0ca
Clip UTF-16 offsets provided by Cocoa when composing IME input
2022-07-25 17:32:33 +02:00
Antonio Scandurra
47e8bd5f4f
Introduce MultiBuffer::clip_offset_utf16
2022-07-25 15:06:04 +02:00
Antonio Scandurra
c46be992e0
Introduce Rope::clip_offset_utf16
2022-07-25 15:02:45 +02:00
Antonio Scandurra
bb55d654ce
Handle IME composition with multiple cursors
2022-07-25 14:50:09 +02:00
Antonio Scandurra
acdfb933e8
Honor shift if pressing command switches keyboard
2022-07-25 11:01:38 +02:00
Antonio Scandurra
ca3e73106c
Merge branch 'main' into ime-support-2
2022-07-25 10:47:49 +02:00
Antonio Scandurra
d3567e381c
Coalesce IME compositions into a single edit
2022-07-25 09:53:51 +02:00
Antonio Scandurra
555e705ccb
🎨
2022-07-23 09:31:41 +02:00
Antonio Scandurra
0fc7308932
Allow grouping local transactions even if remote peer edits in between
2022-07-23 09:27:21 +02:00
Max Brunsfeld
79f960b69e
Combine adjacent ranges in 'edited_ranges_for_transaction'
2022-07-22 17:41:31 -07:00
Max Brunsfeld
7c3421e041
Remove versioned offset ranges from transactions and undo operations
...
Now, instead of using these versioned offset ranges, we locate the
fragments associated with a transaction using the transaction's
edit ids. To make this possible, buffers now store a new map called
`insertion_slices`, which lets you look up the ranges of insertions
that were affected by a given edit.
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2022-07-22 17:28:55 -07:00
Nate Butler
f963c0ed45
WIP for keith
2022-07-22 17:28:58 -04:00
Mikayla Maki
8c1d4d877f
Merge pull request #1393 from zed-industries/graceful-exit
...
Polishing the terminal
2022-07-22 13:59:13 -07:00
Mikayla Maki
a41e54f3dc
Finished terminal refactoring
2022-07-22 13:54:46 -07:00
Mikayla Maki
119207a9e5
Refactored a bunch of stuff, working on tidying element code
2022-07-22 12:06:42 -07:00
Max Brunsfeld
65fd943509
Move edited_ranges_for_transaction from BufferSnapshot to Buffer
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2022-07-22 11:24:14 -07:00
Keith Simmons
2111fdc118
Merge pull request #1378 from zed-industries/diagnostics-popover
...
Diagnostics Popover
2022-07-22 11:12:56 -07:00
K Simmons
b93040a6ae
attempt to fix broken test
2022-07-22 10:55:57 -07:00
Mikayla Maki
dce27870ce
Refactored terminal tests
2022-07-22 10:20:15 -07:00
Nate Butler
088668ecf8
Fix reversed disclosure arrows in project panel
2022-07-22 11:57:53 -04:00
Antonio Scandurra
7b009c8bbe
Merge branch 'main' into ime-support-2
2022-07-22 16:03:38 +02:00
Antonio Scandurra
2bfa3b9006
Synthesize CGEvents instead of using charactersByApplyingModifiers
2022-07-22 15:51:34 +02:00
Antonio Scandurra
622596619c
Honor ⌘ when Dvorak-QWERTY is used
2022-07-22 14:52:24 +02:00
Antonio Scandurra
136550de9f
Discard shift
when it causes keyboard to output a different character
2022-07-22 08:15:44 +02:00
Max Brunsfeld
9c412a8806
Remove test for handling input via key events
...
Now, textual input is handled by a different code path than other key events.
2022-07-21 21:40:37 -07:00
Max Brunsfeld
372c3eed52
Adjust editor tests to use input APIs instead of key events
2022-07-21 21:36:40 -07:00
Max Brunsfeld
0185b4fef4
Add simple IME handling to the terminal
2022-07-21 21:32:58 -07:00
Keith Simmons
9286e5ea04
Merge pull request #1396 from zed-industries/better-empty-pane
...
Fix Pane Focus Issues
2022-07-21 15:07:03 -07:00
K Simmons
d6519ad280
Minor naming improvements and revert empty pane background color change
2022-07-21 14:56:17 -07:00
Max Brunsfeld
6d264502b2
Remove print statements
2022-07-21 13:44:58 -07:00
Max Brunsfeld
2142fca673
Remove Input action, detect ignored input in vim via an event
2022-07-21 13:40:48 -07:00
Max Brunsfeld
beeaec8647
Prevent IME window from appearing while editor's input is disabled (vim)
2022-07-21 12:48:36 -07:00
Mikayla Maki
c6d5decbf9
Finished erorr terminal refactoring
2022-07-21 12:37:15 -07:00
Max Brunsfeld
7c575990be
Remove the set_selected_text_range method from the InputHandler trait
2022-07-21 12:22:12 -07:00
Mikayla Maki
7c0a031506
added cursor text back
2022-07-21 10:04:12 -07:00
Antonio Scandurra
509f54bf20
Don't dispatch keydown event if editor is still composing
2022-07-21 17:37:32 +02:00
Antonio Scandurra
97ce3998ec
Position IME input according to where the selection is rendered
2022-07-21 17:35:40 +02:00
Antonio Scandurra
3c5d7e001e
Always mark keydown events as handled to suppress beep
2022-07-21 15:53:21 +02:00
Antonio Scandurra
3d6c257551
🎨
2022-07-21 14:39:22 +02:00
Antonio Scandurra
b2f2c5b055
Handle keydown event even when charactersIgnoringModifiers
is empty
...
This allows the input system to work in the presence of dead keys.
2022-07-21 14:36:47 +02:00
Antonio Scandurra
101a0663d3
Remove input
from KeyDownEvent
2022-07-21 14:29:27 +02:00
Antonio Scandurra
f170582c26
Remove println
statements from NSTextInputClient protocol functions
2022-07-21 13:51:31 +02:00
Antonio Scandurra
a4ceae3cf2
Remove unused {cancel,finish}_composition
methods
2022-07-21 13:48:56 +02:00
Antonio Scandurra
481078ae22
Restructure IME composition to not follow Chromium so closely
2022-07-21 13:41:55 +02:00
Antonio Scandurra
b02681ee8a
Treat NSTextInputClient ranges as UTF-16
2022-07-21 13:41:35 +02:00
Antonio Scandurra
32662b6b92
Start indexing UTF-16 offsets
...
This is needed because cocoa will report ranges as UTF-16 indices.
2022-07-21 09:40:48 +02:00
Antonio Scandurra
eda60effed
Honor setting the selected range in addition to marking text
2022-07-21 08:57:20 +02:00
K Simmons
fb2fbf2ac7
fix test failure
2022-07-20 19:13:16 -07:00
K Simmons
b85b2a90aa
address warnings
2022-07-20 19:02:33 -07:00
K Simmons
02a47d962e
add test coverage for diagnostic popover
2022-07-20 19:02:33 -07:00
K Simmons
95952f0c66
working diagnostic popover. Also renamed GoToNextDiagnostic to GoToDiagnostic and adjusted it's action to jump to the popover's diagnostic if it is visible
2022-07-20 19:02:33 -07:00
K Simmons
dbedc30abe
WIP
2022-07-20 19:02:33 -07:00
K Simmons
daceb1eb5f
Fix warning
2022-07-20 19:02:12 -07:00
K Simmons
225055ed5d
Address some issues where panes don't get focused properly, make the focused pane more obvious, and prevent splitting of the pane with no items
2022-07-20 18:52:32 -07:00
Max Brunsfeld
f712dec4c0
Use new API for input handling in Terminal
2022-07-20 17:33:37 -07:00
Mikayla Maki
ee87c8ebde
Render is snappier, less locking, and errors feel nicely modeled
2022-07-20 17:25:21 -07:00
Mikayla Maki
741b78a15b
I think I'm finished
2022-07-20 17:11:36 -07:00
Mikayla Maki
061dde5a9b
Compiling with new result based error handling
2022-07-20 16:48:40 -07:00
Max Brunsfeld
f985515141
Start work on new text input handling in Editor
2022-07-20 16:45:27 -07:00
Max Brunsfeld
0b81a4dfae
Call methods on the focused view during input events
2022-07-20 16:44:26 -07:00
Keith Simmons
d34d6ea184
Merge pull request #1392 from zed-industries/mouse-vim-mode-clipping
...
Fixup Clipping at Line Ends when Selecting with the Mouse in Vim Mode
2022-07-20 13:39:24 -07:00
Mikayla Maki
9b6df1fb61
Checkpoint, this commit does not compile
2022-07-20 12:41:04 -07:00
Mikayla Maki
b493bafb48
Fixed failing test
2022-07-20 10:34:00 -07:00
Mikayla Maki
e2a9a6f361
Maybe fixed toml
2022-07-20 10:04:08 -07:00
Mikayla Maki
18079ced20
Updated alacritty version
2022-07-20 10:04:08 -07:00
Mikayla Maki
ef1a32ee92
Done updating rendering performance for now. Further changes would require more fundamental work, I'm still not really happy with it as is though. Will probably take a few hours to clean the code though.
2022-07-20 10:04:08 -07:00
Mikayla Maki
005e2cb2be
Compiling again... finally
2022-07-20 10:04:08 -07:00
Mikayla Maki
4f7b6b8b22
Finally finished merging this massive ball of changes
2022-07-20 10:04:08 -07:00
Mikayla Maki
150d2ff53f
Attempting to continue rebase
2022-07-20 10:04:08 -07:00
Mikayla Maki
4a483618be
Finished graceful terminal failure
2022-07-20 10:04:08 -07:00
Mikayla Maki
40d30a898b
Rebasing continues
2022-07-20 10:04:08 -07:00
Mikayla Maki
9d063ae6d8
Switched to hybrid iterator and while loop grid processor. Still hairy but much more managable. Not finished compiling yet.
2022-07-20 10:04:08 -07:00
Mikayla Maki
c9584a9d0c
Continuing rebases on other work
2022-07-20 10:04:08 -07:00
Mikayla Maki
a4ca11ba17
Finished design touchups
2022-07-20 10:04:08 -07:00
Mikayla Maki
c19956373a
Finished bel, moving on to title
2022-07-20 10:04:06 -07:00
Max Brunsfeld
1b0e93b153
Change interpretation of marked_text and edit when handling input
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev
2022-07-20 09:53:49 -07:00
Antonio Scandurra
42ac4bf9fc
WIP
2022-07-20 18:06:29 +02:00
Antonio Scandurra
2ea0b89e7c
WIP
2022-07-20 15:07:09 +02:00
K Simmons
a77cf914ec
Fix failing test re mode switch in buffer search
2022-07-19 17:18:17 -07:00
K Simmons
1cfaac1bc5
Fix clipping when dragging the mouse with vim-mode enabled and adjust single line editor selections
2022-07-19 17:18:17 -07:00
Nate Butler
bcc554a3db
Merge branch 'main' into theme-improvements
2022-07-19 20:12:02 -04:00
Keith Simmons
c2868a39e8
Merge pull request #1388 from zed-industries/mouse-region-refactor
...
Mouse Region Refactor
2022-07-19 16:50:12 -07:00
Nate Butler
46384e71b7
Add icon sets for sizes 8, 12 and 16, remove old icons
2022-07-19 17:11:15 -04:00
Antonio Scandurra
7757fbe241
Implement NSTextInputClient
protocol on window using no-ops
2022-07-19 14:52:02 +02:00
Antonio Scandurra
456a390166
Add character palette menu item
2022-07-19 14:51:57 +02:00
Max Brunsfeld
e5602b0ad4
0.48.1
2022-07-18 19:11:12 -07:00
Max Brunsfeld
815ce22fb7
Revert "Merge pull request #1359 from zed-industries/plugin-json-enable"
...
This reverts commit 94b443a704
, reversing
changes made to 285832e810
.
2022-07-18 19:04:49 -07:00
Max Brunsfeld
142a019ada
0.48.0
2022-07-18 16:24:57 -07:00
Max Brunsfeld
c1dfb6294b
Dismiss project panel's rename editor when it loses focus
2022-07-18 16:10:09 -07:00
Max Brunsfeld
2ab732efdb
Merge pull request #1390 from zed-industries/fix-fs-watch-leak
...
Ensure that FS watchers are dropped when dropping their event stream
2022-07-18 15:16:41 -07:00
Max Brunsfeld
43613fe2ac
Ensure that fs watches are dropped when dropping the event stream
2022-07-18 14:55:24 -07:00
Max Brunsfeld
7998771d9f
Avoid panic when unable to access a GPU
...
This will remove noise from our panic logs.
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-07-18 14:13:12 -07:00
K Simmons
deeefed7eb
Change mouse_event_handler to use HandlerSet
2022-07-18 10:08:14 -07:00
K Simmons
ec25fa9260
Extract handler set from MouseRegion
2022-07-18 09:54:48 -07:00
Antonio Scandurra
11ef6bfbae
Avoid unnecessarily emitting fake fs events for dirs that exist
2022-07-18 17:36:40 +02:00
Antonio Scandurra
f9df5fe595
Detect cycles also when processing events
2022-07-18 17:31:09 +02:00
Antonio Scandurra
b3218641cd
Create intermediate directories in FakeFs::create_dir
2022-07-18 16:38:26 +02:00
Antonio Scandurra
b48118830f
Detect cycles when scanning a directory
2022-07-18 13:47:15 +02:00
Antonio Scandurra
df33556693
Introduce a new TreeSet
struct in sum_tree
...
This is just a special case of `TreeMap<K, V>` where `V = ()`.
2022-07-18 13:40:30 +02:00
Max Brunsfeld
f9a5ed3a85
Start work on a test for a worktree with symlink cycles
2022-07-18 12:23:07 +02:00
Max Brunsfeld
f6c1393dfd
Restructure FakeFs to let it model symlinks
...
Instead of storing paths, model the FS more directly
as nodes
2022-07-18 12:23:07 +02:00
Antonio Scandurra
0aafc78eb7
Merge pull request #1385 from zed-industries/fix-lifetime-error
...
Fix spurious borrow checker error
2022-07-18 12:22:54 +02:00
Antonio Scandurra
51c40f4136
Merge pull request #1384 from zed-industries/expose-collaboration-metrics
...
Expose collaboration metrics
2022-07-18 10:44:29 +02:00
Antonio Scandurra
316a534a16
Allow querying active user counts for people that have collaborated
2022-07-18 10:29:10 +02:00
Isaac Clayton
c326a20193
Merge pull request #1367 from zed-industries/plugin-opaque
...
Guide to Opaque Types and Callbacks in Plugins
2022-07-18 09:20:10 +02:00