Commit Graph
1037 Commits
Author SHA1 Message Date
Max Brunsfeld 5dfd4be174 WIP 2021-09-20 18:05:46 -07:00
Max Brunsfeld 8b1a2c8cd2 Fix warnings in people_panel 2021-09-20 15:45:41 -07:00
Max BrunsfeldandNathan Sobo a068019d94 Add ZED_IMPERSONATE env var, for testing
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-20 15:44:28 -07:00
Max BrunsfeldandNathan Sobo 4ca5814470 Add missing people panel properties to base theme
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-20 13:38:59 -07:00
23652f2ba6 Start on PeoplePanel::render
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-20 20:04:48 +02:00
Antonio Scandurra 67946b7224 Add an integration test to verify collaborators are kept up to date 2021-09-20 16:40:31 +02:00
Antonio Scandurra 3d4dbf3140 Maintain collaborators in UserStore 2021-09-20 15:05:41 +02:00
Antonio Scandurra 32111092bd Turn UserStore into a model 2021-09-20 14:40:06 +02:00
Antonio Scandurra 6f2c8ffb00 Introduce a Client::subscribe method that doesn't need an entity 2021-09-20 14:14:07 +02:00
Antonio Scandurra ae9fb65315 Fix integration tests 2021-09-20 12:52:13 +02:00
Antonio ScandurraandNathan Sobo f13af7dc59 WIP
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-17 18:37:00 +02:00
Antonio Scandurra f2825cceba Start on Presence as the backing model for the people panel 2021-09-17 16:18:41 +02:00
Max Brunsfeld e3c0d6980c Switch to a new flow for advertising, sharing and joining worktrees
Now, when you open a local worktree, we immediately send an `OpenWorktree` message
to the server, telling it the name of the folder that you've opened, and the names of all the
collaborators (based on a `.zed.toml` file). The server responds with a unique id for the
worktree.

When starting share this local worktree, you now include this previously-assigned id
in the `ShareWorktree` message.

When joining a worktree, there is no longer a need to provide an access token. The access
is controlled by the set of "collaborator logins" that were provided when the worktree
was initially opened by the host.
2021-09-16 18:39:29 -07:00
Max Brunsfeld 176ca9086e Rename OpenWorktree message to JoinWorktree
We'll repurpose the name 'OpenWorktree' for opening a local
worktree while signed in, and advertising the open status to
the worktree's collaborators.
2021-09-16 12:57:19 -07:00
Max Brunsfeld f0093974ee Always store an rpc client on local worktrees
Even before sharing, we now want to advertise that the user is working
on a certain worktree, to make that visible to all of the worktree's
collaborators.
2021-09-16 11:06:49 -07:00
Antonio ScandurraandNathan Sobo 260114af6c Update Inconsolata to not include ligatures
Fixes #146

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-16 17:47:17 +02:00
Antonio Scandurra 02768b7f7b Remove duplicated text base definition 2021-09-16 17:39:12 +02:00
Antonio Scandurra 8973e250ca Re-send pending messages after reconnecting 2021-09-16 16:23:43 +02:00
Antonio Scandurra 9402eb3f3e Maintain parent pointers from primitive values too
After resolving a reference to a primitive value, we want to set
its parent pointer so that `Tree::resolve` can navigate upward and
update the cached resolved status of each node.
2021-09-16 11:17:54 +02:00
Max Brunsfeld 2392075467 Get resolve_references test passing 2021-09-15 17:49:51 -07:00
Max BrunsfeldandNathan Sobo 31b5602dc1 Get server integration tests passing again
* Set up UserStore to have the current user, so that
  channel messages can be sent. This is needed now that
  pending messages are represented more similarly to
  regular messages.
* Drop buffer inside of an `AppContext.update` block, so that
  the Buffer's release hook is called in time.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-15 16:17:07 -07:00
