Commit Graph

3495 Commits

Author SHA1 Message Date
K Simmons
9d20b66f2e Merge branch 'main' into drag-and-drop 2022-08-22 17:24:36 -07:00
K Simmons
13e9336049 Merge branch 'main' into drag-and-drop 2022-08-22 17:18:29 -07:00
K Simmons
e44536344a Removed EventHandler from workspace in favor of mouse event handler 2022-08-22 16:49:14 -07:00
Mikayla Maki
24155d3b27 Renamed all the terminal files 2022-08-22 16:49:01 -07:00
K Simmons
0f43ef9331 Dispatch Event refactoring. Appears to be workingCo-Authored-By: nathan@zed.dev 2022-08-22 16:16:40 -07:00
K Simmons
b97940be9b more wip but currently beach balling 2022-08-22 16:16:39 -07:00
K Simmons
3fb4e6356c Rework presenter dispatch_event to allow isolated propogation of individual MouseRegionEvent types Co-Authored-By: mikayla@zed.dev 2022-08-22 16:16:39 -07:00
K Simmons
0d6125889f WIP 2022-08-22 16:16:39 -07:00
K Simmons
03a344a272 properly constrained tab 2022-08-22 16:16:39 -07:00
K Simmons
ab9f073443 fixed merge errors 2022-08-22 16:16:39 -07:00
K Simmons
133c194f4a wip tab drag and drop 2022-08-22 16:16:39 -07:00
K Simmons
86fdd55fd4 Combined presenter mouse region event dispatching and added support up_out, and drag_over 2022-08-22 16:16:39 -07:00
K Simmons
a650c146f1 more event wip 2022-08-22 16:16:39 -07:00
K Simmons
53add253b6 wip new mouse region events 2022-08-22 16:16:39 -07:00
Max Brunsfeld
58fda5ac1c Test more editing patterns of SyntaxMap, fix bugs 2022-08-22 15:36:58 -07:00
Mikayla Maki
9752650a49 Added note about settings 2022-08-22 14:51:06 -07:00
Mikayla Maki
0a40cc0370 Added experimental keymaps support 2022-08-22 14:49:01 -07:00
Mikayla Maki
b6785c5624
Revert "Basic feature flag implementation" 2022-08-22 13:54:18 -07:00
Mikayla Maki
0450380e97 Fixed name issue 2022-08-22 13:38:23 -07:00
Mikayla Maki
7efeb0662a Changed name to experiments 2022-08-22 13:27:36 -07:00
Mikayla Maki
9b6116e1e2 Basic feature flag implementation 2022-08-22 13:11:23 -07:00
Julia
5019ae78c6
Merge pull request #1545 from zed-industries/only-extend-selection-with-shift-without-other-modifiers
Only extend selection with shift without other modifiers
2022-08-22 11:37:39 -04:00
Antonio Scandurra
72ccb52eb0 💄 2022-08-22 15:05:11 +02:00
Antonio Scandurra
92f0e4fd74 Don't auto-complete do...end
Implementing this properly is a bit finicky, and it's unclear this
is even expected, e.g. VS Code and Atom don't auto-complete do/end
for Ruby, although VS Code does auto-complete do/end for Elixir. We
can add it if it's something the Elixir folks want us to implement.
2022-08-22 14:57:44 +02:00
Antonio Scandurra
559dad893f Implement ElixirLspAdapter::label_for_symbol 2022-08-22 14:30:27 +02:00
Antonio Scandurra
13c2021aef Default to language that started LSP when querying project symbols 2022-08-22 14:30:27 +02:00
Antonio Scandurra
cd62e60eba Implement ElixirLspAdapter::label_for_completion 2022-08-22 14:30:27 +02:00
Antonio Scandurra
107ea5d058 Start on Elixir LSP integration 2022-08-22 14:30:27 +02:00
Antonio Scandurra
15429efba9 Add outline support for Elixir 2022-08-22 14:30:27 +02:00
Antonio Scandurra
327aae3bf2 Start adding support for Elixir 2022-08-22 14:30:27 +02:00
Max Brunsfeld
e8548e7732 Restructure handling of changed regions when reparsing 2022-08-21 11:39:02 -07:00
Max Brunsfeld
5209e2d68c Fix off-by-one in handling edits, start on more edit unit tests 2022-08-21 11:37:17 -07:00
Max Brunsfeld
02f8705f2e Start work on handling edits in the SyntaxMap 2022-08-21 11:37:10 -07:00
Max Brunsfeld
f6a817a0f3 Start work on a SyntaxMap data structure 2022-08-21 11:37:10 -07:00
ForLoveOfCats
d00a482bdd Only extend selection with shift without other modifiers 2022-08-21 13:23:48 -04:00
Mikayla Maki
3ffe760ed3 Removed extra todos 2022-08-19 17:20:54 -07:00
Mikayla Maki
c42bf1c50b Fixed bug in mouse handler attaching 2022-08-19 17:19:35 -07:00
Mikayla Maki
aed7c9bcfd
Merge pull request #1543 from zed-industries/terminal-mode-keymaps
Removed debugs, added keymap contexts to terminal
2022-08-19 16:30:47 -07:00
Mikayla Maki
399de91f55 Removed debugs, added keymap contexts to terminal 2022-08-19 16:27:27 -07:00
Mikayla Maki
6122bc863d
Merge pull request #1522 from zed-industries/terminal-mouse
Terminal mouse mode
2022-08-19 15:19:27 -07:00
Mikayla Maki
1de68a724c Debugged mouse reporting for now. Remaining bugs are GPUI level bugs 2022-08-19 15:11:49 -07:00
Julia
fad908e938
Merge pull request #1542 from zed-industries/yet-another-go-to-link-bug-with-selections
Include empty selections in updating link logic on cmd/shift changed
2022-08-19 17:39:22 -04:00
ForLoveOfCats
40a8c26080 Include empty selections in updating link logic on cmd/shift changed
Prevents an issue where pressing cmd while the mouse button is down
would create a link which would fire on mouse up if the selection was
still empty
2022-08-19 17:25:35 -04:00
Mikayla Maki
cfbda00cc4 Finished mouse compatability 2022-08-19 13:54:25 -07:00
Julia
a2fbf686fa
Merge pull request #1539 from zed-industries/double-click-titlebar-maximize
WIP: Double click titlebar to maximize
2022-08-19 16:43:13 -04:00
ForLoveOfCats
55be05b05c Toggle window zoom/maximize when double clicking titlebar 2022-08-19 16:26:31 -04:00
Mikayla Maki
9f9bafd2a7 Merge branch 'terminal-mouse' of github.com:zed-industries/zed into terminal-mouse 2022-08-19 13:04:34 -07:00
Mikayla Maki
a279f83cd6 Finished majority of mouse work. Need to add a setting and change up mouse handlers, and it'll be done. 2022-08-19 13:03:29 -07:00
Mikayla Maki
efd3247ce4 Added modifiers to scroll wheel eevent 2022-08-19 12:10:12 -07:00
Mikayla Maki
a806634b82 Handlers attached, things are looking good 2 go 2022-08-19 11:41:17 -07:00
Mikayla Maki
04600d73fc Moved back to the drag handler, selections work again 2022-08-19 09:50:26 -07:00
Max Brunsfeld
6e67448420 0.52.0 2022-08-19 09:20:26 -07:00
Max Brunsfeld
d15ba8efb4 Revert "Merge pull request #1481 from zed-industries/trigger-search-automatically"
This reverts commit ae8dd1e3fd, reversing
changes made to 96d5dcadf1.
2022-08-19 09:17:43 -07:00
Mikayla Maki
cb0bd340b9
Merge branch 'main' into terminal-mouse 2022-08-18 17:41:19 -07:00
Mikayla Maki
37ca7a6658 Half way done with mouse reporting 2022-08-18 17:37:24 -07:00
Julia
1f7db46d98
Merge pull request #1537 from zed-industries/fix-goto-links-with-selections
Fix goto links with selections
2022-08-18 18:49:21 -04:00
ForLoveOfCats
8583320e9b Add test for pending selection influence on go-to links
Co-authored-by: Max Brunsfeld <max@zed.dev>
2022-08-18 18:34:01 -04:00
ForLoveOfCats
b8b951deab Clear last-mouse-moved pressed button when that button gets a mouse-up
This fixes an annoying issue where if the last mouse moved event was
during a drag it would never trigger mouse cursor changes until next
mouse move reset it. It makes sense to continue to not change the cursor
while the button is pressed so instead this tracks when the mouse button
is released in order to update the mouse move event
2022-08-18 18:34:01 -04:00
ForLoveOfCats
b61e9a940e Avoid triggering goto-definition links while with a pending selection
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-08-18 18:34:01 -04:00
Mikayla Maki
a0d0c84eee Begin mouse mode 2022-08-18 13:28:55 -07:00
Mikayla Maki
0fef72ac5f
Merge pull request #1524 from zed-industries/ime-finalize
IME Changes: Tracking PR
2022-08-18 13:27:30 -07:00
Mikayla Maki
2c4ea7f01d Remove todo 2022-08-18 13:24:00 -07:00
Mikayla Maki
aa98e5c3f7 Fixed scrolling on text input 2022-08-18 13:22:48 -07:00
Mikayla Maki
d545e59b49 Finished IME for now 2022-08-18 12:57:19 -07:00
Mikayla Maki
6652d41864 Fixed cursor blinking, added other cursor shape rendering 2022-08-18 11:28:18 -07:00
Antonio Scandurra
06f9516d31 Fix crash when closing a window while in full-screen mode
This commit delays closing the native window to the next tick to
avoid borrowing either `WindowState` or `MutableAppContext` twice.
2022-08-18 14:59:17 +02:00
Mikayla Maki
acce0042f9 Fixed blink problems 2022-08-17 14:41:28 -07:00
Nathan Sobo
d3904cd961 v0.51.1 2022-08-17 09:47:19 -06:00
Nathan Sobo
443432606e Fix focus regression in contact finder
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-08-17 09:33:48 -06:00
Antonio Scandurra
b60277cad6 v0.51.0 2022-08-17 12:10:32 +02:00
Antonio Scandurra
9c9bf07e40 Create buffers for remote collaborators out of band
Previously, we would use `Project::serialize_buffer_for_peer` and
`Project::deserialize_buffer` respectively in the host and in the
guest to create a new buffer or just send its ID if the host thought
the buffer had already been sent.

