Commit Graph
15149 Commits
Author SHA1 Message Date
Max BrunsfeldandAntonio Scandurra 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 BrunsfeldandAntonio Scandurra 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 a076eeeb96 tweak diagnostic popover colors 2022-07-20 19:02:33 -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