Nathan SoboandMax Brunsfeld 95ef70e4f4 Switch to new resolution system in ThemeRegistry
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-15 12:56:20 -06:00
5ee0e85f02 WIP
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-09-15 18:32:44 +02:00
Antonio Scandurra 65b22157e7 WIP 2021-09-15 15:12:16 +02:00
Nathan SoboandAntonio Scandurra c2e9aa1b54 Render chat panel messages even if connection is lost
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-09-15 05:18:13 -06:00
Nathan SoboandAntonio Scandurra ec7c6f3f91 Always assign credentials on rpc::Client after connecting
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-09-15 05:13:05 -06:00
Nathan Sobo 7d59b2d861 Log panics when not attached to a pty
Hopefully this will give us better forensics if we panic in production.
2021-09-15 04:51:22 -06:00
Antonio ScandurraandNathan Sobo 914112f2b5 Fix test_channel_messages unit test
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-15 12:15:54 +02:00
Antonio ScandurraandNathan Sobo 603f1d820d Authenticate via the browser if keychain credentials are invalid
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-15 11:45:08 +02:00
Nathan Sobo 7e4d5b7d04 Clear cached credentials when establishing a websocket connection with an invalid token 2021-09-14 20:36:03 -06:00
Nathan SoboandMax Brunsfeld 4a9918979e WIP: Clear cached credentials if authentication fails
Still need to actually handle an HTTP response from the server indicating there was an invalid token.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-14 19:19:11 -06:00
Nathan SoboandMax Brunsfeld 77a4a36eb3 Test that we reuse credentials when reconnecting
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-14 18:30:17 -06:00
Nathan SoboandMax Brunsfeld 44a457e8b6 Cache credentials in memory separately from connection status
This prevents us from re-prompting for keychain access when we retry connections after the connection is lost.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-14 18:21:46 -06:00
Nathan SoboandMax Brunsfeld 99a2dc4880 Render an offline icon in titlebar when connection is lost
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-14 17:47:43 -06:00
Nathan SoboandMax Brunsfeld e212461dfe Authenticate when clicking on unauthenticated avatar in titlebar
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-14 17:06:40 -06:00
Nathan SoboandMax Brunsfeld 0f415a594f Style avatar image with border and rounded corners
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-14 16:59:38 -06:00
Nathan SoboandMax Brunsfeld e0e0bdbc3a Synthesize GitHub avatar URL and follow redirects when fetching it
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-14 16:28:26 -06:00
Max Brunsfeld 84d4bb6186 Introduce HttpClient trait, use it to fetch avatars in UserStore
* Add a FakeHttpClient for tests
2021-09-14 13:42:44 -07:00
Nathan Sobo f0019e3725 WIP 2021-09-14 12:29:56 -06:00
428c491542 WIP: Start on rendering avatars
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-14 19:21:03 +02:00
2cf1c697c2 Render a signed out icon in titlebar
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-09-14 18:53:41 +02:00
Antonio Scandurra 96ade8668f Start on image rendering 2021-09-14 16:48:44 +02:00
Antonio ScandurraandMax Brunsfeld 201b923248 Don't panic if heartbeat messages can't be sent
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-09-14 10:56:09 +02:00
Nathan Sobo 7737699981 Use a pointing hand cursor style on tab close icons 2021-09-13 11:49:10 -06:00
Max Brunsfeld 3d4a451c15 Merge commit '680b86b17c63b67f768bc5da5f34e5ccf056a0ce' into main 2021-09-10 15:22:59 -07:00
Nate 6afd477569 Add initial collaborator colors
* Define host selection color
* Add 7 unique guest colors, optimizing for contrast between selectors the fewer collaborators you have
* Selections use transparent versions of the cursor color
2021-09-10 15:56:39 -04:00
Nate 21c74ca78d Add "zed" label to the title bar 2021-09-10 13:42:38 -04:00
Nate 64c26a73be Seperate selector.input_editor and chat_panel.input_editor
* create [selector.input_editor] and style
* Update selector style to match figma now that inputs are individually stylable
2021-09-10 11:23:38 -04:00
Nate 160c4beb06 Add shadow to channel select menu 2021-09-10 10:18:14 -04:00
Nate fac42fd3c2 Fix border on channel select menu 2021-09-10 10:14:21 -04:00