Compare commits

...

1827 Commits

Author SHA1 Message Date
Antonio Scandurra
92de5ab000 v0.49.1 2022-07-27 13:39:29 +02:00
Antonio Scandurra
426b57731d Merge pull request #1419 from zed-industries/ime-regressions
Fix IME regressions
2022-07-27 12:37:37 +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
5c5e7db587 Fix vim keybindings containing the shift modifier
They regressed as part of https://github.com/zed-industries/zed/pull/1405.
2022-07-27 09:31:47 +02:00
Antonio Scandurra
fe7ba09d52 Honor shift when converting keystroke to native key equivalent 2022-07-27 09:28:56 +02: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
Max Brunsfeld
ef1efb615e 0.49.0 2022-07-26 14:26:45 -07:00
Max Brunsfeld
20b8e03ff0 Restore lack of bottom border on active tab
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-07-26 14:20:29 -07:00
Nate Butler
f20fc152f5 Merge pull request #1416 from zed-industries/update-theme-styles
Rebalance text and icon color usage...
2022-07-26 16:04:42 -04:00
Nate Butler
01eed2c844 Rebalance text and icon color usage...
...to better differentiate between primary, secondary and muted.
2022-07-26 15:53:48 -04: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
Nate Butler
0bbf116724 Use Fontawesome Icons
Update arrow variants, download, check marks to use Font awesome icon variants
2022-07-26 12:45:09 -04:00
Antonio Scandurra
b73b58ef6e Merge pull request #1413 from zed-industries/sort-symbols-and-completions
Improve sorting of project symbols and completions
2022-07-26 15:11:33 +02: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
7f6b83d8cc Merge pull request #1412 from zed-industries/fix-go-formatting
Clip invalid edits from LSP instead of reporting an error
2022-07-26 08:51:06 +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
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
Mikayla Maki
2f7ad0a01a Merge pull request #1410 from zed-industries/ctrl-c-regression
Fixed keybinding regression
2022-07-25 16:20:52 -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
d9de0261ba Merge pull request #1405 from zed-industries/ime-support-2
Improve support for non-US keyboards and input
2022-07-25 12:57:57 -07: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
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
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
8e5ed9dbd2 Maybe fixed toml 2022-07-20 10:04:08 -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
Nate Butler
d76cdb01be Merge pull request #1380 from zed-industries/theme-improvements
Theme improvements
2022-07-20 10:40:09 -04: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
55dee53e80 Regenerate package-lock.json 2022-07-19 20:12:50 -04:00
Nate Butler
bcc554a3db Merge branch 'main' into theme-improvements 2022-07-19 20:12:02 -04:00
Nate Butler
df0023ad65 Update package-lock.json 2022-07-19 20:09:28 -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
5bf9db2e21 Fix incorrectly named icons 2022-07-19 17:13:40 -04:00
Nate Butler
9beeef6385 Update some contact panel styling 2022-07-19 17:11:26 -04: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
1a1ec1b81a Merge pull request #1391 from zed-industries/dismiss-project-panel-rename
Dismiss project panel's rename editor when it loses focus
2022-07-18 16:23:15 -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
b4392ec11c Merge pull request #1389 from zed-industries/no-gpu
Avoid panic when unable to access a GPU
2022-07-18 15:08:58 -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
Nate Butler
bb91492098 Fix missing red color in sandcastle theme 2022-07-18 12:33:09 -04:00
Nate Butler
aafaee7463 Fix missing red/incorrect hex colors in one-light 2022-07-18 12:05:27 -04:00
Antonio Scandurra
59366a5c44 Merge pull request #1386 from zed-industries/symlink-cycles
Detect cycles when scanning a directory
2022-07-18 17:58:18 +02: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
4664683069 Remove Redis 2022-07-18 08:59:35 +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
668af83cd6 Format styles directory with prettier. 2022-07-16 11:53:27 -04:00
Nate Butler
45ea412d2c Add the One Dark/ One Light themes 2022-07-16 11:52:40 -04:00
Nate Butler
ef2b42c3fb UI / Theme improvements 2022-07-16 11:52:30 -04:00
Nate Butler
145d59d47a Remove unneeded/state generated tokens
These will be located in a different repo going forwards since they are primarily for figma.
2022-07-16 11:51:59 -04: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
Nate Butler
d1361f7dfc Add new icons
We will need to do an assets clean up soon, we are currently shipping assets we are not using in the app.
2022-07-16 11:39:45 -04:00
Antonio Scandurra
ff1185062d Merge pull request #1379 from zed-industries/fix-tab-panic
Handle inserting multiple tabs on the same row
2022-07-16 08:51:33 +02: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
92bc1a6eef Merge pull request #1377 from zed-industries/bracketed-paste
Add bracketed paste support
2022-07-15 19:10:48 -07: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
eb23f13ac2 Update rust in collab Dockerfiles 2022-07-15 17:15:32 -07:00
Max Brunsfeld
af57871dae Merge pull request #1375 from zed-industries/active-user-counts
Add an admin API for counting users with given amounts of activity
2022-07-15 17:08:31 -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
024011a571 Merge pull request #1373 from zed-industries/copy-test-update
Update terminal testing to match new connection model.
2022-07-15 14:16:20 -07:00
Mikayla Maki
1b3fb257b2 Merge branch 'main' into copy-test-update 2022-07-15 13:24:11 -07:00
Mikayla Maki
dbec03376f Merge pull request #1371 from zed-industries/keybindings-grind
Correctly report all keyboard events to the terminal
2022-07-15 12:30:31 -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
Antonio Scandurra
c442612b10 Merge pull request #1368 from zed-industries/redis
Document using Redis and launch it in `Procfile`
2022-07-15 15:27:09 +02: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
Antonio Scandurra
660289e0a4 Ignore dump.rdb files 2022-07-15 12:09:37 +02:00
Antonio Scandurra
42d68af073 Add instructions to install redis and include it in Procfile 2022-07-15 10:41:07 +02:00
Mikayla Maki
f9995e1fcd Starting on tests 2022-07-15 00:26:04 -07:00
Antonio Scandurra
e5c55f9a54 Merge pull request #1365 from zed-industries/illustrate-buffer-path
Illustrate `format_on_save` external command using prettier
2022-07-15 09:13:13 +02:00
Antonio Scandurra
b5765bc8cd Illustrate format_on_save external command using prettier
This gives us a chance to highlight a real-world scenario that a lot
of our users will want to use, as well as showcasing the special
`{buffer_path}` argument.
2022-07-15 09:00:10 +02: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
a0d0de510d Merge pull request #1364 from zed-industries/terminal-test
Terminal test
2022-07-14 13:35:16 -07:00
Mikayla Maki
6ad5bd4505 Merge pull request #1363 from zed-industries/color-issues
Tidied up the terminal theme
2022-07-14 13:31:09 -07:00
Mikayla Maki
cf5c20c3a5 Remembered how to use a terminal 2022-07-14 13:15:42 -07:00
Mikayla Maki
0e257b4009 Increased test duration 2022-07-14 13:15:02 -07:00
Mikayla Maki
ee61671f92 Tidied up the terminal theme 2022-07-14 13:10:01 -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
94b443a704 Merge pull request #1359 from zed-industries/plugin-json-enable
Plugin json enable
2022-07-14 16:37:53 +02:00
Isaac Clayton
91fefae96a Add retries to failing terminal test 2022-07-14 16:05:10 +02:00
Isaac Clayton
285832e810 Merge pull request #1358 from zed-industries/plugin-cross-pre
Remove requirement for target triple in precompiled binary extension
2022-07-14 15:55:11 +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
Isaac Clayton
4a5b8fd2e6 Merge fuel-based metering 2022-07-14 08:13:47 +02:00
K Simmons
52b29c0928 When tab closed, move to previous tab, and when opening an existing tab, reorder it to be after the current active tab 2022-07-13 20:14:44 -07:00
Max Brunsfeld
df838c74ca 0.47.1 2022-07-13 17:31:59 -07:00
Max Brunsfeld
c90fe31249 Merge pull request #1353 from zed-industries/fix-init-user-settings
Avoid copying all default settings to initial user settings
2022-07-13 17:31:10 -07:00
Max Brunsfeld
8292ba15ed Avoid copying all default settings to initial user settings
This would cause top-level default editor settings to override
language-specific default settings.

Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-07-13 17:07:41 -07:00
Mikayla Maki
66cd4b3d91 Merge pull request #1352 from zed-industries/modal-context
Fixed modal terminal bindings to not show in command palette
2022-07-13 17:03:33 -07:00
Mikayla Maki
f55b24ddee Fixed modal terminal bindings to not show in command palette 2022-07-13 16:39:22 -07:00
Mikayla Maki
79b7dcb596 Basic keybindings infra done 2022-07-13 16:32:25 -07:00
Max Brunsfeld
48624b796e 0.47.0 2022-07-13 15:59:11 -07:00
Max Brunsfeld
9c82d5b080 Merge pull request #1333 from zed-industries/editor-mouse-context-menu
Editor mouse context menu
2022-07-13 15:58:31 -07:00
Keith Simmons
ed1370eafc Merge pull request #1330 from zed-industries/completions-setting
Completions Menu Setting
2022-07-13 15:35:10 -07:00
Max Brunsfeld
bb83d867b3 Merge pull request #1351 from zed-industries/synchronous-language-names
Fix incomplete language names list being used for JSON schema
2022-07-13 15:16:37 -07:00
Max Brunsfeld
4775d839d7 Fix incomplete language names list being used for JSON schema
For now, since initializing the languages themselves is still async,
create a parallel duplicated code path that is synchronous, and
just provided the language names.
2022-07-13 15:04:28 -07:00
K Simmons
e7b1060bca fix merge error to use new default settings flow 2022-07-13 14:29:47 -07:00
Keith Simmons
7f3018c3f6 add show_completions_on_input setting to disable popping the completions menu automatically 2022-07-13 14:23:49 -07:00
Max Brunsfeld
cd87c5552e Merge pull request #1350 from zed-industries/soft-revert-json-plugin
Temporarily remove JSON plugin + restore native JSON LspAdapter
2022-07-13 14:18:04 -07:00
Keith Simmons
5366ed4404 Add basic test for editor context menu 2022-07-13 14:13:19 -07:00
Keith Simmons
b850e41d6f Add editor mouse context menu with some basic refactorings and an entry to pop the code actions 2022-07-13 14:13:19 -07:00
Keith Simmons
d796b543e0 WIP add basic context menu and make progress toward adding quick actions to it 2022-07-13 14:13:19 -07:00
Max Brunsfeld
dddeb66e2a Temporarily remove JSON plugin + restore native JSON LspAdapter 2022-07-13 13:56:39 -07:00
Mikayla Maki
958fd9ad55 Merge pull request #1349 from zed-industries/connection-refactor
Terminal Connection touch up
2022-07-13 13:28:42 -07:00
Mikayla Maki
7885234fbc Added clear screan command 2022-07-13 13:19:21 -07:00
Mikayla Maki
4f9d88f3e0 Made a quick fix for modal issues, better solution pending rewrite 2022-07-13 13:06:23 -07:00
Mikayla Maki
344e037406 remove temporary work 2022-07-13 12:18:43 -07:00
Mikayla Maki
494c168c6f Beginning rewrite of affected systems 2022-07-13 12:18:43 -07:00
Mikayla Maki
f630ab4821 checkpoint 2022-07-13 12:18:43 -07:00
Mikayla Maki
2ca340b9f1 Beginning research 2022-07-13 12:18:43 -07:00
Nate Butler
efad2a9ccd Merge pull request #1348 from zed-industries/fix-theme-rose-pine
Update rose pine theme
2022-07-13 14:51:37 -04:00
Isaac Clayton
5e7456df4e Fix docs 2022-07-13 20:19:56 +02:00
Antonio Scandurra
a452699f6b Merge pull request #1347 from zed-industries/rustup-directly-on-ci
Use rustup directly on CI instead of actions-rs/toolchain
2022-07-13 20:19:09 +02:00
Nate Butler
474a08b1db Update rose pine theme
- Update Rose Pine & Rose Pine Dawn with the correct semantic colors
- Add Rose Pine Moon
2022-07-13 14:16:32 -04:00
Max Brunsfeld
0e010c2fbc Use rustup directly on CI instead of actions-rs/toolchain
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Co-authored-by: Isaac Clayton <slightknack@gmail.com>
2022-07-13 10:37:43 -07:00
Isaac Clayton
8bb8e851df Remove epoch-based metering 2022-07-13 18:03:14 +02:00
Isaac Clayton
562e22814f Remove .pre suffix use .epoch and .fuel instead 2022-07-13 17:08:43 +02:00
Isaac Clayton
3fb1cd0726 Fix issue where precompiled plugins were compiled with the wrong settings 2022-07-13 16:31:47 +02:00
Isaac Clayton
01a2d53638 Merge pull request #1327 from zed-industries/plugin-epoch
Configurable Plugin Yielding
2022-07-13 15:29:22 +02:00
Antonio Scandurra
1460fd0e2f Merge pull request #1342 from zed-industries/mouse-based-splitting
Introduce mouse-based pane splitting
2022-07-13 15:25:20 +02:00
Antonio Scandurra
3e3bd7ccc8 Don't steal focus when splitting pane via context menu 2022-07-13 15:06:39 +02:00
Isaac Clayton
a6edf85078 Use enum to differentiate between normal and precompiled plugins 2022-07-13 14:26:52 +02:00
Isaac Clayton
daf1674ca6 Fix failing test 2022-07-13 13:27:31 +02:00
Isaac Clayton
c956a8866e Quick documentation fix 2022-07-13 13:21:45 +02:00
Isaac Clayton
b3e1fd0740 Rename a few items and add documentation 2022-07-13 13:19:51 +02:00
Isaac Clayton
8b376dd613 Fix resulting errors and introduce functional executor callback 2022-07-13 13:15:12 +02:00
Isaac Clayton
8974b0c490 Work on supporting both epoch and fuel 2022-07-13 12:41:47 +02:00
Antonio Scandurra
9677db9f8f Deploy context menu when clicking on split icon 2022-07-13 12:15:36 +02:00
Isaac Clayton
10670dba70 Add support for configuring plugin yield mechanism, stashing 2022-07-13 11:57:00 +02:00
Antonio Scandurra
c87efb0dbc Show split button at the right edge of the tab bar 2022-07-13 11:44:33 +02:00
Isaac Clayton
8eb8f8ec3a Merge pull request #1340 from zed-industries/plugin-docs-witx
Add note about WebAssembly Interface Types.
2022-07-13 11:09:58 +02:00
Isaac Clayton
d04c3388b4 Switch from epoch to fuel 2022-07-13 11:09:06 +02:00
Antonio Scandurra
e55e69caba Merge pull request #1341 from zed-industries/mitigate-refcell-panics
Mitigate `RefCell` panics
2022-07-13 10:52:21 +02:00
Antonio Scandurra
8e2e5b5cf0 Don't borrow window state mutably until we need to invoke resize callback 2022-07-13 10:38:34 +02:00
Antonio Scandurra
c53fa4941a Ensure no borrows are held when activating window or creating prompts 2022-07-13 10:37:55 +02:00
Antonio Scandurra
d4e0f73ffe Drop window borrow before calling makeKeyAndOrderFront
We're seeing some stack traces where calling `makeKeyAndOrderFront`
could invoke `setFrameSize`, which is causing a double borrow.
2022-07-13 10:19:46 +02:00
Isaac Clayton
97c163a62e Add note about WebAssembly Interface Types. 2022-07-13 09:43:12 +02:00
Isaac Clayton
b49b11f5af Merge pull request #1339 from zed-industries/plugin-rerun
Rerun plugin build step only on change
2022-07-13 09:35:05 +02:00
Isaac Clayton
7e319a2b9d Fix #1335, rerun plugin build step only if non-volatile directories in plugin change 2022-07-13 09:04:48 +02:00
Max Brunsfeld
0defb0e50f Ensure settings global is initialized immediately 2022-07-12 18:43:00 -07:00
Max Brunsfeld
2d23774ac0 Merge pull request #1336 from zed-industries/cancel-rename-restore-highlights
Restore document highlights when canceling a rename
2022-07-12 18:35:29 -07:00
Mikayla Maki
0beb385af4 Merge pull request #1338 from zed-industries/terminal-launch-bug
Terminal launch bug
2022-07-12 18:06:18 -07:00
Max Brunsfeld
28ec4d47cd Merge pull request #1337 from zed-industries/respect-hard-tabs-setting
Simplify setting merging, fix ignored hard_tabs setting
2022-07-12 17:58:21 -07:00
Mikayla Maki
598954d39f Added a bit of documentation for the working directory calculation 2022-07-12 17:49:14 -07:00
Mikayla Maki
41e83b6be2 Fixes terminal launch issues and adds tests for queries 2022-07-12 17:45:11 -07:00
Max Brunsfeld
277f561b8c Simplify setting merging, fix ignored hard_tabs setting 2022-07-12 17:43:00 -07:00
Max Brunsfeld
b7109ea4fc Restore document highlights when canceling a rename 2022-07-12 17:01:18 -07:00
Max Brunsfeld
69f517ead5 Remove stray 'pbcpoy' file 2022-07-12 16:10:26 -07:00
Max Brunsfeld
d0d750c559 Merge pull request #1334 from zed-industries/plugin-id-for-language
Fix association of 'json' lsp language id with JSON language
2022-07-12 16:03:31 -07:00
Max Brunsfeld
2a478462b6 Fix association of 'json' lsp language id with JSON language 2022-07-12 15:43:59 -07:00
Max Brunsfeld
dd554c19df Merge pull request #1331 from zed-industries/discoverable-settings
Make settings more discoverable
2022-07-12 14:38:16 -07:00
Nate Butler
f2c932a933 Add terminal icon for status bar 2022-07-12 17:22:31 -04:00
Max Brunsfeld
0ebf417c2e Pre-populate settings.json when initializing it from Zed 2022-07-12 14:19:36 -07:00
Max Brunsfeld
7750054a45 Add application menu item to open the default settings 2022-07-12 13:38:24 -07:00
Max Brunsfeld
8464c03e65 Adjust settings schema generation to reflect rename
Also, simplify that code.
2022-07-12 12:19:01 -07:00
Max Brunsfeld
c02f4ea8dc Rename LanguageSettings -> EditorSettings 2022-07-12 11:42:43 -07:00
Max Brunsfeld
ec8a493700 Move all default settings from source code into the JSON file 2022-07-12 11:35:19 -07:00
Max Brunsfeld
e51dc25e1d Start moving default settings into a JSON file
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-07-12 11:00:02 -07:00
Isaac Clayton
7f11a32364 Implement periodic yielding using epoch_deadline_async_yield_and_update 2022-07-12 17:07:33 +02:00
Isaac Clayton
1ac8265028 Fix typo 2022-07-12 16:39:04 +02:00
Isaac Clayton
170d27b04c Start working on plugin epoch async yield 2022-07-12 16:32:41 +02:00
Isaac Clayton
8bcfcce506 Merge pull request #1326 from zed-industries/plugin-docs
Write about how plugins work and how to use them
2022-07-12 14:09:52 +02:00
Isaac Clayton
6600251952 Fix yet another typo 2022-07-12 13:54:00 +02:00
Isaac Clayton
37310acea8 Fix more typos 2022-07-12 13:51:13 +02:00
Isaac Clayton
1170d73b57 Fix typo 2022-07-12 13:48:36 +02:00
Isaac Clayton
c188021d6c Write about how plugins work and how to use them 2022-07-12 13:45:22 +02:00
Antonio Scandurra
afc8e9050c Merge pull request #1252 from zed-industries/plugin
Language Server WebAssembly Plugin Integration (Part 2)
2022-07-12 11:04:20 +02:00
Isaac Clayton
815de6da61 Rewrite test_managing_language_servers to add languages after buffers are open
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2022-07-12 10:25:11 +02:00
Antonio Scandurra
c4f10befe8 Use latest Rust version on CI
Co-Authored-By: Isaac Clayton <slightknack@gmail.com>
2022-07-12 09:53:58 +02:00
Isaac Clayton
d8b22a200e Rename LspAdapterTrait to LspAdapter and LspAdapter to CachedLspAdapter 2022-07-12 09:29:38 +02:00
Antonio Scandurra
5c789affc9 Merge pull request #1324 from zed-industries/edited-read-only
Don't prompt guest to save when closing window after disconnection
2022-07-12 09:14:39 +02:00
Antonio Scandurra
b1e3b38cb3 Don't prompt guest to save when closing window after disconnection 2022-07-12 09:05:39 +02:00
Max Brunsfeld
0bcd209a3f Merge pull request #1322 from zed-industries/help-menu-docs
In Help menu, replace 'zed.dev' item with 'Documentation'
2022-07-11 15:27:46 -07:00
Max Brunsfeld
dc1956fe69 In Help menu, replace 'zed.dev' item with 'Documentation' 2022-07-11 13:00:37 -07:00
Isaac Clayton
aeb1b89c25 Make plugin build profile contingent on host build profile 2022-07-11 21:13:52 +02:00
Keith Simmons
1e85d6f07d Add pull request template
Adds some formatting and most importantly add some nudges to fill out tests, settings, and documentation in every PR
2022-07-11 09:41:49 -07:00
Isaac Clayton
031162b473 Remove spurious warnings 2022-07-11 18:36:33 +02:00
Isaac Clayton
41918101ed Add wasm32-wasi to CI workflow 2022-07-11 18:29:27 +02:00
Isaac Clayton
38f8191ce8 Add comment linking engine creating code together 2022-07-11 18:20:50 +02:00
Isaac Clayton
19d19271f6 Remove stale label_for_completion impl from JSON plugin 2022-07-11 18:01:12 +02:00
Isaac Clayton
1dd92c3c28 Remove plugin build script in favor of build.rs plugin builder 2022-07-11 16:59:59 +02:00
Isaac Clayton
0bdbbdd9b6 Convert rust lsp tests from sync #[test] to async #[gpui::test] 2022-07-11 16:55:08 +02:00
Isaac Clayton
836719526c Remove stale commented code 2022-07-11 16:50:49 +02:00
Isaac Clayton
c4bf71d222 Convert go lsp tests from sync #[test] to async #[gpui::test] 2022-07-11 16:47:21 +02:00
Isaac Clayton
638f881fe4 Remove json host-side implementation, rely on plugin implementation 2022-07-11 16:41:30 +02:00
Isaac Clayton
be41ad44a7 Fix minor issues in plugin and project raised during review 2022-07-11 16:40:12 +02:00
Isaac Clayton
bc94d0d1a9 Restore main version of Project::symbols and convert to async 2022-07-11 16:22:58 +02:00
Isaac Clayton
0600157c38 Restore main version of Project::completions and convert to async 2022-07-11 15:55:07 +02:00
Isaac Clayton
ec327a30c3 Fix minor issues pointed out in the review 2022-07-11 15:54:03 +02:00
Isaac Clayton
3ad8d5363c Remove the blocking call and inline on_lsp_diagnostics_published 2022-07-11 12:11:00 +02:00
Isaac Clayton
14bccb4a90 More cleanup during review 2022-07-11 10:56:21 +02:00
Isaac Clayton
5ec828a3e2 Remove unused struct fields 2022-07-11 10:39:14 +02:00
Isaac Clayton
8c91c5c575 Minor fixes found during review 2022-07-11 10:37:51 +02:00
Keith Simmons
19245dd3ae Merge pull request #1315 from zed-industries/fix-terminal-modal-panic
Fix Terminal Panic
2022-07-08 17:26:56 -07:00
Max Brunsfeld
5bafabcb8e Merge pull request #1314 from zed-industries/code-action-with-edit-and-command
Run code action's commands if their edits are empty
2022-07-08 16:58:12 -07:00
Keith Simmons
667d031ec8 Merge pull request #1311 from zed-industries/fix-visual-paste
Fix visual paste
2022-07-08 16:54:10 -07:00
Keith Simmons
ed3666547b Make global type more resilient, and fix modal keymap context 2022-07-08 16:29:29 -07:00
Keith Simmons
20f7fba16f Move terminal scripts to scripts folder, and remove parking_lot from terminal crate
Co-authored-by: mikayla.c.maki@gmail.com
2022-07-08 16:16:57 -07:00
Keith Simmons
31361e564d remove temporary debug print statements
Co-authored-by: mikayla.c.maki@gmail.com
2022-07-08 16:14:41 -07:00
Max Brunsfeld
e101f4e705 Run code action's commands if their edits are empty 2022-07-08 16:12:20 -07:00
Max Brunsfeld
25d75feffc Merge pull request #1313 from zed-industries/release-script
Add script for summarizing changes since last release
2022-07-08 16:10:39 -07:00
Keith Simmons
8d34fe7e94 Refactor terminal connection into a model which can be copied between terminal views
Refactor terminal modal code to use TerminalConnection model handle so we aren't storing TerminalViews in the globals
Adjust INSTANCE_BUFFER_SIZE in renderer to handle pathological terminal renders

Co-authored-by: mikayla.c.maki@gmail.com
2022-07-08 16:10:09 -07:00
Max Brunsfeld
55d7e1757c Add script for summarizing changes since last release 2022-07-08 15:51:28 -07:00
Max Brunsfeld
9683db936d 0.46.0 2022-07-08 14:22:36 -07:00
Max Brunsfeld
6c3384b67a Merge pull request #1312 from zed-industries/fix-tree-query-hang
Fix hang due to tree-sitter query
2022-07-08 14:16:38 -07:00
Max Brunsfeld
1f16c68e6b Upgrade Tree-sitter and limit query cursors' concurrently-buffered matches 2022-07-08 14:09:34 -07:00
Isaac Clayton
8931218dc6 Remove debug statements 2022-07-08 21:28:35 +02:00
Isaac Clayton
3e8b230567 Highlight languages as languages load 2022-07-08 21:19:07 +02:00
Keith Simmons
a82e56918e Merge pull request #1294 from zed-industries/terminal-modal
Proposal: Terminal modal
2022-07-08 11:11:03 -07:00
Keith Simmons
ee007f901a fix pasting at the end of the line in normal mode 2022-07-08 10:57:02 -07:00
Antonio Scandurra
9d06b15d92 Fix spurious borrow checker error
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-07-08 19:03:25 +02:00
Isaac Clayton
988f388165 Added theme to language 2022-07-08 18:11:28 +02:00
Isaac Clayton
6f99d59d38 Require theme directly when creating language 2022-07-08 16:08:40 +02:00
Antonio Scandurra
d0c9818e8b Merge pull request #1309 from zed-industries/gitignore-traverse-ancestors
Honor `.gitignore` files above worktree's root
2022-07-08 15:49:23 +02:00
Isaac Clayton
73620dad06 Add channel to notify project when languages are added 2022-07-08 14:37:27 +02:00
Antonio Scandurra
540aa1748a Add unit test for ignored files in file finder 2022-07-08 12:16:42 +02:00
Antonio Scandurra
56f9c7bc1b Include ignored files in fuzzy search when root entry is ignored 2022-07-08 11:54:45 +02:00
Antonio Scandurra
32c6ae3188 🎨 2022-07-08 11:42:59 +02:00
Antonio Scandurra
e66144104f Honor gitignores above worktree root 2022-07-08 11:19:46 +02:00
Antonio Scandurra
9328ab121a Use absolute paths to compute ignored status
This lays the groundwork for harvesting gitignores up above the
worktree.
2022-07-08 11:19:21 +02:00
Antonio Scandurra
ca225d0765 Make build_gitignore async 2022-07-08 08:50:21 +02:00
Mikayla Maki
4a860d4da4 Properly fixed merge issues 2022-07-07 18:05:37 -07:00
Mikayla Maki
d373e4424f Merge branch 'main' into terminal-modal 2022-07-07 17:48:58 -07:00
Mikayla Maki
621fab2da1 Merge pull request #1299 from zed-industries/terminal-selections
Terminal selections first pass
2022-07-07 17:39:46 -07:00
Mikayla Maki
e628b49dfd First pass at selections complete 2022-07-07 17:31:38 -07:00
Mikayla Maki
be94f614a7 fix merge conflicr 2022-07-07 17:24:55 -07:00
Mikayla Maki
a564f34d3a Merge pull request #1300 from zed-industries/gpui-changes
GPUI change proposals
2022-07-07 17:21:58 -07:00
Mikayla Maki
8cb6e476f0 Fixed panic / bug around scrolling and selections in termainl 2022-07-07 17:19:53 -07:00
Mikayla Maki
ca877245be Finished merge of drag update 2022-07-07 16:12:24 -07:00
Mikayla Maki
bbd0c0d44d Merge branch 'main' into gpui-changes 2022-07-07 16:08:32 -07:00
Mikayla Maki
9fd2bf2fa1 Updated drag API to pass old,new, instead of delta,new 2022-07-07 16:07:24 -07:00
Nathan Sobo
805c06ee76 Merge pull request #1298 from zed-industries/mouse-region-refactor
Mouse Event Refactor
2022-07-07 16:43:36 -06:00
Mikayla Maki
f86106a07e Fixed a bug around selecting a single cell 2022-07-07 15:24:06 -07:00
Mikayla Maki
1fab7be4b5 Finished selections for now 2022-07-07 15:10:08 -07:00
Mikayla Maki
5a1797cb21 Fixing merge conflicts 2022-07-07 14:56:38 -07:00
Mikayla Maki
59c8e8bdad Fixed integration test 2022-07-07 14:55:25 -07:00
Mikayla Maki
ab0ca7d42a Added another minor test 2022-07-07 14:55:25 -07:00
Mikayla Maki
102f502c26 tidied up magic constants 2022-07-07 14:55:25 -07:00
Mikayla Maki
cc985721c6 Added a small integration test 2022-07-07 14:55:25 -07:00
Mikayla Maki
2a6e23ff28 Hoisted assert clipboard into TestAppContext 2022-07-07 14:55:25 -07:00
Mikayla Maki
9209c0dfeb Fixed merge conflict 2022-07-07 14:55:22 -07:00
Mikayla Maki
7c0d9f411a Added copying 2022-07-07 14:55:03 -07:00
Mikayla Maki
8c1054fbb6 Fixed merge conflict 2022-07-07 14:54:58 -07:00
Mikayla Maki
b5919c0555 Fixed merge conflict 2022-07-07 14:54:36 -07:00
Mikayla Maki
415e28e2d3 Fixed merge conflict 2022-07-07 14:54:13 -07:00
Mikayla Maki
a8237858bc Added basic selections 2022-07-07 14:52:04 -07:00
Mikayla Maki
86d5794040 Rebasing onto main 2022-07-07 14:51:59 -07:00
Mikayla Maki
9b6167aad8 added inline hint 2022-07-07 14:51:34 -07:00
Mikayla Maki
2c6dcb82ef GPUI change proposals 2022-07-07 14:51:34 -07:00
Mikayla Maki
49bd51c7c1 Fixed integration test 2022-07-07 14:38:21 -07:00
Mikayla Maki
28fd1ccbc6 Added another minor test 2022-07-07 13:55:58 -07:00
Mikayla Maki
d981f4a3f4 tidied up magic constants 2022-07-07 13:45:27 -07:00
Mikayla Maki
4bd1111115 Added a small integration test 2022-07-07 13:43:28 -07:00
Max Brunsfeld
304ea2d574 Merge pull request #1307 from zed-industries/nav-button-tweak
Add tooltips to pane nav buttons and make them trigger on click
2022-07-07 13:43:01 -07:00
Max Brunsfeld
6642b78331 Add tooltips to pane nav buttons and make them trigger on click 2022-07-07 13:36:08 -07:00
Mikayla Maki
e3f492e13a Hoisted assert clipboard into TestAppContext 2022-07-07 13:29:58 -07:00
Mikayla Maki
c0c2297deb Merge branch 'main' into terminal-selections 2022-07-07 13:20:23 -07:00
Mikayla Maki
4e3c32c277 Added copying 2022-07-07 13:19:38 -07:00
Mikayla Maki
49859d8f94 Merge pull request #1306 from zed-industries/fix-open-pane
Fixed terminal clone on split
2022-07-07 13:05:24 -07:00
Mikayla Maki
98f6dccd43 Fixed terminal clone on split 2022-07-07 13:01:16 -07:00
Mikayla Maki
ad5e4e7c6c Merge pull request #1305 from zed-industries/fix-default-shell
Now defaults to using user's shell
2022-07-07 12:41:37 -07:00
Mikayla Maki
ec4082695b Now defaults to using user's shell 2022-07-07 12:31:21 -07:00
Mikayla Maki
240f3d8754 Fixed default shell 2022-07-07 12:29:49 -07:00
Mikayla Maki
bc306ef8ed Merge branch 'main' into terminal-selections 2022-07-07 12:17:58 -07:00
Mikayla Maki
1cfe8688ca Merge pull request #1304 from zed-industries/deploy-panic
Fixed working directory issues, added tests.
2022-07-07 12:14:57 -07:00
Mikayla Maki
02525c5bbe Added a way to change the timeout with state 2022-07-07 12:04:17 -07:00
Mikayla Maki
9c518085ae Fixed working directory issues, added tests. Working on regression 2022-07-07 11:01:26 -07:00
Isaac Clayton
5cb59dfdab Fix errors resulting from rebase 2022-07-07 18:14:16 +02:00
Isaac Clayton
a16fc2ba0c Add basic support for precompiling plugins 2022-07-07 16:21:27 +02:00
Isaac Clayton
895747476f Done! Finish transition to async, very close to merging 2022-07-07 16:21:20 +02:00
Isaac Clayton
39fdbc593b Fix most warnings 2022-07-07 16:19:49 +02:00
Isaac Clayton
d009e10a46 Fix all residual errors, need to polish off warnings and TODOS 2022-07-07 16:17:03 +02:00
Isaac Clayton
6585daccf9 Further unpropogate async 2022-07-07 16:16:58 +02:00
Isaac Clayton
4f016d5fc4 Switch LspAdapter to struct and revert some async/await 2022-07-07 16:12:10 +02:00
Isaac Clayton
0872e9b1a7 use join_all to build partial symbols and completions asynchronously 2022-07-07 15:44:21 +02:00
Isaac Clayton
602fe14aa4 Going to move LspAdapter from trait to struct 2022-07-07 15:44:21 +02:00
Isaac Clayton
e4a680f47b Uncommented previously commented sections 2022-07-07 15:44:18 +02:00
Isaac Clayton
2b0b341415 Move await outside of a closure, remove future_wrap dependency 2022-07-07 15:42:53 +02:00
Isaac Clayton
172e276411 Fix warnings and propogate async further 2022-07-07 15:42:48 +02:00
Isaac Clayton
ce90dbd06a Temporarily comment out closure errors to address other errors in project 2022-07-07 15:41:34 +02:00
Isaac Clayton
2ff67ef9f6 Factor out await in doubly-nested for loop 2022-07-07 15:40:39 +02:00
Isaac Clayton
db7b863d8c Fix on_settings_changed, need to review that impl is correct 2022-07-07 15:40:01 +02:00
Isaac Clayton
4dad2eb7d7 Refactor closure to extract async 2022-07-07 15:40:01 +02:00
Isaac Clayton
7d128e81aa Add lsp_settings_changed: Task to Project, need to resolve cx in Project::on_settings_changed 2022-07-07 15:39:59 +02:00
Isaac Clayton
f4b4212932 More work on transitioning to async, need to figure out when to stop 2022-07-07 15:38:28 +02:00
Isaac Clayton
feb6cf6789 Allow async to infect some more functions 2022-07-07 15:34:27 +02:00
Isaac Clayton
61f5326033 Add timing instrumentation 2022-07-07 15:32:43 +02:00
Isaac Clayton
2c637b83bf Work on updating code to be async 2022-07-07 15:32:41 +02:00
Isaac Clayton
841a9bd2a7 Make into async trait, will refactor everything Monday 2022-07-07 15:25:49 +02:00
Isaac Clayton
568017da85 Annotate that the bug is due to a deadlock, fixing now 2022-07-07 15:23:27 +02:00
Isaac Clayton
37e04320aa Checkpoint 2022-07-07 15:23:27 +02:00
Isaac Clayton
92c4552146 Isolate smol::Command hang as a test, does not hang 2022-07-07 15:23:27 +02:00
Isaac Clayton
e5481e2e65 Switch from std::process::Command to smol::process::Command 2022-07-07 15:22:17 +02:00
Isaac Clayton
42fc278913 Comment out label_for_completion for now 2022-07-07 15:22:17 +02:00
Isaac Clayton
f61ef446d3 Documentation pass 2022-07-07 15:22:17 +02:00
Isaac Clayton
4565f1a976 Add async host functions 2022-07-07 15:22:17 +02:00
Isaac Clayton
a5a0abb895 Update usage of WasiPlugin -> Plugin 2022-07-07 15:22:17 +02:00
Isaac Clayton
018fd46901 Rename WasiPlugin -> Plugin, etc. 2022-07-07 15:22:17 +02:00
Isaac Clayton
31e3a4d208 WIP: wrap async closures host-side 2022-07-07 15:22:17 +02:00
Isaac Clayton
f110945fd6 Add functions with multiple arguments to import macro, add test cases 2022-07-07 15:22:17 +02:00
Isaac Clayton
28f071e50d Split out lifecycle of serialization, buffer is freed now 2022-07-07 15:22:17 +02:00
Isaac Clayton
8aef8ab259 Add build.rs to rebuild plugins, and a test plugin 2022-07-07 15:22:17 +02:00
Isaac Clayton
5b40734f80 Change ABI from pair of u32s to single u64 2022-07-07 15:22:17 +02:00
Isaac Clayton
7edcf7c423 Factor out serialization code 2022-07-07 15:22:17 +02:00
Isaac Clayton
1f5903d16d Add allocator to store so that it can be used by host functions 2022-07-07 15:22:17 +02:00
Isaac Clayton
47520f0ca1 Remove dependency on self in call-related functions 2022-07-07 15:22:17 +02:00
Isaac Clayton
7266dff537 Fix issue with host function binding 2022-07-07 15:22:17 +02:00
Isaac Clayton
96c2559d2c Work on plugin builder 2022-07-07 15:22:17 +02:00
Isaac Clayton
53e56f1284 Start working on host-side functions 2022-07-07 15:22:17 +02:00
Isaac Clayton
71e0555763 Add JSON LSP plugin 2022-07-07 15:22:16 +02:00
Isaac Clayton
923f093aca First pass of plugin side of things complete 2022-07-07 15:20:27 +02:00
Isaac Clayton
d7b97b25b8 Async runtime working but is blocking 2022-07-07 15:20:27 +02:00
Isaac Clayton
8bce35d1e9 Move Wasi to async, validate timeslicing, using async in traits still WIP 2022-07-07 15:20:27 +02:00
Isaac Clayton
e9b87f3dc3 Factor out buffer code 2022-07-07 15:20:27 +02:00
Isaac Clayton
fbaff615a3 Get JSON LSP running, still work to be done 2022-07-07 15:20:27 +02:00
Isaac Clayton
38d7321511 Remove non-WASI code 2022-07-07 15:20:25 +02:00
Isaac Clayton
805c86b781 Add support for variadic functions 2022-07-07 15:19:03 +02:00
Isaac Clayton
17d15b2f08 Get Wasi working 2022-07-07 15:19:02 +02:00
Isaac Clayton
b84948711c Start moving code from Zed to plugin 2022-07-07 15:17:02 +02:00
Isaac Clayton
7dd3114a7a Start switching JSON LSP adapter to plugin (take 2) 2022-07-07 15:16:59 +02:00
Isaac Clayton
35b2eff29c Update plugin dependencies 2022-07-07 15:11:51 +02:00
Isaac Clayton
0cf64d6fba Clean up impl a bit 2022-07-07 15:11:51 +02:00
Isaac Clayton
f6a9558c5c Work on macro binding generation, some cleanup needed, rename runner to plugin 2022-07-07 15:11:51 +02:00
Isaac Clayton
dda6dcb3b8 Quick documentation pass 2022-07-07 15:11:51 +02:00
Isaac Clayton
6768713de2 Get basic Wasm runtime running 2022-07-07 15:11:51 +02:00
Isaac Clayton
feae434684 Update lockfile 2022-07-07 15:11:48 +02:00
Isaac Clayton
f6b6d19041 Add wasmtime and fix zstd version conflict 2022-07-07 15:01:15 +02:00
Isaac Clayton
4003037ca8 Documented code, got basic example working 2022-07-07 15:01:09 +02:00
Isaac Clayton
4ff9a6b1b5 Update lockfile 2022-07-07 14:55:46 +02:00
Isaac Clayton
13e0ad7253 Get Runtime working... 2022-07-07 14:55:46 +02:00
Isaac Clayton
265be4a2fb Clean up interface a bit 2022-07-07 14:55:46 +02:00
Isaac Clayton
8293b6971d Start sketching out runner runtime 2022-07-07 14:55:46 +02:00
Antonio Scandurra
627d067e57 Merge pull request #1302 from zed-industries/external-formatting
Introduce support for formatting via an external command
2022-07-07 14:31:17 +02:00
Antonio Scandurra
52b8efca1b Add integration test to exercise formatting via external command 2022-07-07 11:53:32 +02:00
Antonio Scandurra
b91d44b448 Respond with a debug version of the error in rpc Client 2022-07-07 11:52:56 +02:00
Antonio Scandurra
c6254247c3 Allow providing an external format in format_on_save setting 2022-07-07 11:04:03 +02:00
Mikayla Maki
baa011ccf4 added inline hint 2022-07-06 17:57:32 -07:00
Mikayla Maki
b2fa511acd GPUI change proposals 2022-07-06 17:52:20 -07:00
Mikayla Maki
778cfd94d8 Added basic selections 2022-07-06 17:37:12 -07:00
Keith Simmons
c139f1e6b6 combine branches of events in from_native 2022-07-06 16:59:58 -07:00
Max Brunsfeld
4ec2d6e50d Tweak navigation bar colors in theme
I meant to include this in #1297
2022-07-06 16:45:38 -07:00
Max Brunsfeld
f85d54425b Merge pull request #1297 from zed-industries/back-and-forward-buttons
Back and forward buttons
2022-07-06 16:43:31 -07:00
Keith Simmons
bcb553f233 Combine platform mouse events to use common MouseEvent struct and remove MouseDragged event in favor of MouseMoved 2022-07-06 16:37:56 -07:00
Max Brunsfeld
70cf6b4041 Give nav buttons a background on hover 2022-07-06 16:33:44 -07:00
Max Brunsfeld
4e8dbbfd4b Add test for pane nav history covering notification of pane's toolbar 2022-07-06 16:29:11 -07:00
Max Brunsfeld
a378ec49ec Enable and disable nav buttons based on pane's navigation stack
Also, make the `NavHistory` type private to the `workspace` crate.
Expose only the `ItemNavHistory` type, via a method on Pane called
`nav_history_for_item`.
2022-07-06 15:46:43 -07:00
Keith Simmons
686e57373b pull event data out into individual Event structs 2022-07-06 15:36:42 -07:00
Max Brunsfeld
7e5cf6669f Add forward and backward navigation buttons to toolbar 2022-07-06 14:05:24 -07:00
Mikayla Maki
cba5b4ac11 Began working on selections, refactored colors 2022-07-06 13:44:30 -07:00
Keith Simmons
525e317d96 remove custom terminal keybindings 2022-07-06 13:22:54 -07:00
Keith Simmons
2d126c7c5c add terminal modal which can be displayed and dismissed while preserving the terminal state 2022-07-06 13:20:54 -07:00
Max Brunsfeld
bbe325930f 0.45 2022-07-06 11:32:21 -07:00
Max Brunsfeld
bb6a573c67 Merge pull request #1293 from zed-industries/autosave-focus-change-window-activate
Treat window deactivation as a focus change for the purpose of autosave
2022-07-06 11:30:51 -07:00
Max Brunsfeld
a858b3fda9 Treat window deactivation as a focus change for the purpose of autosave 2022-07-06 11:20:29 -07:00
Max Brunsfeld
00d1c2e56f Merge pull request #1291 from zed-industries/fix-autosave-on-close
Fix autosave when closing a tab
2022-07-06 10:54:44 -07:00
Max Brunsfeld
e9a950f613 Merge pull request #1292 from zed-industries/paste-panic
Fix panic on paste when editing with auto-indent
2022-07-06 10:50:38 -07:00
Antonio Scandurra
2c1906d710 Normalize line endings when parsing completions
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-07-06 19:32:45 +02:00
Antonio Scandurra
d3db700db4 Fix panic on paste when editing with auto-indent
Instead of accepting text as it's input by the user, we will read it
out of the edit operation after it gets sanitized by the buffer.
2022-07-06 19:00:11 +02:00
Antonio Scandurra
ab4931da65 Prevent autosave for deleted files 2022-07-06 17:25:33 +02:00
Antonio Scandurra
9286893177 Save item when closing it if autosave on focus change is enabled 2022-07-06 17:04:41 +02:00
Antonio Scandurra
5e00df6267 Move autosave tests down into Workspace 2022-07-06 16:55:05 +02:00
Antonio Scandurra
b937c1acec Move autosave logic up into Workspace and Pane 2022-07-06 16:33:22 +02:00
Antonio Scandurra
980730a4e1 Report whether a view was focused or blurred when observing focus 2022-07-06 15:53:40 +02:00
Antonio Scandurra
573dd29882 v0.44.1 2022-07-06 12:42:41 +02:00
Antonio Scandurra
330fdfbddd Merge pull request #1288 from zed-industries/line-ending-fixes
Line ending fixes
2022-07-06 11:33:52 +02:00
Antonio Scandurra
13c9b1778b Replace lone carriage returns with newlines 2022-07-06 11:00:56 +02:00
Antonio Scandurra
113eb9b94f Don't slice midway through multi-byte char when detecting line ending 2022-07-06 10:21:30 +02:00
Max Brunsfeld
5e2306d0e0 0.44 2022-07-05 17:37:04 -07:00
Max Brunsfeld
77d688b4fb Merge pull request #1287 from zed-industries/handle-carriage-returns-in-edits
Fix crash when pasting text with CRLF line endings
2022-07-05 17:35:38 -07:00
Max Brunsfeld
7e9beaf4bb Strip carriage returns from all text in text::Buffer
* Moving the logic from Rope to text::Buffer makes it easier
  to keep the Rope in sync with the fragment tree.
* Removing carriage return characters is lossier, but is much
  simpler than incrementally maintaining the invariant that
  there are no carriage returns followed by newlines. We may
  want to do something smarter in the future.

Co-authored-by: Keith Simmons <keith@zed.dev>
2022-07-05 17:25:09 -07:00
Mikayla Maki
4d88088ca4 Merge pull request #1286 from zed-industries/grid-renderer
Switch from line-and-character renderer to a direct grid renderer
2022-07-05 17:16:00 -07:00
Mikayla Maki
03cbb94057 changed renderer 2022-07-05 17:10:01 -07:00
Keith Simmons
ed52f8a8a3 WIP making paste better 2022-07-05 16:52:56 -07:00
Keith Simmons
58e57d0150 Merge pull request #1271 from zed-industries/matching-bracket-highlights
Highlight matching bracket when newest selection head is on a bracket
2022-07-05 16:51:46 -07:00
Keith Simmons
229bc94ac3 remove partial edit from normal.rs 2022-07-05 16:48:12 -07:00
Keith Simmons
956dd0c2bc fix error with reverse range marked text ranges 2022-07-05 16:44:45 -07:00
Keith Simmons
1f3dc2f534 highlight both brackets, only when empty selection, and add test 2022-07-05 15:19:05 -07:00
Mikayla Maki
342d38a9fb Working on grid rendering 2022-07-05 15:10:34 -07:00
Mikayla Maki
e14b3db68a Merge pull request #1285 from zed-industries/fix-terminal-backspace
Set up basic enviroment variables
2022-07-05 15:08:16 -07:00
Mikayla Maki
b4dc92dddc Set up basic enviroment variables 2022-07-05 15:02:58 -07:00
Max Brunsfeld
116fa92e84 Change Buffer constructors to construct the History internally 2022-07-05 14:51:52 -07:00
Max Brunsfeld
1add2d270e Merge pull request #1282 from zed-industries/context-menu-below-project-panel-entries
Select the last worktree root when right-clicking below all project panel entries
2022-07-05 13:33:50 -07:00
Max Brunsfeld
4aa19c1a7f Select the last root when right-clicking below all project panel entries 2022-07-05 13:21:41 -07:00
Max Brunsfeld
7ea128951f Merge pull request #1281 from zed-industries/open-default-key-bindings
Add application menu item to open default key bindings
2022-07-05 13:20:22 -07:00
Max Brunsfeld
8048758990 Add application menu item to open default key bindings 2022-07-05 12:41:38 -07:00
Max Brunsfeld
ea1f6d6e00 0.43 2022-07-05 10:46:22 -07:00
Antonio Scandurra
1682cbd457 Merge pull request #1279 from zed-industries/autosave
Introduce autosave
2022-07-05 19:29:31 +02:00
Antonio Scandurra
f1ffcb626a Fix panics in database tests 2022-07-05 17:59:40 +02:00
Antonio Scandurra
f09d265054 Remove non-determinism from autosave after delay 2022-07-05 17:54:54 +02:00
Antonio Scandurra
a5c39acf4c Always finish previous autosave before starting a new one 2022-07-05 17:51:01 +02:00
Antonio Scandurra
ebf4bae173 Add unit test for autosave 2022-07-05 17:51:01 +02:00
Antonio Scandurra
d43e8b270a Add unit test for ViewContext::observe_window_activation 2022-07-05 17:51:01 +02:00
Antonio Scandurra
885172f4dd Honor Autosave setting in Editor 2022-07-05 17:51:01 +02:00
Antonio Scandurra
d589017a80 Add ViewContext::observe_window_activation 2022-07-05 17:51:01 +02:00
Antonio Scandurra
7a6010e7dc Fix unsafe memory access when converting entity handles 2022-07-05 17:50:57 +02:00
Antonio Scandurra
4b533c339d Introduce a new, language-overridable Autosave setting 2022-07-05 09:25:22 +02:00
Antonio Scandurra
8f021d8ca8 Merge pull request #1278 from zed-industries/sync-line-ending
Transmit new line ending when buffer is reloaded
2022-07-05 08:07:38 +02:00
Antonio Scandurra
eac76df0ac Transmit new line ending when buffer is reloaded 2022-07-05 08:01:14 +02:00
Max Brunsfeld
3b67ccc62c Merge pull request #1277 from zed-industries/scale-factor-change
Recalculate Metal layer's drawable size when window's scale factor changes
2022-07-04 15:21:44 -07:00
Max Brunsfeld
6f49f4a9cf Recalculate Metal layer's drawable size when window's scale factor changes 2022-07-04 15:14:08 -07:00
Max Brunsfeld
f82dda9981 Merge pull request #1276 from zed-industries/handle-carriage-returns
Handle files with CRLF (windows-style) line endings
2022-07-04 13:40:28 -07:00
Max Brunsfeld
c1b886b0ce Normalize line endings consistently between fake and real FS 2022-07-04 13:00:12 -07:00
Max Brunsfeld
9804c683c0 Rename NewlineStyle -> LineEnding 2022-07-04 12:47:40 -07:00
Max Brunsfeld
0ba12eab22 Handle a file's line endings changing on disk 2022-07-04 12:30:28 -07:00
Max Brunsfeld
b0efa4f5c1 Move project tests into their own file 2022-07-04 12:00:15 -07:00
Max Brunsfeld
317060913c Merge pull request #1275 from zed-industries/delete-autoclose-pair
Delete the autoclosing bracket when deleting the opening bracket
2022-07-04 10:57:06 -07:00
Max Brunsfeld
771a834d84 Delete the autoclosing bracket when deleting the opening bracket 2022-07-04 10:46:35 -07:00
Antonio Scandurra
d80ecb6f98 Ignore carriage returns when reloading buffer 2022-07-04 17:40:35 +02:00
Antonio Scandurra
3480b50920 Detect buffer newline style and honor it when saving 2022-07-04 17:40:26 +02:00
Antonio Scandurra
f9bad2d81d Replace \r and \r\n with \n when indexing text into the rope 2022-07-04 15:37:40 +02:00
Antonio Scandurra
582185b8cb Merge pull request #1274 from zed-industries/fix-enter-numpad
Support hitting enter on numpad
2022-07-04 10:08:47 +02:00
Antonio Scandurra
9a6092dd1b Support hitting enter on numpad 2022-07-04 10:01:56 +02:00
Antonio Scandurra
ff96a7cce2 Merge pull request #1262 from zed-industries/user-timeline
Improve user activity tracking
2022-07-04 09:28:40 +02:00
Antonio Scandurra
d3b9eca791 Merge branch 'main' into user-timeline 2022-07-04 09:23:16 +02:00
Antonio Scandurra
0b2452f666 Merge pull request #1265 from zed-industries/worktree-performance
Fix problems that arise when large numbers of files change on disk
2022-07-04 09:19:18 +02:00
Antonio Scandurra
aca757a02d Don't poll snapshot if processing events unless user manually changed fs 2022-07-04 08:10:31 +02:00
Keith Simmons
9b36e3d009 Highlight matching bracket when newest selection head is on a bracket 2022-07-01 15:06:16 -07:00
Mikayla Maki
6f5cef1456 Merge pull request #1269 from zed-industries/terminal-fr
Update terminal to use the editor's cursor rendering and fix a couple bugs
2022-07-01 14:59:23 -07:00
Mikayla Maki
6ac5cc0d2a Fixed cursor positioning bugs in multi-byte charcters. Still have at least one though :/ 2022-07-01 14:53:19 -07:00
Mikayla Maki
62939322d3 rendering cursor correctly 2022-07-01 13:03:26 -07:00
Mikayla Maki
f4ac694ad8 Fixed debug offset I added to terminal 2022-07-01 11:48:50 -07:00
Mikayla Maki
ce60a9a50a Cleaned up debugging code 2022-07-01 11:39:43 -07:00
Mikayla Maki
8e4c54ab61 Checkpointing after some debugging 2022-07-01 11:38:12 -07:00
Keith Simmons
1572fef1c4 Merge pull request #1266 from zed-industries/fix-zombie-ra
Fix Zombie Language Servers
2022-07-01 10:20:27 -07:00
Antonio Scandurra
cf05738f68 Remove redundant calls to poll_snapshot 2022-07-01 14:40:39 +02:00
Antonio Scandurra
a42399bcf3 Grab latest snapshot when invoking LocalWorktree::poll_snapshot 2022-07-01 14:36:51 +02:00
Antonio Scandurra
833aa726d5 🎨 2022-07-01 14:11:21 +02:00
Antonio Scandurra
4d3c708387 Add simulate_random_delay to every implemented method in FakeDb 2022-07-01 12:05:29 +02:00
Antonio Scandurra
d36a4888db Ensure worktrees have been sent before responding with definitions
Changing the frequency at which we update worktrees highlighted a
problem in the randomized tests that was causing clients to receive
a definition to a worktree *before* observing the registration of
the worktree itself. This was most likely caused by #1224 because
the scenario that pull request enabled was the following:

- Guest requests a definition pointing to a non-existant worktree
- Server forwards the request to the host
- Host sends an `UpdateProject` message
- Host sends a response to the definition request
- Server observes the `UpdateProject` message and tries to acquire
  the store
- Given that we're waiting, the server goes ahead to process the
  response for the definition request, responding *before*
  `UpdateProject` is forwarded
- Server finally forwards `UpdateProject` to the guest

This commit ensures that, after forwarding a project request and getting a
response, we acquire a lock to the store again to ensure the project still
exists. This has the effect of ordering the forwarded request *after* any
message that was received prior to the response and for which we are still
waiting to acquire a lock to the store.
2022-07-01 11:45:30 +02:00
Mikayla Maki
1c13b41040 Rebasing onto master 2022-06-30 20:44:51 -07:00
Mikayla Maki
ae836e1465 Fixed a major bug and now use the same cursor paint logic as the editor 2022-06-30 20:43:51 -07:00
Mikayla Maki
831afb5ba7 Fixed a major bug and now use the same cursor paint logic as the editor 2022-06-30 20:34:06 -07:00
Mikayla Maki
64d3dc32d2 Update terminal.rs
Whoopsies
2022-06-30 20:30:52 -07:00
Mikayla Maki
04e802874d Merge pull request #1267 from zed-industries/terminal-fr
This pull request is small and doesn't include many changes to any existing functionality. In the interest of removing blockers ASAP, I will merge.
2022-06-30 20:12:08 -07:00
Mikayla Maki
bcf5351e64 Refactored and commented code to be my expressive 2022-06-30 20:02:16 -07:00
Mikayla Maki
092284b062 Fully functional background colors :D 2022-06-30 19:21:42 -07:00
Keith Simmons
ebe733a393 Restart language server using original root path rather than the path of the buffer restarted from 2022-06-30 19:11:21 -07:00
Max Brunsfeld
8a105bf12f WIP - try representing snapshots_to_send as a watch 2022-06-30 18:04:31 -07:00
Keith Simmons
832cc3dd19 Clear language server id for all worktrees when stopping a language server 2022-06-30 17:50:30 -07:00
Keith Simmons
6b50dda28a Fix failing test due to change in stop_language_server function 2022-06-30 17:40:50 -07:00
Keith Simmons
38ca4aab31 add assertion to test_definition ensuring no new language servers are created 2022-06-30 17:24:32 -07:00
Keith Simmons
37b75132b7 Minor comment change 2022-06-30 17:18:28 -07:00
Keith Simmons
f495185a4e add a comment explaining the three language server collections on project 2022-06-30 17:09:23 -07:00
Keith Simmons
5e7651e92e Kill starting servers as well as currently running ones 2022-06-30 17:00:29 -07:00
Keith Simmons
db05e32389 Prevent creating extra language server instances if there already exists one for that workspace 2022-06-30 16:46:26 -07:00
Max Brunsfeld
5fdbc38f46 Don't update worktrees' snapshots in the middle of processing fs events 2022-06-30 15:46:31 -07:00
Max Brunsfeld
b81135e10b Stop waiting for snapshot updates when disconnected from host 2022-06-30 15:07:40 -07:00
Max Brunsfeld
c5351a1276 Ensure that usernames, user ids, and client ids match in random collaboration test
This makes the logs easier to interpret
2022-06-30 14:51:22 -07:00
Keith Simmons
412b56aa3f Merge pull request #1263 from zed-industries/misc-vim-fixes
Minor vim fixes
2022-06-30 12:47:08 -07:00
Keith Simmons
66486870aa Fix vim editor focus selection issues, cancel vim operators on escape and unbound keys 2022-06-30 12:36:02 -07:00
Mikayla Maki
2ee57c1512 Merge pull request #1255 from zed-industries/terminal-fr
WIP: Terminal
2022-06-30 11:30:28 -07:00
Antonio Scandurra
4ee8ee5a06 Ensure newer snapshots are always detected in wait_for_snapshot 2022-06-30 18:04:19 +02:00
Antonio Scandurra
484af8c7c4 Split worktree updates when a peer joins an already-shared project 2022-06-30 16:49:56 +02:00
Antonio Scandurra
845c79ee05 Respond to join project request before sharing project completes
This ensures the guest doesn't observe a huge delay when joining.
2022-06-30 14:29:06 +02:00
Antonio Scandurra
09bb3ddeb8 Split worktree updates and only send 256 entries at a time 2022-06-30 14:06:41 +02:00
Antonio Scandurra
5df0a6a425 Coalesce as many fs events as possible before processing them 2022-06-30 10:20:46 +02:00
Antonio Scandurra
b96962005e Keep looking for a newer snapshot before broadcasting it 2022-06-30 09:54:14 +02:00
Mikayla Maki
06107afdd4 Added background colors and matched the cursor color 2022-06-29 18:50:08 -07:00
Mikayla Maki
5bc0acd88c Directly qualified function makes cargo happy 2022-06-29 18:34:02 -07:00
Mikayla Maki
ab5247c62e Actually correctly flag tests 2022-06-29 18:31:52 -07:00
Mikayla Maki
75a4556244 Fixed unused import 2022-06-29 18:29:36 -07:00
Mikayla Maki
cde11fe4e7 Support for all 24 bits of colors 2022-06-29 18:27:27 -07:00
Max Brunsfeld
336d69fc61 Update contacts panel test to reflect new RPC message flow 2022-06-29 17:58:18 -07:00
Max Brunsfeld
b5d862abfe Only send one UpdateProject msg when changing project's online status 2022-06-29 17:58:02 -07:00
Max Brunsfeld
15b7e2ed32 Merge pull request #1261 from zed-industries/combined-activity-indicator
Show LSP status and auto update status in one status bar indicator
2022-06-29 17:07:35 -07:00
Max Brunsfeld
ae61a24ad3 Show LSP status and auto update status in one status bar indicator 2022-06-29 16:54:01 -07:00
Mikayla Maki
1c038b81ab Finished current working directory stuff 2022-06-29 16:22:05 -07:00
Max Brunsfeld
87124b959d Merge pull request #1257 from zed-industries/vscode-pane-bindings
Adjust pane, tab, panel management bindings to match VS Code
2022-06-29 15:49:25 -07:00
Max Brunsfeld
67414deb82 Add split actions to the application menu 2022-06-29 15:40:32 -07:00
Max Brunsfeld
f22d69aa74 Add other standard macOS bindings for switching to next/prev tab 2022-06-29 15:33:46 -07:00
Max Brunsfeld
581c9af395 Adjust pane, tab, panel management bindings to match VS Code 2022-06-29 15:33:46 -07:00
Mikayla Maki
bc728c160d Properly fixed the issues with the grid :D 2022-06-29 13:19:25 -07:00
Mikayla Maki
61e8c321bc Remove swp 2022-06-29 13:08:02 -07:00
Mikayla Maki
93dfc63f1c Added a test with max, cludged a fix for resizing 2022-06-29 13:07:44 -07:00
Keith Simmons
4dafe1885a Merge pull request #1256 from zed-industries/remove-vim-commands-when-disabled
Update command palette filter from vim mode more proactively
2022-06-29 12:08:18 -07:00
Keith Simmons
c9d23dba6c Update command palette filter from vim mode more proactively 2022-06-29 11:58:12 -07:00
Mikayla Maki
ff44ddc077 Fixed warnings 😓 2022-06-29 09:38:02 -07:00
Antonio Scandurra
5eaa45363d Order by total duration in Db::get_top_users_activity_summary
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-29 18:28:43 +02:00
Antonio Scandurra
7bae759a02 Send extension counts when metadata changes
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-29 17:58:11 +02:00
Antonio Scandurra
d1cdacdf14 Skip ignored entries when recording worktree extensions
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-29 17:00:16 +02:00
Antonio Scandurra
639cd71a3b Record worktree extensions every 5 minutes
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-29 16:58:19 +02:00
Antonio Scandurra
f9e0fec396 Maintain extension counts on local worktrees
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-29 16:38:24 +02:00
Antonio Scandurra
09f4262fd4 Don't share a project unless it's online and we're allowing a request 2022-06-29 15:16:55 +02:00
Antonio Scandurra
e3cfc7b3ce Register project activity for offline projects as well 2022-06-29 14:55:04 +02:00
Antonio Scandurra
a52de770b1 Increase coalesce threshold in Db::get_user_activity_timeline 2022-06-29 14:26:02 +02:00
Mikayla Maki
db95c0d0e1 Removed dead clear code 2022-06-28 18:45:26 -07:00
Mikayla Maki
e3834409dd Fixed focus issues with scrolling and input 2022-06-28 18:28:13 -07:00
Mikayla Maki
38ed70d5cc Added theme support 2022-06-28 17:07:18 -07:00
Mikayla Maki
f28fb5797f Fixed scrolling and cursor location 2022-06-28 15:45:27 -07:00
Mikayla Maki
24d671ed3f First bits of polish 2022-06-28 15:45:27 -07:00
Mikayla Maki
2b1fa07e89 Working on selection 2022-06-28 15:45:27 -07:00
Mikayla Maki
9e55c60b6a working on selection and scrolling in terminals 2022-06-28 15:45:27 -07:00
Mikayla Maki
f58a15bbb1 Removed final stuff from theme.rs 2022-06-28 15:45:27 -07:00
Mikayla Maki
31bc758f35 Forgot to commit last night 2022-06-28 15:45:27 -07:00
Mikayla Maki
b36bf0c56d Finally on solid conceptual ground, able to move ahead confidently with Alacritty code 2022-06-28 15:45:27 -07:00
Max Brunsfeld
14d7375149 Add rest API for user activity timeline 2022-06-28 15:40:48 -07:00
Max Brunsfeld
1d10e45282 🎨 Tweak some names dealing with user activity
* Rename `project_activity_summary` to `top_users_activity_summary`
to make clearer the distinction between it and the per-user summary.
* Rename `user_activity_summary` to `user_activity_timeline`, since
its output is structured a bit differently than the courser-grained
"summary" returned by the top-user query.
* Rename `ActivityDuration` -> `ActivityPeriod`
2022-06-28 15:37:56 -07:00
Antonio Scandurra
5cc5e15f4d Implement Db::summarize_user_activity
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-28 15:11:34 -07:00
Max Brunsfeld
806da0e9ba 0.42.0 2022-06-28 14:33:19 -07:00
Keith Simmons
26215a0d6e Merge pull request #1254 from zed-industries/command-palette-filter
Command palette filter
2022-06-28 14:31:21 -07:00
Max Brunsfeld
fc3ec6966b Merge pull request #1235 from zed-industries/diagnostics-in-hidden-worktrees
Allow diagnostics to be published for hidden worktrees
2022-06-28 14:29:41 -07:00
Max Brunsfeld
8fe6809932 Exclude hidden worktrees from project's diagnostic summaries 2022-06-28 14:23:24 -07:00
Keith Simmons
cea7d3f5a2 add test for filter 2022-06-28 13:45:34 -07:00
Keith Simmons
f6292437fa Add command palette filter global and update it when vim mode is enabled/disabled 2022-06-28 13:35:43 -07:00
Max Brunsfeld
809f330566 Merge pull request #1253 from zed-industries/rust-autoindent-fix
Fix rust auto-indent regression
2022-06-28 13:34:56 -07:00
Max Brunsfeld
f05e94d0de Allow diagnostics to be published for hidden worktrees 2022-06-28 13:31:04 -07:00
Max Brunsfeld
fae1cc36d6 In most languages, use prev non-empty line as basis for preserving indent 2022-06-28 12:21:54 -07:00
Antonio Scandurra
431d71fe92 v0.41.0 2022-06-28 11:21:06 +02:00
Antonio Scandurra
a53de67e6f Merge pull request #1247 from zed-industries/ignore-non-created-progress-tokens
Ignore tokens that were not created via `WorkDoneProgressCreate`
2022-06-28 10:14:42 +02:00
Antonio Scandurra
6cf9514e00 Merge pull request #1246 from zed-industries/python-autoindent
Fix Python auto-indent using new auto-indent features
2022-06-28 10:14:22 +02:00
Antonio Scandurra
ca1d0a6e59 Ignore tokens that were not created via WorkDoneProgressCreate
With the new version of rust-analyzer, we were seeing stray `WorkDoneProgress::End`
messages that create an imbalance in the `pending_diagnostic_updates` that never
resolves. This was causing the diagnostic status bar item to never update because
we wouldn't emit `DiskBasedDiagnosticsStarted` nor `DiskBasedDiagnosticsFinished`.

This commit fixes the above situation by only acknowledging progress report for tokens
that have explicitly been created via the `WorkDoneProgressCreate` request, as stated
by the protocol.

In addition to that, we are replacing the `pending_diagnostic_updates: isize` with
a `has_pending_diagnostic_updates: bool`. We added it at some point to prevent a similar
issue where we would observe begin/end reports in a seemingly random order, which would cause
us to permanently display a `checking...` message in the status bar. I believe this commit
fixes that as well because the `isize` was just a less general solution for the same
underlying issue. As the protocol states: "the token provided in the create request should
only be used once (e.g. only one begin, many report and one end notification should be sent
to it)."
2022-06-28 10:08:43 +02:00
Antonio Scandurra
c127eb56ce Merge pull request #1241 from zed-industries/reopen-closed-item
Introduce `pane::ReopenClosedItem` bound to `cmd-shift-t`
2022-06-28 08:09:03 +02:00
Antonio Scandurra
57f34c6992 💄 2022-06-28 08:04:39 +02:00
Max Brunsfeld
929615964d Add new indentation features to support Python 2022-06-27 22:34:14 -07:00
Keith Simmons
d16ed327f2 Merge pull request #1244 from zed-industries/address-go-hover-panic
Address hover panic add hint for installing go language server
2022-06-27 16:34:02 -07:00
Keith Simmons
1eb8351440 add hover popover setting 2022-06-27 16:21:22 -07:00
Keith Simmons
a477733bcb Address hover panic and add hint to install go when language server failed to install 2022-06-27 15:48:15 -07:00
Keith Simmons
bc82d98ae5 Merge pull request #1237 from zed-industries/jump-to-definition
Mouse jump to definition
2022-06-27 15:20:07 -07:00
Max Brunsfeld
095f18d661 Upgrade Tree-sitter, Tree-sitter-python 2022-06-27 15:12:31 -07:00
Keith Simmons
f73af85218 bump protocol version and fix panic from storing display points instead of anchors 2022-06-27 15:10:36 -07:00
Keith Simmons
a0577f5f46 Fix usage of existing definitions 2022-06-27 10:07:44 -07:00
Antonio Scandurra
c6e7ae528f Add test for reopening closed items 2022-06-27 17:59:25 +02:00
Antonio Scandurra
0652542f60 Introduce pane::ReopenClosedItem bound to cmd-shift-t 2022-06-27 17:44:33 +02:00
Antonio Scandurra
024dfd760c Merge pull request #1239 from zed-industries/ignore-scan-child-errors
Don't stop scanning directory if reading one of the children errors
2022-06-27 08:47:21 +02:00
Antonio Scandurra
7bfd7093b1 Don't stop scanning directory if reading one of the children errors 2022-06-27 08:40:37 +02:00
Antonio Scandurra
9fbcf0e640 Merge pull request #1238 from zed-industries/users-with-no-invites
Allow users with no invites to be fetched from the API
2022-06-27 08:18:19 +02:00
Keith Simmons
a8ea1048cf Change mouse cursor when link is visible 2022-06-24 21:55:57 -07:00
Keith Simmons
a190eb0537 fix rebase merge error 2022-06-24 15:11:57 -07:00
Keith Simmons
92ab107fc9 working jump to definition with tests 2022-06-24 15:09:31 -07:00
Keith Simmons
848445455d Working underline based on symbol origin 2022-06-24 15:05:35 -07:00
Keith Simmons
4286a9b564 wip 2022-06-24 15:03:24 -07:00
Keith Simmons
f78b55f92d wip 2022-06-24 15:03:24 -07:00
Nathan Sobo
4da3005b5c Allow users with no invites to be fetched from the API 2022-06-24 09:57:52 -06:00
Antonio Scandurra
b0eb692760 WIP 2022-06-24 17:21:58 +02:00
Antonio Scandurra
9fcebe783c Merge pull request #1236 from zed-industries/reduce-server-memory-footprint
Reduce memory footprint on server
2022-06-24 09:34:04 +02:00
Antonio Scandurra
fc5517b6be Gather metrics only when /metrics endpoint is retrieved 2022-06-24 09:28:52 +02:00
Antonio Scandurra
a04adbcac1 Don't trace message payload 2022-06-24 09:27:22 +02:00
Max Brunsfeld
4f643baeee 0.40.0 2022-06-23 13:29:32 -07:00
Max Brunsfeld
c91451a1b2 Merge pull request #1234 from zed-industries/fix-editor-cloning
Clone fold and selection state correctly when splitting an editor
2022-06-23 13:27:40 -07:00
Max Brunsfeld
f4e7e8b231 Merge pull request #1229 from zed-industries/non-zero-tabsize
Use NonZeroU32 to ensure settings tabsize cannot be zero
2022-06-23 13:27:30 -07:00
Max Brunsfeld
fb2a7787a1 Clone fold and selection state correctly when splitting an editor 2022-06-23 13:15:50 -07:00
Keith Simmons
755636d10e Use NonZeroU32 to ensure settings tabsize cannot be zero 2022-06-23 12:55:38 -07:00
Max Brunsfeld
1720933597 Merge pull request #1228 from zed-industries/python
Add Python support
2022-06-23 11:25:18 -07:00
Max Brunsfeld
dc056fc46f Treat .pyi files as Python 2022-06-23 11:14:11 -07:00
Max Brunsfeld
4d4db6ec4b Syntax-highlight Python project symbols and completions 2022-06-23 11:14:01 -07:00
Max Brunsfeld
981e53784d Upgrade tree-sitter-python for error recovery improvement 2022-06-23 11:13:30 -07:00
Antonio Scandurra
555847449b Use BTreeMap in Server so we release memory when maps are cleared
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-23 18:02:17 +02:00
Antonio Scandurra
63df644d8f Merge pull request #1232 from zed-industries/language-defaults
Don't override top-level settings with language defaults
2022-06-23 16:48:08 +02:00
Antonio Scandurra
2cb8a3ccfb Don't override top-level settings with language defaults
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-23 16:40:57 +02:00
Antonio Scandurra
f2f9cad375 Merge pull request #1231 from zed-industries/prompt-to-save-on-window-close
Prompt user to save changed buffers when closing window via the mouse
2022-06-23 14:44:20 +02:00
Antonio Scandurra
90102f22fd Improve testing of window edit state 2022-06-23 14:41:47 +02:00
Antonio Scandurra
a21dbdd0d6 Update window edited status when pane item is removed 2022-06-23 14:28:10 +02:00
Antonio Scandurra
2dae0ddcdb Add test to verify closing window via the mouse 2022-06-23 14:18:53 +02:00
Antonio Scandurra
d9b5357234 Always prevent window from closing and manually invoke Workspace::close
This ensures we ask the user to save their state if there are unsaved
changes.
2022-06-23 11:44:14 +02:00
Antonio Scandurra
06033d7fa9 Introduce ViewContext::on_window_should_close
This is a new callback that can be used to interrupt closing the window
when the user has unsaved changes.
2022-06-23 11:43:19 +02:00
Antonio Scandurra
ca8ddcdeec Set window's edited = true when there are unsaved changes 2022-06-23 10:59:50 +02:00
Antonio Scandurra
a6262b97ff Merge pull request #1230 from zed-industries/wrap-panic
Fix panic when `Text` contained carriage returns
2022-06-23 10:28:01 +02:00
Antonio Scandurra
01349e1d42 Fix panic when Text contained carriage returns 2022-06-23 10:21:21 +02:00
Antonio Scandurra
b715e521ce Merge pull request #1227 from zed-industries/maintain-keepalive-under-high-message-volume
Maintain keepalive under high message volume
2022-06-23 07:56:17 +02:00
Max Brunsfeld
11f73bfa4e Integrate pyright language server 2022-06-22 16:58:19 -07:00
Max Brunsfeld
c0dbd8f9b9 Add python outline and bracket queries 2022-06-22 16:28:09 -07:00
Max Brunsfeld
074caa09c2 Make python indent query more general
Upgrade Tree-sitter for a query bugfix that I found while
writing this indent query.
2022-06-22 16:18:52 -07:00
Max Brunsfeld
4cb68b2966 Prioritize keepalive pings over incoming message handling in Peer 2022-06-22 14:44:05 -07:00
Max Brunsfeld
36f8c68099 Remove redundant run_until_parked call in Foreground::advance_clock 2022-06-22 14:43:21 -07:00
Max Brunsfeld
a14b626927 Enable env log in peer tests 2022-06-22 14:42:20 -07:00
Max Brunsfeld
c0a434fe27 Merge pull request #1225 from zed-industries/fix-randomized-test-failure
Don't wait for host's worktree updates if they disconnected
2022-06-22 11:01:25 -07:00
Antonio Scandurra
2d8ffbdfa2 Don't wait for host's worktree updates if they disconnected
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-22 19:45:55 +02:00
Antonio Scandurra
48ff443d10 Remove stray log statement when contacts are updated
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-22 19:40:52 +02:00
Antonio Scandurra
49addc9937 Merge pull request #1224 from zed-industries/forward-deadlock
Prevent deadlocks when two clients perform a request to each other
2022-06-22 19:04:07 +02:00
Antonio Scandurra
f2d134917e Remove non-determinism from Peer caused by smol's timeout helper 2022-06-22 18:39:12 +02:00
Antonio Scandurra
071d940a88 Ensure receive timeout is triggered before waiting on disconnection 2022-06-22 18:02:42 +02:00
Antonio Scandurra
9b521d6097 Use Arc<Deterministic> to understand which await points are parking 2022-06-22 17:39:34 +02:00
Antonio Scandurra
62521531a6 💄 2022-06-22 15:06:22 +02:00
Antonio Scandurra
fb2590d913 Use a FuturesUnordered to process foreground messages
This prevents deadlocks when e.g., client A performs a request to client B and
client B performs a request to client A. If both clients stop processing further
messages until their respective request completes, they won't have a chance to
respond to the other client's request and cause a deadlock.

This arrangement ensures we will attempt to process earlier messages first, but fall
back to processing messages arrived later in the spirit of making progress.
2022-06-22 15:04:17 +02:00
Antonio Scandurra
6eb3e72c36 Add test demonstrating hang when peers wait on each other's response 2022-06-22 14:41:14 +02:00
Antonio Scandurra
f09a997d2d Merge pull request #1223 from zed-industries/update-metadata-when-worktrees-are-removed
Update project metadata when releasing a worktree's weak handle
2022-06-22 10:50:44 +02:00
Antonio Scandurra
2f09a4af16 Update project metadata when releasing a worktree's weak handle
When a project was getting unshared, we would remove invisible worktrees
from the project's state without notifying the server, which was causing
the randomized tests to fail.

This commit calls `Project::remove_worktree` when a worktree's handle gets
released. Doing so ensures that we update both our local metadata database
as well as the state on the server.
2022-06-22 10:26:10 +02:00
Max Brunsfeld
34351c0a51 Start work on Python support 2022-06-21 17:04:54 -07:00
Keith Simmons
484e98c0bb Merge pull request #1216 from zed-industries/hover-context-menu-fix
Don't trigger hover popover action when mouse is over context menu
2022-06-21 13:43:24 -07:00
Keith Simmons
19feb627d8 Add comment linking to long term plan 2022-06-21 12:38:27 -07:00
Max Brunsfeld
dc8d5f4ae3 Merge pull request #1217 from zed-industries/fix-lsp-statuses-for-guests
Report running language servers when sharing project for the first time
2022-06-21 11:50:58 -07:00
Antonio Scandurra
83f38aa1ba Merge pull request #1215 from zed-industries/suggest-upgrade-on-reconnect
Show upgrade required message when reconnecting after a protocol change
2022-06-21 20:41:36 +02:00
Antonio Scandurra
69aa3d848e Report running language servers when sharing project for the first time
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-21 20:39:54 +02:00
Max Brunsfeld
e9d19457d6 Add failing test for replication of lsp statuses
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-21 11:27:08 -07:00
Keith Simmons
057a7ec989 Don't trigger hover popover action when mouse is over context menu 2022-06-21 11:23:25 -07:00
Antonio Scandurra
a5ae8d9072 Merge pull request #1214 from zed-industries/fix-error-on-empty-worktree-update
Fix error when worktree has no file extensions
2022-06-21 20:08:20 +02:00
Max Brunsfeld
30d75620f1 Fix error when worktree has no file extensions
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-21 11:02:13 -07:00
Keith Simmons
e88f115467 Merge pull request #1213 from zed-industries/hover-dismiss-fix
hide hover on editor blur
2022-06-21 10:47:52 -07:00
Keith Simmons
fb881b2eda hide hover on editor blur 2022-06-21 10:37:59 -07:00
Max Brunsfeld
6a2c5e0dc1 Show upgrade required message when reconnecting after a protocol change
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-21 10:26:34 -07:00
Antonio Scandurra
69bd6bf1f3 Merge pull request #1212 from zed-industries/persist-project-activity
Add an API that returns the most active zed users and the projects where they've been active
2022-06-21 18:16:29 +02:00
Antonio Scandurra
db77601aa2 Expose project metadata via GET /project_metadata 2022-06-21 18:06:31 +02:00
Antonio Scandurra
ebaf3224fd Exclude staff from activity recording 2022-06-21 16:07:59 +02:00
Antonio Scandurra
c90e8c08a6 Accept a datetime range when querying project activity 2022-06-21 14:03:10 +02:00
Antonio Scandurra
95a629d200 Unregister project from db when user disconnects or manually does so 2022-06-21 10:37:34 +02:00
Antonio Scandurra
7acebc4eb8 Register projects in the database and record worktree extensions 2022-06-21 10:29:26 +02:00
Max Brunsfeld
44160869eb Add an API that returns the most active users and the projects where they've been active 2022-06-20 19:46:37 -07:00
Antonio Scandurra
bc3287e5d0 Merge pull request #1209 from zed-industries/mdx-highlighting
Highlight files ending in `mdx` as Markdown
2022-06-20 15:56:14 +02:00
Antonio Scandurra
0e20782b53 Highlight files ending in mdx as Markdown
This is clearly a stopgap solution but it'll make our life easier
while hacking on zed.dev.
2022-06-20 15:53:45 +02:00
Antonio Scandurra
041e230d24 Merge pull request #1208 from zed-industries/enhance-autoclose
Enhance auto-closing bracket behavior
2022-06-20 12:17:10 +02:00
Antonio Scandurra
d425d9fa64 Allow wrapping selected text with ' in Rust 2022-06-20 11:56:46 +02:00
Antonio Scandurra
6040429f93 Auto-close ' for TypeScript and don't do so for Rust 2022-06-20 11:55:40 +02:00
Antonio Scandurra
d5efae609e Respect close in language configuration when autoclosing bracket 2022-06-20 11:50:44 +02:00
Antonio Scandurra
d6c630f8eb Add missing auto-close brackets from various languages 2022-06-20 11:38:12 +02:00
Antonio Scandurra
9cf1774ca8 Merge pull request #1207 from zed-industries/remove-folder-from-project
Replace "Remove Folder from Project" label with "Remove from Project`
2022-06-20 10:58:20 +02:00
Antonio Scandurra
137a3996a1 Replace "Remove Folder from Project" label with "Remove from Project` 2022-06-20 10:53:26 +02:00
Max Brunsfeld
4bb5a2f19e Merge pull request #1206 from zed-industries/fix-offline-project-leak
Fix project leak in contacts panel
2022-06-17 15:55:43 -07:00
Max Brunsfeld
71534d4412 Avoid holding a strong project handle in an on_click callback 2022-06-17 15:41:48 -07:00
Max Brunsfeld
6359535c52 v0.39.0 2022-06-17 14:22:49 -07:00
Antonio Scandurra
9319cbdd0b Merge pull request #1205 from zed-industries/bypass-app-menu
Override `performKeyEquivalent` to handle key events
2022-06-17 17:31:51 +02:00
Antonio Scandurra
a35d7c5e15 Use BOOL instead of Rust booleans in handle_key_equivalent 2022-06-17 17:19:18 +02:00
Antonio Scandurra
8f6d081de8 Override performKeyEquivalent to handle key events
This lets us bypass the application menu and invoke the event handler
in Zed first. If that doesn't handle the event, the application menu
item corresponding to the shortcut will be actioned. Prior to this
commit the opposite would happen, which would dramatically limit the
throughput at which we could handle events.
2022-06-17 17:12:56 +02:00
Antonio Scandurra
607903eed5 Return true in the Window::on_event callback if event was handled 2022-06-17 17:09:16 +02:00
Antonio Scandurra
ae2273b40a Merge pull request #1204 from zed-industries/accurate-is-dirty
Determine `Buffer::is_dirty` based on the rope's fingerprint
2022-06-17 16:08:07 +02:00
Antonio Scandurra
4f215a77cd Don't compute fingerprint for every text summary 2022-06-17 15:15:27 +02:00
Antonio Scandurra
5654684d30 Fix editor tests after changing the semantics of is_dirty 2022-06-17 12:57:40 +02:00
Antonio Scandurra
052222c91c Bump protocol version 2022-06-17 12:39:59 +02:00
Antonio Scandurra
6f7a893ec9 Determine Buffer::is_dirty based on the rope's fingerprint 2022-06-17 12:38:25 +02:00
Antonio Scandurra
c31a233aad Introduce a new fingerprint field to TextSummary
This is calculated in `Rope` and uses the `bromberg_sl2` homomorphic
hash function to determine the fingerprint of a single chunk and
compose each chunk fingerprint into a single fingerprint for the entire
rope that is equivalent to hashing all the rope's bytes at once.
2022-06-17 12:12:37 +02:00
Max Brunsfeld
7d70011ef1 Merge pull request #1203 from zed-industries/themes-in-app-menu
Themes in app menu
2022-06-16 17:59:10 -07:00
Max Brunsfeld
21ecbce9b8 Add a Zed > Preferences submenu with prefs, bindings, theme 2022-06-16 17:50:44 -07:00
Max Brunsfeld
2c61bc2b1f Always use capital letters when rendering a keystroke 2022-06-16 17:48:10 -07:00
Max Brunsfeld
a3b17ffd15 Allow creating application menus with submenus 2022-06-16 17:47:39 -07:00
Max Brunsfeld
619c874984 Merge pull request #1202 from zed-industries/avoid-bad-markdown-autoindent
Disable auto-indent entirely for markdown
2022-06-16 15:00:07 -07:00
Max Brunsfeld
216a275ef2 Disable auto-indent entirely for markdown 2022-06-16 14:20:09 -07:00
Max Brunsfeld
bb63f57073 Merge pull request #1201 from zed-industries/focus-workspace-center-on-escape
Return focus to the workspace center on escape
2022-06-16 11:45:47 -07:00
Max Brunsfeld
dd7b874039 Return focus to the workspace center on escape 2022-06-16 11:30:02 -07:00
Antonio Scandurra
cef85f5d84 Merge pull request #1198 from zed-industries/keyboard-toggle-search-options
Toggle search options via the keyboard
2022-06-16 14:49:37 +02:00
Antonio Scandurra
04c9f849da Merge pull request #1197 from zed-industries/fix-typescript-completions
Use word boundaries instead of syntax to infer completion edit ranges
2022-06-16 14:49:27 +02:00
Antonio Scandurra
9defbf7c76 Bind CloseInactiveItems to alt-cmd-t 2022-06-16 14:42:55 +02:00
Antonio Scandurra
88d8696414 Display tooltip for select prev/next match buttons 2022-06-16 14:37:33 +02:00
Antonio Scandurra
649185da9c Allow toggling search options via the command palette 2022-06-16 14:28:37 +02:00
Antonio Scandurra
29e57c8e3c Toggle project search options via the keyboard 2022-06-16 14:18:45 +02:00
Antonio Scandurra
d0d6c27ae9 Don't select next match when toggling buffer search option 2022-06-16 14:06:47 +02:00
Antonio Scandurra
a835dcefa2 Toggle buffer search options via the keyboard 2022-06-16 13:44:00 +02:00
Antonio Scandurra
dc75b70724 Use word boundaries instead of syntax to infer completion edit ranges 2022-06-16 11:27:22 +02:00
Antonio Scandurra
35889add40 Add failing test for wrong typescript completion 2022-06-16 11:26:35 +02:00
Antonio Scandurra
fcd99c865e Merge pull request #1196 from zed-industries/context-menu-max-width
Cap context menu's width to cover at most 70% of the window
2022-06-16 10:51:04 +02:00
Antonio Scandurra
edd758eb67 Cap context menu's width to cover at most 70% of the window 2022-06-16 10:40:12 +02:00
Antonio Scandurra
48776be9c6 Merge pull request #1195 from zed-industries/lsp-errors
Open a buffer for every language server error when clicking on status
2022-06-16 10:09:47 +02:00
Antonio Scandurra
e09a6890f3 Remove unnecessary dependencies from lsp_status crate 2022-06-16 10:02:23 +02:00
Antonio Scandurra
4e4210ac39 Open a buffer for every language server error when clicking on status 2022-06-16 10:00:29 +02:00
Antonio Scandurra
7239aac532 Merge pull request #1193 from zed-industries/tooltips
Add some tooltips to aid discoverability
2022-06-15 17:19:50 +02:00
Antonio Scandurra
d02bc2f9f8 Add tooltip for project diagnostics 2022-06-15 17:12:47 +02:00
Antonio Scandurra
516bd13474 Add tooltip to follow collaborators 2022-06-15 17:08:39 +02:00
Antonio Scandurra
8a146e49ca Use a different fit mode for tooltips 2022-06-15 16:45:04 +02:00
Antonio Scandurra
f2a48c6b02 Add tooltips for sidebar buttons 2022-06-15 13:50:04 +02:00
Antonio Scandurra
0c8d33bd2d Merge pull request #1192 from zed-industries/fix-autoscroll-on-cursor-click
Autoscroll to newest selection when adding it via the cursor
2022-06-15 13:26:15 +02:00
Antonio Scandurra
4750727586 Autoscroll to newest selection when adding it via the cursor 2022-06-15 13:21:01 +02:00
Antonio Scandurra
16ef5f43bb Merge pull request #1191 from zed-industries/show-split-actions
Replace `pane::Split` action with `Split{Left,Up,Right,Down}`
2022-06-15 13:12:49 +02:00
Antonio Scandurra
da1eb91935 Replace pane::Split action with Split{Left,Up,Right,Down}
This allows us to show them in the command palette.
2022-06-15 13:06:59 +02:00
Antonio Scandurra
fa942e6b3d Merge pull request #1190 from zed-industries/fix-surround-with-pairs
Fix surrounding text with bracket pairs with multiple selections
2022-06-15 11:56:26 +02:00
Antonio Scandurra
7a81983c62 Fix surrounding text with bracket pairs with multiple selections
This was probably a regression that was introduced with the new batched
`Buffer::edit` API and was caused by providing selection ranges in a
non-ordered fashion (we were passing all the starts first and then all the
ends).

With this commit we are adding a unit test to verify the behavior of
`Editor::surround_with_bracket_pair` and changing the order in which
we pass edit ranges to respect the selection order.
2022-06-15 11:48:21 +02:00
Antonio Scandurra
d95e1e6795 Merge pull request #1189 from zed-industries/improve-metrics
Exclude staff from metrics and start tracking active projects
2022-06-15 11:30:12 +02:00
Antonio Scandurra
197a4342d0 Fix tests 2022-06-15 11:16:26 +02:00
Antonio Scandurra
a85f9e74b1 Harvest the latest metrics when /metrics is requested
Now that we track active projects, if nothing happens to the store
during the activity timeout we would still serve some old metrics
that may not account for the staleness of a project.

This commit changes it so that we grab a mutable reference to the store
before serving the metrics, which has the side effect of updating
all the metrics.
2022-06-15 10:54:51 +02:00
Antonio Scandurra
e373e05d27 🎨 2022-06-15 10:42:37 +02:00
Antonio Scandurra
3a1d0dd692 Track active projects in metrics
An active project is defined as a project where there has been at
least a buffer edit, a join request/response, or a follow update
in the last minute.
2022-06-15 10:33:20 +02:00
Antonio Scandurra
6d93a41f40 Exclude admins from collected metrics 2022-06-14 16:26:00 +02:00
Antonio Scandurra
226fa6e3be Merge pull request #1184 from zed-industries/invisible-setting-files
Don't show invisible worktrees in project and contacts panel
2022-06-14 15:21:58 +02:00
Antonio Scandurra
f89977ba41 Bump protocol version 2022-06-14 15:21:37 +02:00
Antonio Scandurra
68093342e7 Broadcast only visible worktree root names 2022-06-14 15:15:23 +02:00
Antonio Scandurra
cfbd8b94d1 Prevent setting files from showing up in project and contacts panels 2022-06-14 14:47:16 +02:00
Antonio Scandurra
7e23bc0c98 Merge pull request #1183 from zed-industries/project-panel-refinements
Polish project panel UX
2022-06-14 14:04:25 +02:00
Antonio Scandurra
5dd28b7e57 🎨 2022-06-14 14:03:25 +02:00
Antonio Scandurra
a5a4246e6c Attempt to open new entry only if it is a file 2022-06-14 14:01:49 +02:00
Antonio Scandurra
572e295854 Open files in project panel using enter instead of right 2022-06-14 13:56:56 +02:00
Antonio Scandurra
146e2b5089 Open files when creating them in project panel 2022-06-14 13:49:47 +02:00
Antonio Scandurra
53387e22f2 Merge pull request #1175 from zed-industries/users-api
Allow specifying `query`, `limit` and `page` when hitting `/api/users`
2022-06-14 11:19:37 +02:00
Antonio Scandurra
76da93d260 Merge branch 'main' into users-api 2022-06-14 11:14:16 +02:00
Antonio Scandurra
bf0fda3141 Merge pull request #1174 from zed-industries/bulk-user-creation
Expose a new `POST /api/bulk_users` API to create many users at once
2022-06-14 09:24:19 +02:00
Antonio Scandurra
49d7b4bc12 Allow specifying query, limit and page when hitting /api/users
This is needed to introduce pagination and search in our admin panel.
2022-06-13 17:30:01 +02:00
Antonio Scandurra
fe1a861bf3 Expose a new POST /api/bulk_users API to create many users at once
This API will accept a vector of JSON entries containing the GitHub login,
the email address and the invite count. If that user already exist, the
invite count will be updated to the new one.
2022-06-13 15:18:18 +02:00
Antonio Scandurra
b1e8e81513 Merge pull request #1172 from zed-industries/more-logs
Add more logging to `collab` to better understand user behavior
2022-06-13 09:22:37 +02:00
Antonio Scandurra
502625c570 Exclude ignored files from the logged extension count 2022-06-13 09:16:16 +02:00
Antonio Scandurra
dcdc6311df Don't retain message payloads in span, just log the payload instead 2022-06-13 09:06:58 +02:00
Antonio Scandurra
3b8388dcdd Log extension counts when worktree is updated 2022-06-13 08:57:21 +02:00
Max Brunsfeld
1bc2bc0e95 Merge pull request #1171 from zed-industries/prompt-save-before-quit
Prompt to save changes before quitting the app
2022-06-10 17:32:57 -07:00
Max Brunsfeld
b9eb875bf4 Prompt to save changes before quitting the app 2022-06-10 17:26:33 -07:00
Max Brunsfeld
d5f360aa0a Merge pull request #1170 from zed-industries/open-metrics
Report collab server metrics to DataDog via OpenMetrics
2022-06-10 17:02:26 -07:00
Max Brunsfeld
e2935100db Move prometheus annotations from deployment to pod spec 2022-06-10 14:32:36 -07:00
Max Brunsfeld
2311534c3c Add DataDog OpenMetrics annotations to collab k8s deployment
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-10 13:35:52 -07:00
Max Brunsfeld
2e6fa889ea Add OpenMetrics endpoint exposing the basic RPC store metrics as guages
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-10 13:32:56 -07:00
Max Brunsfeld
b2798787b4 Merge pull request #1161 from zed-industries/style-jump-to-diagnostic-arrows
Style jump to buffer arrows in diagnostics
2022-06-10 12:35:44 -07:00
Max Brunsfeld
4032e517f9 v0.38.0 2022-06-10 10:19:21 -07:00
Antonio Scandurra
63fdf1398a WIP: Start adding more logs 2022-06-10 18:17:02 +02:00
Antonio Scandurra
799b32c8a9 Merge pull request #1167 from zed-industries/block-scroll-width
Introduce a new `BlockStyle` field for blocks
2022-06-10 14:03:46 +02:00
Antonio Scandurra
f91fb48a4c Simplify EditorElement::layout_blocks 2022-06-10 13:57:43 +02:00
Antonio Scandurra
666ea61dbc Introduce a new BlockStyle field for blocks
This new field allows blocks to specify how they want to be laid out:

- If `Fixed` they can take up all the width they want and they will impact
the scroll width of the editor. This is useful for diagnostic messages and
allows scrolling the editor further to the right to visualize the entire message.
- If `Flex` they can extend all the way to the scroll width without impacting it
any further. This is useful for the rename editor that we insert as a block
decoration when hitting `F2`.
- If `Sticky`, they will be as wide as the editor element and won't participate
in the horizontal scrolling of the editor. This is useful for headers in general,
where we want e.g. the filename and the jump button to always be visible
independently of how much the user has scrolled to the right.
2022-06-10 13:47:40 +02:00
Keith Simmons
8e440bf7ca Merge pull request #1166 from zed-industries/hover-fixes
Always delay hover display
2022-06-09 18:18:01 -07:00
Keith Simmons
02f0fee6ae Always delay hover display 2022-06-09 18:08:23 -07:00
Keith Simmons
699f14ff73 Merge pull request #1144 from zed-industries/hover-fixes
Hover fixes. Addresses delay issues with current hover implementation, shrinks the hover popover, and tweaks the display of markdown data
2022-06-09 17:18:26 -07:00
Keith Simmons
e21d1b1acb Merge fix 2022-06-09 17:07:32 -07:00
Keith Simmons
3cec157335 fix compile error in EditorLspTestContext 2022-06-09 17:03:45 -07:00
Keith Simmons
8378590d57 Test fixes 2022-06-09 17:03:45 -07:00
Keith Simmons
93158bfcff Fix delayed lsp request 2022-06-09 17:03:45 -07:00
Keith Simmons
722023e347 test and build fixes 2022-06-09 17:03:45 -07:00
Keith Simmons
dddfc7beae Add hover test and tweak dismiss logic 2022-06-09 17:03:45 -07:00
Keith Simmons
1da1853a76 Hide hover when font changes, and handle case where delay was preventing hover with large symbol range 2022-06-09 17:03:44 -07:00
Keith Simmons
b51bd87c10 Rework hover delay, respect editor font size, and enable hover in multibuffers 2022-06-09 17:03:44 -07:00
Keith Simmons
ee33fb03f2 wip 2022-06-09 17:03:44 -07:00
Max Brunsfeld
87ba68e3ea Merge pull request #1155 from zed-industries/golang
Add Go support
2022-06-09 14:18:37 -07:00
Max Brunsfeld
924e9648e9 Tweak golang outline query 2022-06-09 13:31:30 -07:00
Max Brunsfeld
9495717421 Add project symbol labels for Go 2022-06-09 13:16:08 -07:00
Max Brunsfeld
861f4c7230 Add syntax highlighting for Go completions 2022-06-09 13:08:18 -07:00
Max Brunsfeld
4ce4c0ef03 Ignore completions from gopls that we can't yet handle
We only support additionalEdits if they are provided when resolving the
completion, not if they are provided immediately.
2022-06-09 13:08:08 -07:00
Max Brunsfeld
7bb7187619 Add tests and fix bugs for editor indent/outdent commands w/ hard tabs 2022-06-09 10:26:09 -07:00
Nate Butler
80e04702de Style jump to diagnostic arrows 2022-06-09 12:31:13 -04:00
Max Brunsfeld
77b9ab0885 Add buffer test for autoindent with hard tabs 2022-06-09 09:05:07 -07:00
Antonio Scandurra
d0898676f8 Merge pull request #1157 from zed-industries/align-editor-menu-to-fit
Snap overlay's bottom/right edge to same window's edge on overflow
2022-06-09 13:59:13 +02:00
Antonio Scandurra
ea8b5016f7 Snap overlay's bottom/right edge to same window's edge on overflow 2022-06-09 13:48:02 +02:00
Antonio Scandurra
e0ecf3bc4c Merge pull request #1156 from zed-industries/disable-language-server
Introduce a new language-overrideable `enable_language_server` setting
2022-06-09 11:35:54 +02:00
Antonio Scandurra
213b31607c Remove language server statuses synchronously when stopping a server 2022-06-09 10:59:02 +02:00
Antonio Scandurra
69170fc33a Add unit test to ensure changing enable_language_server works 2022-06-09 10:48:06 +02:00
Antonio Scandurra
36a1a7a819 Start/stop language servers when enable_language_server changes 2022-06-09 10:08:11 +02:00
Antonio Scandurra
55cc8631cc Introduce a new language-overrideable enable_language_server setting 2022-06-09 10:07:31 +02:00
Antonio Scandurra
9d7476afc6 Extract a Project::stop_language_server method when restarting server
This will be useful later to stop a language server when detecting
configuration changes.
2022-06-09 10:05:35 +02:00
Antonio Scandurra
0408a8259e Add ModelContext::observe_global 2022-06-09 10:05:00 +02:00
Antonio Scandurra
4d615655aa Merge pull request #1142 from zed-industries/multibuffer-jump-to
Show "Jump to Buffer" icon on every excerpt header
2022-06-09 08:58:42 +02:00
Max Brunsfeld
f62fd3cddd Add support for hard tabs
* Add a `hard_tabs` setting that causes indentation to be performed
  using a tab instead of multiple spaces.
* Change Buffer's indentation-related APIs to return an `IndentSize`
  struct with a length and a kind, instead of just a single u32.
* Use hard tabs by default in Go.
2022-06-08 18:30:10 -07:00
Max Brunsfeld
129fc515ef Add parser and queries for go
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-08 10:44:13 -07:00
Max Brunsfeld
36ce3eb5ef Handle messages associated with LSP WorkDoneProgress::Begin messages
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-08 10:26:41 -07:00
Max Brunsfeld
a41f164ffe Launch gopls with the right arguments
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-08 10:25:58 -07:00
Antonio Scandurra
712d47d94f Render a "Jump to Buffer" icon on all excerpt headers 2022-06-08 15:31:29 +02:00
Antonio Scandurra
c2eaf6128e Move ProjectDiagnosticsEditor::jump to Editor::jump 2022-06-08 15:08:11 +02:00
Antonio Scandurra
5fdafbe8c9 Expose a unique key: usize in ExcerptBoundary 2022-06-08 15:02:52 +02:00
Antonio Scandurra
eda569d6b2 Snapshot file instead of path when creating a buffer snapshot 2022-06-08 14:29:14 +02:00
Antonio Scandurra
15b13fe511 Introduce an optional primary field to ExcerptRange 2022-06-08 12:23:12 +02:00
Antonio Scandurra
ffb75b0f02 Extract an ExcerptRange containing a context field in multi_buffer
This lays the groundwork for adding an optional `primary` field that can
be supplied to provide the "jump to" feature.
2022-06-08 12:13:04 +02:00
Antonio Scandurra
d56cc1a5c1 Merge pull request #1141 from zed-industries/fix-status-bar-click
Use visible bounds to determine hit bounds for cursor/mouse regions
2022-06-08 10:23:12 +02:00
Antonio Scandurra
a26af194e7 Use visible bounds to determine hit bounds for cursor/mouse regions 2022-06-08 10:17:22 +02:00
Antonio Scandurra
5c84f4b92c Merge pull request #1140 from zed-industries/fix-range-formatting
Provide `tab_size` when formatting document using LSP range formatting
2022-06-08 10:00:44 +02:00
Antonio Scandurra
d8b885e3ec Provide tab_size when formatting document using LSP range formatting 2022-06-08 09:56:11 +02:00
Antonio Scandurra
71046bf911 Merge pull request #1138 from zed-industries/reduce-log-level
Reduce log level on `collab`
2022-06-08 09:15:35 +02:00
Antonio Scandurra
494a1b332f Reduce log level on collab
This is generating way too much data and doesn't seem very cost-effective
to investigate the issues we've had with the stale contacts panel.
2022-06-08 09:06:13 +02:00
Max Brunsfeld
8f4387a252 Start work on installing gopls 2022-06-07 18:38:37 -07:00
Max Brunsfeld
209ff619ef Simplify interface of latest_github_release helper function 2022-06-07 16:26:01 -07:00
Max Brunsfeld
6efd4e0da6 Merge pull request #1134 from zed-industries/feedback-button
Add status bar link and help menu item to open an issue on feedback repo
2022-06-07 16:06:03 -07:00
Max Brunsfeld
8311458931 Add status bar link and Help menu item to open an issue on feedback repo 2022-06-07 15:48:12 -07:00
Keith Simmons
9d5111e86a Merge pull request #1078 from zed-industries/lsp-hover
LSP Hover Information
2022-06-07 14:45:43 -07:00
Max Brunsfeld
26cd20e38b Merge pull request #1132 from zed-industries/refresh-on-save
Don't refresh the project diagnostics until the user saves
2022-06-07 14:28:07 -07:00
Keith Simmons
1b66e1e185 Add integration test and fix hovering over the wire 2022-06-07 14:22:02 -07:00
Max Brunsfeld
b53f887ecc Merge pull request #1129 from zed-industries/update-notification
Show a notification after Zed auto-updates
2022-06-07 13:16:04 -07:00
Keith Simmons
a6c0ee472c Add vim bindings for hover
Allow scrolling in hover popover
2022-06-07 13:07:53 -07:00
Keith Simmons
67d9abc00f Move highlighting to editor code and implement proto message types for hover response 2022-06-07 11:54:52 -07:00
Keith Simmons
c7cc07aafb working markdown rendering 2022-06-07 11:54:51 -07:00
Isaac Clayton
efd798f5f6 Quick documentation pass 2022-06-07 11:54:33 -07:00
Keith Simmons
b014352740 Syntax highlighting working. Getting started on markdown support 2022-06-07 11:54:33 -07:00
Isaac Clayton
863a3b1886 Clean up impl a bit 2022-06-07 11:54:33 -07:00
Isaac Clayton
d529a1deb4 Add basic debounce, fix flickering 2022-06-07 11:54:31 -07:00
Keith Simmons
560dff7329 Pull hover popover out of context menu 2022-06-07 11:54:00 -07:00
Isaac Clayton
470c70d394 Get minimal POC working 2022-06-07 11:52:52 -07:00
Isaac Clayton
24ad60a651 Add hover action and style context menu 2022-06-07 11:50:49 -07:00
Keith Simmons
0ed8a42bb4 WIP 2022-06-07 11:49:28 -07:00
Keith Simmons
02249dc2e8 Rework darkest color in base16, shadows, and add hoverPopover styleTree 2022-06-07 11:47:38 -07:00
Keith Simmons
0c4f798a2d WIP jump to definition with mouse 2022-06-07 11:47:23 -07:00
Antonio Scandurra
b04e62d895 Fix tracking of in-progress disk-based diagnostics on indicator
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-07 19:35:53 +02:00
Antonio Scandurra
bbfa6580a4 Avoid refreshing diagnostics for language servers that didn't update
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-07 19:05:06 +02:00
Antonio Scandurra
96cdf3b9dd Merge pull request #1130 from zed-industries/prepopulate-project-search
Pre-populate project search query when deploying it from an editor
2022-06-07 10:17:11 +02:00
Antonio Scandurra
6b4e7da7d6 Prepopulate project search query when deploying it from an editor 2022-06-07 10:02:04 +02:00
Max Brunsfeld
c86b12e1b6 Show a notification after Zed auto-updates 2022-06-06 17:42:31 -07:00
Max Brunsfeld
6a086f62d5 Merge pull request #1121 from zed-industries/update-invite-code
Update connected users' invite info when they are granted invite codes
2022-06-06 11:53:16 -07:00
Max Brunsfeld
7efd68966c Merge pull request #1123 from zed-industries/add-context-menu-borders
Add border to context menu
2022-06-06 11:53:11 -07:00
Nate Butler
c920a4229d Add border to context menu 2022-06-06 14:47:28 -04:00
Max Brunsfeld
ce080e9520 Update connected users' invite info when they are granted invite codes 2022-06-06 11:14:01 -07:00
Max Brunsfeld
6899eacf3d v0.37.0 2022-06-06 10:37:27 -07:00
Max Brunsfeld
075dd83a43 Merge pull request #1115 from zed-industries/offset-out-of-range
Fix `offset out of range` panic during `FoldMap::sync`
2022-06-06 10:32:18 -07:00
Max Brunsfeld
436c989e4b Merge pull request #1109 from zed-industries/fix-vim-clearing-selections
Avoid collapsing selections on editor creation when vim_mode is disabled
2022-06-06 10:32:12 -07:00
Antonio Scandurra
1ecc51f035 Fix warnings 2022-06-06 16:23:49 +02:00
Antonio Scandurra
70afc06666 Handle out-of-order edits coming from LSP 2022-06-06 16:15:11 +02:00
Antonio Scandurra
8826ad5ddd Make Buffer::edit and MultiBuffer::edit resilient to inverted ranges
Previously, we would accept edits containing out-of-order ranges. When
generating such ranges in our randomized tests, many invariants started
breaking causing e.g. undo/redo to misbehave and operation application
to panic.

In theory, we should never pass inverted ranges, but this commit changes
the above functions to swap the start and the end when that occurs to avoid
breaking the entire system and panicking.
2022-06-06 15:22:36 +02:00
Antonio Scandurra
939020a652 Merge pull request #1114 from zed-industries/fix-menu-bindings
Add keystroke for menu item only when action is equal to binding
2022-06-06 09:35:38 +02:00
Antonio Scandurra
c22aedfe69 Fix tests 2022-06-06 09:29:42 +02:00
Antonio Scandurra
22dd68fbfb Add keystroke for menu item only when action is equal to binding
This fixes a bug where we would show `cmd-e` instead of `cmd-f` for
`Edit -> Find` because both bindings would have the `buffer_search::Deploy`
action and we were mistakenly selecting the former.
2022-06-06 09:26:33 +02:00
Antonio Scandurra
3a69943df3 Require that PartialEq is implemented for Action 2022-06-06 09:18:44 +02:00
Antonio Scandurra
492cc716d3 Don't manipulate selections when syncing options if vim-mode is disabled
Previously, we were always mutating selections when `sync_editor_options`
was called. This seems to happen every time vim is enabled/disabled, but also
when vim is disabled and editors are simply focused/blurred.

This commit changes it so that we only manipulate selections when vim-mode is active.
2022-06-06 08:14:49 +02:00
Max Brunsfeld
905fbacbc7 vim: Avoid collapsing selections on editor creation when vim_mode is disabled 2022-06-04 15:01:43 -07:00
Antonio Scandurra
eae7c2267c Merge pull request #1107 from zed-industries/event-handler-capture-all
Capture mouse events when rendering disconnected overlay
2022-06-04 10:51:29 +02:00
Antonio Scandurra
74aa9c1320 Capture mouse events when rendering disconnected overlay
We do so by replacing `EventHandler::capture` with a new `::capture_all` method.
After switching to mouse regions as part of zed-industries/zed#1081, overriding
`dispatch_event` on `EventHandler` wasn't enough anymore because mouse interactions
take place on a privileged code path that runs *before* dispatching any event.

With this change, `EventHandler` will now push a mouse region that intercepts all
mouse interactions, as well as pushing a cursor region that resets the cursor style
to `Arrow`.

One interesting change as part of this is that we've removed the ability to see which
event we are capturing: we were not using this capability anyway and `capture_all` provides
a simpler interface, so I went with that. In the future, we can opt into capturing specific
events or mouse interactions if there's a code path that needs that.
2022-06-04 10:41:29 +02:00
Max Brunsfeld
ff3e3d0799 Merge pull request #1084 from zed-industries/private-projects
Offline projects
2022-06-03 17:14:46 -07:00
Max Brunsfeld
41b7fd4a27 Rename a public/private to online/offline in a few more places 2022-06-03 17:08:44 -07:00
Max Brunsfeld
ed14fd6e0d Add setting to make projects online/offline by default 2022-06-03 17:01:15 -07:00
Max Brunsfeld
24aafde1e8 Avoid persisting project's state before it has been initialized 2022-06-03 16:40:16 -07:00
Max Brunsfeld
e18bc24989 Rename project's 'public'/'private' flag to 'online'/'offline' 2022-06-03 14:39:06 -07:00
Max Brunsfeld
b2aa831017 Store a FakeFs on TestClient 2022-06-03 13:49:47 -07:00
Max Brunsfeld
8bd4a0ab81 Don't store Project on TestClient in integration tests 2022-06-03 13:00:56 -07:00
Max Brunsfeld
afdd386057 Move persistence and restoration logic from workspace into project
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-03 11:52:14 -07:00
Max Brunsfeld
3ce739f759 Merge pull request #1098 from zed-industries/cpp
Introduce support for C++
2022-06-03 10:52:17 -07:00
Max Brunsfeld
6a3a3a1124 Add tooltip to the toggle public button in the contacts panel
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-03 10:36:29 -07:00
Antonio Scandurra
55fc2341d8 Consolidate C and C++ LSP adapters
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-03 18:05:43 +02:00
Antonio Scandurra
1db4970c5a Implement CppLspAdapter::name by delegating to CLspAdapter::name
This makes it more evident that both languages share the same language
server.

Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-03 17:49:31 +02:00
Antonio Scandurra
416496225e Syntax-highlight project-wide symbols for C++ 2022-06-03 11:47:56 +02:00
Antonio Scandurra
c6e6a9f1eb Show prettier completions for C++ 2022-06-03 11:33:03 +02:00
Antonio Scandurra
8ca0127658 Make LspAdapter::process_diagnostics optional 2022-06-03 10:56:26 +02:00
Antonio Scandurra
d4da5135f4 Introduce support for C++ 2022-06-03 10:52:34 +02:00
Max Brunsfeld
98b54763b9 Bump protocol version 2022-06-02 18:06:29 -07:00
Max Brunsfeld
36a4d31b5b Keep unregistered projects' ids until pending contact updates are done 2022-06-02 18:04:54 -07:00
Max Brunsfeld
db97dcd76f Don't update contacts when a project is first registered
Until the host has sent an UpdateProject message to populate the project's
metadata, there is no reason to update contacts.
2022-06-02 17:41:21 -07:00
Max Brunsfeld
f7e7a7c6a7 Use rocksdb to store project paths' public/private state 2022-06-02 17:38:33 -07:00
Max Brunsfeld
724affc442 Upgrade deps to avoid multiple versions of transitive deps
* env_logger
* prost-build
* bindgen
2022-06-02 17:38:33 -07:00
Max Brunsfeld
d45db1718e Style the contact panel while public/private operations are in-flight 2022-06-02 17:38:33 -07:00
Max Brunsfeld
d11beb3c02 Change project registration RPC APIs to smooth out UI updates
* Make `UnregisterProject` a request. This way the client-side project can wait
  to clear out its remote id until the request has completed, so that the
  contacts panel can avoid showing duplicate private/public projects in the
  brief time after unregistering a project, before the next UpdateCollaborators
  message is received.
* Remove the `RegisterWorktree` and `UnregisterWorktree` methods and replace
  them with a single `UpdateProject` method that idempotently updates the
  Project's list of worktrees.
2022-06-02 17:32:43 -07:00
Max Brunsfeld
4d4ec793e2 Remove stray println 2022-06-02 17:32:43 -07:00
Max Brunsfeld
b70396b8fb Disconnect FakeServer when dropping it
This prevents memory leak errors in tests, due to parked tasks waiting
for RPC responses.
2022-06-02 17:32:43 -07:00
Max Brunsfeld
3ea061a11e Allow making projects private 2022-06-02 17:32:42 -07:00
Max Brunsfeld
8f676e76b3 Fix mismatched client/context in integration test 2022-06-02 17:29:11 -07:00
Max Brunsfeld
8d46edd26c Avoid holding RefCell borrow while calling TestAppContext::spawn callback 2022-06-02 17:29:11 -07:00
Max Brunsfeld
7ef9de32b1 Show private projects in the contacts panel
Introduce a ProjectStore that lets you iterate through all open projects.
Allow projects to be made public by clicking the lock.
2022-06-02 17:29:11 -07:00
Max Brunsfeld
a60fef52c4 Start work on private projects 2022-06-02 17:29:11 -07:00
Antonio Scandurra
3ffbd56c65 Merge pull request #1093 from zed-industries/fix-panic-version
Report the correct app version when sending panics to server
2022-06-02 13:55:00 +02:00
Antonio Scandurra
7ecc67bcd5 Report the correct app version when sending panics to server
Previously, we were just relying on the `ZED_APP_VERSION` environment
variable without consulting `Platform::app_version`. That would always
report "dev" as the app version because `ZED_APP_VERSION` is only used
for testing.
2022-06-02 13:00:21 +02:00
Antonio Scandurra
a8cde09070 v0.36.1 2022-06-02 12:11:49 +02:00
Antonio Scandurra
7beb1946b2 Merge pull request #1091 from zed-industries/fix-project-diagnostics-panic
Don't reuse the same diagnostic group id across buffers
2022-06-02 12:11:09 +02:00
Antonio Scandurra
6baf8b033b Don't reuse the same diagnostic group id across buffers
This lets us use the group id as the key for an `ElementState`, which
fixes a panic that would occur in project diagnostics when opening it
while there were multiple diagnostic groups with the same id.
2022-06-02 12:05:28 +02:00
Antonio Scandurra
c34b30e739 Merge pull request #1090 from zed-industries/context-menu-polish
Context menu polish
2022-06-02 10:06:44 +02:00
Antonio Scandurra
12267308e4 Don't dismiss context menu when right-clicking project panel again 2022-06-02 10:00:52 +02:00
Antonio Scandurra
701e2090cd Align context menu to fit within the window bounds 2022-06-02 09:47:06 +02:00
Antonio Scandurra
f1964cf2a0 Merge pull request #1089 from zed-industries/jump-to-diagnostic
Jump to diagnostic
2022-06-02 09:35:57 +02:00
Antonio Scandurra
6979e67bed Use anchors to jump to diagnostic whenever possible 2022-06-02 09:30:07 +02:00
Antonio Scandurra
cc028cca78 Simplify usage of tooltip
Now you simply specify a text, an action and a style and GPUI will
take of rendering it properly. This is simpler compared to always
providing a custom element and should make tooltip more consistent
across the UI.
2022-06-02 09:12:50 +02:00
Antonio Scandurra
ba6be46e82 v0.36.0 2022-06-02 08:38:36 +02:00
Antonio Scandurra
9ca9f63046 Match figma styling for tooltips 2022-06-02 08:36:42 +02:00
Max Brunsfeld
b9dc476e74 Avoid sending unnecessary messages for local projects that aren't shared 2022-06-01 14:49:12 -07:00
Antonio Scandurra
0e1307fb23 📝 2022-06-01 10:18:10 +02:00
Antonio Scandurra
b63d965b46 Space out tooltip a little bit to ensure it doesn't overlap cursor 2022-06-01 10:08:25 +02:00
Antonio Scandurra
238827642a Align tooltip based on the available window space 2022-06-01 10:03:46 +02:00
Antonio Scandurra
b3242417b3 Show tooltip when hovering over jump to diagnostic icon 2022-06-01 09:55:45 +02:00
Antonio Scandurra
982de971fa Introduce a new Tooltip element and a with_tooltip helper 2022-06-01 09:55:25 +02:00
Antonio Scandurra
94fc28b29d WIP: start on tooltips 2022-05-31 19:00:44 +02:00
Antonio Scandurra
d180f7a2c3 Jump to primary diagnostic when clicking on header's jump icon 2022-05-31 16:25:14 +02:00
Antonio Scandurra
4f9c207425 Show a clickable jump icon for each diagnostic group header 2022-05-31 15:57:22 +02:00
Antonio Scandurra
aefdde66a6 Pass a &mut BlockContext when rendering blocks
This wraps and derefs to `RenderContext<Editor>`, so that we can
easily use `MouseEventHandler`s in blocks.
2022-05-31 15:50:34 +02:00
Antonio Scandurra
9fa03b2f28 Merge pull request #1086 from zed-industries/server-memory-improvements
Improve server memory usage
2022-05-31 13:27:44 +02:00
Antonio Scandurra
1ce8682b94 Clear language server and worktree statuses when unsharing on server 2022-05-31 11:22:41 +02:00
Antonio Scandurra
339069b1d3 Cap MessageStream buffer size to 1MB
We temporarily let it grow when the message size exceed the limit,
but restore the buffer's capacity shortly after. This ensures that,
for each connection in its entire lifetime, we only ever use 1MB.
2022-05-31 11:16:32 +02:00
Antonio Scandurra
da46d78ea5 Merge pull request #1081 from zed-industries/project-panel-with-new-mouse-events
Introduce context menu to project panel
2022-05-31 10:40:42 +02:00
Antonio Scandurra
34bf248614 Avoid notifying views that have been removed 2022-05-31 10:36:10 +02:00
Antonio Scandurra
e067212ad4 Always re-render visible elements in List 2022-05-31 09:52:44 +02:00
Antonio Scandurra
0fd47da880 Prevent mouse down events from piercing through overlays 2022-05-31 09:34:37 +02:00
Antonio Scandurra
e4641da598 Don't show "add/remove folder to/from project" for remote projects 2022-05-31 08:17:52 +02:00
Antonio Scandurra
1eb03f2f4e Bump protocol version 2022-05-31 08:13:05 +02:00
Antonio Scandurra
354488ebdf Don't eagerly populate copied subdirectory
This can race anyway with snapshot updates, so we just eagerly refresh
the root entry and wait for updates to come in to populate it.
2022-05-31 08:11:07 +02:00
Max Brunsfeld
7f292dadac Merge pull request #1082 from zed-industries/no-honeycomb
Remove opentelemetry tracing subscriber
2022-05-30 10:50:38 -07:00
Max Brunsfeld
365cda0fab Remove opentelemetry tracing subscriber
We'll see if this stops the server from leaking memory. We still
have spans in our logs.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-30 09:58:25 -07:00
Antonio Scandurra
604b737d7c 💄 2022-05-30 18:38:43 +02:00
Antonio Scandurra
06ab2ace72 Don't steal focus from context menu when dispatching an action 2022-05-30 18:36:36 +02:00
Antonio Scandurra
f832c0074f Fix memory leak in ListState 2022-05-30 18:29:51 +02:00
Antonio Scandurra
20e1044d49 Merge branch 'main' into project-panel-with-new-mouse-events 2022-05-30 18:29:46 +02:00
Antonio Scandurra
88fdd8606a Eagerly populate child entries when copying a directory via RPC 2022-05-30 18:01:46 +02:00
Antonio Scandurra
51adc6517e WIP: start on an integration test for copy_entry 2022-05-30 14:53:10 +02:00
Antonio Scandurra
3336bc6ab3 Implement copy paste for ProjectPanel 2022-05-30 14:52:34 +02:00
Antonio Scandurra
37a0c7f046 Implement cut/paste for ProjectPanel 2022-05-30 12:23:21 +02:00
Antonio Scandurra
6c145b2abc Show keystrokes as uppercase 2022-05-30 12:23:03 +02:00
Antonio Scandurra
63900612b0 Dismiss context menu when one of its action is dispatched 2022-05-30 10:05:21 +02:00
Antonio Scandurra
2b9015c096 Introduce {MutableAppContext,ViewContext}::observe_actions 2022-05-30 10:01:23 +02:00
Antonio Scandurra
e7ab61d125 Dismiss context menu when (right-)mousing down outside of it 2022-05-28 08:51:46 +02:00
Antonio Scandurra
fb26f8195b Sort mouse regions by their stacking context's depth 2022-05-28 08:45:10 +02:00
Max Brunsfeld
733cf4c271 Merge pull request #1075 from zed-industries/integration-test-cleanup
Integration test cleanup
2022-05-27 17:45:56 -07:00
Max Brunsfeld
bc6f8da029 Move integration tests into their own file 2022-05-27 17:20:05 -07:00
Max Brunsfeld
8393ae88b7 Clean up integration tests
* Use 'build_local_project' helper to reduce boilerplate
* Peform the setup steps in a consistent order
2022-05-27 17:10:45 -07:00
Max Brunsfeld
35ada0d3a0 Merge pull request #1074 from zed-industries/misc-menu-items
Add a few more important menu items
2022-05-27 13:27:03 -07:00
Max Brunsfeld
1c932ae4ce Add help menu items to visit zed.dev and the zed twitter page 2022-05-27 13:18:00 -07:00
Max Brunsfeld
df4f3051bc Add app menu items for opening settings and keymap 2022-05-27 13:06:35 -07:00
Max Brunsfeld
e1a05d451f Add "Reset Zoom" action and application menu item 2022-05-27 13:06:12 -07:00
Nathan Sobo
44c8ee5709 Add mouse down out handlers
These will fire whenever the left/right mouse button is pressed down outside a specific region. I'll use these to cancel the context menu in the next commit.
2022-05-27 12:56:44 -06:00
Keith Simmons
4a5317b6e4 Remove unused context_menu file in rust crate 2022-05-27 11:32:15 -07:00
Keith Simmons
48abbb7e63 Merge pull request #1019 from zed-industries/vim-visual-line-mode
Vim visual line mode
2022-05-27 11:22:56 -07:00
Max Brunsfeld
b2adff63e7 Merge pull request #1073 from zed-industries/window-menu
Add a Window application menu
2022-05-27 11:22:13 -07:00
Nathan Sobo
9909fc529b Allow context menu to be cancelled after deploying it twice
Previously, two right clicks would cause an issue with cancelling the context menu via escape.
2022-05-27 12:00:11 -06:00
Nathan Sobo
c3baf2748f Block hovering behind overlays 2022-05-27 11:54:51 -06:00
Max Brunsfeld
23cd948b5f Adjust test to flush effects between splitting pane and following
Panes now emit an event when adding the first item, so we need to flush
effects between splitting and following in order to avoid accidentally
cancelling the follow.
2022-05-27 10:53:14 -07:00
Max Brunsfeld
a88b4eb3c5 Populate the window title whenever worktrees or active path change
* Refactor the way the project's active entry is assigned. Assign it
  together with the window title, as opposed to on every notification
  from a pane.
* Emit the ActiveItem event from panes consistently, even when adding
  the first item to an empty pane.
2022-05-27 10:51:14 -07:00
Max Brunsfeld
e6be151a64 Emit the WorktreeRemoved event when removing a worktree from a project 2022-05-27 10:49:10 -07:00
Max Brunsfeld
a1a4c70845 Emit an event when adding a worktree to a project 2022-05-27 10:48:47 -07:00
Max Brunsfeld
04bd57b2c7 Add an API for setting a window's title
This controls how the window appears in the Window menu.
2022-05-27 10:45:55 -07:00
Nathan Sobo
5413a97c7e Restrict multiple hovered regions to a single stacking context
We won't hover regions from stacking contexts that are below the one being hovered.
2022-05-27 11:09:07 -06:00
Antonio Scandurra
9099c40364 Merge branch 'mouse-events' into project-panel-context-menu 2022-05-27 12:07:00 +02:00
Antonio Scandurra
82d6e606fc Use a MouseEventHandler for activating tabs on mouse down
Previously, we were using an `EventHandler` which doesn't take into
account other mouse regions floating above the rendered element. This
was problematic because, when clicking the `x` icon on a tab that was
not active, we were first activating it and then closing it.
2022-05-27 11:43:58 +02:00
Antonio Scandurra
98de269b4a Don't focus editor when clicking on sidebar resize handle 2022-05-27 11:36:37 +02:00
Antonio Scandurra
be0e66ef21 Invoke mouse_down and right_mouse_down callbacks 2022-05-27 11:20:39 +02:00
Antonio Scandurra
7c7917494c Don't dispatch events down the tree if they were handled by mouse region 2022-05-27 11:20:32 +02:00
Antonio Scandurra
1d7fc12229 Add right-click support to MouseEventHandler 2022-05-27 10:47:54 +02:00
Antonio Scandurra
307eb1726c Compute dispatch path based on the view id that dispatched the action 2022-05-27 09:59:24 +02:00
Nathan Sobo
aedfd74d30 Use the hit bounds when painting mouse regions 2022-05-26 20:05:20 -06:00
Nathan Sobo
893f15ddab Switch MouseEventHandler to use MouseRegions
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-26 20:00:01 -06:00
Nathan Sobo
50edcb06dd Add drag callbacks to mouse regions
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-26 18:59:38 -06:00
Nathan Sobo
bd62a68234 Eliminate ElementStateContext trait
We now always have a RenderContext when rendering MouseEventHandlers or scrollable Flex columns/rows.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-26 18:37:28 -06:00
Nathan Sobo
b6b16fc9c3 In UniformList, guard against misbehavior of append_items
If for some reason the handle got dropped and we call it, we'll deal with it somewhat gracefully.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-26 18:30:28 -06:00
Nathan Sobo
8dd82fdce1 Take a RenderContext in ListState's build item callback
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-26 18:23:44 -06:00
Nathan Sobo
2ea085b178 Pass a RenderContext to UniformList
In some cases, we need to render during layout. Previously, we were rendering with a LayoutContext in some cases, but this commit adds the ability to retrieve a render context with a given handle and we use that feature in UniformList.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-26 18:03:34 -06:00
Keith Simmons
8e7c6871db Track selection changes in mutable selections collection 2022-05-26 17:02:05 -07:00
Max Brunsfeld
42cd2ae142 Avoid switching to visual mode when following in vim mode
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-05-26 17:02:05 -07:00
Max Brunsfeld
c53412efcb Bump protocol version 2022-05-26 17:02:05 -07:00
Keith Simmons
d11bc2a4b7 Fixup paste locations 2022-05-26 17:02:05 -07:00
Keith Simmons
e104cb94e7 fix bug in marked_range utils 2022-05-26 17:02:05 -07:00
Keith Simmons
98f9575653 WIP 2022-05-26 17:02:05 -07:00
Keith Simmons
e93c49f4f0 Unify visual line_mode and non line_mode operators 2022-05-26 17:02:05 -07:00
Keith Simmons
11569a869a in progress working on aborting operators on unhandled editor input 2022-05-26 17:02:05 -07:00
Keith Simmons
61f0daa5c5 Visual line mode handles soft wraps 2022-05-26 17:02:05 -07:00
Keith Simmons
33940b5dd9 Add visual line mode operator tests 2022-05-26 17:02:05 -07:00
Keith Simmons
082036161f Enable copy and paste in vim mode 2022-05-26 17:02:05 -07:00
Keith Simmons
d094d1d891 WIP copy on delete 2022-05-26 17:02:05 -07:00
Keith Simmons
f8f316cc64 Working change and delete in line mode 2022-05-26 17:02:05 -07:00
Keith Simmons
d7d17b2148 WIP line mode operations 2022-05-26 17:02:05 -07:00
Keith Simmons
8044586296 Merge pull request #1070 from zed-industries/fix-seed-script
Fix failing seed bin build and add bin builds to ci pipeline
2022-05-26 17:01:31 -07:00
Keith Simmons
125d83b3ec Fix failing seed bin build and add bin builds to ci pipeline 2022-05-26 15:41:24 -07:00
Nathan Sobo
d69776585d Add mouse_state method to RenderContext
We can use this to determine if a region is hovered or clicked.
2022-05-26 13:22:23 -06:00
Nathan Sobo
3a59d2a331 Allow hovered and clicked mouse regions to be tracked in the presenter 2022-05-26 12:44:52 -06:00
Nathan Sobo
0866f0ed55 Introduce CursorRegion struct
This will blend in with an upcoming MouseRegion struct that sits next to it in the scene.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-26 11:00:10 -06:00
Antonio Scandurra
eedb29963c Implement CopyPath 2022-05-26 16:45:41 +02:00
Antonio Scandurra
5b2d6e41f3 Introduce keyboard navigation in context menus 2022-05-26 16:36:30 +02:00
Antonio Scandurra
991eb742b0 Start adding project panel context menu actions 2022-05-26 15:23:40 +02:00
Antonio Scandurra
82ddac8e7e Restore focus when closing context menu 2022-05-26 15:21:55 +02:00
Antonio Scandurra
a5044ccbba WIP 2022-05-26 11:17:10 +02:00
Antonio Scandurra
580f1a4125 Style context menu 2022-05-26 10:40:53 +02:00
Nathan Sobo
c0aafac387 Put keystrokes in their own column
This requires rendering the menu for measurement in a totally different way, where the top level is a flex row. We don't want to render the menu like this for presentation because of hovers / highlights on individual items needing to include the keystrokes.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-26 09:59:25 +02:00
Antonio Scandurra
a8483ba458 WIP 2022-05-26 09:59:25 +02:00
Antonio Scandurra
85ed7b41f1 Select right-clicked entry before deploying context menu
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-26 09:59:25 +02:00
Antonio Scandurra
3b2f1644fb Constrain context menu to the width of the widest item
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-26 09:59:25 +02:00
Antonio Scandurra
f403d87eff WIP 2022-05-26 09:59:25 +02:00
Nathan Sobo
dcee8439b6 Start on context_menu crate 2022-05-26 09:59:25 +02:00
Nathan Sobo
b428d0de38 Break context menu items out in theme 2022-05-26 09:59:25 +02:00
Nathan Sobo
6b96822c1a Fix editor tests 2022-05-26 09:59:25 +02:00
Nathan Sobo
5b7825d5de Add MutableAppContext::keystrokes_for_action
This can be used to lookup keystrokes that will dispatch an action based on the currently focused view. There might be multiple, but we return the first found, meaning the most recently added bindings matching that action for the closest view to the focused view in the hierarchy.
2022-05-26 09:59:25 +02:00
Nathan Sobo
b110fd5fb7 Render a context menu when right-clicking in project panel
It doesn't currently do anything, but I managed to get it rendering in an absolutely positioned way.
2022-05-26 09:59:25 +02:00
Antonio Scandurra
f4d13ef596 Merge pull request #1068 from zed-industries/collab-snapshots
Implement /rpc_server_snapshot endpoint in collab server API
2022-05-26 09:42:39 +02:00
Antonio Scandurra
3ac6fc89c1 Pretty-print JSON of server snapshot 2022-05-26 09:34:39 +02:00
Nathan Sobo
742dd75041 Implement /rpc_server_snapshot endpoint
This returns a JSON snapshot of the state of the server
2022-05-25 17:42:25 -06:00
Nathan Sobo
6a32d55d85 Merge pull request #1065 from zed-industries/fix-build-script
Fix theme build issue in build.rs
2022-05-25 15:51:32 -06:00
Keith Simmons
42e88c43a4 Use npm install rather than ci and only run build.rs when styles/src is changed rather than all styles 2022-05-25 11:08:40 -07:00
Nate Butler
d6024117d8 Merge pull request #1060 from zed-industries/fix-disconnected-message
Fix disconnected from project message
2022-05-25 11:35:43 -04:00
Nate Butler
db0c2f24c4 Fix disconnected from project message 2022-05-25 11:19:06 -04:00
Nate Butler
6a8fe60424 Merge pull request #1059 from zed-industries/fix-theme-occurence-color
fix theme occurrence color
2022-05-25 10:57:10 -04:00
Nate Butler
e39089697d Merge pull request #1048 from zed-industries/onMedia-theme-text-color
Add onMedia text color for use in disconnect overlay text
2022-05-25 10:52:37 -04:00
Nate Butler
d0f0013f4d fix theme occurence color 2022-05-25 10:45:37 -04:00
Isaac Clayton
1f91e4c41a Merge pull request #1054 from zed-industries/abruzzo-theme
Add Abruzzo Dark color theme
2022-05-24 20:01:08 +02:00
Isaac Clayton
505b305b90 Adjust the orange/yellow a bit 2022-05-24 19:48:44 +02:00
Nathan Sobo
5fd2c5cb2e v0.35.0 2022-05-24 11:32:12 -06:00
Isaac Clayton
9bb1a5636f Add the fall-colored abruzzo theme 2022-05-24 18:32:44 +02:00
Antonio Scandurra
26295334d2 Remove accidentally checked-in theme assets and scripts 2022-05-24 14:31:58 +02:00
Antonio Scandurra
ca368453e2 Merge pull request #1052 from zed-industries/upgrade-tree-sitter
Upgrade tree-sitter to v0.20.6
2022-05-24 14:28:11 +02:00
Antonio Scandurra
8ebefa143a Upgrade tree-sitter to v0.20.6
This commit also adds a regression test to verify that with this new
version we don't mistakenly compute a different suggestion on Rust
buffer where the only change is leading whitespace.
2022-05-24 14:13:11 +02:00
Antonio Scandurra
5c4bd9393f Merge pull request #1050 from zed-industries/ignored-files
Show ignored entries in project panel
2022-05-24 10:57:16 +02:00
Antonio Scandurra
99573ca270 Fix unit tests assuming ignored files were not displayed 2022-05-24 10:50:27 +02:00
Antonio Scandurra
ec88288d5e Bump chunk size to 256 2022-05-24 09:54:53 +02:00
Antonio Scandurra
138a0b042d Make fade of ignored entries styleable 2022-05-24 09:12:57 +02:00
Antonio Scandurra
85f228dade Fix logic error when streaming ignored entries
We were calling `next` twice, which led us to skip every other entry.
This commit also enhances the `test_share_project` integration test
to exercise this new streaming logic.
2022-05-24 09:03:05 +02:00
Max Brunsfeld
acf9a59cc2 Merge pull request #1027 from zed-industries/missing-menu-commands
Add missing File menu commands, improve handling of unsaved multibuffers
2022-05-23 21:29:32 -07:00
Max Brunsfeld
ece8604547 Fix comments in Pane::close_items 2022-05-23 18:07:22 -07:00
Nathan Sobo
d30d2d67e7 Merge pull request #1049 from zed-industries/invite-codes-2
Support inviting new Zed users
2022-05-23 18:29:51 -06:00
Nathan Sobo
4cedf056a9 Bump protocol version 2022-05-23 18:18:15 -06:00
Nathan Sobo
6ed503fe6e Implement get_invite_code_for_user on test db 2022-05-23 18:07:23 -06:00
Nathan Sobo
5c2fdc01ff Update foreign key constraints to allow users to be deleted
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-23 17:46:06 -06:00
Nathan Sobo
51a61cc485 Don't assign invite code when updating count from 0 to 0
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-23 17:28:05 -06:00
Max Brunsfeld
7f92401bca Add key binding and menu item for Save All 2022-05-23 16:06:56 -07:00
Max Brunsfeld
0becbe482a Distinguish between singleton and non-singleton workspace items
* Prompt to save singleton items before non-singleton ones
* Don't prompt to save multi-buffers if they contain excerpts to items that are open elsewhere and not being closed.

Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-23 16:03:00 -07:00
Nathan Sobo
4b8f24c84e Set INVITE_LINK_PREFIX in K8s 2022-05-23 15:49:51 -06:00
Nathan Sobo
d8dbbf1c05 Merge remote-tracking branch 'origin/main' into invite-codes-2 2022-05-23 15:46:39 -06:00
Keith Simmons
e05695c4a6 Add onMedia text color for use in disconnect overlay text 2022-05-23 14:34:34 -07:00
Antonio Scandurra
94e70bc1a6 WIP: log received updated_entries on remote worktree
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-23 19:39:24 +02:00
Antonio Scandurra
c65dae8095 Correctly assign ignored status in refresh_entry
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-23 19:19:13 +02:00
Antonio Scandurra
23ca9dce2e WIP: stream ignored entries 2022-05-23 16:38:16 +02:00
Antonio Scandurra
1a6cc6f964 Show ignored entries in project panel 2022-05-23 16:37:57 +02:00
Antonio Scandurra
fcc6deceb9 Merge pull request #1035 from zed-industries/notify-guests-on-project-close
Broadcast `proto::UnregisterProject` when host closes a project
2022-05-23 15:41:29 +02:00
Antonio Scandurra
fe1498dc1d Fix worktree::Snapshot::entries(true) always being empty 2022-05-23 15:38:20 +02:00
Antonio Scandurra
2af4bdef42 Broadcast proto::UnregisterProject when host closes a project 2022-05-23 15:38:01 +02:00
Antonio Scandurra
e4c73b24fd Merge pull request #1033 from zed-industries/historical-events
Restart FSEventStream at the last seen event when "dropped" is reported
2022-05-23 11:10:22 +02:00
Antonio Scandurra
ce46efff2e 🎨 2022-05-23 09:48:00 +02:00
Antonio Scandurra
663173d2f5 Restart FSEventStream at the last seen event when "dropped" is reported 2022-05-23 09:33:10 +02:00
Antonio Scandurra
f3bc4feaf0 Pass a richer State pointer to fsevents trampoline
This will be useful to re-instate a new stream when dropping events.
2022-05-23 09:08:32 +02:00
Antonio Scandurra
e287425dee Merge pull request #1032 from zed-industries/clear-redo-stack-on-edit
Clear redo stack on edit
2022-05-23 08:25:38 +02:00
Max Brunsfeld
fbd589b589 Start work on handling multibuffers properly when closing unsaved buffers 2022-05-22 16:48:33 -07:00
Antonio Scandurra
37ca06df53 Clear multi-buffer redo stack when pushing transaction onto undo stack 2022-05-22 10:44:32 +02:00
Antonio Scandurra
03dc7c8eb0 Clear redo stack when pushing remote transaction or ending a local one 2022-05-22 10:33:26 +02:00
Nate Butler
5f69996604 Merge pull request #1025 from zed-industries/add-new-themes
Add multiple Zed themes
2022-05-21 21:08:50 -04:00
Nathan Sobo
7a8ff5abd7 Accept an optional email address when creating new users 2022-05-20 20:25:21 -06:00
Max Brunsfeld
21206800bc Add "Close Window" command 2022-05-20 16:53:03 -07:00
Max Brunsfeld
b08cad9ef5 Add "Save As" command 2022-05-20 16:24:42 -07:00
Max Brunsfeld
8ed33cadeb Add "Add Folder to Project" command to application menu 2022-05-20 16:19:43 -07:00
Max Brunsfeld
e72f5cea22 Add "New Window" command 2022-05-20 11:01:20 -07:00
Max Brunsfeld
c4fc3d9c7f Merge pull request #1023 from zed-industries/app-menu-improvements
Correctly populate application menus' keystrokes and enabled status
2022-05-20 10:22:20 -07:00
Max Brunsfeld
b72d97ce78 Disable menu item key equivalents while there are pending keystrokes 2022-05-20 10:04:43 -07:00
Nate Butler
b61153266b Add multiple Zed themes
Add the following themes:
- Andromeda
- Brushtree Light & Dark
- Rose-pine
- Rose-pine-dawn
- Sandcastle dark
- Summercamp dark
- Summerfruit
2022-05-20 11:51:59 -04:00
Antonio Scandurra
b751156cd7 Rename first_connection to connected_once
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-20 17:35:00 +02:00
Antonio Scandurra
0597c662e4 Show contacts panel the first time a new user connects to collab
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-20 17:33:09 +02:00
Antonio Scandurra
d8ee4378c9 Send a ShowContacts message the first time a user connects to collab 2022-05-20 15:47:14 +02:00
Antonio Scandurra
6f2c3f1e37 Update users and invite count after an invite gets redeemed 2022-05-20 12:02:31 +02:00
Max Brunsfeld
21862faa58 Convert function keys to the correct macOS codes for menu items 2022-05-19 17:37:46 -07:00
Nathan Sobo
eedb8ba59f Add affordance to copy user's invite link if they have a code
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-19 17:57:46 -06:00
Max Brunsfeld
df4cfa56cf Add application menu items 2022-05-19 16:50:40 -07:00
Max Brunsfeld
ea85473f4f Enable and disable application menu items based on the active view 2022-05-19 16:50:40 -07:00
Max Brunsfeld
c4554c1720 Replace build_workspace fn with an initialize function that takes a workspace
This makes it clearer that the function is not providing necessary
dependencies to a workspace, but rather configuring it with all of
the panels and widgets which are defined in downstream crates.
2022-05-19 16:50:22 -07:00
Max Brunsfeld
9e47e19f4e Pass UserStore to ContactsPanel instead of AppState 2022-05-19 14:43:36 -07:00
Max Brunsfeld
de99dcb0c3 Add cmd-n and cmd-o to the default keymap 2022-05-19 14:39:06 -07:00
Max Brunsfeld
ef0b584532 Remove AppState from workspace actions
This allows those actions to be bound to keystrokes in the keymap.
Also, remove the WorkspaceParams struct, simplify how Workspaces are
constructed.
2022-05-19 14:37:26 -07:00
Keith Simmons
1bf5f361d3 Merge pull request #1022 from zed-industries/editor-clone-selections
Clone selections on editor split
2022-05-19 12:49:43 -07:00
Nathan Sobo
a3bbabaaac Add ability to get the user for an invite code in collab API
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-19 12:35:07 -06:00
Keith Simmons
bacfed37b7 Clone selections on editor split 2022-05-19 11:22:53 -07:00
Nathan Sobo
3d7e912c6b Enable descriptive HTTP errors to be returned from DB layer
For now, we only use this when redeeming an invite code.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-19 11:55:55 -06:00
Nathan Sobo
d1b7a249b4 WIP 2022-05-19 11:09:44 -06:00
Max Brunsfeld
7445197f4d Derive application menu key equivalents from the keymap 2022-05-19 10:04:01 -07:00
Nathan Sobo
51f9b915a0 WIP 2022-05-18 16:14:58 -06:00
Max Brunsfeld
8dd6ad3116 Merge pull request #1018 from zed-industries/generate-themes-on-build
Remove checked-in theme JSON files
2022-05-18 14:26:54 -07:00
Max Brunsfeld
fbacc12672 Delete theme files more selectively when regenerating them
Avoid deleting files that will be rewritten later, so that Zed
won't observe states where themes are missing if two zed
processes are running at once.
2022-05-18 14:17:26 -07:00
Max Brunsfeld
89e91939e4 Write theme files atomically 2022-05-18 14:07:32 -07:00
Max Brunsfeld
47591ec9a7 Ensure /assets/themes directory exists 2022-05-18 12:43:26 -07:00
Max Brunsfeld
185bafcc05 Install node for run tests CI job
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-05-18 12:43:26 -07:00
Max Brunsfeld
ec41dd9f18 Remove checked-in theme JSON files
* Generate the themes on build
* In debug builds, watch the theme sources. When they change, re-generate
  the themes and reload the current theme, removing the need for the
  `theme_selector::Reload` command.

Co-authored-by: Keith Simmons <keith@zed.dev>
2022-05-18 12:43:26 -07:00
Max Brunsfeld
bdeac6b66a 🔥 .zed.toml 2022-05-18 11:01:35 -07:00
Nathan Sobo
37fcfeab8d WIP 2022-05-18 11:51:47 -06:00
Nathan Sobo
b3038c2de9 Return 404 from API if no user is found
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-18 10:32:58 -06:00
Nathan Sobo
7e2d1fefc4 Add ability to update invite count to collab API
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-18 10:23:08 -06:00
Nathan Sobo
cfb31067a5 Add invite codes / counts to users table
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-18 09:56:37 -06:00
Nate Butler
56553c3f90 Merge pull request #1012 from zed-industries/clean-up-themes
Clean up themes
2022-05-18 11:52:39 -04:00
Nate Butler
50e3745b92 Clean up themes
- Allow themes to have only a light or dark variant
- Added a commented template file
- Run formatter
2022-05-18 11:41:56 -04:00
Antonio Scandurra
610812eca0 Merge pull request #1010 from zed-industries/fix-stale-wrap-snapshot
Bump `FoldSnapshot` version if excerpt gets edited outside of its bounds
2022-05-18 10:44:08 +02:00
Antonio Scandurra
c0bf4a5bfd Bump FoldSnapshot version if excerpt gets edited outside of its bounds
This will cause layers above `FoldMap` to grab a fresh snapshot of the `FoldMap`
and, as a result, of the underlying `MultiBufferSnapshot`. It is a necessary change
because, even though the coordinate space is not affected, a buffer edit taking place
*before* an excerpt range could cause the excerpt buffer rows to change, e.g. if
lines were added or removed. This manifested itself in a randomized test.
2022-05-18 10:13:18 +02:00
Max Brunsfeld
efd9563b25 Merge pull request #1007 from zed-industries/dedup-contact-notifications
Avoid creating duplicate notifications
2022-05-17 11:29:10 -07:00
Max Brunsfeld
9b29245590 Avoid duplicate notifications
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-17 11:19:22 -07:00
Nate Butler
d5c7a96f98 Merge pull request #1005 from zed-industries/update-light-theme-borders
Update light theme borders
2022-05-17 13:30:15 -04:00
Nate Butler
72ab5740f1 Update light theme borders 2022-05-17 13:14:11 -04:00
Nathan Sobo
1c9ad942df v0.34.0 2022-05-17 11:10:21 -06:00
Nathan Sobo
1e366b8093 Merge pull request #1003 from zed-industries/moar-logs
Log JSON in Kubernetes
2022-05-17 11:09:10 -06:00
Nathan Sobo
fb246ac343 Log JSON in Kubernetes
If you set LOG_JSON=true, we'll output JSON from the tracing subscriber instead of pretty-printing trace output.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-17 11:05:22 -06:00
Antonio Scandurra
ad94b4cc73 Merge pull request #1001 from zed-industries/request-to-join-project
Request to join projects instead of sharing/unsharing
2022-05-17 16:30:25 +02:00
Antonio Scandurra
2d986c7968 Show guest only once even if they joined on two different windows
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-17 16:21:09 +02:00
Antonio Scandurra
692be10b10 Dynamically load all themes listed under styles/src/themes/*.ts
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-17 16:08:14 +02:00
Antonio Scandurra
8f88803695 Automatically follow host when joining a project 2022-05-17 15:35:57 +02:00
Antonio Scandurra
225536accc Merge branch 'main' into request-to-join-project 2022-05-17 14:55:20 +02:00
Antonio Scandurra
8393bfe032 Ensure join request reaches the server before disconnecting host in test 2022-05-17 14:50:28 +02:00
Antonio Scandurra
a828282771 Fix Store::remove_connection not removing guests from projects 2022-05-17 14:50:00 +02:00
Antonio Scandurra
7b161b81b5 WIP: accept to join requests if user is already participating
There's a panic caused by `Store::check_invariants` that we still
need to figure out.
2022-05-17 13:21:20 +02:00
Antonio Scandurra
e0c772db3e Hold a weak handle to Presenter when dispatching events
This ensures that the only strong reference to the presenter is held
by `App`. This is important because we want to call `flush_effects`
when removing a window and implicit drops of the `Presenter` would
make that hard.

Before this commit, if a rendered view contained strong handles to
views and models, we would only drop them on the next `flush_effects`.
This was manifesting itself in `Project`s not being released when
closing their containing window.
2022-05-17 13:04:38 +02:00
Antonio Scandurra
cc598a6f71 Send LeaveProject when waiting room is dismissed while waiting 2022-05-17 11:25:14 +02:00
Nathan Sobo
d821e7a4c1 Cancel join requests when the requester closes the window 2022-05-16 20:29:36 -06:00
Nathan Sobo
7c3eebf93e Refine messages on waiting to join screen and include host avatar 2022-05-16 16:52:31 -06:00
Keith Simmons
25427f0ff8 Merge pull request #999 from zed-industries/update-theme-system
Rework color schemes
2022-05-16 15:28:18 -07:00
Nate Butler
af5bb92847 Rework color schemes
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
2022-05-16 18:11:22 -04:00
Nate Butler
7d22ede804 Remove the focused token
Currently we don't have any concept of a true focus state. All states we currently use focus should actually be `active`.

Removing this token until we introduce a distinction between active and focused states.
2022-05-16 15:38:06 -04:00
Nathan Sobo
91257f308e Remove "They won't know if you decline" message 2022-05-16 13:15:46 -06:00
Antonio Scandurra
ed6ed99d8f Show the reason why a join request was declined
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-16 19:57:50 +02:00
Antonio Scandurra
740ec3d192 WIP: decline pending join requests when project is unregistered 2022-05-16 17:46:08 +02:00
Antonio Scandurra
aa90c06012 Display a temporary window while remote project is loading 2022-05-16 17:45:50 +02:00
Antonio Scandurra
e6576b32b2 Don't show "they won't know if you decline" when request is accepted 2022-05-16 15:37:29 +02:00
Antonio Scandurra
c2973f33c2 Uncomment randomized tests for contacts 2022-05-16 15:13:32 +02:00
Antonio Scandurra
47ce8ae05c Poll snapshot after refreshing entry 2022-05-16 11:50:21 +02:00
Antonio Scandurra
b144995f27 Grab share state after retrieving metadata when refreshing entry 2022-05-16 11:46:49 +02:00
Antonio Scandurra
576656ccf2 Delete commented-out code 2022-05-16 09:50:36 +02:00
Antonio Scandurra
bf638afac5 Initialize UserStore before client connects in integration tests
This fixes a failure in `test_contacts` where we were receiving the
initial `proto::UpdateContacts` message before `UserStore` had a chance
to register a message handler for it.
2022-05-16 09:48:24 +02:00
Keith Simmons
a7937f2d48 Merge pull request #997 from zed-industries/fix-outline-panic
Make multibuffer read pub(crate) and replace with accessors
2022-05-13 17:07:43 -07:00
Max Brunsfeld
842bfae3af WIP - update worktree's scan_id when mutating it in the foreground 2022-05-13 17:03:48 -07:00
Keith Simmons
a2fd41174f Reduce accessibility of multibuffer read to reduce risk of borrowing snapshot and buffer refcells twice 2022-05-13 16:58:30 -07:00
Keith Simmons
2f7eb6dbc5 Merge pull request #973 from zed-industries/selections-refactor
Pull selections out of editor into selections collection
2022-05-13 16:07:26 -07:00
Keith Simmons
45ea3d4c38 Review fixes 2022-05-13 15:55:27 -07:00
Keith Simmons
20c97637a4 minor tweaks to selections collection api 2022-05-13 15:55:27 -07:00
Keith Simmons
c3a36e6d8a Rename selected_ranges and selected_display_ranges to remove redundant selected 2022-05-13 15:55:27 -07:00
Keith Simmons
de9dc27980 store buffer and display_map model handles on selections collection 2022-05-13 15:55:27 -07:00
Keith Simmons
db0a9114c2 Passing tests and removed local argument. Also pulled autoscroll argument out to change_selections 2022-05-13 15:55:27 -07:00
Keith Simmons
c9dcfff607 Move selection helpers to SelectionCollection, add update_anchor_selections, add a number of invariant preserving mutation functions to the MutableSelectionCollection 2022-05-13 15:55:17 -07:00
Max Brunsfeld
f2eee6692b Send RemoveProjectCollaborator to host in addition to ProjectUnshared 2022-05-13 15:04:48 -07:00
Max Brunsfeld
1996b01a74 Tell host to unshare project when last guest leaves 2022-05-13 14:57:55 -07:00
Nathan Sobo
08206dc78d Merge pull request #996 from zed-industries/fix-cursor-flicker
Only synthesize mouse moves on scene construction if window is active
2022-05-13 14:21:21 -06:00
Nathan Sobo
a620665bed Only synthesize mouse moves on scene construction if window is active 2022-05-13 14:05:13 -06:00
Antonio Scandurra
5789aeea24 Fix randomized test failure caused by unsharing while guest was joining
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-13 17:39:13 +02:00
Antonio Scandurra
dd684d26a1 Make Project::share and Project::unshare private
This is still in-progress because randomized tests are failing.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-13 17:17:20 +02:00
Max Brunsfeld
be51a58311 Start work on requesting to join projects
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-12 17:53:11 -07:00
Nathan Sobo
02e39e756b 0.33.0 2022-05-12 14:46:33 -06:00
Nathan Sobo
7847707090 Merge pull request #990 from zed-industries/more-tracing
Improve tracing support
2022-05-12 14:45:50 -06:00
Nathan Sobo
451338061d Try to improve tracing messages when client disconnects 2022-05-12 13:05:05 -06:00
Nathan Sobo
a3b9ad75b0 Include login in connection-related tracing spans/events
Also, include metadata on more events and add an event called "signing out" with all this metadata to make it easier to search for.
2022-05-12 12:06:06 -06:00
Nathan Sobo
3226e07dcc Remove commented method 2022-05-12 11:37:33 -06:00
Max Brunsfeld
e199b7e50e Merge pull request #988 from zed-industries/contact-panel-keyboard-nav
Allow interacting with the contacts panel using the keyboard
2022-05-12 10:06:27 -07:00
Max Brunsfeld
47ed9c76ed Select the first contact when changing the filter in the contacts panel
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-05-12 09:56:32 -07:00
Nathan Sobo
de555e3423 Enable logging of rpc crate trace events when no subscriber is present
This allows these events to be logged in the Zed client (until we setup tracing there).

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-12 10:17:37 -06:00
Nathan Sobo
e795a7a578 💄
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-12 10:16:50 -06:00
Nathan Sobo
9ca6e29a17 Use tracing instead of log in collab and rpc crates
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-12 10:05:49 -06:00
Nathan Sobo
9f6e82720d WIP: Enhance tracing in Peer
- Add a bunch of events to Peer's async connection handling logic
- Use an EnvFilter to allow more control over the verbosity level of tracing on a per-module basis
- Wire up logging to emit trace events (we actually probably want to do this the other way around)

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-12 09:58:17 -06:00
Antonio Scandurra
c7802af88b Use cmd-9 and cmd-shift-9 to toggle contacts panel focus/visibility 2022-05-12 12:11:27 +02:00
Antonio Scandurra
77b524c83e Allow toggling sections in contacts panel by clicking on them 2022-05-12 11:48:11 +02:00
Max Brunsfeld
f54d74eda9 Merge branch 'main' into contact-panel-keyboard-nav 2022-05-11 17:45:44 -07:00
Max Brunsfeld
85d9ac5b95 Merge pull request #987 from zed-industries/notifications
Notify when someone requests to add you as a contact or accepts your contact request
2022-05-11 17:40:11 -07:00
Max Brunsfeld
72e7079005 Add the ability to expand and collapse sections of the contacts panel
Also, allow joining projects using the keyboard.
2022-05-11 17:28:35 -07:00
Max Brunsfeld
615319b2ab Rework the contact panel's styling to allow keyboard navigation
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-11 16:50:51 -07:00
Max Brunsfeld
4739c683af Fix bug where Contacts included projects for which the use was a guest 2022-05-11 16:49:56 -07:00
Max Brunsfeld
0ba656aa0e Improve layout and styling of contact notifications
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-11 14:20:05 -07:00
Max Brunsfeld
3bc9b8ec85 Add notifications for accepted contact requests
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-11 11:39:01 -07:00
Keith Simmons
61b4a4202f Merge pull request #984 from zed-industries/deterministic-marked-text-ranges
Order returned ranges from marked_text_ranges by start index
2022-05-11 10:31:33 -07:00
Keith Simmons
a33ef65f57 Order returned ranges from marked_text_ranges by start index 2022-05-11 10:18:40 -07:00
Antonio Scandurra
a5fd664b00 Add the ability to notify when a user accepts a contact request
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-05-11 18:51:40 +02:00
Nate Butler
5247246e91 Merge pull request #983 from zed-industries/add-onMedia-border-token
Add onMedia border token
2022-05-11 12:48:11 -04:00
Nate Butler
50b44ebe85 Add onMedia border token 2022-05-11 12:35:00 -04:00
Antonio Scandurra
933a1f2cd6 Show badge when there are pending contact requests
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-11 17:39:03 +02:00
Antonio Scandurra
c71b264786 Allow accepting/rejecting incoming requests via notification 2022-05-11 15:25:33 +02:00
Antonio Scandurra
97d3616ed9 Show incoming request notification and implement dismissal 2022-05-11 15:13:37 +02:00
Max Brunsfeld
08a7543913 WIP - start work on keyboard navigation in contacts panel 2022-05-10 21:45:49 -07:00
Max Brunsfeld
297fa1af55 Avoid possible memory leak of FakeServer in tests 2022-05-10 21:45:12 -07:00
Max Brunsfeld
d0052ccfb5 Avoid panic when trying to fetch an invalid URL 2022-05-10 21:44:33 -07:00
Nathan Sobo
fe89de8b11 Dismiss contact request notification if request is cancelled 2022-05-10 18:50:18 -06:00
Nathan Sobo
3bca1c29e2 Present a blank notification upon receipt of a contact request 2022-05-10 18:33:39 -06:00
Nathan Sobo
bd2ae304fa Start on workspace notifications 2022-05-10 17:46:46 -06:00
Nathan Sobo
9c68c3e8a9 Put context parameter last in toggle_modal callback
This is more consistent with our treatment of context params everywhere else.
2022-05-10 16:46:53 -06:00
Max Brunsfeld
6b5cab5db1 Bump protocol version number 2022-05-10 15:38:49 -07:00
Max Brunsfeld
c5360172e4 Merge pull request #979 from zed-industries/contacts
Manage users' contact relationships on the server
2022-05-10 15:11:30 -07:00
Max Brunsfeld
b1a75805cc Consolidate logic for rendering contact requests 2022-05-10 14:52:13 -07:00
Max Brunsfeld
834c485300 Don't use pointing hand cursor for the user's own projects 2022-05-10 14:46:42 -07:00
Keith Simmons
93f8f47cc0 Merge pull request #980 from zed-industries/coerce-multibuffer-changes
Filter overlapping multibuffer edits
2022-05-10 14:45:35 -07:00
Keith Simmons
c4738d7316 Add test coverage for same cursor in multiple excerpts of the same buffer 2022-05-10 14:30:27 -07:00
Max Brunsfeld
334f246df3 Include every user in their own list of contacts 2022-05-10 14:05:07 -07:00
Keith Simmons
68de51ba8a Fix multiple cursors inserting repeated text in multibuffers 2022-05-10 13:32:27 -07:00
Keith Simmons
6c57fcf9be Merge pull request #968 from zed-industries/vim-visual-mode
Vim visual mode
2022-05-10 12:51:58 -07:00
Max Brunsfeld
dc465839e1 Round sidebar panels' widths to whole numbers of pixels
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-10 11:25:51 -07:00
Max Brunsfeld
de9a7b1927 Give the contact panel's filter editor some placeholder text
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-10 11:25:12 -07:00
Max Brunsfeld
14ec3c86e5 Clear contact panel filter editor on escape
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-10 11:18:30 -07:00
Max Brunsfeld
b33cbccc31 Improve layout of contact panel rows
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-10 11:14:31 -07:00
Keith Simmons
3f1640a9a0 Fix up assertion errors in set_eq and visual tests 2022-05-10 11:12:34 -07:00
Keith Simmons
37c921f972 Initial visual mode 2022-05-10 11:12:28 -07:00
Max Brunsfeld
2cf9659f88 Style the buttons in the contact panel and contact finder
Co-authored-by: Nathan Sobo <nathan@zed.dev>
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-05-10 10:47:25 -07:00
Antonio Scandurra
a121576545 WIP 2022-05-10 18:25:47 +02:00
Antonio Scandurra
6c3e3c84ec Eliminate flicker when contact status is pending
We do this by using a bullet. When we have animations, a spinner would be better.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-10 17:32:57 +02:00
Antonio Scandurra
b00338195e Make user fuzzy search case-insensitive
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-10 17:30:09 +02:00
Antonio Scandurra
93688cbe22 Fix bug when determining contact status
Users are sorted by login but we were binary-searching them by id.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-10 17:26:53 +02:00
Antonio Scandurra
d4e6ab4975 Seed first users from GitHub when running script/seed-db --github-users
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-10 17:19:39 +02:00
Antonio Scandurra
f81edb88fe Pull out contact finder as a picker
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-10 16:43:51 +02:00
Nathan Sobo
b721f0064a Start on contact finder modal
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-10 07:24:14 -06:00
Nathan Sobo
eef99f059d Make flex elements fill available space when they contain a float
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-10 06:14:30 -06:00
Antonio Scandurra
12783a588c Prevent users from fuzzy searching and adding themselves as contacts 2022-05-10 12:22:50 +02:00
Antonio Scandurra
09580516a0 Start on adding icon for requesting contacts 2022-05-10 12:09:24 +02:00
Antonio Scandurra
52c36d3e3d Maintain online status in contacts panel 2022-05-10 10:33:57 +02:00
Nathan Sobo
4e9924c717 Filter out empty projects in contacts panel 2022-05-09 20:57:41 -06:00
Nathan Sobo
ef868ff023 Fix test after changing fuzzy matching for empty queries 2022-05-09 20:41:18 -06:00
Max Brunsfeld
3dee656490 Avoid panic when language server is dropped before being initialized in tests
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-09 18:05:10 -07:00
Max Brunsfeld
45b6a9df36 Avoid sending a GetUsers request for an emptly list of user ids
We don't actually need to return the users at this time. We just call this for its side effect.

Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-09 18:03:24 -07:00
Max Brunsfeld
b8aba0972d Wait until contacts have been cleared when disconnecting
Also, use an mpsc for UpdateContacts messages, not a watch, since
the messages now represent changes instead of snapshots.

Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-09 17:23:39 -07:00
Max Brunsfeld
2a2698b8db Remove stray printing in contacts panel 2022-05-09 16:31:30 -07:00
Max Brunsfeld
0533a0bd3c Allow users to remove contact relationships that they initiated 2022-05-09 16:31:30 -07:00
Max Brunsfeld
054d697fb7 Remove remaining code associated with .zed.toml files 2022-05-09 16:31:30 -07:00
Max Brunsfeld
d7cba73ead Decrement pending_contact_requests even if a request fails 2022-05-09 16:19:00 -07:00
Max Brunsfeld
2aec4ff234 Pick files directly from the Fs in simulate_host
Previously, the list of all existing files was maintained separately, but
it was not updated when a guest created a file.
2022-05-09 15:39:45 -07:00
Nathan Sobo
3d6db9083d Update a user's contacts when they connect; fix test failures
The test failure we fixed doesn't seem directly related to the contact update. Maybe it just caused a failure to occur earlier than it would have in the sequence of seeds.

We fixed the test failure by responding to a user joining the project while holding the lock on the Store. This ensures that we don't send messages related to the project to that user until they've had a chance to setup event handlers after receiving the response.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-09 15:57:16 -06:00
Nathan Sobo
40f1427885 Show requests in contacts panel
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-09 12:48:07 -06:00
Nathan Sobo
e9d8cc94cc Rename script to match others (dashes)
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-09 11:24:16 -06:00
Nathan Sobo
e3ee19b123 Wire up UI for requesting contacts and cancelling requests
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-09 11:24:05 -06:00
Antonio Scandurra
e4f1952657 WIP 2022-05-09 17:06:21 +02:00
Antonio Scandurra
ca56b0d6d5 Forbid joining projects if users are not contacts 2022-05-09 15:51:54 +02:00
Antonio Scandurra
95d29c4a7b Update contacts when peers join/leave and when project status changes 2022-05-09 15:08:18 +02:00
Antonio Scandurra
3319e0a613 Implement contact rejection 2022-05-09 10:02:14 +02:00
Nathan Sobo
9b1b61355a Fully test contact request acceptance
* Be sure we send updates to multiple clients for the same user
* Be sure we send a full contacts update on initial connection

As part of this commit, I fixed an issue where we couldn't disconnect and reconnect in tests. The first disconnect would cause the I/O future to terminate asynchronously, which caused us to sign out even though the active connection didn't belong to that future. I added a guard to ensure that we only sign out if the I/O future is associated with the current connection.
2022-05-08 15:19:56 -06:00
Nathan Sobo
5d20338f69 Get basic test of accepting a contact request passing 2022-05-07 15:09:27 -06:00
Nathan Sobo
93dae88cac WIP: Fix compile errors by commenting stuff out 2022-05-07 14:04:13 -06:00
Nathan Sobo
4f06dca78b WIP: Update contacts based on deltas rather than snapshots 2022-05-06 20:50:59 -06:00
Max Brunsfeld
8a3425477f Start work on RPC endpoints for dealing with contact requests
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-06 15:44:47 -07:00
Max Brunsfeld
274c4c244c Implement persistence for contacts
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-06 13:33:23 -07:00
Antonio Scandurra
989b82d664 Refactor add_request_handler to respond via a Response struct
This also removes `add_sync_request_handler`.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-06 17:01:27 +02:00
Antonio Scandurra
9555b93bca Wait on RECEIVE_TIMEOUT in tests when testing disconnection
We were waiting for 3 seconds, but the timeout had changed in the meantime,
making some iterations of the tests fail.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-06 16:47:08 +02:00
Antonio Scandurra
44f37afa95 Define data types for the new contacts model
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-06 16:24:44 +02:00
Antonio Scandurra
95d848fe1e Ensure flex_float works even when re-painting without layout
Previously, we were mutating the remaining space stored on the layout
state, which would cause re-paints to always have a `remaining_space`
of 0 and therefore not align `flex_float` elements to the right/bottom.
2022-05-06 10:20:03 +02:00
Max Brunsfeld
8445eaab85 Fix crash when emptying atlases
Previously, when an atlas was emptied, we would move it into a different
vector: free_atlases. This removal could cause existing atlas ids to
refer to the wrong atlases.
2022-05-05 17:52:47 -07:00
Max Brunsfeld
4620c7a1e5 Filter existing contacts when searching in the contacts panel 2022-05-05 15:04:50 -07:00
Max Brunsfeld
ea81737a88 Allow fuzzy-search for potential contacts in the contacts panel
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-05 14:14:44 -07:00
Max Brunsfeld
35fea43089 Adjust fuzzy search to avoid filtering based on edit distance threshold 2022-05-05 12:43:38 -07:00
Max Brunsfeld
439a5dad80 0.32.0 2022-05-05 09:49:11 -07:00
Nathan Sobo
342bdfc7e0 Render a user query editor in the contacts panel 2022-05-05 10:24:21 -06:00
Nathan Sobo
6050e0ead7 Add fuzzy_search_users to Db trait, PostgresDb 2022-05-05 09:58:18 -06:00
Antonio Scandurra
079e514379 Merge pull request #948 from zed-industries/project-browser-refinements
Add commands for manipulating files in the project panel
2022-05-05 15:54:59 +02:00
Antonio Scandurra
76ad563b45 Fix memory leak of ProjectPanel
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-05 15:52:46 +02:00
Antonio Scandurra
2e9bdfbeac Improve delete prompt in project browser
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-05 15:49:40 +02:00
Antonio Scandurra
6021ab12c9 Clear project browser editor even if an operation fails
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-05 15:43:42 +02:00
Antonio Scandurra
954fabec42 Don't hide sidebar when hitting cmd-1
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-05 15:34:36 +02:00
Antonio Scandurra
2e6cf2011d When opening items via project panel, only focus them on double-click
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-05 15:27:27 +02:00
Antonio Scandurra
61346f734d WIP 2022-05-05 15:15:58 +02:00
Antonio Scandurra
6b22c47d47 Introduce guest file creation in randomized collaboration test
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-05 14:54:35 +02:00
Antonio Scandurra
6212f2fe30 Wait for remote worktree to catch up with host before mutating entries
This ensures that entries don't randomly re-appear on remote worktrees
due to observing an update too late. In fact, it ensures that the remote
worktree has the same starting state of the host before preemptively applying
the fs operation locally.
2022-05-05 13:47:53 +02:00
Antonio Scandurra
ecb847a027 Fix bugs in FakeFs::{remove_dir,rename} 2022-05-05 09:02:31 +02:00
Max Brunsfeld
4b1c46fa45 Allow deleting entries from the project panel 2022-05-04 18:00:23 -07:00
Max Brunsfeld
509ede0e80 Allow guests to create directories 2022-05-04 16:52:46 -07:00
Max Brunsfeld
40e0f10195 Allow creating directories from the project panel 2022-05-04 16:47:11 -07:00
Max Brunsfeld
a2c22a5e43 Prevent eager snapshot mutations from being clobbered by background updates
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-04 15:10:39 -07:00
Max Brunsfeld
821dff0e2d Keep showing edited filename in project panel while edit is in-progress 2022-05-04 13:03:50 -07:00
Max Brunsfeld
ff3cf3c0c3 Bump protocol version number 2022-05-04 10:33:26 -07:00
Max Brunsfeld
438e4e7a19 Allow guests to rename stuff
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-04 10:28:44 -07:00
Nathan Sobo
470d693d5e Rename entries via the project to prepare for guest support
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-04 10:28:44 -07:00
Max Brunsfeld
657ea264cc Allow guests to create files from the project panel
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-04 10:28:44 -07:00
Max Brunsfeld
8291b8108d Update snapshot atomically when processing FS events 2022-05-04 10:28:44 -07:00
Max Brunsfeld
0ff39f1280 Select new files in the project panel after creating them 2022-05-04 10:28:44 -07:00
Max Brunsfeld
a19766931d Rename entry atomically in LocalWorktree::rename 2022-05-04 10:28:44 -07:00
Max Brunsfeld
8fdc5c9be3 Improve the appearance of project panel filename editor
* Always layout single-line editors with a fixed height
* Preserve directory chevron when editing folder names
* Allow theming the filename editor

Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-05-04 10:28:44 -07:00
Max Brunsfeld
333b4aaf4e Implement Rename command in project panel 2022-05-04 10:28:09 -07:00
Max Brunsfeld
a217e2e64b Implement basic AddFile command in project panel 2022-05-04 10:28:09 -07:00
Max Brunsfeld
d4492086b3 Abstract more local project setup inside Project::test helper 2022-05-04 10:28:09 -07:00
Max Brunsfeld
12d45f1655 Clean up project panel theme 2022-05-04 10:28:08 -07:00
Antonio Scandurra
aa4919a76f Merge pull request #964 from zed-industries/transpose
Introduce `Editor::transpose` bound to `ctrl-t`
2022-05-04 10:04:55 +02:00
Antonio Scandurra
9a7c07f539 Improve transpose when cursors are two chars away from each other 2022-05-04 09:59:34 +02:00
Keith Simmons
5e2e859413 Merge pull request #947 from zed-industries/misc-normal-commands
Misc vim normal commands
2022-05-03 10:29:29 -07:00
Antonio Scandurra
c7007b64de Merge pull request #965 from zed-industries/avatar-margin
Parameterize `avatar_margin` and assign it a default of 8
2022-05-03 18:12:06 +02:00
Antonio Scandurra
3ee4d90c19 Parameterize avatar_margin and assign it a default of 8 2022-05-03 18:04:53 +02:00
Antonio Scandurra
95680aa5f2 Account for multi-byte characters in Editor::transpose 2022-05-03 14:35:03 +02:00
Antonio Scandurra
b6ff07afac Add failing test for multi-byte characters 2022-05-03 14:33:57 +02:00
Antonio Scandurra
070607c821 Implement Editor::transpose without accounting for multi-byte chars 2022-05-03 14:33:43 +02:00
Keith Simmons
797aecf7c1 Don't reset vim mode on editor focus 2022-05-02 11:49:10 -07:00
Keith Simmons
b2138f5935 Add insert line above and below 2022-05-02 11:49:10 -07:00
Keith Simmons
833a7b6e76 WIP just missing insert line above and below 2022-05-02 11:49:10 -07:00
Antonio Scandurra
c268099554 Merge pull request #960 from zed-industries/crash-reporting
Implement panic reporting
2022-05-02 19:12:12 +02:00
Antonio Scandurra
875cb13e6d Rename "crash" to "panic"
We are not really sending crash reports but Rust panics, so might
as well be clear about that.
2022-05-02 17:36:56 +02:00
Antonio Scandurra
da3870ea31 Pass secret token when uploading crashes 2022-05-02 15:42:52 +02:00
Antonio Scandurra
54a45095cd Retrieve app version from crash rather than from current binary
The crash might have been generated weeks before and the app may
have been updated since then.
2022-05-02 15:34:05 +02:00
Antonio Scandurra
09a8b8e675 Capture crash reports and upload them the next time Zed launches 2022-05-02 15:17:43 +02:00
Antonio Scandurra
39c7b1fd51 Merge pull request #959 from zed-industries/fix-paste
Fix bugs when pasting text
2022-05-02 10:30:59 +02:00
Antonio Scandurra
2977b33dd9 Use the new batched edit API when pasting
This fixes a bug that would cause zed to paste text at the wrong
location when inside a multi-buffer where the same buffer was excerpted
more than once.
2022-05-02 10:21:53 +02:00
Antonio Scandurra
5821ce9b82 Insert newlines on paste if copied selections don't match current ones 2022-05-02 10:21:20 +02:00
Antonio Scandurra
a7c953cb30 Merge pull request #958 from zed-industries/titlebar-padding
Add right padding to titlebar instead of margins on elements
2022-05-02 09:32:15 +02:00
Antonio Scandurra
4518db0ce6 Update accidentally uncommitted Cargo.lock 2022-05-02 09:27:51 +02:00
Antonio Scandurra
5d0c3c43e8 Add right padding to titlebar instead of margins on elements
This fixes a visual glitch causing the avatar to be shown too close to
the right edge of the window when the share icon was not present.
2022-05-02 09:27:37 +02:00
Nate Butler
5b68534427 Merge pull request #949 from zed-industries/base16-theme-occurrence-style
Update base16 theme occurrence style
2022-04-30 00:57:55 -04:00
Nate Butler
f63444ce6d Update base16 theme occurrence style
- Update base16 theme occurrence style to be visible
- Update match styles to use the blend scaling value
  - This makes it so matches are less loud in light themes
2022-04-30 00:47:07 -04:00
Keith Simmons
d4bef67cf2 Merge pull request #929 from zed-industries/non-uniform-batched-edits
Allow batched edits where each range is associated with different insertion text
2022-04-29 16:14:38 -07:00
Keith Simmons
2eb1c107ce Convert common edit strings to Arc<str> and simplify duplicate line 2022-04-29 14:57:20 -07:00
Max Brunsfeld
2c2ca1bfbd Reduce string allocations in Editor::insert
Co-authored-by: Nathan Sobo <nathan@zed.dev>
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-29 10:07:21 -07:00
Antonio Scandurra
cddafa5fef Merge pull request #940 from zed-industries/telemetry
Instrument the collab server with OpenTelemetry collecting into Honeycomb.io
2022-04-29 17:50:55 +02:00
Antonio Scandurra
c8179a61ee Restore .zed.toml
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-29 17:41:49 +02:00
Antonio Scandurra
003bbe9aab Serialize payload in "handle message" span
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-29 17:34:22 +02:00
Antonio Scandurra
f4e5cb14bf Remove collaborators_per_project from Metrics
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-29 17:19:14 +02:00
Antonio Scandurra
63e1845537 Revert "WIP"
This reverts commit 47e7d924b2.
2022-04-29 16:45:29 +02:00
Nathan Sobo
47e7d924b2 WIP 2022-04-29 08:23:23 -06:00
Nathan Sobo
53e7c758f8 0.31.0 2022-04-29 05:58:34 -06:00
Antonio Scandurra
14b078dc0c Use f32s for metrics so that we can do aggregation math on honeycomb 2022-04-29 10:31:47 +02:00
Antonio Scandurra
6734793069 Start adding metrics to collab server 2022-04-29 10:25:20 +02:00
Antonio Scandurra
b51a53addb Replace log_err with trace_err on collab::rpc 2022-04-29 09:21:09 +02:00
Nate Butler
038f306ed8 Merge pull request #931 from zed-industries/add-size-token
WIP: Add the `size` token
2022-04-29 01:46:50 -04:00
Nate Butler
1ecd8551c6 Merge pull request #942 from zed-industries/style-status-bar
Update Zed styles
2022-04-29 01:46:27 -04:00
Nate Butler
f4dbe4d976 Update projectBrowser styles 2022-04-29 01:35:58 -04:00
Nate Butler
67181a16c0 Update search style 2022-04-29 01:24:21 -04:00
Nate Butler
098ad7dbfa Update base16 themes background states 2022-04-29 01:24:11 -04:00
Nate Butler
945d7c52a0 Remove unused import 2022-04-29 01:23:52 -04:00
Nate Butler
70a7bd2747 Style out of date message 2022-04-29 01:06:44 -04:00
Nate Butler
a352f8bad4 Update status bar style 2022-04-29 00:59:08 -04:00
Keith Simmons
920601cb94 Bump protocol version 2022-04-28 18:56:26 -07:00
Keith Simmons
b4b61b4bbc Consolidate edit and edit_batched functions 2022-04-28 16:52:04 -07:00
Max Brunsfeld
d9735f312f Merge pull request #936 from zed-industries/about-window
Make the 'About Zed' menu item display Zed's version number
2022-04-28 16:17:51 -07:00
Max Brunsfeld
b055d90b68 Make the 'About Zed' menu item display Zed's version number 2022-04-28 16:10:11 -07:00
Max Brunsfeld
c2b892d24d Merge pull request #935 from zed-industries/style-command-palette-active-keystroke
Allow the theme to style the keystroke of the active item in the command palette
2022-04-28 15:42:47 -07:00
Max Brunsfeld
d9497d49de 🎨 Use Interactive wrapper for search option buttons 2022-04-28 15:29:03 -07:00
Max Brunsfeld
8481834847 Give hover state to picker items, keystrokes in command palette 2022-04-28 15:17:56 -07:00
Max Brunsfeld
a60c75e343 Rename Selector -> Picker in theme 2022-04-28 14:45:32 -07:00
Max Brunsfeld
025d657e3a Merge pull request #933 from zed-industries/format-on-save-setting
Add format_on_save setting
2022-04-28 14:38:49 -07:00
Max Brunsfeld
fa358c01cf Add format_on_save setting
This lets you turn of formatting on save for specific languages.
2022-04-28 14:31:06 -07:00
Max Brunsfeld
79fad42424 Parse .mjs files as JavaScript
Closes #856
2022-04-28 14:09:39 -07:00
Keith Simmons
74b467aaa8 tweak editor selection mutating functions 2022-04-28 13:46:06 -07:00
Keith Simmons
42b900774e add anchor to selection fixup info in newline 2022-04-28 13:10:31 -07:00
Max Brunsfeld
c51d5b9165 Remove accidental background color on unhovered ok indicator
A follow-up to #921
2022-04-28 12:44:37 -07:00
Max Brunsfeld
37a3cead03 Merge pull request #921 from zed-industries/new-status-bar-design
Style the status bar according to the latest design
2022-04-28 12:42:25 -07:00
Max Brunsfeld
e48a975b1e Give no-error diagnostic indicator a hover state 2022-04-28 12:35:20 -07:00
Max Brunsfeld
6578ae5393 Use Interactive helper to theme titlebar buttons 2022-04-28 12:08:15 -07:00
Nate Butler
b41bf65c96 Statusbar style tweaks 2022-04-28 14:52:31 -04:00
Nate Butler
6fc68a8ddd Move projectDiagnostics to it's own file and remove unused code
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-04-28 14:52:12 -04:00
Nate Butler
425473d296 Update token build script for figma
- Use syntax tokens instead of manually adding token content
- Add solarized to output
- Add ramp step value to the token description in Figma Tokens

Co-Authored-By: Keith Simmons <keith@the-simmons.net>
2022-04-28 14:08:59 -04:00
Nate Butler
607719ed26 Update size token function and types
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
2022-04-28 14:07:20 -04:00
Max Brunsfeld
772f4579fc Restructure status bar theme to style interactive elements more concisely
Introduce an `Interactive` wrapper type that allows themes to selectively
override properties of items in a hovered or active state.
2022-04-28 10:59:32 -07:00
Nate Butler
0cc5a3839d Add the size token
Introduces the `size` token, a token that will be used for defining standardized sizes for paddings, margins & borders.

Available sizes are `px`, `xs`, `sm`, `md`, `lg`, `xl`

- Adds `size`, types, and token
- Adds the size() function
2022-04-28 12:31:44 -04:00
Keith Simmons
4c860dc82f Removed unnecessary debug statements 2022-04-28 09:20:56 -07:00
Nathan Sobo
1fe964ac16 Start moving from logging to tracing on collab server
Install some spans. Probably more work to do here.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-28 09:45:59 -06:00
Nathan Sobo
2d9d30f74a Set log level to info on Kubernetes
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-28 09:10:09 -06:00
Nathan Sobo
a3640eb8d4 Correctly trace async message handling
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-28 09:09:54 -06:00
Nathan Sobo
dc28305c9f Assign tracing-related environment variables in Kubernetes
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-28 08:48:57 -06:00
Antonio Scandurra
64ecfcd33f Merge pull request #927 from zed-industries/quad-border-visual-glitch
Correctly alpha-blend border and background in quad SDF
2022-04-28 16:36:51 +02:00
Antonio Scandurra
7ec5c04fdf Correctly alpha-blend border and background in quad SDF 2022-04-28 13:54:18 +02:00
Antonio Scandurra
0bb889afec Merge pull request #923 from zed-industries/navigate-panic
Clip `scroll_top_row` before navigating back to it
2022-04-28 10:22:09 +02:00
Antonio Scandurra
76d6c00e0c Fix randomized collaboration tests in language 2022-04-28 10:12:10 +02:00
Max Brunsfeld
e05793b52a Remove Option from Buffer edit APIs
Previously, buffer edits represented empty strings as None
variants of an Option. Now, the edit logic just explicitly
checks for empty strings.

Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-27 18:00:13 -07:00
Keith Simmons
04fc1d5982 Building, but failing test WIP 2022-04-27 17:25:38 -07:00
Max Brunsfeld
e88156645d Update the styling of the lsp status indicator 2022-04-27 16:48:33 -07:00
Nathan Sobo
6ef2d0fbec Trace handling of messages 2022-04-27 15:27:01 -06:00
Nathan Sobo
2db670308b Allow tracing level to be customized 2022-04-27 15:26:54 -06:00
Max Brunsfeld
a3700e0dd8 Combine diagnostic status w/ diagnostic message indicators
Improve the indicator styling
2022-04-27 14:25:39 -07:00
Max Brunsfeld
9e87be722e Start re-styling diagnostic indicator in status bar 2022-04-27 14:25:39 -07:00
Nate Butler
b23ff7c3ad Update semantic status colors in all themes
- for `ok`, `error`, `warning` and `info`:
  - backgroundColor values were all placeholder. Add real values
  - Update border values to new style
2022-04-27 14:25:39 -07:00
Max Brunsfeld
68a7f99c14 Update sidebar toggle icons 2022-04-27 14:25:39 -07:00
Max Brunsfeld
7f63ed3835 Allow styling sidebar icons and groups in themes 2022-04-27 14:25:39 -07:00
Max Brunsfeld
0291f2d54a Move sidebar toggle buttons to the status bar 2022-04-27 14:25:39 -07:00
Max Brunsfeld
53ef9b997f Merge pull request #925 from zed-industries/sort-refactor-multibuffers
Sort buffers by their path in refactor multi-buffers
2022-04-27 14:25:19 -07:00
Max Brunsfeld
3ad13bdd4f Display buffers in order of their path in refactor multibuffers
Previously, they were non-deterministically ordered via a HashMap iterator.
This was causing integration tests to fail spuriously on PRs.
2022-04-27 14:01:37 -07:00
Nathan Sobo
6a21a0f6b8 Wire up tracing crate to opentelemetry
Still need to

- Set a trace level and target via environment to avoid massive noise from other libraries
- Trace the operations we care about
2022-04-27 11:48:43 -06:00
Nathan Sobo
36b462182b Send telemetry to Honeycomb via GRPC
We updated the core-foundation crates because Tonic (the GRPC crate) relies on a newer version of core foundation to find TLS root certificates.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-27 09:58:55 -06:00
Nathan Sobo
2db20c4364 Introduce opentelemetry to collab
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-27 17:01:20 +02:00
Antonio Scandurra
c9478cab09 Don't panic when navigation data contains invalid anchors and/or points
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-27 16:51:48 +02:00
Antonio Scandurra
cde5a45318 Clip scroll_top_row before navigating back to it
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-27 16:25:26 +02:00
Antonio Scandurra
27e693d8f7 Merge pull request #922 from zed-industries/authenticate-after-showing-window
Attempt to automatically sign in after a window has been shown on startup
2022-04-27 14:17:44 +02:00
Antonio Scandurra
df69ac42fb Attempt to automatically sign in after a window has been shown 2022-04-27 13:53:16 +02:00
Antonio Scandurra
19a48a43c7 Merge pull request #919 from zed-industries/remove-async-std
Remove remaining `async-std` dependencies from `collab`
2022-04-27 13:22:53 +02:00
Antonio Scandurra
0e1e5b7d55 Make following redirects explicit in HttpClient::get 2022-04-27 13:14:45 +02:00
Nathan Sobo
78afbb3599 Remove async-std and surf from client
Switch to isahc library. It's not as fancy, but it works and has a smaller footprint.
2022-04-26 21:19:15 -06:00
Nathan Sobo
1293b21b2d Get db tests passing with Tokio Postgres adaptor
We now run tests that interact with the real database under a Tokio reactor. We make the tests run multi-threaded so we can block on the main thread on database teardown and still make progress actually tearing down the DB.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-04-26 13:30:21 -06:00
Antonio Scandurra
b4ae2b20a0 Remove remaining async-std dependencies from collab 2022-04-26 19:47:40 +02:00
Antonio Scandurra
dec88a42e7 Merge pull request #918 from zed-industries/tokio
Switch collab server to Tokio/Axum
2022-04-26 19:30:11 +02:00
Nathan Sobo
e2a92f4a86 Merge remote-tracking branch 'origin/main' into tokio 2022-04-26 11:16:35 -06:00
Nathan Sobo
2adb9fe472 Get zed.dev working with new collab backend
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-26 11:15:41 -06:00
Nathan Sobo
7c3bdf91d9 Merge pull request #916 from zed-industries/sort-themes
Sort themes by light/dark first and then alphabetically
2022-04-26 08:18:29 -06:00
Nathan Sobo
2ae2daefe1 Merge pull request #917 from zed-industries/titlebar-design
Implement titlebar design
2022-04-26 08:17:48 -06:00
Antonio Scandurra
c955645bc0 Update share icon and swap its posiiton 2022-04-26 14:35:13 +02:00
Antonio Scandurra
9d6a7a83a0 Show worktree root names in titlebar and align them left 2022-04-26 13:21:58 +02:00
Antonio Scandurra
bf27edfdee Sort themes by light/dark first and then alphabetically 2022-04-26 12:09:25 +02:00
Antonio Scandurra
d8eb749640 Commit v0.30.0 version to Cargo.lock 2022-04-26 12:09:04 +02:00
Nathan Sobo
be040b60b7 WIP 2022-04-25 20:21:43 -06:00
Nathan Sobo
3938f7c364 Fix compile error 2022-04-25 20:12:32 -06:00
Nathan Sobo
2bd08a7b3f Validate API token for all API routes 2022-04-25 20:10:14 -06:00
Nathan Sobo
538fc23a77 WIP 2022-04-25 20:05:09 -06:00
Nathan Sobo
35bec69fa4 Finish adding API routes
We haven't tested them yet.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-04-25 17:51:13 -06:00
Max Brunsfeld
9c03670d21 v0.30.0 2022-04-25 16:17:25 -07:00
Max Brunsfeld
5ec30323b8 Merge pull request #913 from zed-industries/update-themes
Add sulphurpool theme, update solarized
2022-04-25 16:16:56 -07:00
Nate Butler
a2591ce1e2 Create common base16 theme constructor
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-04-25 19:11:38 -04:00
Max Brunsfeld
e86152dc87 Merge pull request #911 from zed-industries/reduce-novel-bindings
Remove some novel key bindings
2022-04-25 15:53:21 -07:00
Nate Butler
9338cd9cf8 Add cave theme
Sneaking one more in, cave is a nice cool dark theme that isn't super blue.
2022-04-25 18:19:49 -04:00
Nate Butler
a3adefcf0d Remove generated JSON for the Forest theme 2022-04-25 18:14:10 -04:00
Nate Butler
e28d1828f0 Add sulphurpool theme, update solarized
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
2022-04-25 18:07:24 -04:00
Max Brunsfeld
5be7c354f6 Merge pull request #900 from zed-industries/completion-insert-text
Respect lsp completions' 'insert_text' property when present
2022-04-25 14:36:47 -07:00
Max Brunsfeld
45922603f8 Infer completions old ranges based on the syntax tree 2022-04-25 13:14:05 -07:00
Max Brunsfeld
ec6652af73 Remove some novel key bindings
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-04-25 11:56:03 -07:00
Max Brunsfeld
065734e1de Merge pull request #898 from zed-industries/track-window-focus
Focus/blur views when application windows become active/inactive
2022-04-25 08:54:47 -07:00
Nathan Sobo
cb9d608e53 WIP
Continue adding in more API routes
2022-04-24 18:02:14 -06:00
Nathan Sobo
e30a3956d6 WIP: Switch to axum 2022-04-24 11:08:25 -06:00
Nathan Sobo
62f7c858e3 WIP 2022-04-24 10:45:20 -06:00
Nathan Sobo
ac6880b6ee Only set the cursor style once per mouse move event
This will hopefully prevent some of the intermittent flickering we seem to be seeing.
2022-04-22 18:57:49 -06:00
Nathan Sobo
f7f4aad00f WIP 2022-04-22 18:46:31 -06:00
Keith Simmons
5ab21cc0fd Merge pull request #891 from zed-industries/solarized
Add solarized dark and light syntax themes
2022-04-22 15:13:52 -07:00
Max Brunsfeld
e8d263274c Remove duplication between windowDid{Become,Resign}Key callbacks 2022-04-22 15:06:50 -07:00
Keith Simmons
50b5b56f60 Update solarized theme to match main 2022-04-22 15:04:45 -07:00
Max Brunsfeld
6b9e93ac6d Fix double-borrow crash by calling window activated callback asynchronously 2022-04-22 15:01:19 -07:00
Keith Simmons
a1576b7dca fix solarized element backgrounds 2022-04-22 14:58:45 -07:00
Keith Simmons
533ba474f1 Add some comments to the theme.ts explaining the logic behind them 2022-04-22 14:58:45 -07:00
Keith Simmons
d0ee686e09 add solarized dark and light syntax themes 2022-04-22 14:58:45 -07:00
Max Brunsfeld
8ddc7e6458 Respect lsp completions' 'insert_text' property when present
Fixes #839
2022-04-22 14:33:13 -07:00
Keith Simmons
c61ae6f31f Merge pull request #877 from zed-industries/misc-normal-commands
Add inclusive vs exclusive motions to vim mode
2022-04-22 14:25:56 -07:00
Max Brunsfeld
d12df4224a Merge pull request #894 from zed-industries/typescript-outline-fixes
Fix missing TypeScript outline entries and breadcrumbs
2022-04-22 14:21:46 -07:00
Max Brunsfeld
7f64076f8d Focus/blur views when application windows become active/inactive 2022-04-22 14:18:50 -07:00
Max Brunsfeld
bfec9e1ec2 Fix missing TypeScript outline entries and breadcrumbs 2022-04-22 13:49:03 -07:00
Max Brunsfeld
f881c2aa92 Merge pull request #892 from zed-industries/syntax-theme-fixes
Syntax theme fixes
2022-04-22 13:24:31 -07:00
Max Brunsfeld
03d7035630 Avoid spurious highlight runs in Language::highlight_text 2022-04-22 13:13:54 -07:00
Max Brunsfeld
d330f909e6 Allow each theme to style all aspects of syntax highlighting
Previously, some syntax highlights were controlled in editor.ts,
and shared across all themes.

Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-22 12:43:01 -07:00
Nathan Sobo
447c1d2f71 WIP: Get compiling with Tokio by commenting almost everything
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-22 13:33:19 -06:00
Nathan Sobo
ddc45eb24e Merge pull request #889 from zed-industries/cursor-style-revamp
Apply cursor styles during paint and make editor's cursor an I-Beam
2022-04-22 13:20:31 -06:00
Max Brunsfeld
f0c6a6ad18 Highlight punctuation uniformly in all supported languages
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-22 12:16:49 -07:00
Max Brunsfeld
6658fa58c0 Update languages' highlight mapppings when the theme changes
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-22 12:09:14 -07:00
Nathan Sobo
92f040df00 Apply cursor styles during paint
This makes the editor's cursor an IBeam and properly deals with nested cursor styles.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-22 10:54:18 -06:00
Antonio Scandurra
53bf7b61c0 Merge pull request #887 from zed-industries/fix-typescript-rename
Use document highlights to prepare rename if LSP doesn't support it
2022-04-22 16:37:13 +02:00
Antonio Scandurra
a2279422f5 Fix rpc::tests::test_collaborating_with_renames 2022-04-22 16:29:28 +02:00
Antonio Scandurra
63cdf61c53 Fix Project::test_rename 2022-04-22 15:59:20 +02:00
Antonio Scandurra
1dcaec7fb4 Merge pull request #886 from zed-industries/fix-delete-to-beginning-of-line
Delete selected text when deleting to beginning of line, regardless of selection direction
2022-04-22 15:55:51 +02:00
Antonio Scandurra
5e16adc6c9 Use document highlights to prepare rename if LSP doesn't support it 2022-04-22 15:43:57 +02:00
Antonio Scandurra
f91fdd2ba0 Return None when prepare rename is not available on language server 2022-04-22 15:43:23 +02:00
Nathan Sobo
8ec2b5e359 Delete selected text when deleting to beginning of line 2022-04-22 06:04:14 -06:00
Nathan Sobo
30f2604a8d Map shift-backspace to backspace
A user pointed out that it was weird that this didn't work and violated their muscle memory.
2022-04-22 06:04:12 -06:00
Antonio Scandurra
b355b5c1fb Merge pull request #884 from zed-industries/show-project-browser-when-opening-folder
Show project browser when opening folder
2022-04-22 12:04:53 +02:00
Antonio Scandurra
3def7a6803 Avoid flicker when toggling project browser on workspace open 2022-04-22 11:53:45 +02:00
Antonio Scandurra
9730213ed7 Move project browser toggling logic in workspace::open_paths 2022-04-22 11:25:23 +02:00
Antonio Scandurra
bba65e120d Add only one worktree when running zed /dir /dir/file 2022-04-22 11:06:17 +02:00
Antonio Scandurra
9d8e3f51c8 Show project panel when opening a folder via the CLI 2022-04-22 10:45:46 +02:00
Antonio Scandurra
67c55255fa Merge pull request #883 from zed-industries/humanize-underscores
Replace underscores with spaces when humanizing action names
2022-04-22 10:30:17 +02:00
Antonio Scandurra
033d000489 Replace underscores with spaces when humanizing action names 2022-04-22 10:24:12 +02:00
Max Brunsfeld
a9e1f6cb8a Merge pull request #876 from zed-industries/highlight-toml
Add syntax highlighting for TOML
2022-04-21 16:54:44 -07:00
Keith Simmons
5ea782de21 Add inclusive vs exclusive motions to vim mode 2022-04-21 16:50:23 -07:00
Max Brunsfeld
3a878c8d6c Add syntax highlighting for TOML 2022-04-21 16:39:49 -07:00
Max Brunsfeld
0c587ae73c Merge pull request #875 from zed-industries/keymap-improvements
Keymap improvements
2022-04-21 15:38:43 -07:00
Max Brunsfeld
14cf51638c 🎨 Tweak order of default key bindings 2022-04-21 15:28:15 -07:00
Max Brunsfeld
490b65b55f Reuse Confirm action in chat panel, go-to-line, and project search 2022-04-21 15:24:05 -07:00
Max Brunsfeld
915ba91888 Allow toggling line comments in JSON 2022-04-21 14:12:17 -07:00
Max Brunsfeld
d43f194342 Organize default key bindings into categories 2022-04-21 14:07:14 -07:00
Max Brunsfeld
066b4faf61 Restructure KeyMap file, make it easy to edit in Zed
Add a JSON schema for this file so that autocomplete can be used for the actions.
2022-04-21 13:35:10 -07:00
Max Brunsfeld
f52050a9ec Use the 'jsonc' language id for all JSON files
This way, comments are allowed by the language server.
2022-04-21 12:08:16 -07:00
Max Brunsfeld
3a28f09979 Allow comments in setting and keymap JSON files 2022-04-21 11:58:18 -07:00
Max Brunsfeld
066e572767 Merge pull request #864 from zed-industries/polish-project-panel
Sort directories before files in a case-insensitive manner
2022-04-21 11:48:04 -07:00
Max Brunsfeld
f9cd1b25d5 Merge pull request #866 from zed-industries/max-line-len-2
Always wrap lines that are wider than 512 em advances
2022-04-21 11:23:29 -07:00
Antonio Scandurra
5081eafa9d Always wrap lines that are wider than 512 em advances
We went with a more conservative upper bound so that the number of
characters (hopefully) never exceeds `MAX_LINE_LEN` (1024) when laying
out text.

Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-04-21 19:29:37 +02:00
Nathan Sobo
e52fad0fc7 Merge pull request #865 from zed-industries/remove-web-frontend
Remove web frontend from collab server
2022-04-21 11:17:21 -06:00
Nathan Sobo
c394b08b8a Fix path in migrator image 2022-04-21 11:02:07 -06:00
Nathan Sobo
23b5a80391 Fix paths in deploy-migrations script 2022-04-21 11:01:02 -06:00
Nathan Sobo
e63ebc5b24 Drop signups table 2022-04-21 10:59:13 -06:00
Nathan Sobo
396e4ba17b Remove signups-related methods from Db trait 2022-04-21 10:55:32 -06:00
Nathan Sobo
8ed1598346 Remove tailwind and related scripts 2022-04-21 10:01:56 -06:00
Nathan Sobo
0cf7bba483 Remove remaining bits of web front-end 2022-04-21 09:30:08 -06:00
Nathan Sobo
9f83417b58 Remove more files supporting the old web front-end 2022-04-21 09:06:34 -06:00
Nathan Sobo
9f0b044ba0 Remove more unused code related to GitHub auth and errors 2022-04-21 08:57:49 -06:00
Antonio Scandurra
953256b128 Sort (case-insensitive) directories before files 2022-04-21 15:08:45 +02:00
Antonio Scandurra
11828040cc Store visible entries in project panel by id rather than offset 2022-04-21 13:37:57 +02:00
Antonio Scandurra
80b4324807 Merge pull request #735 from zed-industries/auto-update
Introduce automatic updates
2022-04-21 12:20:22 +02:00
Antonio Scandurra
fb87bacc7e Merge branch 'main' into auto-update 2022-04-21 09:53:06 +02:00
Max Brunsfeld
9d3048ebe7 v0.29.0 2022-04-20 16:10:07 -07:00
Max Brunsfeld
b07b08862b Merge pull request #863 from zed-industries/fix-project-symbols-crash
Fix project symbols crash
2022-04-20 16:09:25 -07:00
Max Brunsfeld
3619d4c1c4 Always notify a Picker when its delegate notifies 2022-04-20 16:03:11 -07:00
Max Brunsfeld
84df1d6564 Add unit test for project symbols that demonstrates crash 2022-04-20 16:02:37 -07:00
Nathan Sobo
9150b77471 Remove some user-facing routes 2022-04-20 15:39:39 -06:00
Keith Simmons
b1f9d9d8ba Merge pull request #851 from zed-industries/vim-delete-jk-fix
Linewise motions fix
2022-04-20 14:34:05 -07:00
Nate Butler
7bc6f8b5ee Build tokens for Figma 2022-04-20 15:30:33 -04:00
Nate Butler
09634dffb8 Merge pull request #846 from zed-industries/update-themes-04-19
Update theme for command palette, inputs, tabs, autocomplete
2022-04-20 12:05:00 -04:00
Nate Butler
ea11f2e183 Increase min-width for all Pickers, minor style changes
- Increases the Picker min-width from 500 to 540
- Makes some changes to the styling of keyboard shortcuts in the command palette
2022-04-20 11:54:57 -04:00
Antonio Scandurra
1da515010b Merge pull request #859 from zed-industries/cli
Add a zed command-line tool
2022-04-20 17:49:08 +02:00
Antonio Scandurra
a210b05d00 Remove App::on_open_files, as it's a subset of on_open_urls
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-20 17:36:27 +02:00
Antonio Scandurra
d725876e64 💄
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-20 17:36:03 +02:00
Antonio Scandurra
07562c2ccd Locate app bundle based on location of CLI binary
The app bundle can also be specified via `-b` or `--bundle-path`.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-20 17:29:12 +02:00
Antonio Scandurra
f77239bd96 Add application menu to install CLI
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-20 17:29:10 +02:00
Antonio Scandurra
926c75dadf Implement zed --version
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-20 17:28:31 +02:00
Antonio Scandurra
5ab35bd6fd Remove stray dbg 2022-04-20 17:28:31 +02:00
Antonio Scandurra
f7055c2acc Implement zed --wait 2022-04-20 17:28:31 +02:00
Antonio Scandurra
b013b1ba5d Call language::init_test in test_single_file_worktrees_diagnostics 2022-04-20 17:28:31 +02:00
Antonio Scandurra
b3f2b7a92c Use osascript to escalate privileges and copy the CLI to /usr/local/bin 2022-04-20 17:28:30 +02:00
Max Brunsfeld
0d9a0e2cbe Avoid permissions error when installing CLI symlink 2022-04-20 17:27:33 +02:00
Max Brunsfeld
fbd1afc51f Add a command for installing the CLI 2022-04-20 17:27:33 +02:00
Max Brunsfeld
eee1cec3d4 🎨 Remove unnecessary JoinProjectParams struct 2022-04-20 17:27:33 +02:00
Max Brunsfeld
184a454f6f Update bundle script to include fat CLI binary 2022-04-20 17:27:33 +02:00
Max Brunsfeld
a81f7ebbf6 Locate the Zed app from the CLI using NSWorkspace API 2022-04-20 17:27:33 +02:00
Max Brunsfeld
43763fa2f8 Allow opening paths from the CLI
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-20 17:27:31 +02:00
Nathan Sobo
05c44b9414 Process incoming CLI requests on the main thread 2022-04-20 17:15:46 +02:00
Nathan Sobo
75f0326e54 Use ipc_channel crate to communicate between cli and app
We still aren't handling CLI requests in the app, but this lays the foundation for bi-directional communication.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-04-20 17:15:46 +02:00
Antonio Scandurra
01eb2dce24 WIP: Start on a new cli crate
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-20 17:15:45 +02:00
Antonio Scandurra
0c98168227 v0.28.1 2022-04-20 15:21:15 +02:00
Antonio Scandurra
b9511afa12 Merge pull request #860 from zed-industries/fix-more-project-diagnostics-cycles
Don't emit event when LSP reports consecutive empty diagnostics
2022-04-20 15:18:58 +02:00
Antonio Scandurra
8ef6b1d8a9 Don't emit event when LSP reports consecutive empty diagnostics
This is related to #849: in that pull request we avoided *storing*
empty diagnostics, but we'd still report an event when receiving
consecutive empty diagnostics. So if the project diagnostics editor
was open, it could happen that opening a buffer would cause the
language server to report zero diagnostics. We would therefore close
the buffer because there were no diagnostics, but doing so would cause
the LSP to report another event with zero diagnostics. This would repeat
forever, causing Zed to use a lot of CPU and the UI not to refresh properly.

With this commit we will simply avoid emitting a `DiagnosticsUpdated` event
altogether if no diagnostics were present before *and* the LSP is reporting
a `PublishDiagnostics` event with no diagnostics in it.
2022-04-20 15:02:38 +02:00
Max Brunsfeld
c2fa7b9bf9 Merge pull request #857 from zed-industries/file-finder-fixes
File finder fixes
2022-04-19 13:40:40 -07:00
Max Brunsfeld
717ebe6a4c Don't cancel match updates when picker query changes
The file finder often cancels an in-progress match task when
the project updates. But it still needs to take the matches
that it did find and add them to its results. So we should
not cancel the entire task, as this will cause the
partial results to be discarded.
2022-04-19 13:16:57 -07:00
Max Brunsfeld
47379677f2 Update file finder correctly when project files change 2022-04-19 13:10:36 -07:00
Keith Simmons
8ff0277103 Handle linewise motions correctly and fix panic when executing invalid actions 2022-04-19 11:36:44 -07:00
Nathan Sobo
93d307aecb Navigate to best match when updating outline view query
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-04-19 10:12:42 -06:00
Nathan Sobo
360b876f36 v0.28.0
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-19 09:40:32 -06:00
Antonio Scandurra
e8728f4ce2 Merge pull request #849 from zed-industries/fix-project-diagnostic-ui-glitch
Remove summaries that don't contain any errors or warnings
2022-04-19 17:13:32 +02:00
Antonio Scandurra
ef784cf21e Remove summaries that don't contain any errors or warnings
When opening a buffer, some language servers might start reporting
diagnostics. When closing a buffer, they might report that no diagnostics
are present for that buffer. Previously, we would keep an empty summary entry
which would cause us to open a buffer in the project diagnostics view, only to
drop it because it contained no diagnostics. However, the act of opening it
caused the language server to asynchronously report non-empty diagnostics.
We would therefore handle this as an update, but the previous closing of the
buffer would cause the language server to report empty diagnostics again. This
would cause the project diagnostics view to thrash infinitely between these two
states, pegging the CPU and constantly refreshing the UI.

With this commit we won't maintain empty summary entries for files that contain
no diagnostics, which fixes the above issue.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-19 15:30:46 +02:00
Antonio Scandurra
1cd23df4d8 Merge pull request #848 from zed-industries/out-of-sync-diagnostics
Use the entire `ProjectPath` to find open buffer for an LSP diagnostic
2022-04-19 13:03:19 +02:00
Antonio Scandurra
eaa6637b05 Use the entire ProjectPath to find open buffer for an LSP diagnostic
Previously, we would only compare the path relative to the worktree root, which
would cause Zed to sometimes update diagnostics on the wrong buffer. This
manifested in the project diagnostics not showing those errors/warnings while
the status bar and the tab title displayed a summary with errors/warnings.

This commit simply uses `Project::get_open_buffer` which correctly locates a
buffer with the given project path.
2022-04-19 12:06:14 +02:00
Nate Butler
484204c2a0 Reduce key icon size to avoid extra padding on command palette item
- Also remove unneeded imports
2022-04-19 02:48:35 -04:00
Nate Butler
408f8d4297 Update inputs, tabs, pickers, autocomplete 2022-04-19 02:34:45 -04:00
Max Brunsfeld
d99c74d874 Merge pull request #823 from zed-industries/command-palette
Command palette
2022-04-18 18:24:31 -07:00
Max Brunsfeld
0af129d50a Use primary text color for keystrokes in command palette 2022-04-18 18:14:45 -07:00
Max Brunsfeld
d8ad0d8e4e Format action names more readably in command palette
Also add a unit test for the command palette
2022-04-18 18:12:43 -07:00
Max Brunsfeld
a4f259066b tmp 2022-04-18 17:30:17 -07:00
Max Brunsfeld
11eba96cb8 Allow toggling other modals from the command palette 2022-04-18 17:11:39 -07:00
Max Brunsfeld
f5377c2f50 Highlight fuzzy match positions in command palette 2022-04-18 17:11:39 -07:00
Max Brunsfeld
3bbc021a7e Use Picker in Outline view 2022-04-18 17:11:39 -07:00
Max Brunsfeld
c56e2ead23 Fix hang when dropping ::scoped future under deterministic executor
Co-authored-by: Nathan Sobo <nathan@zed.dev>
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-18 17:11:39 -07:00
Max Brunsfeld
df0b5779a8 Remove unused crossbeam-channel dependency in zed crate
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-18 17:11:39 -07:00
Max Brunsfeld
d0413ac0e1 Fix crash when dropping a task that is awaiting a call to Background::scoped
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-18 17:11:39 -07:00
Max Brunsfeld
20657566b3 Make all pickers respect mouse clicks 2022-04-18 17:11:39 -07:00
Max Brunsfeld
c7527f92a4 Use Picker in FileFinder 2022-04-18 17:11:39 -07:00
Max Brunsfeld
c75ffc583c Use Picker in ProjectSymbolsView 2022-04-18 17:11:39 -07:00
Max Brunsfeld
7b16860806 Use Picker in ThemeSelector 2022-04-18 17:11:39 -07:00
Max Brunsfeld
7964464e3d Rename SelectorModal -> Picker, put it in its own crate 2022-04-18 17:11:39 -07:00
Max Brunsfeld
bde52d5c93 Add basic styling to keystrokes in command palette 2022-04-18 17:11:37 -07:00
Max Brunsfeld
3901d9d544 Display key bindings in the command palette
They still need to be styled.

Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-04-18 17:11:08 -07:00
Max Brunsfeld
4630071f58 Start work on a command palette 2022-04-18 17:11:08 -07:00
Max Brunsfeld
99f8466cb5 Add a gpui method for listing the available actions 2022-04-18 17:11:07 -07:00
Nate Butler
2a72c618b8 Merge pull request #833 from zed-industries/update-dark-theme-feature-color
update feature color in dark theme
2022-04-18 19:35:42 -04:00
Keith Simmons
5c6a2ac7e6 Merge pull request #812 from zed-industries/js-jsx-language
Add javascript and jsx specific languages
2022-04-18 16:19:54 -07:00
Keith Simmons
26f2aa4d69 Swap to parsing javascript as jsx 2022-04-18 15:26:57 -07:00
Keith Simmons
eb77976c9f Merge pull request #825 from zed-industries/vim-change-delete
Add c and d operators to vim normal mode
2022-04-18 15:21:58 -07:00
Keith Simmons
dd25ab5798 Revert d/c j and k binding special casing 2022-04-18 14:44:11 -07:00
Keith Simmons
dcd5922609 Merge jsx language into js 2022-04-18 14:21:23 -07:00
Nate Butler
ec704cae25 update feature color in dark theme 2022-04-17 22:37:08 -04:00
Keith Simmons
63278041e1 Add c and d operators to vim normal mode
Extracted motions from normal mode
Changed vim_submode to be vim_operator to enable better composition of operators
2022-04-15 16:05:50 -07:00
Nathan Sobo
670757e5c9 Merge pull request #824 from zed-industries/fix-cursor-hidden-after-rename
Always clear rename state when selections change
2022-04-15 15:22:07 -06:00
Antonio Scandurra
2695b13947 Always clear rename state when selections change
At some point during the implementation of rename, we added logic for
invalidating the rename state when the selection moved outside the original
rename range. After transitioning to displaying renames as a block decoration,
we don't need that anymore given that a new, temporary editor is used instead.

This commit removes that invalidation logic and always calls `Editor::take_rename`
when the editor selections change. Doing so also fixes a bug that was causing Zed
to hide the cursor when clicking on the editor to dismiss the rename.
2022-04-15 10:32:07 +02:00
Nathan Sobo
9820c6ba64 Merge pull request #822 from zed-industries/focus-project-search-query
Fix focus bugs in `ProjectSearchView`
2022-04-14 12:25:59 -06:00
Max Brunsfeld
3cdda79fc3 Merge pull request #817 from zed-industries/dynamic-editor-highlights
Store accessors for editor highlight colors not colors themselves
2022-04-14 10:36:38 -07:00
Antonio Scandurra
77d3cc359e Fix tests 2022-04-14 18:50:45 +02:00
Antonio Scandurra
ce3a31d8bd Persist project search focus state
...so that we can re-focus the previously-active editor when switching back
to the project search tab.
2022-04-14 18:36:42 +02:00
Antonio Scandurra
5a8297a02f Introduce ViewContext::observe_focus 2022-04-14 18:22:55 +02:00
Nathan Sobo
27057fdb1b Only process a single focus effect per batch
This allows us to focus the query editor of the project search when deploying it. Previously, a complex interplay between focus events was preventing this from working in an intuitive way. What happened previously:

- We'd activate the project search, which enqueued a focus effect for the project search view
- We'd focus the query editor, which enqueued an effect
- We'd process the focus effect for the search view, which would enqueue an effect to transfer focus to the results editor
- We'd process the effect to focus the query editor
- We'd process the effect to focus the results editor

Now...

- We activate the project search pane item, enqueuing a focus effect for the project search itself
- We focus the query editor and *remove* the previous pending focus change effect
- We process the focus effect
2022-04-14 08:52:24 -06:00
Nathan Sobo
c4203868ea Revert "Focus Project Search query editor always when deployed" 2022-04-14 07:53:15 -06:00
Antonio Scandurra
c4e0307c0b Merge pull request #820 from zed-industries/optimize-line-len
Speed up `WrapSnapshot::line_len` using the indexed transforms
2022-04-14 13:10:09 +02:00
Antonio Scandurra
6d33697e82 Fix warning 2022-04-14 13:03:46 +02:00
Antonio Scandurra
1a1d670104 Speed up WrapSnapshot::line_len using the indexed transforms 2022-04-14 13:01:29 +02:00
Antonio Scandurra
91d4c835ad Introduce TabMap::line_len 2022-04-14 12:55:33 +02:00
Max Brunsfeld
e1b4bbfcf1 Merge pull request #815 from zed-industries/stale-search-match-count
Notify when buffer search matches change
2022-04-13 15:41:30 -07:00
Max Brunsfeld
efa6af427d Merge pull request #816 from zed-industries/render-icon-panic
Don't panic when allocating tiny_skia pixmap
2022-04-13 15:31:47 -07:00
Keith Simmons
292d075f81 Store accessors for editor highlight colors not colors themselves 2022-04-13 15:30:57 -07:00
Max Brunsfeld
08e55f77b8 Merge pull request #814 from zed-industries/nav-history-scroll-position
Record scroll position in nav history
2022-04-13 15:23:53 -07:00
Keith Simmons
4b55b578b2 Don't panic when allocating tiny_skia pixmap 2022-04-13 14:57:16 -07:00
Keith Simmons
b893cb6d82 rename NavigationData anchor and offset to cursor_anchor and cursor_offset 2022-04-13 14:53:47 -07:00
Keith Simmons
8cde15cb72 Notify when buffer search matches change 2022-04-13 14:49:18 -07:00
Max Brunsfeld
031472dc5a 0.27.0 2022-04-13 14:00:09 -07:00
Keith Simmons
9cec6d8d65 add comment explaining offsets 2022-04-13 13:30:07 -07:00
Nathan Sobo
6985d360c8 Merge pull request #811 from zed-industries/font-fallback-3
Implement font fallback and emoji rendering
2022-04-13 14:08:57 -06:00
Keith Simmons
f20e3f35a1 Record scroll position in nav history 2022-04-13 12:30:33 -07:00
Max Brunsfeld
394d0b4cab Merge pull request #813 from zed-industries/fix-missing-bindings
Add back key bindings that were removed accidentally
2022-04-13 11:25:01 -07:00
Max Brunsfeld
2ea2ba358f Add back toggle sidebar key bindings 2022-04-13 11:14:10 -07:00
Keith Simmons
544ca443e3 Add javascript and jsx specific languages 2022-04-13 10:58:42 -07:00
Max Brunsfeld
1e0182f6c7 Add back key binding for confirming completions with tab 2022-04-13 10:35:05 -07:00
Antonio Scandurra
8e89074714 Reduce allocations when caching fonts
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-13 19:06:34 +02:00
Max Brunsfeld
847322215e 0.26.0 2022-04-13 09:34:42 -07:00
Antonio Scandurra
cdcdccfb89 Render emojis
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-13 17:31:10 +02:00
Antonio Scandurra
fff1d9c631 Implement glyph scaling in a way that works with emojis as well 2022-04-13 15:56:32 +02:00
Keith Simmons
4249b5687e Implement font fallback in layout_line
Co-authored-by: Max Brunsfeld <max@zed.dev>
2022-04-13 11:42:19 +02:00
Antonio Scandurra
6cc9306f00 Make room for font subpixel variants correctly 2022-04-13 11:36:54 +02:00
Antonio Scandurra
6b629dfa5c Use CTFont::draw_glyphs to rasterize glyphs
This API supports rendering emojis in addition to normal glyphs.
2022-04-12 19:37:26 +02:00
Nate Butler
fb33378040 Merge pull request #804 from zed-industries/update-theme-feature-colors
Update theme feature colors
2022-04-12 13:36:52 -04:00
Nate Butler
726045e78e Update theme feature colors
- border focus color
- Text feature color
- Match & active match highlight color

Matches should be more legible now in both themes. `activeMatch` is still not hooked up on the rust side, so it won't take any effect yet.

Co-Authored-By: gibusu <95764254+gibusu@users.noreply.github.com>
2022-04-12 12:44:38 -04:00
Nate Butler
409b818717 Fix incorrect path in theme build script
`buildThemes.ts` had an incorrect path for generating the theme json files.

It probably happened when we did some reorganization of the styles directory.

Co-Authored-By: gibusu <95764254+gibusu@users.noreply.github.com>
2022-04-12 12:37:38 -04:00
Antonio Scandurra
00fb5755a3 Merge pull request #802 from zed-industries/update-contacts-on-share
Update contacts list when a project is shared
2022-04-12 11:48:34 +02:00
Antonio Scandurra
4e057da69b Update contacts list when a project is shared 2022-04-12 11:41:20 +02:00
Antonio Scandurra
d17e9c071b Merge pull request #801 from zed-industries/randomized-test-improvements
Introduce guest disconnection in randomized collaboration test
2022-04-12 11:25:07 +02:00
Antonio Scandurra
71beebc913 Fix warning 2022-04-12 10:52:16 +02:00
Antonio Scandurra
1d84876cfd Adjust distribution in randomized test 2022-04-12 10:15:38 +02:00
Antonio Scandurra
3e4bc75160 Merge branch 'main' into randomized-test-improvements 2022-04-12 10:14:08 +02:00
Antonio Scandurra
56b9e5b0a0 Make Server::update_contacts_for_users always synchronous 2022-04-12 09:44:23 +02:00
Antonio Scandurra
c06e5f3d1e Limit incoming size to 1 in tests to more easily simulate backpressure 2022-04-12 09:43:36 +02:00
Max Brunsfeld
6317c049c5 Merge pull request #800 from zed-industries/tolerate-lsp-workspace-symbols-failure
Avoid bailing out of Project::symbols when one LSP request fails
2022-04-11 21:14:51 -07:00
Max Brunsfeld
ae9f71cc07 Avoid bailing out of Project::symbols when one LSP request fails 2022-04-11 21:09:01 -07:00
Max Brunsfeld
aa37c364bb Merge pull request #799 from zed-industries/debug-project-diagnostics-as-json
Allow dumping the project diagnostic view's state as JSON
2022-04-11 20:40:50 -07:00
Nathan Sobo
e9214dc05d Merge pull request #785 from zed-industries/collab-renames
Rename zed-server to collab
2022-04-11 20:56:37 -06:00
Max Brunsfeld
949fbe7cd3 Allow dumping the project diagnostic view's state as JSON
Also, improve DebugElements action so that it shows the JSON in an editor.

Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-04-11 19:51:46 -07:00
Nathan Sobo
d8e4e924cc Merge branch 'main' into collab-renames 2022-04-11 19:07:07 -06:00
Max Brunsfeld
54d49c13d9 Merge pull request #795 from zed-industries/cancel-buffer-search
Handle editor cancel in pane in order to dismiss find toolbar
2022-04-11 17:47:44 -07:00
Max Brunsfeld
a754c3015f Merge pull request #762 from zed-industries/safer-atlas-allocation
Safer Atlas Allocation
2022-04-11 17:42:53 -07:00
Max Brunsfeld
300feb5d57 Merge pull request #797 from zed-industries/project-search-focus
Focus Project Search query editor always when deployed
2022-04-11 17:41:08 -07:00
Max Brunsfeld
b3c64e47f1 Merge branch 'main' into cancel-buffer-search 2022-04-11 17:38:26 -07:00
Max Brunsfeld
50d5253eff Merge pull request #792 from zed-industries/fix-tsx-default-indent
Set default tsx tabsize
2022-04-11 17:35:54 -07:00
Keith Simmons
1d8afdff80 Set tsx default indent to 2 and remove js from extension list in tsx config.toml 2022-04-11 17:34:44 -07:00
Nathan Sobo
5a5506ae1d Update certificate 2022-04-11 18:33:55 -06:00
Max Brunsfeld
25e1e3d2df Merge pull request #786 from zed-industries/load-keymaps
Allow key bindings to be customized via a JSON file
2022-04-11 17:31:22 -07:00
Max Brunsfeld
2807d85a60 Merge pull request #791 from zed-industries/project-search-focus-fix
Properly activate project search item on mouse click
2022-04-11 17:31:06 -07:00
Nathan Sobo
72ea71ca52 Update paths to renamed collab crate 2022-04-11 18:18:12 -06:00
Max Brunsfeld
add0dad6d7 Use '*' to represent the default context in keymap files
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-11 17:17:03 -07:00
Nathan Sobo
3b852ee2bd Update Kubernetes manifest to refer to "collab" instead of "zed" 2022-04-11 18:15:41 -06:00
Keith Simmons
28da5b4afc Don't focus active editor when deploying project search and focus query editor on project search focus 2022-04-11 17:05:24 -07:00
Max Brunsfeld
ee3eb9658f Use the word 'keymap' more consistently
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-11 17:02:16 -07:00
Max Brunsfeld
be11f63f1e Watch ~/.zed/bindings.json file for custom key bindings
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-11 16:50:44 -07:00
Max Brunsfeld
92a5c30389 Merge branch 'main' into load-keymaps 2022-04-11 15:55:10 -07:00
Max Brunsfeld
c065f283aa Move assets to their own crate, load keymaps in vim tests
Also, move assets folder to the top-level.

Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-11 15:54:52 -07:00
Max Brunsfeld
e0096ec1eb Move keymap_file module into settings crate
Co-authored-by: Keith Simmons <keith@zed.dev
2022-04-11 15:22:18 -07:00
Keith Simmons
4b295f566a Handle editor cancel in pane in order to dismiss find toolbar 2022-04-11 15:11:23 -07:00
Keith Simmons
0ca4c9946a Add logging when atlas allocator fails to allocate 2022-04-11 10:31:38 -07:00
Antonio Scandurra
3844634765 Hold the state lock while responding to guest joining a project
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-11 19:30:52 +02:00
Keith Simmons
7abd3a98a8 Make atlas allocation fallable and skip rendering icons and paths when it fails 2022-04-11 10:15:49 -07:00
Keith Simmons
3c116e32cb Reraise editor events in Project Search and activate workspace item from them 2022-04-11 10:13:07 -07:00
Antonio Scandurra
9a8b0388fa Replace synchronous Store lock with an async lock
This also fixes some failures due to `broadcast` and `update_contacts_for_users`
being fallible. As part of this commit, these two functions don't return `Result`
anymore: the reason for this change is that we don't want a request to fail only
because a peer disconnected while we were trying to broadcast a message to them.
2022-04-11 17:56:30 +02:00
Antonio Scandurra
273ee0ae58 Acquire guest connection ids after save request has been forwarded
This fixes a bug that would cause the server to broadcast the save
message to guests that have potentially left the project.
2022-04-11 16:27:14 +02:00
Antonio Scandurra
c3927c541f Simulate random guest disconnection and reconnection 2022-04-11 16:27:11 +02:00
Antonio Scandurra
f99a1437cd Distribute operation workload evenly across peers in randomized test
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-11 14:43:30 +02:00
Antonio Scandurra
02f96c6def Simulate parallelism among peers correctly in randomized collab test
Previously they were all using the same foreground executor, which was
not properly simulating concurrency among tasks from different peers.
2022-04-11 13:42:30 +02:00
Antonio Scandurra
bb8dc6120b Allow taking an Arc<Deterministic> in [gpui::test]-decorated tests 2022-04-11 13:42:30 +02:00
Antonio Scandurra
28f44a3252 Merge pull request #787 from zed-industries/buffer-divergence
Fix divergence bug when peer reconnects reusing a prior replica id
2022-04-11 13:34:30 +02:00
Antonio Scandurra
f9e0899e58 Fix divergence bug when peer reconnects reusing a prior replica id
We forgot to observe the footprint of the reconnecting replica's prior
undos into the local clock. This could cause the replica to generate
edits with a version strictly smaller than what other peers may have
observed. As such, those peers would think they had already seen those
edits and skip them.
2022-04-11 13:17:47 +02:00
Max Brunsfeld
9a4b8e3d8c Load all keybindings from JSON file 2022-04-10 14:29:45 -07:00
Max Brunsfeld
b4babbeeaa Load modal key bindings from JSON file 2022-04-10 11:39:43 -07:00
Max Brunsfeld
1e2eeaa22a Load project and buffer search key bindings from JSON file 2022-04-10 11:30:08 -07:00
Max Brunsfeld
3636c9ec25 Load workspace and editor key bindings from a JSON file 2022-04-10 11:18:08 -07:00
Nathan Sobo
ab8204368c Rename zed-server to collab
Over time, I think we may end up having multiple services, so it seems like a good opportunity to name this one more specifically while the cost is low. It just seems like naming it "zed" and "zed-server" leaves it a bit open ended.
2022-04-09 08:30:42 -06:00
Nathan Sobo
af674e1c00 Merge pull request #770 from zed-industries/better-settings-schema
Improve Settings Completions
2022-04-09 08:23:58 -06:00
Nathan Sobo
56fcffb634 Remove unused imports 2022-04-09 07:55:23 -06:00
Nathan Sobo
17195e615e Merge pull request #781 from zed-industries/structured-logging
Introduce structured logging
2022-04-09 07:40:24 -06:00
Max Brunsfeld
fd4b81c8fc Allow actions to be deserialized from JSON
Introduce separate macro for implementing 'internal' actions which
are not intended to be loaded from keymaps.
2022-04-08 15:47:51 -07:00
Max Brunsfeld
1778622960 Merge pull request #773 from zed-industries/namespace-actions
Change how actions are declared so that they are always associated with a namespace
2022-04-08 11:57:13 -07:00
Max Brunsfeld
ed2b690b9e Merge branch 'main' into namespace-actions 2022-04-08 11:48:43 -07:00
Nathan Sobo
8a7d3ea82a Merge pull request #778 from zed-industries/test-random-disconnect
Introduce host disconnection in randomized collaboration test
2022-04-08 11:36:39 -06:00
Nathan Sobo
b507e21831 Enable JSON logging at the trace log level in K8s
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-08 10:08:52 -06:00
Nathan Sobo
7e5a3f9f6b Introduce structured logging
We're enabling the log crate feature everywhere, but only using it on the server for now.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-08 10:06:51 -06:00
Antonio Scandurra
53a7f9c43e Introduce a timeout when processing incoming messages
We have an hypothesis that the server gets stuck while processing
an incoming message, either because the buffer fills up or because
a handler never completes. This should mitigate that and, once we
add logging, give us some clue as to what is causing it exactly.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-08 16:21:39 +02:00
Antonio Scandurra
0b1fda3e13 Remove postage from zed-server
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-08 16:14:54 +02:00
Antonio Scandurra
24cb44fb00 Remove postage from rpc
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-08 16:13:37 +02:00
Antonio Scandurra
32fd4eb3ac Insert project id in connection's project during project registration
...in contrast to doing so during worktree registration. This fixes a
randomized test failure which would panic because store invariants would be
violated. This would happen when a peer disconnected before it had a chance
to register a worktree because, when removing all the state associated with
that peer upon disconnection, we would notice the registered project without
however finding it in the peer's connection state.
2022-04-08 14:41:56 +02:00
Antonio Scandurra
222cd09838 Allow host to reconnect to the server in randomized test 2022-04-08 14:41:30 +02:00
Antonio Scandurra
c994263225 Don't insert an empty vector in Project::buffer_snapshots
Other code paths rely on at least a version always being there, so
we should enforce that invariant everywhere.
2022-04-08 14:14:45 +02:00
Antonio Scandurra
663beab1b9 Avoid panicking when receiving a request for a dropped buffer 2022-04-08 12:10:45 +02:00
Antonio Scandurra
3daaef02ca Replace postage::oneshot with futures::channel::oneshot
This fixes an error in the randomized test that would cause the future
returned from `Worktree::share` to never finish due to a bug in `postage`
that causes its waker to not be notified upon drop.
2022-04-08 12:03:09 +02:00
Antonio Scandurra
da976012a9 Allow simulate_guest and simulate_host to fail when host disconnects 2022-04-08 11:29:00 +02:00
Antonio Scandurra
fae9048a2a Remove non-determinism from Peer caused by using std's HashMap 2022-04-08 11:28:19 +02:00
Keith Simmons
3e40b5bead dynamically inject theme names and language properties into schema 2022-04-07 18:15:02 -07:00
Max Brunsfeld
c801a52492 Convert some actions to use named fields
Co-authored-by: Nathan Sobo <nathan@zed.dev>
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-07 16:44:37 -07:00
Max Brunsfeld
5242a3a6dc Restructure action macro to assign a namespace to every action
Also, allow arbitrary types to be used as Actions via the impl_actions macro

Co-authored-by: Nathan Sobo <nathan@zed.dev>
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-07 16:20:49 -07:00
Keith Simmons
035cd37aa8 Add explicit types for LanguageOverrides and Themes to SettingsFileContent in order to improve completions in zed settings file 2022-04-07 16:00:51 -07:00
Max Brunsfeld
206b0f0f8c 0.25.0 2022-04-07 12:03:43 -07:00
Nathan Sobo
717f53e3d2 WIP 2022-04-07 09:29:47 -06:00
Antonio Scandurra
0b8eed64ad Merge pull request #765 from zed-industries/yield-lsp
Don't starve UI thread when rapidly receiving LSP messages
2022-04-07 17:15:19 +02:00
Nathan Sobo
80d55fd3d8 Don't starve UI thread when rapidly receiving LSP messages
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-07 08:30:42 -06:00
Nathan Sobo
7a151ffc75 Merge pull request #764 from zed-industries/refine-event-handlers-behavior
Calculate hit-box based on visible bounds in `{Mouse}EventHandler`
2022-04-07 08:16:14 -06:00
Antonio Scandurra
b396909035 Calculate hitbox based on visible bounds in {Mouse}EventHandler
This is in contrast to not dispatching the event altogether in `Flex` when
the event is not contained in the flex element bounds. That approach was
problematic because it didn't give an opportunity to `MouseEventHandler`s
to handle mouse move events when they didn't intersect with the element bounds,
causing elements to never clear their hover state, cursor style, etc.
2022-04-07 15:12:09 +02:00
Antonio Scandurra
73f2fd6b09 Pass visible bounds to Element::dispatch_event 2022-04-07 15:10:09 +02:00
Antonio Scandurra
ae415ee49b Merge pull request #763 from zed-industries/inconsistent-diagnostic-state
Fix bad diagnostic state when restarting a language server w/ a running diagnostic task
2022-04-07 09:54:00 +02:00
Antonio Scandurra
7c21b61ad9 Merge pull request #748 from zed-industries/fix-outline-panic
Don't assume there are always matches in outline view
2022-04-07 09:49:13 +02:00
Antonio Scandurra
52251c3463 Merge pull request #745 from zed-industries/scroll-tabs
Allow pane tabs to be scrolled when they overflow
2022-04-07 09:48:54 +02:00
Max Brunsfeld
f73de202d0 Fix diagnostic updates after restarting an LSP w/ a pending diagnostic job 2022-04-06 22:02:27 -07:00
Max Brunsfeld
b354af7bda Use an unbounded channel in gpui test helper methods
The bounded channel could fill up when many events were emitted in one
effect cycle.
2022-04-06 22:02:04 -07:00
Max Brunsfeld
ce547010d8 Merge pull request #759 from zed-industries/breadcrumb-multibuffer-fix
Update breadcrumbs when multibuffers' excerpts change
2022-04-06 17:21:18 -07:00
Max Brunsfeld
ec837fa6d7 Update breadcrumbs when multibuffers' excerpts change 2022-04-06 17:12:36 -07:00
Max Brunsfeld
8f38ac8270 Tweak structure of Project::on_lsp_progress so it can be auto-formatted
Previously, rustfmt seems to have given up on formatting this method.
2022-04-06 16:35:58 -07:00
Max Brunsfeld
f9e1b4de96 Merge pull request #758 from zed-industries/open-excerpts-in-same-pane
Don't activate the next pane when opening excerpts
2022-04-06 15:56:22 -07:00
Max Brunsfeld
ea63df0519 Don't activate the next pane when opening excerpts 2022-04-06 15:46:11 -07:00
Max Brunsfeld
3d8e4adcde Merge pull request #757 from zed-industries/restructure-settings
Enable language specific tab sizes
2022-04-06 15:18:13 -07:00
Keith Simmons
67b15ee037 Use language specific tabsize in editor commands
Co-authored-by: Max Brunsfeld <max@zed.dev>
2022-04-06 15:10:29 -07:00
Keith Simmons
36f4d8f9e4 Fix typescript indent size 2022-04-06 10:35:29 -07:00
Keith Simmons
1812480cbb Tab size is pulled properly from settings instead of hardcoded 2022-04-06 10:23:37 -07:00
Max Brunsfeld
866ffdd4ae Move Settings to its own crate
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-06 10:23:33 -07:00
Max Brunsfeld
664f17f92b Avoid maintaining indent size as state on buffers
Indent size is still hard-coded, but it's now controlled by the
editor and not the buffer.

Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-06 10:22:29 -07:00
Nathan Sobo
0214bec7f4 Don't dispatch events to flex children outside of parent flex's bounds 2022-04-06 10:59:03 -06:00
Nathan Sobo
e21f90fec5 Merge pull request #747 from zed-industries/styles-in-typescript
Style the Zed app using Typescript styleTrees and Design Tokens
2022-04-06 10:39:10 -06:00
Nate Butler
b1eda1ac39 Add border to top of status bar 2022-04-06 12:25:15 -04:00
Nate Butler
e584e892f4 Update light theme 2022-04-06 12:25:02 -04:00
Nate Butler
d3cfd1c974 Use standard text sizes for signInPrompt 2022-04-06 12:14:05 -04:00
Nathan Sobo
ca64b081fe Don't assume there are always matches in outline view 2022-04-06 09:33:47 -06:00
Nathan Sobo
c289cdcac8 💄 2022-04-06 09:28:56 -06:00
Nathan Sobo
36fede7522 💄 token-building script and output destinations
Just some organization here.
2022-04-06 09:26:51 -06:00
Nate Butler
f29b8c795e Remove message.txt 2022-04-06 11:00:25 -04:00
Antonio Scandurra
d7342e2875 Use Pane::activate_item when navigating to remove duplicated logic 2022-04-06 09:31:54 +02:00
Antonio Scandurra
1453954ef4 Autoscroll to active tab when activating a new item 2022-04-06 09:08:44 +02:00
Nate Butler
e201826d00 Update Light & Dark themes 2022-04-06 01:46:10 -04:00
Nathan Sobo
eb99588368 Remove stray dbg! expressions 2022-04-05 20:02:45 -06:00
Nathan Sobo
ab3bbe1e17 Make the tabs scrollable when they overflow
This adds the ability to make a Flex element scrollable by passing a type tag and instance id, which we use to store the scroll position in an ElementStateHandle.

Still need to allow the element to auto-scroll.
2022-04-05 19:58:15 -06:00
Nathan Sobo
025d857be8 Make UniformListState an Rc<RefCell<>> instead of an Arc<Mutex<>>
We don't need to support multiple threads.
2022-04-05 18:40:25 -06:00
Nathan Sobo
0cbcc81ed9 Merge pull request #742 from zed-industries/better-atlas-panics
Report more information when we panic due to an atlas allocation failure
2022-04-05 17:08:04 -06:00
Nate Butler
2a2c4071f4 Update light syntax theme and highlights, player selections 2022-04-05 18:49:17 -04:00
Nate Butler
35f56708f5 Update light theme, change player 3 color
- Changed player 3 color to be less similar to player 1
2022-04-05 18:23:01 -04:00
Nathan Sobo
aeb0b42c7a Report more information when we panic due to an allocation failure 2022-04-05 13:53:13 -06:00
Nathan Sobo
133d9f947b Merge pull request #740 from zed-industries/prompt-only-on-last-dirty-item
Show unsaved/conflict prompt only when closing the last tab for an item
2022-04-05 13:12:08 -06:00
Nathan Sobo
4f4364d510 Ensure we drop the last pane item
Previously, we weren't updating the toolbar's active item when emptying out a pane. This enhances an integration test to ensure that we don't hold references to any editors or buffers once we close everything.
2022-04-05 13:05:14 -06:00
Nathan Sobo
41a27e6925 💄 2022-04-05 12:09:40 -06:00
Nathan Sobo
e2bf89b1e8 Don't require a path in TestAppContext::dispatch_action
Instead, derive it from the presenter. This makes tests easier to write and more reliable since we'll be accurately simulating the actual relationship between parent and child views.
2022-04-05 12:08:25 -06:00
Nathan Sobo
3da8f7f944 Fix dispatch path in test 2022-04-05 11:55:29 -06:00
Antonio Scandurra
c3b947ca26 Show unsaved/conflict prompt only when closing the last tab for an item
Also, ensure we show the correct prompt when files have conflicts.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-05 19:38:27 +02:00
Nate Butler
d21dea6112 Squashed commit of the following:
commit 66d4cbae2ca6d7dd660688d7eb702ae55bf3e0ca
Author: Nate Butler <iamnbutler@gmail.com>
Date:   Tue Apr 5 13:33:33 2022 -0400

    WIP: Improve legibility of contactsPanel and fix errors

    Co-Authored-By: Keith Simmons <keith@the-simmons.net>

commit 000319c583801c5ba4ed7884bbf3da2a591e3f26
Author: Nate Butler <iamnbutler@gmail.com>
Date:   Tue Apr 5 13:13:32 2022 -0400

    WIP
2022-04-05 13:34:06 -04:00
Antonio Scandurra
cac0dddb1b Restructure item closing to take the Workspace instead of the Pane 2022-04-05 19:12:17 +02:00
Antonio Scandurra
939def42e3 v0.24.1 2022-04-05 16:23:27 +02:00
Antonio Scandurra
3ee84449ff Merge pull request #737 from zed-industries/lsp-renames
Improve handling of renames with respect to language servers
2022-04-05 16:22:17 +02:00
Antonio Scandurra
cc45658b2d Clear diagnostics from buffer when unregistering it from language server
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-05 16:01:33 +02:00
Antonio Scandurra
7e3cc67e0a Don't reuse old syntax tree when resetting a buffer's language
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-05 16:01:05 +02:00
Antonio Scandurra
5c7f2bb029 Close and re-open buffer in language server when it gets renamed 2022-04-05 15:15:43 +02:00
Antonio Scandurra
9188f51993 Add unit test to illustrate how language server renames should work 2022-04-05 14:47:37 +02:00
Antonio Scandurra
e697ffbbf0 Merge pull request #736 from zed-industries/update-followers-when-navigating
Update followers when navigating back and forth
2022-04-05 10:57:57 +02:00
Antonio Scandurra
5ef484c9a1 Update followers when navigating back and forth 2022-04-05 10:42:35 +02:00
Antonio Scandurra
4a5c49eb6e Skip checking for updates when an update has already been installed 2022-04-05 10:18:37 +02:00
Antonio Scandurra
4adb245771 💄 2022-04-05 10:16:08 +02:00
Antonio Scandurra
493450f6a8 Massage styling of auto-update messages a bit 2022-04-05 10:15:26 +02:00
Antonio Scandurra
bd0b063bd1 Display Installing update… when the new app is being copied 2022-04-05 10:07:45 +02:00
Antonio Scandurra
61c479ebc8 Pass an NSString to objectForInfoDictionaryKey 2022-04-05 10:02:37 +02:00
Max Brunsfeld
e566a8335f Find path to running app using [NSBundle bundlePath] 2022-04-04 20:53:46 -07:00
Max Brunsfeld
fb2caf3c58 Add application menu item for checking for updates 2022-04-04 18:34:14 -07:00
Max Brunsfeld
9c469f2fdb Add remaining logic for downloading updates, add status bar indicator 2022-04-04 18:34:14 -07:00
Nathan Sobo
6daefc467a Merge pull request #734 from zed-industries/fix-prompt-panic
Drop borrow to window state before calling beginSheetModalForWindow
2022-04-04 17:50:09 -06:00
Nathan Sobo
66544d54f2 Drop borrow to window state before calling beginSheetModalForWindow
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
2022-04-04 16:18:28 -06:00
Keith Simmons
05a05157fa Move style source files to src and build to dist
Co-authored-by: Nate Butler <nate@zed.dev>
2022-04-04 14:43:13 -07:00
Nathan Sobo
b060fb0f67 Merge pull request #732 from zed-industries/fix-impersonation-in-api
In API, wait to create access token until after we impersonate a user
2022-04-04 15:16:35 -06:00
Nathan Sobo
6a1be11aa6 Wait to create access token until we impersonate a user
We need to wait to create the token until we decide on whether we're impersonating a different user, otherwise we'll create the token for the original user and the impersonated user won't be able to authenticate.
2022-04-04 15:07:55 -06:00
Nate Butler
58dee75ff0 Merge branch 'styles-in-typescript' of https://github.com/zed-industries/zed into styles-in-typescript 2022-04-04 15:15:54 -04:00
Nate Butler
3dc99a8743 Update dark, light themes. 2022-04-04 12:14:00 -07:00
Nate Butler
a3fc719a52 Add a combined tokens.json for Figma Tokens
- Having individual json files for themes and core is useful for copy+pasting while exploring changes
- Figma github sync requires a single json file to pull down
2022-04-04 12:14:00 -07:00
Nate Butler
90df8a31e7 Fix incorrect ramp preset values in color.ts
- Regenerate themes and tokens as well
2022-04-04 12:14:00 -07:00
Nate Butler
37441bf342 Add basic support for exporting tokens to Figma Tokens. (#724)
* WIP on figma token export

* WIP Working export

* Tidy up the figma tokens script

* Correctly format theme json structure for Figma Tokens

* Finish up themeTokens imports
2022-04-04 12:14:00 -07:00
Nate Butler
e0e9a14590 Remove leftover console.log 2022-04-04 12:14:00 -07:00
Nate Butler
631d8d0344 Refined dark theme styles 2022-04-04 12:14:00 -07:00
Nate Butler
c374fd2f54 WIP 2022-04-04 12:14:00 -07:00
Nate Butler
bfde9dca4e Add greg to .zed.toml 2022-04-04 12:14:00 -07:00
Nate Butler
381d50bac6 WIP 2022-04-04 12:14:00 -07:00
Nate Butler
c812adde7f Add "npm run watch" command to live reload changes 2022-04-04 12:14:00 -07:00
Nathan Sobo
391aed3d66 Start loading new theme JSON format instead of TOML
Replaced remaining extends with javascript object extension.
Moved tokens/core.ts to tokens.ts and massaged the types to make it more
obvious when types don't match up.

Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-04-04 12:13:59 -07:00
Nathan Sobo
371ea7c552 Update style tree based on changes to _base.toml from main
Co-Authored-By: Nate Butler <1714999+iamnbutler@users.noreply.github.com>
2022-04-04 12:13:59 -07:00
Nathan Sobo
d2a070c345 Write theme JSON files from buildThemes script
Co-Authored-By: Nate Butler <1714999+iamnbutler@users.noreply.github.com>
2022-04-04 12:13:59 -07:00
Nathan Sobo
70a783c8d1 Fix TS compile error 2022-04-04 12:13:59 -07:00
Nate Butler
211c473d32 Update renamed/moved imports 2022-04-04 12:13:59 -07:00
Nate Butler
43a7cadf5b Type name 2022-04-04 12:13:59 -07:00
Keith Simmons
bfeb6abb4b Finish dark.ts initial port and restructure files to get ready for build script
Build script currently fails to type check. Not sure whats going on. Will fix in the morning.

Co-authored-by: Nate Butler <nate@zed.dev>
2022-04-04 12:13:59 -07:00
Keith Simmons
f11e0aeda9 wip 2022-04-04 12:13:59 -07:00
Keith Simmons
210eb2f6b1 wip 2022-04-04 12:13:59 -07:00
Nate Butler
083c1f7c0e WIP for keith 2022-04-04 12:13:59 -07:00
Nate Butler
ae8b610d85 WIP: Scaffold tokens in dark.ts, no real values yet. 2022-04-04 12:13:59 -07:00
Nate Butler
c008e65de6 Extract search from app
- Also update border to use borderColor( )
2022-04-04 12:13:59 -07:00
Nate Butler
d88e20477d Update app.ts, editor.ts 2022-04-04 12:13:59 -07:00
Nathan Sobo
70b15e4c90 Convert chat panel 2022-04-04 12:13:59 -07:00
Nathan Sobo
189db6311c Convert project panel styles 2022-04-04 12:13:59 -07:00
Nathan Sobo
cb3c111401 Convert editor styles to TypeScript 2022-04-04 12:13:59 -07:00
Nathan Sobo
8b33a58076 Express workspace in terms of new components
Co-Authored-By: Nate Butler <1714999+iamnbutler@users.noreply.github.com>
2022-04-04 12:13:59 -07:00
Nate Butler
1f71e742c5 WIP: Color WIP 2022-04-04 12:13:59 -07:00
Nate Butler
bfce4a6104 WIP: Add rose color tokens to core.ts 2022-04-04 12:13:59 -07:00
Nathan Sobo
2aebb04a84 Start on TypeScript-based styling system
Co-Authored-By: Nate Butler <1714999+iamnbutler@users.noreply.github.com>
2022-04-04 12:13:59 -07:00
Antonio Scandurra
38e902b241 WIP: Start on auto-update
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Keith Simmons <keith@zed.dev>
2022-04-04 18:59:57 +02:00
Nate Butler
b6f85e4895 Update dark, light themes. 2022-04-03 21:15:14 -04:00
Nate Butler
2d51b103d2 Add a combined tokens.json for Figma Tokens
- Having individual json files for themes and core is useful for copy+pasting while exploring changes
- Figma github sync requires a single json file to pull down
2022-04-03 15:03:38 -04:00
Nate Butler
d029a5c376 Fix incorrect ramp preset values in color.ts
- Regenerate themes and tokens as well
2022-04-03 13:37:47 -04:00
Nate Butler
60295af00a Add basic support for exporting tokens to Figma Tokens. (#724)
* WIP on figma token export

* WIP Working export

* Tidy up the figma tokens script

* Correctly format theme json structure for Figma Tokens

* Finish up themeTokens imports
2022-04-03 13:30:59 -04:00
Nate Butler
433c095f51 Remove leftover console.log 2022-04-03 10:50:41 -04:00
Nate Butler
6a7c8a6995 Refined dark theme styles 2022-04-03 01:04:34 -04:00
Nate Butler
2af313c8e2 WIP 2022-04-02 01:05:28 -04:00
Nate Butler
b721472991 Add greg to .zed.toml 2022-04-01 23:59:20 -04:00
Nate Butler
ffc271e100 WIP 2022-04-01 23:58:04 -04:00
Nate Butler
f633e98081 Add "npm run watch" command to live reload changes 2022-04-01 22:39:18 -04:00
Nathan Sobo
93c0c2af0a Start loading new theme JSON format instead of TOML
Replaced remaining extends with javascript object extension.
Moved tokens/core.ts to tokens.ts and massaged the types to make it more
obvious when types don't match up.

Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-04-01 13:34:39 -07:00
Nathan Sobo
9147a19522 Update style tree based on changes to _base.toml from main
Co-Authored-By: Nate Butler <1714999+iamnbutler@users.noreply.github.com>
2022-04-01 09:56:50 -06:00
Nathan Sobo
b35fafc8e3 Merge branch 'main' into styles-in-typescript 2022-04-01 09:46:51 -06:00
Nathan Sobo
6734a0e69d Write theme JSON files from buildThemes script
Co-Authored-By: Nate Butler <1714999+iamnbutler@users.noreply.github.com>
2022-04-01 09:45:11 -06:00
Nathan Sobo
99738db8a5 Fix TS compile error 2022-04-01 08:25:58 -06:00
Nate Butler
cea3ac6217 Update renamed/moved imports 2022-03-31 23:43:01 -04:00
Nate Butler
1d42cbcf42 Type name 2022-03-31 23:42:45 -04:00
Keith Simmons
e990b46b9d Finish dark.ts initial port and restructure files to get ready for build script
Build script currently fails to type check. Not sure whats going on. Will fix in the morning.

Co-authored-by: Nate Butler <nate@zed.dev>
2022-03-31 20:31:18 -07:00
Keith Simmons
ce8d5bc0db wip 2022-03-31 19:05:21 -07:00
Keith Simmons
e3366c490e wip 2022-03-31 17:51:25 -07:00
Nate Butler
b4087b115b WIP for keith 2022-03-31 20:32:47 -04:00
Nate Butler
0b690ac0b4 WIP: Scaffold tokens in dark.ts, no real values yet. 2022-03-31 19:10:44 -04:00
Nate Butler
fb41ad325c Extract search from app
- Also update border to use borderColor( )
2022-03-31 11:27:02 -04:00
Nate Butler
c6c6cc591a Update app.ts, editor.ts 2022-03-31 01:38:18 -04:00
Nathan Sobo
b8118ee50e Convert chat panel 2022-03-30 18:45:34 -06:00
Nathan Sobo
4a728bb3d3 Convert project panel styles 2022-03-30 18:26:47 -06:00
Nathan Sobo
89eb34209f Convert editor styles to TypeScript 2022-03-30 17:59:35 -06:00
Nathan Sobo
32b6c3d3d4 Express workspace in terms of new components
Co-Authored-By: Nate Butler <1714999+iamnbutler@users.noreply.github.com>
2022-03-29 16:28:19 -06:00
Nate Butler
39f46f64a6 WIP: Color WIP 2022-03-29 17:10:46 -04:00
Nate Butler
9669f5a8f8 WIP: Add rose color tokens to core.ts 2022-03-29 15:33:03 -04:00
Nathan Sobo
1615c6150a Start on TypeScript-based styling system
Co-Authored-By: Nate Butler <1714999+iamnbutler@users.noreply.github.com>
2022-03-29 13:08:00 -06:00
612 changed files with 70238 additions and 33303 deletions

9
.github/pull_request_template.md vendored Normal file
View File

@@ -0,0 +1,9 @@
## Description of feature or change
## Link to related issues from zed or insiders
## Before Merging
- [ ] Does this have tests or have existing tests been updated to cover this change?
- [ ] Have you added the necessary settings to configure this feature?
- [ ] Has documentation been created or updated (including above changes to settings)?

View File

@@ -25,11 +25,15 @@ jobs:
RUSTFLAGS: -D warnings
steps:
- name: Install Rust
uses: actions-rs/toolchain@v1
run: |
rustup set profile minimal
rustup update stable
rustup target add wasm32-wasi
- name: Install Node
uses: actions/setup-node@v2
with:
toolchain: stable
target: x86_64-apple-darwin
profile: minimal
node-version: '16'
- name: Checkout repo
uses: actions/checkout@v2
@@ -38,6 +42,9 @@ jobs:
- name: Run tests
run: cargo test --workspace --no-fail-fast
- name: Build collab binaries
run: cargo build --bins --all-features
bundle:
name: Bundle app
@@ -50,19 +57,13 @@ jobs:
APPLE_NOTARIZATION_USERNAME: ${{ secrets.APPLE_NOTARIZATION_USERNAME }}
APPLE_NOTARIZATION_PASSWORD: ${{ secrets.APPLE_NOTARIZATION_PASSWORD }}
steps:
- name: Install Rust x86_64-apple-darwin target
uses: actions-rs/toolchain@v1
with:
toolchain: stable
target: x86_64-apple-darwin
profile: minimal
- name: Install Rust aarch64-apple-darwin target
uses: actions-rs/toolchain@v1
with:
toolchain: stable
target: aarch64-apple-darwin
profile: minimal
- name: Install Rust
run: |
rustup set profile minimal
rustup update stable
rustup target add aarch64-apple-darwin
rustup target add x86_64-apple-darwin
rustup target add wasm32-wasi
- name: Install Node
uses: actions/setup-node@v2

9
.gitignore vendored
View File

@@ -1,7 +1,10 @@
/target
**/target
/zed.xcworkspace
.DS_Store
/plugins/bin
/script/node_modules
/crates/server/.env.toml
/crates/server/static/styles.css
/styles/node_modules
/crates/collab/.env.toml
/crates/collab/static/styles.css
/vendor/bin
/assets/themes/*.json

View File

@@ -1 +0,0 @@
collaborators = ["nathansobo", "as-cii", "maxbrunsfeld", "iamnbutler", "Kethku"]

5166
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -4,13 +4,17 @@ default-members = ["crates/zed"]
resolver = "2"
[patch.crates-io]
tree-sitter = { git = "https://github.com/tree-sitter/tree-sitter", rev = "1f1b1eb4501ed0a2d195d37f7de15f72aa10acd0" }
async-task = { git = "https://github.com/zed-industries/async-task", rev = "341b57d6de98cdfd7b418567b8de2022ca993a6e" }
# TODO - Remove when a version is released with this PR: https://github.com/servo/core-foundation-rs/pull/457
cocoa = { git = "https://github.com/servo/core-foundation-rs", rev = "025dcb3c0d1ef01530f57ef65f3b1deb948f5737" }
cocoa-foundation = { git = "https://github.com/servo/core-foundation-rs", rev = "025dcb3c0d1ef01530f57ef65f3b1deb948f5737" }
core-foundation = { git = "https://github.com/servo/core-foundation-rs", rev = "025dcb3c0d1ef01530f57ef65f3b1deb948f5737" }
core-foundation-sys = { git = "https://github.com/servo/core-foundation-rs", rev = "025dcb3c0d1ef01530f57ef65f3b1deb948f5737" }
core-graphics = { git = "https://github.com/servo/core-foundation-rs", rev = "025dcb3c0d1ef01530f57ef65f3b1deb948f5737" }
cocoa = { git = "https://github.com/servo/core-foundation-rs", rev = "079665882507dd5e2ff77db3de5070c1f6c0fb85" }
cocoa-foundation = { git = "https://github.com/servo/core-foundation-rs", rev = "079665882507dd5e2ff77db3de5070c1f6c0fb85" }
core-foundation = { git = "https://github.com/servo/core-foundation-rs", rev = "079665882507dd5e2ff77db3de5070c1f6c0fb85" }
core-foundation-sys = { git = "https://github.com/servo/core-foundation-rs", rev = "079665882507dd5e2ff77db3de5070c1f6c0fb85" }
core-graphics = { git = "https://github.com/servo/core-foundation-rs", rev = "079665882507dd5e2ff77db3de5070c1f6c0fb85" }
# TODO - Remove when a new version of RustRocksDB is released
rocksdb = { git = "https://github.com/rust-rocksdb/rust-rocksdb", rev = "39dc822dde743b2a26eb160b660e8fbdab079d49" }
[profile.dev]
split-debuginfo = "unpacked"

View File

@@ -1,33 +1,23 @@
# syntax = docker/dockerfile:1.2
FROM rust:1.58-bullseye as builder
FROM rust:1.62-bullseye as builder
WORKDIR app
RUN curl -fsSL https://deb.nodesource.com/setup_16.x | bash -
RUN apt-get install -y nodejs
COPY . .
# Install script dependencies
RUN --mount=type=cache,target=./script/node_modules \
cd ./script && npm install --quiet
# Build CSS
RUN --mount=type=cache,target=./script/node_modules \
script/build-css --release
# Compile server
# Compile collab server
RUN --mount=type=cache,target=./script/node_modules \
--mount=type=cache,target=/usr/local/cargo/registry \
--mount=type=cache,target=./target \
cargo build --release --package zed-server --bin zed-server
cargo build --release --package collab --bin collab
# Copy server binary out of cached directory
# Copy collab server binary out of cached directory
RUN --mount=type=cache,target=./target \
cp /app/target/release/zed-server /app/zed-server
cp /app/target/release/collab /app/collab
# Copy server binary to the runtime image
# Copy collab server binary to the runtime image
FROM debian:bullseye-slim as runtime
RUN apt-get update; \
apt-get install -y --no-install-recommends libcurl4-openssl-dev ca-certificates
WORKDIR app
COPY --from=builder /app/zed-server /app
ENTRYPOINT ["/app/zed-server"]
COPY --from=builder /app/collab /app
ENTRYPOINT ["/app/collab"]

View File

@@ -1,6 +1,6 @@
# syntax = docker/dockerfile:1.2
FROM rust:1.58-bullseye as builder
FROM rust:1.62-bullseye as builder
WORKDIR app
RUN --mount=type=cache,target=/usr/local/cargo/registry \
--mount=type=cache,target=./target \
@@ -11,5 +11,5 @@ RUN apt-get update; \
apt-get install -y --no-install-recommends libssl1.1
WORKDIR app
COPY --from=builder /app/bin/sqlx /app
COPY ./server/migrations /app/migrations
COPY ./crates/collab/migrations /app/migrations
ENTRYPOINT ["/app/sqlx", "migrate", "run"]

View File

@@ -1,2 +1,2 @@
web: cd ../zed.dev && PORT=3000 npx next dev
collab: cd crates/server && cargo run
collab: cd crates/collab && cargo run

View File

@@ -23,7 +23,7 @@ script/sqlx migrate run
script/seed-db
```
Run `zed.dev` and the collaboration server.
Run the web frontend and the collaboration server.
```
brew install foreman
@@ -42,6 +42,16 @@ script/zed_with_local_servers --release
If you trigger `cmd-alt-i`, Zed will copy a JSON representation of the current window contents to the clipboard. You can paste this in a tool like [DJSON](https://chrome.google.com/webstore/detail/djson-json-viewer-formatt/chaeijjekipecdajnijdldjjipaegdjc?hl=en) to navigate the state of on-screen elements in a structured way.
### Wasm Plugins
Zed has a Wasm-based plugin runtime which it currently uses to embed plugins. To compile Zed, you'll need to have the `wasm32-wasi` toolchain installed on your system. To install this toolchain, run:
```bash
rustup target add wasm32-wasi
```
Plugins can be found in the `plugins` folder in the root. For more information about how plugins work, check the [Plugin Guide](./crates/plugin_runtime/README.md) in `crates/plugin_runtime/README.md`.
## Roadmap
We will organize our efforts around the following major milestones. We'll create tracking issues for each of these milestones to detail the individual tasks that comprise them.

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.9007 7.45347L6.60649 11.7477C6.44009 11.9168 6.22001 12 5.99993 12C5.77985 12 5.56031 11.9161 5.39283 11.7484L1.09859 7.45414C0.763098 7.11865 0.763098 6.57516 1.09859 6.23967C1.43407 5.90419 1.97756 5.90419 2.31305 6.23967L5.14108 9.06904V0.834694C5.14108 0.359912 5.52568 0 5.97577 0C6.42587 0 6.85878 0.359912 6.85878 0.834694V9.06891L9.68761 6.24008C10.0231 5.90459 10.5666 5.90459 10.9021 6.24008C11.2376 6.57556 11.2362 7.11771 10.9007 7.4532V7.45347Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 590 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13.0538 9.45347L8.75952 13.7477C8.59312 13.9168 8.37304 14 8.15296 14C7.93288 14 7.71334 13.9161 7.54586 13.7484L3.25162 9.45414C2.91613 9.11865 2.91613 8.57516 3.25162 8.23967C3.5871 7.90419 4.13059 7.90419 4.46608 8.23967L7.29411 11.069V2.83469C7.29411 2.35991 7.67871 2 8.1288 2C8.5789 2 9.01181 2.35991 9.01181 2.83469V11.0689L11.8406 8.24008C12.1761 7.90459 12.7196 7.90459 13.0551 8.24008C13.3906 8.57556 13.3893 9.11771 13.0538 9.4532V9.45347Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 580 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.26716 4.96898L4.40433 7.83181C4.2934 7.94453 4.14668 8 3.99996 8C3.85324 8 3.70688 7.94409 3.59523 7.83226L0.732395 4.96943C0.508737 4.74577 0.508737 4.38344 0.732395 4.15978C0.956054 3.93612 1.31838 3.93612 1.54204 4.15978L3.42739 6.04603V0.556463C3.42739 0.239941 3.68379 0 3.98385 0C4.28392 0 4.57252 0.239941 4.57252 0.556463V6.04594L6.45841 4.16005C6.68207 3.93639 7.0444 3.93639 7.26806 4.16005C7.49172 4.38371 7.49082 4.74514 7.26716 4.9688V4.96898Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 584 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12 6.00001C12 6.47507 11.6403 6.85889 11.1653 6.85889H2.93347L5.7624 9.68781C6.0979 10.0233 6.0979 10.5668 5.7624 10.9023C5.59331 11.0701 5.37322 11.1533 5.15313 11.1533C4.93305 11.1533 4.71349 11.0694 4.54601 10.9017L0.251624 6.60726C-0.0838748 6.27176 -0.0838748 5.72825 0.251624 5.39275L4.54601 1.09837C4.88151 0.762866 5.42502 0.762866 5.76052 1.09837C6.09602 1.43386 6.09602 1.97737 5.76052 2.31287L2.93347 5.14113H11.1653C11.6403 5.14113 12 5.52494 12 6.00001Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 596 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M14 8.15327C14 8.62833 13.6403 9.01214 13.1653 9.01214H4.93347L7.7624 11.8411C8.0979 12.1766 8.0979 12.7201 7.7624 13.0556C7.59331 13.2233 7.37322 13.3065 7.15313 13.3065C6.93305 13.3065 6.71349 13.2227 6.54601 13.0549L2.25162 8.76052C1.91613 8.42502 1.91613 7.88151 2.25162 7.54601L6.54601 3.25162C6.88151 2.91613 7.42502 2.91613 7.76052 3.25162C8.09602 3.58712 8.09602 4.13063 7.76052 4.46613L4.93347 7.29439H13.1653C13.6403 7.29439 14 7.6782 14 8.15327Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 585 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M8 4.00003C8 4.31674 7.76023 4.57261 7.44352 4.57261H1.95565L3.8416 6.45856C4.06527 6.68223 4.06527 7.04457 3.8416 7.26823C3.72887 7.38007 3.58215 7.43554 3.43542 7.43554C3.2887 7.43554 3.14233 7.37962 3.03068 7.26779L0.16775 4.40486C-0.0559165 4.1812 -0.0559165 3.81886 0.16775 3.59519L3.03068 0.732264C3.25434 0.508598 3.61668 0.508598 3.84035 0.732264C4.06401 0.95593 4.06401 1.31827 3.84035 1.54194L1.95565 3.42744H7.44352C7.76023 3.42744 8 3.68331 8 4.00003Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 588 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11.749 6.60576L7.46298 10.8917C7.2969 11.0605 7.07724 11.1436 6.85758 11.1436C6.63793 11.1436 6.41881 11.0598 6.25165 10.8924C5.91681 10.5576 5.91681 10.0151 6.25165 9.68029L9.07558 6.85756H0.857198C0.383864 6.85756 0 6.4745 0 6.00036C0 5.52623 0.383596 5.14317 0.85693 5.14317H9.07531L6.25192 2.31977C5.91708 1.98493 5.91708 1.44248 6.25192 1.10764C6.58676 0.772796 7.12921 0.772796 7.46405 1.10764L11.75 5.39363C12.0835 5.72981 12.0835 6.27092 11.7487 6.60576H11.749Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 599 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13.749 8.74925L9.46298 13.0352C9.2969 13.204 9.07724 13.287 8.85758 13.287C8.63793 13.287 8.41881 13.2033 8.25165 13.0359C7.91681 12.7011 7.91681 12.1586 8.25165 11.8238L11.0756 9.00106H2.8572C2.38386 9.00106 2 8.61799 2 8.14386C2 7.66972 2.3836 7.28666 2.85693 7.28666H11.0753L8.25192 4.46326C7.91708 4.12842 7.91708 3.58598 8.25192 3.25113C8.58676 2.91629 9.12921 2.91629 9.46405 3.25113L13.75 7.53712C14.0835 7.8733 14.0835 8.41441 13.7487 8.74925H13.749Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 588 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.83265 4.40382L4.97532 7.26115C4.8646 7.37365 4.71816 7.42901 4.57172 7.42901C4.42528 7.42901 4.2792 7.37321 4.16777 7.26159C3.94454 7.03836 3.94454 6.67673 4.16777 6.4535L6.05039 4.57169H0.571465C0.255909 4.57169 0 4.31631 0 4.00022C0 3.68413 0.255731 3.42876 0.571287 3.42876H6.05021L4.16795 1.54649C3.94472 1.32326 3.94472 0.961634 4.16795 0.738405C4.39117 0.515177 4.75281 0.515177 4.97603 0.738405L7.83336 3.59573C8.0557 3.81985 8.0557 4.18059 7.83247 4.40382H7.83265Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 600 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.9009 5.7604C10.7345 5.92948 10.5144 6.01268 10.2943 6.01268C10.0742 6.01268 9.85471 5.92881 9.68724 5.76107L6.85903 2.93408V11.1653C6.85903 11.6401 6.47444 12 6.02437 12C5.57429 12 5.14139 11.6404 5.14139 11.1653V2.93408L2.31346 5.76013C1.97798 6.09561 1.43451 6.09561 1.09903 5.76013C0.763558 5.42466 0.763558 4.88119 1.09903 4.54571L5.39314 0.251607C5.72861 -0.0838692 6.27209 -0.0838692 6.60756 0.251607L10.9017 4.54571C11.2363 4.88253 11.2363 5.42466 10.9009 5.76013V5.7604Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 611 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13.0534 7.7604C12.887 7.92948 12.667 8.01268 12.4469 8.01268C12.2268 8.01268 12.0073 7.92881 11.8398 7.76107L9.01161 4.93408V13.1653C9.01161 13.6401 8.62702 14 8.17694 14C7.72687 14 7.29397 13.6404 7.29397 13.1653V4.93408L4.46603 7.76013C4.13056 8.09561 3.58708 8.09561 3.25161 7.76013C2.91613 7.42466 2.91613 6.88119 3.25161 6.54571L7.54571 2.25161C7.88119 1.91613 8.42466 1.91613 8.76013 2.25161L13.0542 6.54571C13.3889 6.88253 13.3889 7.42466 13.0534 7.76013V7.7604Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 599 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.26724 3.84027C7.15631 3.95299 7.0096 4.00845 6.86288 4.00845C6.71617 4.00845 6.56981 3.95254 6.45816 3.84072L4.57269 1.95605V7.44356C4.57269 7.76007 4.3163 8 4.01625 8C3.7162 8 3.4276 7.76025 3.4276 7.44356V1.95605L1.54231 3.84009C1.31866 4.06374 0.956346 4.06374 0.732695 3.84009C0.509044 3.61644 0.509044 3.25412 0.732695 3.03047L3.59543 0.167738C3.81908 -0.0559128 4.1814 -0.0559128 4.40505 0.167738L7.26778 3.03047C7.49089 3.25502 7.49089 3.61644 7.26724 3.84009V3.84027Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 603 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1.17314 8L5.89399 3.29329L6.20495 7.94346L8 6.14841L7.67491 0.339222L1.85159 0L0.0565371 1.79505L4.70671 2.12014L0 6.82685L1.17314 8Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 259 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12 8.66661C12 9.40202 11.4021 9.99992 10.6667 9.99992H4.27722C3.92306 9.99992 3.58348 9.86034 3.33348 9.61034L0.195413 6.47082C0.0702071 6.34582 0 6.17707 0 5.99999C0 5.82291 0.0702071 5.65416 0.195205 5.52917L3.33328 2.39068C3.58327 2.14048 3.92285 2.00006 4.27701 2.00006H10.6665C11.4019 2.00006 11.9998 2.59693 11.9998 3.33337V8.66661H12ZM5.64594 5.00209L6.62718 5.99999L5.64594 6.97914C5.4522 7.17497 5.4522 7.49163 5.64594 7.66871C5.84177 7.88121 6.15843 7.88121 6.33552 7.66871L7.33341 6.70623L8.31256 7.66871C8.50839 7.88121 8.82506 7.88121 9.00214 7.66871C9.21463 7.49163 9.21463 7.17497 9.00214 6.97914L8.03965 5.99999L9.00214 5.00209C9.21463 4.82501 9.21463 4.50835 9.00214 4.31252C8.82506 4.11877 8.50839 4.11877 8.31256 4.31252L7.33341 5.29375L6.33552 4.31252C6.15843 4.11877 5.84177 4.11877 5.64594 4.31252C5.4522 4.50835 5.4522 4.82501 5.64594 5.00209Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 996 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M15 11.1111C15 11.969 14.3024 12.6666 13.4445 12.6666H5.99009C5.5769 12.6666 5.18073 12.5038 4.88906 12.2121L1.22798 8.54932C1.08191 8.40349 1 8.20661 1 8.00002C1 7.79343 1.08191 7.59656 1.22774 7.45072L4.88882 3.78916C5.18048 3.49725 5.57666 3.33344 5.98984 3.33344H13.4442C14.3022 3.33344 14.9998 4.02978 14.9998 4.88896V11.1111H15ZM7.58693 6.8358L8.73171 8.00002L7.58693 9.14236C7.3609 9.37083 7.3609 9.74027 7.58693 9.94686C7.8154 10.1948 8.18484 10.1948 8.39143 9.94686L9.55565 8.82396L10.698 9.94686C10.9265 10.1948 11.2959 10.1948 11.5025 9.94686C11.7504 9.74027 11.7504 9.37083 11.5025 9.14236L10.3796 8.00002L11.5025 6.8358C11.7504 6.62921 11.7504 6.25977 11.5025 6.0313C11.2959 5.80527 10.9265 5.80527 10.698 6.0313L9.55565 7.17608L8.39143 6.0313C8.18484 5.80527 7.8154 5.80527 7.58693 6.0313C7.3609 6.25977 7.3609 6.62921 7.58693 6.8358Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 977 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M8 5.77774C8 6.26801 7.6014 6.66661 7.11113 6.66661H2.85148C2.61537 6.66661 2.38899 6.57356 2.22232 6.4069L0.130276 4.31388C0.0468047 4.23055 0 4.11805 0 3.99999C0 3.88194 0.0468047 3.76944 0.130137 3.68611L2.22218 1.59379C2.38885 1.42698 2.61523 1.33337 2.85134 1.33337H7.11099C7.60126 1.33337 7.99986 1.73128 7.99986 2.22225V5.77774H8ZM3.76396 3.33473L4.41812 3.99999L3.76396 4.65276C3.6348 4.78331 3.6348 4.99442 3.76396 5.11247C3.89452 5.25414 4.10562 5.25414 4.22368 5.11247L4.88894 4.47082L5.54171 5.11247C5.67226 5.25414 5.88337 5.25414 6.00142 5.11247C6.14309 4.99442 6.14309 4.78331 6.00142 4.65276L5.35977 3.99999L6.00142 3.33473C6.14309 3.21667 6.14309 3.00557 6.00142 2.87501C5.88337 2.74585 5.67226 2.74585 5.54171 2.87501L4.88894 3.52917L4.22368 2.87501C4.10562 2.74585 3.89452 2.74585 3.76396 2.87501C3.6348 3.00557 3.6348 3.21667 3.76396 3.33473Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 987 B

3
assets/icons/bolt_12.svg Normal file
View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.14029 5.25005H9.75348C10.0652 5.25005 10.3464 5.44457 10.4355 5.73518C10.5644 6.02814 10.4824 6.3586 10.248 6.56484L4.24822 11.8146C3.98338 12.0443 3.59598 12.0631 3.31286 11.8568C3.02951 11.6506 2.92639 11.2756 3.06443 10.9545L4.86694 6.74999H2.23267C1.94135 6.74999 1.66152 6.55546 1.5516 6.26485C1.44171 5.97189 1.52465 5.64144 1.75986 5.43519L7.75893 0.185629C8.02376 -0.0449871 8.41046 -0.0625645 8.69405 0.143209C8.97763 0.349123 9.08075 0.723265 8.94248 1.04542L7.1402 5.24972L7.14029 5.25005Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 632 B

3
assets/icons/bolt_16.svg Normal file
View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.33035 7.12505H12.3791C12.7427 7.12505 13.0708 7.352 13.1747 7.69105C13.3251 8.03283 13.2294 8.41836 12.956 8.65898L5.95625 14.7837C5.64728 15.0517 5.19531 15.0736 4.86501 14.833C4.53443 14.5923 4.41413 14.1549 4.57517 13.7803L6.6781 8.87499H3.60478C3.26491 8.87499 2.93844 8.64804 2.8102 8.30899C2.68199 7.96721 2.77876 7.58168 3.05317 7.34106L10.0521 1.21657C10.3611 0.947515 10.8122 0.927008 11.1431 1.16708C11.4739 1.40731 11.5942 1.84381 11.4329 2.21966L9.33024 7.12467L9.33035 7.12505Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 622 B

3
assets/icons/bolt_8.svg Normal file
View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.76019 3.50003H6.50231C6.71012 3.50003 6.89761 3.62971 6.95698 3.82346C7.04292 4.01876 6.98823 4.23906 6.83199 4.37656L2.83214 7.87643C2.65558 8.02954 2.39731 8.04204 2.20857 7.90455C2.01967 7.76705 1.95092 7.51706 2.04295 7.30301L3.24462 4.49999H1.48844C1.29423 4.49999 1.10767 4.37031 1.0344 4.17657C0.961132 3.98126 1.01643 3.76096 1.17323 3.62346L5.17261 0.123753C5.34917 -0.0299914 5.60697 -0.0417097 5.79603 0.0954726C5.98508 0.232749 6.05383 0.482177 5.96164 0.69695L4.76013 3.49981L4.76019 3.50003Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 633 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.00788 3.83701L7.62903 0.754503C7.87479 0.546451 8.23364 0.530593 8.4968 0.716233C8.75996 0.901999 8.85565 1.23953 8.72734 1.53017L7.05487 5.3231H9.47984C9.7691 5.3231 10.0301 5.49859 10.1127 5.76077C10.2323 6.02506 10.1562 6.32318 9.93874 6.50925L8.79258 7.48396L11.7998 9.86631C12.026 10.0397 12.0673 10.3589 11.889 10.5788C11.7106 10.7987 11.3822 10.8389 11.156 10.6655L0.200158 2.51988C-0.0268974 2.34693 -0.0666975 2.02808 0.111206 1.80735C0.28911 1.58661 0.616862 1.54792 0.843918 1.72108L4.00788 3.83701ZM2.06138 5.49043L2.40718 5.17751L4.34064 6.67658H2.52027C2.23102 6.67658 1.97003 6.50109 1.86782 6.23891C1.76777 5.97461 1.84389 5.67649 2.06138 5.49043ZM3.27278 10.4697L4.79301 7.02333L7.18318 8.83533L4.37108 11.2457C4.12532 11.4529 3.76647 11.4698 3.50331 11.2837C3.24015 11.0977 3.14446 10.7594 3.27278 10.4697Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 956 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.42392 5.20324L10.1066 1.21711C10.4244 0.948067 10.8885 0.92756 11.2288 1.16762C11.5691 1.40784 11.6928 1.84432 11.5269 2.22016L9.36412 7.12497H12.5C12.874 7.12497 13.2115 7.35191 13.3184 7.69094C13.4731 8.03271 13.3746 8.41823 13.0934 8.65883L11.6112 9.91928L15.5 13C15.7925 13.2242 15.8459 13.6371 15.6153 13.9214C15.3847 14.2058 14.96 14.2577 14.6675 14.0335L0.499984 3.5C0.206368 3.27635 0.1549 2.86403 0.384956 2.57859C0.615012 2.29314 1.03884 2.24311 1.33246 2.46703L5.42392 5.20324ZM2.90681 7.34135L3.35399 6.9367L5.85423 8.87522H3.50023C3.12618 8.87522 2.78869 8.64828 2.65651 8.30924C2.52714 7.96747 2.62557 7.58196 2.90681 7.34135ZM4.47333 13.7803L6.43921 9.32362L9.53006 11.6668L5.8936 14.7837C5.5758 15.0517 5.11175 15.0736 4.77144 14.8329C4.43114 14.5923 4.3074 14.1549 4.47333 13.7803Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 930 B

View File

@@ -0,0 +1,10 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_430_1350)">
<path d="M2.8102 2.0687L5.08603 0.503002C5.24987 0.364301 5.4891 0.353729 5.66454 0.477489C5.83998 0.601333 5.90377 0.826356 5.81823 1.02011L4.70325 3.54873H6.3199C6.51274 3.54873 6.68673 3.66573 6.74182 3.84051C6.82157 4.01671 6.77082 4.21546 6.62583 4.3395L6.22432 4.68222L8.0048 6.08823C8.15559 6.20381 8.18314 6.41666 8.06425 6.56325C7.94536 6.70985 7.72642 6.73663 7.57563 6.62104L0.271717 1.19061C0.120346 1.07531 0.093813 0.862748 0.212416 0.715589C0.331018 0.56843 0.54952 0.542635 0.70089 0.658079L2.8102 2.0687ZM1.37426 3.66029L1.60479 3.45167L2.89376 4.45105H1.68019C1.48735 4.45105 1.31336 4.33406 1.24521 4.15927C1.17852 3.98308 1.22927 3.78433 1.37426 3.66029ZM2.18186 6.97981L3.19534 4.68222L4.78879 5.89022L2.91406 7.49712C2.75022 7.63526 2.51099 7.64653 2.33555 7.52249C2.16011 7.39845 2.09631 7.17292 2.18186 6.97981Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_430_1350">
<rect width="8" height="8" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11.6709 4.44444L6.89463 9.25449C6.62782 9.49123 6.31967 9.60772 6.01153 9.60772C5.70339 9.60772 5.39599 9.49029 5.16113 9.25542L0.384899 4.44537C0.00723509 4.10247 -0.09573 3.5837 0.0902836 3.13633C0.276448 2.68914 0.71529 2.39227 1.20118 2.39227H10.7875C11.2737 2.39227 11.7126 2.68463 11.899 3.13445C12.0854 3.58389 12.0163 4.1021 11.6706 4.44406L11.6709 4.44444Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 495 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M14.616 6.18521L9.04373 11.7969C8.73246 12.0731 8.37295 12.209 8.01345 12.209C7.65395 12.209 7.29533 12.072 7.02132 11.798L1.44905 6.1863C1.00844 5.78625 0.888315 5.18101 1.10533 4.65908C1.32252 4.13736 1.8345 3.79102 2.40138 3.79102H13.5854C14.1527 3.79102 14.6648 4.1321 14.8822 4.65689C15.0997 5.18123 15.019 5.78581 14.6156 6.18477L14.616 6.18521Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 480 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.78057 2.96296L4.59642 6.16966C4.41855 6.32749 4.21312 6.40515 4.00769 6.40515C3.80226 6.40515 3.59733 6.32686 3.44075 6.17028L0.256599 2.96358C0.00482339 2.73498 -0.06382 2.38913 0.0601891 2.09088C0.184298 1.79276 0.47686 1.59485 0.800787 1.59485H7.19164C7.51582 1.59485 7.80843 1.78976 7.93269 2.08963C8.05695 2.38926 8.01085 2.73473 7.78037 2.96271L7.78057 2.96296Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 495 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.55575 11.671L2.74629 6.89533C2.51033 6.62855 2.3931 6.32045 2.3931 5.97853C2.3931 5.6366 2.51052 5.36307 2.74516 5.12823L7.55462 0.352587C7.89842 0.00841046 8.41544 -0.0945422 8.8652 0.0914486C9.31496 0.277439 9.60691 0.717805 9.60691 1.20251V10.7876C9.60691 11.2738 9.31421 11.7127 8.86482 11.899C8.41506 12.0854 7.8973 12.0163 7.55537 11.6706L7.55575 11.671Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 492 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.81503 14.6161L4.20399 9.04455C3.9287 8.73331 3.79193 8.37386 3.79193 7.97495C3.79193 7.57604 3.92892 7.25691 4.20268 6.98293L9.81371 1.41135C10.2148 1.00981 10.818 0.889701 11.3427 1.10669C11.8674 1.32368 12.208 1.83744 12.208 2.40293V13.5855C12.208 14.1528 11.8666 14.6648 11.3423 14.8822C10.8176 15.0996 10.2135 15.019 9.81459 14.6157L9.81503 14.6161Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 485 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.03717 7.78065L1.83086 4.59689C1.67355 4.41904 1.5954 4.21363 1.5954 3.98568C1.5954 3.75774 1.67368 3.57538 1.83011 3.41882L5.03641 0.235058C5.26562 0.00560697 5.61029 -0.0630281 5.91013 0.0609657C6.20997 0.18496 6.40461 0.478537 6.40461 0.801672V7.19174C6.40461 7.51588 6.20947 7.80845 5.90988 7.9327C5.61004 8.05694 5.26486 8.01085 5.03692 7.7804L5.03717 7.78065Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 492 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.43898 0.355319L9.26566 5.14806C9.50322 5.41579 9.62012 5.725 9.62012 6.00027C9.62012 6.27554 9.50228 6.61793 9.2666 6.85361L4.43992 11.6463C4.09451 11.9914 3.57602 12.0951 3.12465 11.908C2.67328 11.721 2.37991 11.3469 2.37991 10.8266V1.20715C2.37991 0.719205 2.67328 0.278771 3.12465 0.0917373C3.57565 -0.0952964 4.09565 0.0091557 4.43879 0.354942L4.43898 0.355319Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 497 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6.1788 1.41454L11.8099 7.00607C12.0871 7.31842 12.2235 7.67916 12.2235 8.00031C12.2235 8.32146 12.086 8.72092 11.811 8.99588L6.1799 14.5874C5.77692 14.9899 5.17201 15.1109 4.64542 14.8927C4.11882 14.6745 3.77655 14.2381 3.77655 13.631V2.40834C3.77655 1.83907 4.11882 1.32523 4.64542 1.10703C5.17157 0.888821 5.77824 1.01068 6.17858 1.4141L6.1788 1.41454Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 484 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M2.95931 0.236879L6.17709 3.43204C6.33546 3.61052 6.4134 3.81666 6.4134 4.00018C6.4134 4.18369 6.33484 4.41195 6.17772 4.56907L2.95993 7.76423C2.72966 7.99425 2.384 8.06338 2.08309 7.93869C1.78217 7.81401 1.58659 7.56463 1.58659 7.21771V0.804768C1.58659 0.47947 1.78217 0.185847 2.08309 0.0611582C2.38375 -0.0635309 2.73042 0.0061038 2.95918 0.236628L2.95931 0.236879Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 493 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M0.353682 7.55684L5.13301 2.74366C5.40037 2.50677 5.70871 2.3902 6.01705 2.3902C6.3254 2.3902 6.63299 2.50771 6.86801 2.74272L11.6473 7.5559C11.9914 7.89996 12.0948 8.41738 11.9083 8.86748C11.7218 9.31759 11.3149 9.60977 10.796 9.60977H1.20388C0.717302 9.60977 0.2781 9.31684 0.0915901 8.86711C-0.0949202 8.417 0.00886378 7.89883 0.353306 7.55665L0.353682 7.55684Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 493 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1.41263 9.81632L6.98851 4.20095C7.30043 3.92457 7.66016 3.78857 8.0199 3.78857C8.37963 3.78857 8.73849 3.92567 9.01268 4.19986L14.5886 9.81522C14.99 10.2166 15.1106 10.8203 14.893 11.3454C14.6754 11.8705 14.2007 12.2114 13.5953 12.2114H2.40453C1.83685 12.2114 1.32445 11.8697 1.10686 11.345C0.88926 10.8198 1.01034 10.2153 1.41219 9.8161L1.41263 9.81632Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 484 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M0.235788 5.03793L3.42201 1.82915C3.60024 1.67122 3.80581 1.59351 4.01137 1.59351C4.21693 1.59351 4.42199 1.67185 4.57867 1.82852L7.76489 5.0373C7.99427 5.26668 8.06321 5.61163 7.93887 5.9117C7.81453 6.21177 7.54328 6.40655 7.19734 6.40655H0.802589C0.478202 6.40655 0.1854 6.21127 0.0610601 5.91145C-0.0632802 5.61137 0.00590919 5.26593 0.235538 5.03781L0.235788 5.03793Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 496 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11.7489 1.96607C12.0837 2.3009 12.0837 2.842 11.7489 3.17684L4.89143 10.0343C4.55659 10.3691 4.01549 10.3691 3.68066 10.0343L0.251131 6.60556C-0.0837057 6.27072 -0.0837057 5.72963 0.251104 5.39479C0.585887 5.05995 1.12859 5.05995 1.46343 5.39479L4.26185 8.21545L10.538 1.96607C10.8729 1.6307 11.414 1.6307 11.7488 1.96607H11.7489Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 460 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13.7489 4.25153C14.0837 4.58637 14.0837 5.12746 13.7489 5.4623L6.89143 12.3197C6.55659 12.6546 6.01549 12.6546 5.68066 12.3197L2.25113 8.89102C1.91629 8.55618 1.91629 8.01509 2.2511 7.68025C2.58589 7.34542 3.12859 7.34542 3.46343 7.68025L6.26185 10.5009L12.538 4.25153C12.8729 3.91616 13.414 3.91616 13.7488 4.25153H13.7489Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 454 B

3
assets/icons/check_8.svg Normal file
View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.83258 1.31075C8.05581 1.53398 8.05581 1.89471 7.83258 2.11793L3.26095 6.68956C3.03773 6.91279 2.677 6.91279 2.45377 6.68956L0.16742 4.40375C-0.0558038 4.18052 -0.0558038 3.81979 0.167403 3.59657C0.390591 3.37334 0.752393 3.37334 0.975617 3.59657L2.84124 5.47701L7.02535 1.31075C7.24857 1.08717 7.6093 1.08717 7.83253 1.31075H7.83258Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 461 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.9996 9.42843C5.78023 9.42843 5.56087 9.34473 5.39373 9.17733L0.251105 4.0347C-0.0837016 3.69989 -0.0837016 3.15751 0.251105 2.8227C0.585911 2.48789 1.1283 2.48789 1.4631 2.8227L5.9996 7.36067L10.5369 2.82337C10.8717 2.48856 11.4141 2.48856 11.7489 2.82337C12.0837 3.15818 12.0837 3.70056 11.7489 4.03537L6.60627 9.178C6.43886 9.3454 6.21923 9.42843 5.9996 9.42843Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 496 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.99953 11.9998C7.74361 11.9998 7.48768 11.9022 7.29269 11.7069L1.29296 5.70714C0.902348 5.31653 0.902348 4.68375 1.29296 4.29314C1.68356 3.90253 2.31635 3.90253 2.70696 4.29314L7.99953 9.58743L13.293 4.29392C13.6837 3.90331 14.3164 3.90331 14.707 4.29392C15.0977 4.68453 15.0977 5.31731 14.707 5.70792L8.70731 11.7077C8.51201 11.903 8.25577 11.9998 7.99953 11.9998Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 496 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M3.99973 6.28564C3.85349 6.28564 3.70725 6.22984 3.59582 6.11824L0.167403 2.68982C-0.0558011 2.46662 -0.0558011 2.10502 0.167403 1.88182C0.390608 1.65862 0.752199 1.65862 0.975403 1.88182L3.99973 4.90713L7.0246 1.88227C7.2478 1.65906 7.60939 1.65906 7.8326 1.88227C8.0558 2.10547 8.0558 2.46706 7.8326 2.69027L4.40418 6.11868C4.29258 6.23029 4.14615 6.28564 3.99973 6.28564Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 499 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M8.57103 12C8.35166 12 8.13228 11.9163 7.96514 11.7489L2.82228 6.60603C2.48746 6.27121 2.48746 5.72879 2.82228 5.39397L7.96514 0.251116C8.29996 -0.0837054 8.84237 -0.0837054 9.17719 0.251116C9.51202 0.585938 9.51202 1.12835 9.17719 1.46317L4.64023 6L9.17773 10.5375C9.51255 10.8723 9.51255 11.4147 9.17773 11.7496C9.01032 11.917 8.79068 12 8.57103 12Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 480 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.9995 15C10.7436 15 10.4877 14.9023 10.2927 14.707L4.29266 8.70703C3.90204 8.31641 3.90204 7.68359 4.29266 7.29297L10.2927 1.29297C10.6833 0.902344 11.3161 0.902344 11.7067 1.29297C12.0974 1.68359 12.0974 2.31641 11.7067 2.70703L6.4136 8L11.7074 13.2937C12.098 13.6844 12.098 14.3172 11.7074 14.7078C11.512 14.9031 11.2558 15 10.9995 15Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 469 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.71402 8C5.56777 8 5.42152 7.9442 5.31009 7.83259L1.88152 4.40402C1.65831 4.1808 1.65831 3.8192 1.88152 3.59598L5.31009 0.167411C5.53331 -0.0558036 5.89491 -0.0558036 6.11813 0.167411C6.34134 0.390625 6.34134 0.752232 6.11813 0.975446L3.09349 4L6.11849 7.025C6.3417 7.24821 6.3417 7.60982 6.11849 7.83304C6.00688 7.94464 5.86045 8 5.71402 8Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 468 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M3.4284 12C3.20902 12 2.98964 11.9163 2.8225 11.7489C2.48767 11.4141 2.48767 10.8716 2.8225 10.5368L7.36059 5.99993L2.8225 1.46319C2.48767 1.12836 2.48767 0.585944 2.8225 0.251119C3.15732 -0.0837063 3.69974 -0.0837063 4.03457 0.251119L9.17748 5.39403C9.51231 5.72886 9.51231 6.27128 9.17748 6.6061L4.03457 11.749C3.86769 11.917 3.64804 12 3.4284 12Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 478 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.99982 15C4.74388 15 4.48794 14.9023 4.29294 14.707C3.90231 14.3164 3.90231 13.6836 4.29294 13.2929L9.58738 7.99992L4.29294 2.70705C3.90231 2.31642 3.90231 1.6836 4.29294 1.29297C4.68357 0.902343 5.31639 0.902343 5.70702 1.29297L11.7071 7.29304C12.0977 7.68367 12.0977 8.31649 11.7071 8.70712L5.70702 14.7072C5.51233 14.9031 5.25608 15 4.99982 15Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 478 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M2.28561 8C2.13936 8 1.99311 7.9442 1.88168 7.83259C1.65846 7.60937 1.65846 7.24776 1.88168 7.02454L4.90707 3.99996L1.88168 0.975457C1.65846 0.75224 1.65846 0.390629 1.88168 0.167413C2.10489 -0.0558042 2.4665 -0.0558042 2.68972 0.167413L6.11833 3.59602C6.34155 3.81924 6.34155 4.18085 6.11833 4.40407L2.68972 7.83268C2.57847 7.94464 2.43204 8 2.28561 8Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 478 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11.1435 9.42655C10.9242 9.42655 10.7048 9.34284 10.5376 9.17543L6.00067 4.63994L1.46317 9.17744C1.12835 9.51226 0.585938 9.51226 0.251116 9.17744C-0.0837054 8.84262 -0.0837054 8.30021 0.251116 7.96538L5.39397 2.82253C5.72879 2.48771 6.27121 2.48771 6.60603 2.82253L11.7489 7.96538C12.0837 8.30021 12.0837 8.84262 11.7489 9.17744C11.5828 9.34351 11.3632 9.42655 11.1435 9.42655Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 507 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M14.0008 11.9977C13.7448 11.9977 13.4889 11.9 13.2939 11.7047L8.00078 6.41328L2.70703 11.707C2.31641 12.0977 1.68359 12.0977 1.29297 11.707C0.902344 11.3164 0.902344 10.6836 1.29297 10.293L7.29297 4.29297C7.68359 3.90234 8.31641 3.90234 8.70703 4.29297L14.707 10.293C15.0977 10.6836 15.0977 11.3164 14.707 11.707C14.5133 11.9008 14.257 11.9977 14.0008 11.9977Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 489 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.42902 6.28438C7.28277 6.28438 7.13652 6.22858 7.02509 6.11697L4.00045 3.09331L0.975446 6.11831C0.752232 6.34153 0.390625 6.34153 0.167411 6.11831C-0.0558036 5.8951 -0.0558036 5.53349 0.167411 5.31028L3.59598 1.88171C3.8192 1.65849 4.1808 1.65849 4.40402 1.88171L7.83259 5.31028C8.0558 5.53349 8.0558 5.8951 7.83259 6.11831C7.72188 6.22903 7.57545 6.28438 7.42902 6.28438Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 499 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M6 12C9.31371 12 12 9.31371 12 6C12 2.68629 9.31371 0 6 0C2.68629 0 0 2.68629 0 6C0 9.31371 2.68629 12 6 12ZM9.53033 4.28033L8.46967 3.21967L4.875 6.81434L3.53033 5.46967L2.46967 6.53033L4.875 8.93566L9.53033 4.28033Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 386 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M8 15C11.866 15 15 11.866 15 8C15 4.13401 11.866 1 8 1C4.13401 1 1 4.13401 1 8C1 11.866 4.13401 15 8 15ZM12.1187 5.99372L10.8813 4.75628L6.6875 8.95006L5.11872 7.38128L3.88128 8.61872L6.6875 11.4249L12.1187 5.99372Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 384 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 8C6.20914 8 8 6.20914 8 4C8 1.79086 6.20914 0 4 0C1.79086 0 0 1.79086 0 4C0 6.20914 1.79086 8 4 8ZM6.35355 2.85355L5.64645 2.14645L3.25 4.54289L2.35355 3.64645L1.64645 4.35355L3.25 5.95711L6.35355 2.85355Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 373 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M12 6C12 9.31371 9.31371 12 6 12C2.68629 12 0 9.31371 0 6C0 2.68629 2.68629 0 6 0C9.31371 0 12 2.68629 12 6ZM5.25 6H4.5V4.5H6.75V8.25H7.5V9.75H5.25V6ZM6.75 3.75V2.25H5.25V3.75H6.75Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 350 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M15 8C15 11.866 11.866 15 8 15C4.13401 15 1 11.866 1 8C1 4.13401 4.13401 1 8 1C11.866 1 15 4.13401 15 8ZM7.125 8H6.25V6.25H8.875V10.625H9.75V12.375H7.125V8ZM8.875 5.375V3.625H7.125V5.375H8.875Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 362 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M8 4C8 6.20914 6.20914 8 4 8C1.79086 8 0 6.20914 0 4C0 1.79086 1.79086 0 4 0C6.20914 0 8 1.79086 8 4ZM3.5 4H3V3H4.5V5.5H5V6.5H3.5V4ZM4.5 2.5V1.5H3.5V2.5H4.5Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 322 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6 0C2.68594 0 0 2.68594 0 6C0 9.31406 2.68594 12 6 12C9.31406 12 12 9.31406 12 6C12 2.68594 9.31406 0 6 0ZM8.97187 5.76797C8.91328 5.90859 8.77734 6 8.625 6H7.125V8.25C7.125 8.66414 6.78914 9 6.375 9H5.625C5.21086 9 4.875 8.66414 4.875 8.25V6H3.375C3.22266 6 3.08672 5.90859 3.02812 5.76797C2.96953 5.62734 3.00234 5.46797 3.11016 5.36016L5.73516 2.73516C5.88141 2.58867 6.11906 2.58867 6.26531 2.73516L8.89031 5.36016C8.99766 5.46797 9.03047 5.62734 8.97187 5.76797Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 597 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M8 1C4.13359 1 1 4.13359 1 8C1 11.8664 4.13359 15 8 15C11.8664 15 15 11.8664 15 8C15 4.13359 11.8664 1 8 1ZM11.4672 7.7293C11.3988 7.89336 11.2402 8 11.0625 8H9.3125V10.625C9.3125 11.1082 8.92066 11.5 8.4375 11.5H7.5625C7.07934 11.5 6.6875 11.1082 6.6875 10.625V8H4.9375C4.75977 8 4.60117 7.89336 4.53281 7.7293C4.46445 7.56523 4.50273 7.3793 4.62852 7.25352L7.69102 4.19102C7.86164 4.02012 8.13891 4.02012 8.30953 4.19102L11.372 7.25352C11.4973 7.3793 11.5355 7.56523 11.4672 7.7293Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 613 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4 0C1.79063 0 0 1.79063 0 4C0 6.20937 1.79063 8 4 8C6.20937 8 8 6.20937 8 4C8 1.79063 6.20937 0 4 0ZM5.98125 3.84531C5.94219 3.93906 5.85156 4 5.75 4H4.75V5.5C4.75 5.77609 4.52609 6 4.25 6H3.75C3.47391 6 3.25 5.77609 3.25 5.5V4H2.25C2.14844 4 2.05781 3.93906 2.01875 3.84531C1.97969 3.75156 2.00156 3.64531 2.07344 3.57344L3.82344 1.82344C3.92094 1.72578 4.07938 1.72578 4.17688 1.82344L5.92688 3.57344C5.99844 3.64531 6.02031 3.75156 5.98125 3.84531Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 577 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M6 12C9.31371 12 12 9.31371 12 6C12 2.68629 9.31371 0 6 0C2.68629 0 0 2.68629 0 6C0 9.31371 2.68629 12 6 12ZM3.21967 4.28033L4.93934 6L3.21967 7.71967L4.28033 8.78033L6 7.06066L7.71967 8.78033L8.78033 7.71967L7.06066 6L8.78033 4.28033L7.71967 3.21967L6 4.93934L4.28033 3.21967L3.21967 4.28033Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 462 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M8 15C11.866 15 15 11.866 15 8C15 4.13401 11.866 1 8 1C4.13401 1 1 4.13401 1 8C1 11.866 4.13401 15 8 15ZM4.75628 5.99372L6.76256 8L4.75628 10.0063L5.99372 11.2437L8 9.23744L10.0063 11.2437L11.2437 10.0063L9.23744 8L11.2437 5.99372L10.0063 4.75628L8 6.76256L5.99372 4.75628L4.75628 5.99372Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 458 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M4 8C6.20914 8 8 6.20914 8 4C8 1.79086 6.20914 0 4 0C1.79086 0 0 1.79086 0 4C0 6.20914 1.79086 8 4 8ZM2.14645 2.85355L3.29289 4L2.14645 5.14645L2.85355 5.85355L4 4.70711L5.14645 5.85355L5.85355 5.14645L4.70711 4L5.85355 2.85355L5.14645 2.14645L4 3.29289L2.85355 2.14645L2.14645 2.85355Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 451 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1.80375 4.95186C1.80131 4.90124 1.8 4.85061 1.8 4.79999C1.8 3.14249 3.1425 1.79999 4.8 1.79999C5.91188 1.79999 6.88125 2.40468 7.40063 3.30374C7.68563 3.09561 8.03063 2.99999 8.4 2.99999C9.39375 2.99999 10.2 3.78936 10.2 4.79999C10.2 5.02874 10.1569 5.24624 10.08 5.44874C11.175 5.66999 12 6.63936 12 7.79999C12 9.12561 10.9256 10.2 9.6 10.2H2.7C1.20881 10.2 0 8.99061 0 7.49999C0 6.32249 0.753187 5.32124 1.80375 4.95186Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 552 B

3
assets/icons/cloud_8.svg Normal file
View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1.2025 3.30126C1.20087 3.26751 1.2 3.23376 1.2 3.20001C1.2 2.09501 2.095 1.20001 3.2 1.20001C3.94125 1.20001 4.5875 1.60314 4.93375 2.20251C5.12375 2.06376 5.35375 2.00001 5.6 2.00001C6.2625 2.00001 6.8 2.52626 6.8 3.20001C6.8 3.35251 6.77125 3.49751 6.72 3.63251C7.45 3.78001 8 4.42626 8 5.20001C8 6.08376 7.28375 6.80001 6.4 6.80001H1.8C0.805875 6.80001 0 5.99376 0 5.00001C0 4.21501 0.502125 3.54751 1.2025 3.30126Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 544 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M2.59892 2.76222C3.14641 2.17067 3.93013 1.80018 4.80011 1.80018C5.91195 1.80018 6.8813 2.40485 7.40066 3.30389C7.68565 3.09577 8.03064 3.00015 8.4 3.00015C9.39372 3.00015 10.1999 3.7895 10.1999 4.80009C10.1999 5.02884 10.1568 5.24633 10.08 5.44882C11.1749 5.67007 11.9999 6.63941 11.9999 7.8C11.9999 8.48623 11.7112 9.10497 11.233 9.52683L11.8274 9.99557C12.0224 10.1493 12.058 10.4324 11.9043 10.6274C11.7505 10.8224 11.4674 10.858 11.2724 10.7043L0.172556 2.00436C-0.0231882 1.85099 -0.0574997 1.56825 0.0958708 1.37251C0.249241 1.17676 0.531796 1.14245 0.727671 1.29582L2.59868 2.76184L2.59892 2.76222ZM1.82213 4.43635L9.13873 10.1999H2.70017C1.20903 10.1999 0.000248596 8.99059 0.000248596 7.50001C0.000248596 6.32255 0.753414 5.32133 1.80395 4.95196C1.80151 4.90134 1.8002 4.85072 1.8002 4.80009C1.8002 4.67635 1.8077 4.55448 1.82213 4.43635Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 977 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1.73261 1.8415C2.0976 1.44713 2.62009 1.20014 3.20007 1.20014C3.9413 1.20014 4.58753 1.60325 4.93377 2.20261C5.12376 2.06387 5.35376 2.00012 5.6 2.00012C6.26248 2.00012 6.79996 2.52635 6.79996 3.20008C6.79996 3.35258 6.77122 3.49757 6.71997 3.63257C7.44995 3.78007 7.99993 4.4263 7.99993 5.20002C7.99993 5.65751 7.80744 6.07 7.48869 6.35124L7.88493 6.66373C8.01493 6.76623 8.03868 6.95497 7.93618 7.08497C7.83368 7.21496 7.64494 7.23871 7.51494 7.13622L0.115037 1.33626C-0.0154588 1.23402 -0.0383331 1.04552 0.0639139 0.915025C0.166161 0.784529 0.35453 0.761655 0.485114 0.863902L1.73245 1.84125L1.73261 1.8415ZM1.21475 2.95759L6.09249 6.79998H1.80011C0.806017 6.79998 0.000165731 5.99375 0.000165731 5.00003C0.000165731 4.21505 0.502276 3.54757 1.20263 3.30133C1.20101 3.26758 1.20013 3.23383 1.20013 3.20008C1.20013 3.11759 1.20513 3.03634 1.21475 2.95759Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 984 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12 8.66661C12 9.40202 11.4021 9.99992 10.6667 9.99992H4.27722C3.92306 9.99992 3.58348 9.86034 3.33348 9.61034L0.195413 6.47082C0.0702071 6.34582 0 6.17707 0 5.99999C0 5.82291 0.0702071 5.65416 0.195205 5.52917L3.33328 2.39068C3.58327 2.14048 3.92285 2.00006 4.27701 2.00006H10.6665C11.4019 2.00006 11.9998 2.59693 11.9998 3.33337V8.66661H12ZM5.64594 5.00209L6.62718 5.99999L5.64594 6.97914C5.4522 7.17497 5.4522 7.49163 5.64594 7.66871C5.84177 7.88121 6.15843 7.88121 6.33552 7.66871L7.33341 6.70623L8.31256 7.66871C8.50839 7.88121 8.82506 7.88121 9.00214 7.66871C9.21463 7.49163 9.21463 7.17497 9.00214 6.97914L8.03965 5.99999L9.00214 5.00209C9.21463 4.82501 9.21463 4.50835 9.00214 4.31252C8.82506 4.11877 8.50839 4.11877 8.31256 4.31252L7.33341 5.29375L6.33552 4.31252C6.15843 4.11877 5.84177 4.11877 5.64594 4.31252C5.4522 4.50835 5.4522 4.82501 5.64594 5.00209Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 996 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M15 11.1111C15 11.969 14.3024 12.6666 13.4445 12.6666H5.99009C5.5769 12.6666 5.18073 12.5038 4.88906 12.2121L1.22798 8.54932C1.08191 8.40349 1 8.20661 1 8.00002C1 7.79343 1.08191 7.59656 1.22774 7.45072L4.88882 3.78916C5.18048 3.49725 5.57666 3.33344 5.98984 3.33344H13.4442C14.3022 3.33344 14.9998 4.02978 14.9998 4.88896V11.1111H15ZM7.58693 6.8358L8.73171 8.00002L7.58693 9.14236C7.3609 9.37083 7.3609 9.74027 7.58693 9.94686C7.8154 10.1948 8.18484 10.1948 8.39143 9.94686L9.55565 8.82396L10.698 9.94686C10.9265 10.1948 11.2959 10.1948 11.5025 9.94686C11.7504 9.74027 11.7504 9.37083 11.5025 9.14236L10.3796 8.00002L11.5025 6.8358C11.7504 6.62921 11.7504 6.25977 11.5025 6.0313C11.2959 5.80527 10.9265 5.80527 10.698 6.0313L9.55565 7.17608L8.39143 6.0313C8.18484 5.80527 7.8154 5.80527 7.58693 6.0313C7.3609 6.25977 7.3609 6.62921 7.58693 6.8358Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 977 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M8 5.77774C8 6.26801 7.6014 6.66661 7.11113 6.66661H2.85148C2.61537 6.66661 2.38899 6.57356 2.22232 6.4069L0.130276 4.31388C0.0468047 4.23055 0 4.11805 0 3.99999C0 3.88194 0.0468047 3.76944 0.130137 3.68611L2.22218 1.59379C2.38885 1.42698 2.61523 1.33337 2.85134 1.33337H7.11099C7.60126 1.33337 7.99986 1.73128 7.99986 2.22225V5.77774H8ZM3.76396 3.33473L4.41812 3.99999L3.76396 4.65276C3.6348 4.78331 3.6348 4.99442 3.76396 5.11247C3.89452 5.25414 4.10562 5.25414 4.22368 5.11247L4.88894 4.47082L5.54171 5.11247C5.67226 5.25414 5.88337 5.25414 6.00142 5.11247C6.14309 4.99442 6.14309 4.78331 6.00142 4.65276L5.35977 3.99999L6.00142 3.33473C6.14309 3.21667 6.14309 3.00557 6.00142 2.87501C5.88337 2.74585 5.67226 2.74585 5.54171 2.87501L4.88894 3.52917L4.22368 2.87501C4.10562 2.74585 3.89452 2.74585 3.76396 2.87501C3.6348 3.00557 3.6348 3.21667 3.76396 3.33473Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 987 B

View File

@@ -0,0 +1,10 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_430_1270)">
<path d="M4.30957 0.857736V4.28922L2.35703 4.28788C2.10067 4.28788 1.86816 4.44057 1.76636 4.67656C1.66511 4.91229 1.71332 5.18633 1.88959 5.37304L5.53269 9.23312C5.77565 9.49028 6.22488 9.49028 6.46784 9.23312L10.1123 5.37277C10.2875 5.18794 10.3354 4.9147 10.2342 4.6763C10.1337 4.44057 9.90066 4.28788 9.66761 4.28788H7.73891L7.73891 0.857736C7.73891 0.383865 7.35504 2.35669e-07 6.88171 2.14979e-07L5.16731 1.4004e-07C4.66906 -0.000267757 4.30957 0.383865 4.30957 0.857736ZM11.1433 11.1187C11.1434 10.6687 10.7595 10.2856 10.2861 10.2856H1.71413C1.23972 10.2856 0.856659 10.6687 0.856659 11.1187C0.856659 11.6169 1.23972 12 1.71386 12H10.2861C10.7595 12 11.1433 11.6169 11.1433 11.1187Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_430_1270">
<rect width="12" height="12" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 954 B

View File

@@ -0,0 +1,10 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_430_1353)">
<path d="M2.87305 0.571824L2.87305 2.85948L1.57136 2.85858C1.40045 2.85858 1.24544 2.96038 1.17758 3.11771C1.11008 3.27486 1.14222 3.45755 1.25973 3.58203L3.68846 6.15541C3.85044 6.32685 4.14992 6.32685 4.3119 6.15541L6.74153 3.58185C6.85832 3.45862 6.89029 3.27647 6.82278 3.11753C6.75581 2.96038 6.60045 2.85858 6.44508 2.85858L5.15928 2.85858L5.15928 0.571824C5.15928 0.25591 4.90337 -1.70497e-08 4.58781 -3.08431e-08L3.44488 -8.08023e-08C3.11271 -0.000178679 2.87341 0.25591 2.87341 0.571824L2.87305 0.571824ZM7.42889 7.41246C7.42891 7.11244 7.17298 6.85707 6.85743 6.85707L1.14276 6.85707C0.826487 6.85707 0.571113 7.11244 0.571113 7.41246C0.571113 7.74463 0.826487 8 1.14258 8L6.85743 8C7.17298 8 7.42889 7.74463 7.42889 7.41246V7.41246Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_430_1353">
<rect width="8" height="8" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1001 B

4
assets/icons/file_12.svg Normal file
View File

@@ -0,0 +1,4 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.25 0H1.5V12H10.5V5.25H5.25V0Z" fill="white"/>
<path d="M6.75 0V3.75H10.5L6.75 0Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 212 B

4
assets/icons/file_16.svg Normal file
View File

@@ -0,0 +1,4 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.125 1H2.75V15H13.25V7.125H7.125V1Z" fill="white"/>
<path d="M8.875 1V5.375H13.25L8.875 1Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 221 B

4
assets/icons/file_8.svg Normal file
View File

@@ -0,0 +1,4 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M3.5 0H1V8H7V3.5H3.5V0Z" fill="white"/>
<path d="M4.5 0V2.5H7L4.5 0Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 193 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11.3333 1.33335H9L8.33333 0.666687H6.66667C6.29958 0.666687 6 0.96627 6 1.33335V4.66669C6 5.03377 6.29958 5.33335 6.66667 5.33335H11.3333C11.7004 5.33335 12 5.03377 12 4.66669V2.00002C12 1.63294 11.7 1.33335 11.3333 1.33335ZM11.3333 7.33335H9L8.33333 6.66669H6.66667C6.29958 6.66669 6 6.96627 6 7.33335V10.6667C6 11.0338 6.29958 11.3334 6.66667 11.3334H11.3333C11.7004 11.3334 12 11.0338 12 10.6667V8.00002C12 7.63335 11.7 7.33335 11.3333 7.33335ZM1.33333 1.00002C1.33333 0.815125 1.185 0.666687 1 0.666687H0.333333C0.148438 0.666687 0 0.81502 0 1.00002V9.33335C0 9.70044 0.299583 10 0.666667 10H5.33333V8.66669H1.33333V4.00002H5.33333V2.66669H1.33333V1.00002Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 790 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M14.2222 2.55555H11.5L10.7222 1.77777H8.77778C8.34951 1.77777 8 2.12728 8 2.55555V6.44444C8 6.8727 8.34951 7.22222 8.77778 7.22222H14.2222C14.6505 7.22222 15 6.8727 15 6.44444V3.33333C15 2.90506 14.65 2.55555 14.2222 2.55555ZM14.2222 9.55555H11.5L10.7222 8.77777H8.77778C8.34951 8.77777 8 9.12729 8 9.55555V13.4444C8 13.8727 8.34951 14.2222 8.77778 14.2222H14.2222C14.6505 14.2222 15 13.8727 15 13.4444V10.3333C15 9.90555 14.65 9.55555 14.2222 9.55555ZM2.55556 2.16666C2.55556 1.95095 2.3825 1.77777 2.16667 1.77777H1.38889C1.17318 1.77777 1 1.95083 1 2.16666V11.8889C1 12.3171 1.34951 12.6667 1.77778 12.6667H7.22222V11.1111H2.55556V5.66666H7.22222V4.1111H2.55556V2.16666Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 802 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.55556 0.888902H6L5.55556 0.444458H4.44444C4.19972 0.444458 4 0.64418 4 0.888902V3.11112C4 3.35585 4.19972 3.55557 4.44444 3.55557H7.55556C7.80028 3.55557 8 3.35585 8 3.11112V1.33335C8 1.08862 7.8 0.888902 7.55556 0.888902ZM7.55556 4.8889H6L5.55556 4.44446H4.44444C4.19972 4.44446 4 4.64418 4 4.8889V7.11112C4 7.35585 4.19972 7.55557 4.44444 7.55557H7.55556C7.80028 7.55557 8 7.35585 8 7.11112V5.33335C8 5.0889 7.8 4.8889 7.55556 4.8889ZM0.888889 0.66668C0.888889 0.543416 0.79 0.444458 0.666667 0.444458H0.222222C0.0989583 0.444458 0 0.543347 0 0.66668V6.22224C0 6.46696 0.199722 6.66668 0.444444 6.66668H3.55556V5.77779H0.888889V2.66668H3.55556V1.77779H0.888889V0.66668Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 799 B

3
assets/icons/lock_8.svg Normal file
View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M2 3V2C2 0.89543 2.89543 0 4 0C5.10457 0 6 0.895431 6 2V3H7V8H1V3H2ZM3 2C3 1.44772 3.44772 1 4 1C4.55228 1 5 1.44772 5 2V3H3V2ZM3.5 6.5V4.5H4.5V6.5H3.5Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 317 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11.8167 11.0391L8.67607 7.89844C9.35576 7.06641 9.73076 6.01875 9.73076 4.875C9.73076 2.18203 7.54802 0 4.85576 0C2.16349 0 0.00161743 2.18273 0.00161743 4.875C0.00161743 7.56727 2.18412 9.75 4.85552 9.75C5.99904 9.75 7.0481 9.35367 7.87896 8.69438L11.0196 11.835C11.1508 11.9461 11.2961 12 11.4391 12C11.5821 12 11.7269 11.9449 11.8369 11.835C12.0555 11.6154 12.0555 11.2591 11.8165 11.0388L11.8167 11.0391ZM1.12685 4.875C1.12685 2.80734 2.8092 1.125 4.87685 1.125C6.94451 1.125 8.62685 2.80734 8.62685 4.875C8.62685 6.94266 6.94451 8.625 4.87685 8.625C2.8092 8.625 1.12685 6.94219 1.12685 4.875Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 727 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M14.7861 13.8789L11.1221 10.2148C11.915 9.24414 12.3525 8.02187 12.3525 6.6875C12.3525 3.5457 9.80602 1 6.66504 1C3.52406 1 1.00188 3.54652 1.00188 6.6875C1.00188 9.82848 3.54813 12.375 6.66477 12.375C7.99887 12.375 9.22278 11.9126 10.1921 11.1434L13.8562 14.8075C14.0093 14.9371 14.1788 15 14.3456 15C14.5124 15 14.6814 14.9357 14.8097 14.8075C15.0648 14.5513 15.0648 14.1357 14.7859 13.8786L14.7861 13.8789ZM2.31465 6.6875C2.31465 4.27523 4.27738 2.3125 6.68965 2.3125C9.10192 2.3125 11.0647 4.27523 11.0647 6.6875C11.0647 9.09977 9.10192 11.0625 6.68965 11.0625C4.27738 11.0625 2.31465 9.09922 2.31465 6.6875Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 741 B

View File

@@ -0,0 +1,3 @@
<svg width="8" height="8" viewBox="0 0 8 8" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M7.87779 7.35938L5.78404 5.26562C6.23716 4.71094 6.48716 4.0125 6.48716 3.25C6.48716 1.45469 5.03201 0 3.23716 0C1.44232 0 0.00106812 1.45516 0.00106812 3.25C0.00106812 5.04484 1.45607 6.5 3.23701 6.5C3.99935 6.5 4.69873 6.23578 5.25263 5.79625L7.34638 7.89C7.43388 7.96406 7.53076 8 7.62607 8C7.72138 8 7.81794 7.96328 7.89123 7.89C8.03701 7.74359 8.03701 7.50609 7.87763 7.35922L7.87779 7.35938ZM0.751224 3.25C0.751224 1.87156 1.87279 0.75 3.25122 0.75C4.62966 0.75 5.75122 1.87156 5.75122 3.25C5.75122 4.62844 4.62966 5.75 3.25122 5.75C1.87279 5.75 0.751224 4.62813 0.751224 3.25Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 708 B

View File

@@ -0,0 +1,5 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11 1H6V11H11V1Z" fill="white" fill-opacity="0.2"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M2.1818 1C1.51237 1 1.04544 1.48778 1.04544 2V10C1.04544 10.5122 1.51237 11 2.1818 11H9.81817C10.4876 11 10.9545 10.5122 10.9545 10V2C10.9545 1.48778 10.4876 1 9.81817 1H2.1818ZM0.0454407 2C0.0454407 0.855367 1.04377 0 2.1818 0H9.81817C10.9562 0 11.9545 0.855367 11.9545 2V10C11.9545 11.1446 10.9562 12 9.81817 12H2.1818C1.04377 12 0.0454407 11.1446 0.0454407 10V2Z" fill="white"/>
<path d="M6.09091 1H5V11H6.09091V1Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 647 B

View File

@@ -0,0 +1,3 @@
<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M0 2.25C0 1.42148 0.67148 0.75 1.5 0.75H10.5C11.3273 0.75 12 1.42148 12 2.25V9.75C12 10.5773 11.3273 11.25 10.5 11.25H1.5C0.67148 11.25 0 10.5773 0 9.75V2.25ZM2.39766 3.55781C2.18789 3.7875 2.20336 4.14141 2.43281 4.35234L4.23047 6L2.43281 7.64766C2.20336 7.85859 2.18789 8.2125 2.39766 8.44219C2.60859 8.65078 2.9625 8.68594 3.19219 8.47734L5.44219 6.41484C5.55937 6.30703 5.625 6.15703 5.625 5.97891C5.625 5.84297 5.55937 5.69297 5.44219 5.58516L3.19219 3.52266C2.9625 3.31406 2.60859 3.32813 2.39766 3.55781ZM5.8125 7.875C5.50078 7.875 5.25 8.12578 5.25 8.4375C5.25 8.74922 5.50078 9 5.8125 9H9.1875C9.4992 9 9.75 8.74922 9.75 8.4375C9.75 8.12578 9.4992 7.875 9.1875 7.875H5.8125Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 812 B

Some files were not shown because too many files have changed in this diff Show More