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
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
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
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
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
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
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
9b29245590
Avoid duplicate notifications
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-17 11:19:22 -07:00
Nathan Sobo
1c9ad942df
v0.34.0
2022-05-17 11:10:21 -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
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
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
Nate Butler
af5bb92847
Rework color schemes
...
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
2022-05-16 18:11:22 -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
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
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
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
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
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
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