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
Antonio Scandurra
2cbb0ae843
Expose max number of project collaborators in Db::get_top_user_activity
2022-07-18 08:58:09 +02:00
K Simmons
8add81350e
Rework presenter and MouseRegion to use Handler hashmap rather than individual fields
2022-07-17 23:19:32 -07:00
Nate Butler
4ca4449394
Update icons in rust
...
Updated icons
- Diagnostic states
- Sidebar icons (project, contacts)
- Navigation arrows
2022-07-16 11:51:10 -04:00
Antonio Scandurra
af917de684
Handle inserting multiple tabs on the same row
...
This also fixes a panic when tabbing on a row that contained multi-byte
characters.
2022-07-16 08:40:44 +02:00
Mikayla Maki
8349ead6b2
Add bracketed paste support
2022-07-15 19:01:08 -07:00
Mikayla Maki
cfc956d78f
Merge pull request #1376 from zed-industries/terminal-settings
...
Added settings for common terminal configurations
2022-07-15 18:50:40 -07:00
Mikayla Maki
6675c96c8a
Removed some old dbgs and comments
2022-07-15 18:42:07 -07:00
Mikayla Maki
523e565b9b
bad patch for panic on mis configured shell
2022-07-15 18:38:17 -07:00
Mikayla Maki
dc120c1e05
Added settings for common terminal configurations
2022-07-15 18:27:10 -07:00
Max Brunsfeld
69146fb318
Allow the web client to specify activity bucket durations
2022-07-15 16:46:44 -07:00
Max Brunsfeld
1363d2c502
Add admin API for counting users with a given amount of activity
2022-07-15 16:46:44 -07:00
Mikayla Maki
1b3fb257b2
Merge branch 'main' into copy-test-update
2022-07-15 13:24:11 -07:00
Mikayla Maki
e156675640
Revamped testing in terminals
2022-07-15 12:15:55 -07:00
Mikayla Maki
8282858941
Updated copy integration test to match retries on terminal integration test
2022-07-15 11:30:14 -07:00
Mikayla Maki
f38206f819
Merge branch 'main' into keybindings-grind
2022-07-15 11:24:16 -07:00
Mikayla Maki
3e86411627
Finished new keybindings system for now
2022-07-15 11:20:54 -07:00
Mikayla Maki
90428255d9
Added some simple tests for the new keybindings
2022-07-15 10:36:37 -07:00
Isaac Clayton
85cf703282
Fix typos, minor revisions
2022-07-15 13:16:01 +02:00
Isaac Clayton
d121226cd6
Write initial plan
2022-07-15 12:58:20 +02:00
Mikayla Maki
f9995e1fcd
Starting on tests
2022-07-15 00:26:04 -07:00
Antonio Scandurra
d89465c451
Merge pull request #1356 from zed-industries/differentiate-same-tab-titles
...
Differentiate among tabs with the same name
2022-07-15 08:30:22 +02:00
Mikayla Maki
8220b37c4f
Method rename
2022-07-14 17:25:17 -07:00
Mikayla Maki
1935208de6
Clean up prints
2022-07-14 17:23:43 -07:00
Mikayla Maki
98651c4b86
New key mapping system in place and working
2022-07-14 17:21:30 -07:00
Mikayla Maki
2e749631fe
Checkpoint, have caret notation implemented
2022-07-14 16:27:02 -07:00
Mikayla Maki
cf5c20c3a5
Remembered how to use a terminal
2022-07-14 13:15:42 -07:00
Keith Simmons
17f52fb587
Merge pull request #1355 from zed-industries/better-tab-ordering
...
More intuitive tab ordering
2022-07-14 12:26:46 -07:00
Antonio Scandurra
d4ee372eab
🎨
2022-07-14 16:46:45 +02:00
Antonio Scandurra
49ef33090c
Add test for tab disambiguation
2022-07-14 16:42:30 +02:00
Isaac Clayton
91fefae96a
Add retries to failing terminal test
2022-07-14 16:05:10 +02:00
Isaac Clayton
52e4774e8a
Re-enable JSON plugin
2022-07-14 15:13:12 +02:00
Antonio Scandurra
fd5cb02ea9
Truncate description in tab title when it is too long
2022-07-14 15:12:16 +02:00
Isaac Clayton
b3ac63b7b5
Remove triple-based suffix
2022-07-14 15:05:54 +02:00
Isaac Clayton
af1ad474e3
Update docs
2022-07-14 13:46:41 +02:00
Isaac Clayton
80b45ef93b
Precompile plugins depending on target triple
2022-07-14 13:23:04 +02:00
Antonio Scandurra
07d269234f
Differentiate among tabs with the same name
...
This commit introduces a new, optional `Item::tab_description` method
that lets implementers define a description for the tab with a certain
`detail`. When two or more tabs match the same description, we will
increase the `detail` until tabs don't match anymore or increasing the
`detail` doesn't disambiguate tabs any further.
As soon as we find a valid `detail` that disambiguates tabs enough, we
will pass it to `Item::tab_content`. In `Editor`, this is implemented by
showing more and more of the path's suffix as `detail` is increased.
2022-07-14 11:54:11 +02:00