These methods would be called as part of other methods, such as
`Project::open_buffer_by_id` or `Project::open_buffer_for_symbol`.
However, if any of the tasks driving the futures that eventually
called `Project::deserialize_buffer` were dropped after the host
responded with the buffer state but (crucially) before the guest
deserialized it and registered it, there could be a situation where
the host thought the guest had the buffer (thus sending them just the
buffer id) and the guest would wait indefinitely.

Given how crucial this interaction is, this commit switches to creating
remote buffers for peers out of band. The host will push buffers to guests,
who will always refer to buffers via IDs and wait for the host to send them,
as opposed to including the buffer's payload as part of some other operation.
2022-08-17 11:55:36 +02:00
Antonio Scandurra
75c9b90c76 Add failing unit test for buffer opening cancellation 2022-08-17 11:55:34 +02:00
Antonio Scandurra
9726d1f049 Bump protocol version 2022-08-17 11:31:48 +02:00
Antonio Scandurra
ab236a6008 Fix divergence bug in undo/redo
As part of #1405, we changed the way we performed undo and redo to
support combining transactions that were not temporally adjacent for
IME purposes.

We introduced a bug with that release that caused divergence
when performing undo: the bug was caused by only changing the visibility
of fragments whose insertion id was contained in the undo operation. However,
an undo operation also affects deletions which we were mistakenly not
considering. Randomized tests caught this but I guess we didn't run enough
of them.
2022-08-17 11:30:04 +02:00
Antonio Scandurra
da805b3d13
Merge pull request #1526 from zed-industries/crash-on-file-prompt-with-japanese-keyboard-layout
Fix crash when attempting to show file prompt while using Japanese keyboard layout
2022-08-17 09:56:09 +02:00
Mikayla Maki
5ad746e53f Added alt screen mode check 2022-08-16 23:10:49 -07:00
Mikayla Maki
bf7b3150e4 Added show character palette. Need to position correctly. 2022-08-16 23:10:05 -07:00
Mikayla Maki
1f82c0c8bf Repeat key problems fixed. 2022-08-16 23:00:09 -07:00
Mikayla Maki
2f2e5506ce Merged main into ime-finalize 2022-08-16 22:57:07 -07:00
Mikayla Maki
aa75fbe56c Fix panic on main 2022-08-16 22:36:24 -07:00
Mikayla Maki
94ba282e76 Checkpoint, alt-n l is very broken. Bisecting. 2022-08-16 22:12:06 -07:00
Max Brunsfeld
e4eead6477 Fix crash when attempting to show file prompt while using Japanese keyboard layout 2022-08-16 17:44:58 -07:00
Mikayla Maki
18dc12218f Begin work on IME changes 2022-08-16 13:01:35 -07:00
Max Brunsfeld
ea09ef2c1a remove http-auth-basic dependency 2022-08-16 12:58:53 -07:00
Mikayla Maki
73cd6b51d8
Merge pull request #1520 from zed-industries/terminal-blink
Terminal cursor blinking
2022-08-15 18:39:23 -07:00
Mikayla Maki
b9c73127b4 Added a hollow mode to the cursor rendering code, for terminal lost focus 2022-08-15 18:27:26 -07:00
Mikayla Maki
bba51c3ae6 Added cursor blink and settings 2022-08-15 18:05:07 -07:00
Max Brunsfeld
1f00f6c163
Merge pull request #1519 from zed-industries/go-to-def-link-font-size-change
Clear any stale go-to-definition link when resizing the buffer font
2022-08-15 17:40:00 -07:00
Max Brunsfeld
754a130e59 Clear go-to-def link when deactivating the window 2022-08-15 17:30:41 -07:00
Mikayla Maki
7b3a7727c6 Basic cursor blinking :) 2022-08-15 17:00:44 -07:00
Max Brunsfeld
7de8228efd Clear stale go-to-def link when resizing buffer font 2022-08-15 16:15:20 -07:00
Mikayla Maki
bb2245ab18
Merge pull request #1518 from zed-industries/add-terminal-focus
Added focus-in and focus-out behavior to terminal
2022-08-15 16:14:05 -07:00
Mikayla Maki
a24e5b128c Fixed text rendering color based on focus 2022-08-15 16:05:03 -07:00
Mikayla Maki
761b211e89 Added focus-in and focus-out behavior to terminal 2022-08-15 15:59:17 -07:00
Max Brunsfeld
51b98d548b Ensure a deterministic order to project activity summaries 2022-08-15 15:23:12 -07:00
Max Brunsfeld
776095caf0 Add bootstrap script, avoid hard-coding zed team members 2022-08-15 13:25:31 -07:00
Antonio Scandurra
4fcba083ba Autoscroll to filename editor when creating or renaming entry
Also, autoscroll when a filename editor goes off-screen and the user
types or changes selections.
2022-08-15 15:14:42 +02:00
Antonio Scandurra
545f12362c Rename {project_panel,contacts_panel}::Toggle to ToggleFocus 2022-08-15 14:53:42 +02:00
Antonio Scandurra
b94366ab90 Add zed::ToggleFullScreen bound to ctrl-cmd-f 2022-08-15 11:53:37 +02:00
ForLoveOfCats
7b71554b58 Don't scroll to cursor when performing file save 2022-08-12 11:20:18 -04:00
Mikayla Maki
e2200109e6 Make clippy happy 2022-08-11 15:47:56 -07:00
Mikayla Maki
804c4c512b Merge branch 'main' into ime-stuff 2022-08-11 15:35:42 -07:00
K Simmons
42c01c5b10 minor rustfmt fix 2022-08-11 11:35:11 -07:00
K Simmons
9aa3f2d777 clippy fixes for focus change 2022-08-10 16:51:01 -07:00
ForLoveOfCats
8ba2f77148 One big cleanup pass of clippy lints
Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-10 16:51:01 -07:00
Keith Simmons
ec015d4607
Merge pull request #1422 from zed-industries/workspace-child-focus-pane-activation
Add on_child_focus and on_child_blur to View trait
2022-08-10 16:42:01 -07:00
K Simmons
4d38dcfc54 Fix workspace 2022-08-10 16:27:45 -07:00
K Simmons
d68f227ec4 Fix failing tests 2022-08-10 16:26:53 -07:00
Mikayla Maki
ee0e6a0109 Added env toml so readme db instructions are correct 2022-08-10 15:07:02 -07:00
Julia
635805cd6f
Merge pull request #1482 from zed-industries/click-goto-on-mouse-up
Handle Cmd/Shift + Click go-to action on mouse-up instead of mouse-down
2022-08-10 12:03:54 -04:00
K Simmons
3bdf05c0cd fix up command palette 2022-08-09 17:15:54 -07:00
K Simmons
f5a6a112c8 Address picker issues 2022-08-09 17:15:54 -07:00
K Simmons
6f180ed822 Pane focus working. Modals seem broken now 2022-08-09 17:15:54 -07:00
K Simmons
049149320c build fix 2022-08-09 17:15:54 -07:00
K Simmons
690ea57211 WIP compiling but failing with circular reference 2022-08-09 17:15:52 -07:00
K Simmons
6442ec59e7 Switch action dispatch to use MutableAppContext parent utilities and delete parent map from presenter 2022-08-09 17:09:28 -07:00
K Simmons
4271eb3624 Event dispatch moved to MutableAppContext. No longer dispatches from presenter. Not currently handling key presses properly 2022-08-09 17:09:16 -07:00
Mikayla Maki
45c0539de0 changed name of subscription mapping and moved out to file
Co-authored-by: Keith <keith@zed.dev>
2022-08-09 16:59:13 -07:00
Mikayla Maki
1044b7d7d2 checkpoint, no idea what's happening 2022-08-09 16:15:53 -07:00
ForLoveOfCats
3d9821b430 Jankily adjust left padding on workspace title in fullscreen
This could seriously be done better

Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-09 19:03:32 -04:00
ForLoveOfCats
43b9f3beb3 Invalidate view when entering/exiting fullscreen
This is required for `render_titlebar` to eventually adapt to
fullscreen status to affect the size of left padding on workspace
name to account for the traffic lights presence/absence

Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-09 19:03:32 -04:00
ForLoveOfCats
46fef69b1a Refactor notification/observation callback pattern in MutableAppContext
Pull out duplicate code and clarify some misc behavior. Some of this
existing API feels like it's probably incorrect but that needs more
thorough investigation

Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-09 19:03:25 -04:00
ForLoveOfCats
ab760493cf Route whether or not a window is fullscreen down into GPUI
This still needs to be able to invalidate things to be useful
but it's a good first cut at just making the information available
to platform-agnostic code

Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-09 19:03:12 -04:00
ForLoveOfCats
a47a6f2f22 Handle Cmd/Shift + Click go-to action on mouse-up instead of mouse-down 2022-08-08 15:59:33 -04:00
ForLoveOfCats
db52593d9b Automatically trigger project search to occur when deploying 2022-08-08 13:17:19 -04:00
Mikayla Maki
435360754b Fixed lack of scrolling 2022-08-05 09:18:24 -07:00
Mikayla Maki
0b1dab7fa7 Merge branch 'main' of github.com:zed-industries/zed 2022-08-04 20:59:22 -07:00
Mikayla Maki
83449c95b0 Fixed terminal clear screen 2022-08-04 20:59:09 -07:00
Max Brunsfeld
7527850546 Handle RPC requests for type definitions on server and host 2022-08-04 15:10:46 -07:00
Max Brunsfeld
4817b11cad 0.50.0 2022-08-04 12:44:31 -07:00
Mikayla Maki
c4a6f4f103
Merge pull request #1471 from zed-industries/terminal-context-menu
Terminal context menu
2022-08-04 12:08:24 -07:00
Mikayla Maki
5a372cecaa
Merge pull request #1467 from zed-industries/new-button
Add discoverable 'New' button
2022-08-04 12:02:57 -07:00
Mikayla Maki
a3e81b7ce2 Merge branch 'new-button' into terminal-context-menu 2022-08-04 12:01:51 -07:00
Mikayla Maki
4549395d02 update icon 2022-08-04 11:58:55 -07:00
Mikayla Maki
06b1a74156 Merge branch 'main' into new-button 2022-08-04 11:54:40 -07:00
ForLoveOfCats
c21314bfbd Add ability to provide custom LSP server initialization options 2022-08-04 14:47:06 -04:00
Max Brunsfeld
134803745a
Merge pull request #1469 from zed-industries/distinctive-marked-text
Tweak "marked ranges" test helper so that it can be used in documents with braces and brackets
2022-08-04 11:39:04 -07:00
Max Brunsfeld
89a645ee11 Add docs to some EditorTestContext methods that use marked text 2022-08-04 11:25:09 -07:00
Mikayla Maki
d823da05ee Added context menu to terminal 2022-08-04 11:22:09 -07:00
Max Brunsfeld
dc0a96c084 Add docs to marked range functions 2022-08-04 11:14:21 -07:00
Max Brunsfeld
26fdaeb92b Use new marked ranges format whenever we don't need overlapping ranges 2022-08-04 10:23:03 -07:00
Mikayla Maki
907d3e4035 Checkpoint, not compiling 2022-08-04 10:16:26 -07:00
Mikayla Maki
314c26e4ec Removed icons 2022-08-04 08:42:42 -07:00
Max Brunsfeld
8e6fb76681 Use new marked_ranges format in more editor tests 2022-08-03 20:04:47 -07:00
Max Brunsfeld
afcf5fc95b Update vim mode tests to use new marked text format 2022-08-03 17:52:34 -07:00
Mikayla Maki
96cc6d5ce5 Added icons to context menu 2022-08-03 16:47:41 -07:00
Max Brunsfeld
eabd9c02e5 Update marked text helpers to use more distinctive characters for markers 2022-08-03 16:45:16 -07:00
Mikayla Maki
bf0ec13e65 New button 2022-08-03 15:59:25 -07:00
Mikayla Maki
81b35c7819 Changed alacritty version 2022-08-03 15:04:48 -07:00
Mikayla Maki
59feb7ab04 Removed debugs 2022-08-03 15:03:03 -07:00