Nathan Sobo
4da3005b5c
Allow users with no invites to be fetched from the API
2022-06-24 09:57:52 -06: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
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
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
Nathan Sobo
aedfd74d30
Use the hit bounds when painting mouse regions
2022-05-26 20:05:20 -06:00
Nathan Sobo and Max Brunsfeld
893f15ddab
Switch MouseEventHandler to use MouseRegions
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2022-05-26 20:00:01 -06:00
Nathan Sobo and Max Brunsfeld
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 and Max Brunsfeld
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 and Max Brunsfeld
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 and Max Brunsfeld
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 and Max Brunsfeld
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
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 and Antonio Scandurra
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
Nathan Sobo and Antonio Scandurra
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
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
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
Nathan Sobo
5fd2c5cb2e
v0.35.0
2022-05-24 11:32:12 -06: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 and Max Brunsfeld
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 and Max Brunsfeld
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
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
Nathan Sobo
7a8ff5abd7
Accept an optional email address when creating new users
2022-05-20 20:25:21 -06:00
Nathan Sobo and Antonio Scandurra
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
Nathan Sobo and Antonio Scandurra
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
Nathan Sobo and Antonio Scandurra
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
Nathan Sobo
51f9b915a0
WIP
2022-05-18 16:14:58 -06:00
Nathan Sobo
37fcfeab8d
WIP
2022-05-18 11:51:47 -06:00
Nathan Sobo and Antonio Scandurra
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 and Antonio Scandurra
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 and Antonio Scandurra
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
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 and Antonio Scandurra
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
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
Nathan Sobo
91257f308e
Remove "They won't know if you decline" message
2022-05-16 13:15:46 -06: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
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
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
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 and Antonio Scandurra
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 and Antonio Scandurra
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
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
Nathan Sobo and Antonio Scandurra
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 and Antonio Scandurra
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
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
Nathan Sobo and Max Brunsfeld
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 and Max Brunsfeld
40f1427885
Show requests in contacts panel
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2022-05-09 12:48:07 -06:00
Nathan Sobo and Max Brunsfeld
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 and Max Brunsfeld
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
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
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
Nathan Sobo and Antonio Scandurra
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
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
Nathan Sobo and Antonio Scandurra
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 and Antonio Scandurra
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 and Antonio Scandurra
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 and Antonio Scandurra
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
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
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 and Antonio Scandurra
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
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 and Max Brunsfeld
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
Nathan Sobo
e2a92f4a86
Merge remote-tracking branch 'origin/main' into tokio
2022-04-26 11:16:35 -06:00
Nathan Sobo and Antonio Scandurra
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
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 and Max Brunsfeld
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
Nathan Sobo
cb9d608e53
WIP
...
Continue adding in more API routes
2022-04-24 18:02:14 -06:00