bd573e0
Merge pull request #273 from zed-industries/flexible-blocks
Click to expand commit body
Render blocks as arbitrary elements
Max Brunsfeld created
bd573e0
Merge pull request #273 from zed-industries/flexible-blocks
Render blocks as arbitrary elements
Max Brunsfeld created
5ae4670
Fix alignment of blocks adjacent to other blocks
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
ee693a8
Get all tests passing with new blocks API
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
512a10b
Use new BlockMap API to render diagnostics
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
0c71421
Start work on generalizing the BlockMap to allow arbitrary elements
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Max Brunsfeld and Nathan Sobo created
e668ff8
Avoid allocating a `Patch` just to check if there are no edits
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
853b636
Merge pull request #272 from zed-industries/fold-map-edits
Don't rely on `Buffer::edits_since` to keep `FoldMap` up-to-date
Antonio Scandurra created
733e0cb
Use the new buffer subscription API to keep `DisplayMap` in sync
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
3b536f1
Introduce `text::Buffer::subscribe`
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
47c467d
Bump FoldMap's version in `FoldMap::sync` (and not in `DisplayMap`)
Antonio Scandurra created
b841b3e
Don't produce invalid intermediate edits in `Patch::compose`
Antonio Scandurra created
faba276
WIP - maintain foldmap with Buffer::edits_since
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Max Brunsfeld and Nathan Sobo created
2463077
Merge pull request #269 from zed-industries/simplify-buffer-content
Use `&'a Snapshot` directly instead of `impl Into<Content<'a>>`
Max Brunsfeld created
924e157
Use `&Snapshot` directly instead of `impl Into<Content<'a>>`
The text::Buffer and its snapshot already used the same representation for their content, so we can just make Buffer deref to a Snapshot.
Max Brunsfeld created
3654646
Merge pull request #268 from zed-industries/improve-file-navigation
Improve file navigation by naming the root of every crate after the crate itself
Max Brunsfeld created
1445ce1
Name the root file of every crate after the crate to ease navigation
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
748b1ba
Fix warning
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
d3f2816
Rename buffer crate to text and name its entrypoint after the crate
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
eacd2a4
Bump versions in preparation for release
Nathan Sobo created
df1804b
Merge pull request #267 from zed-industries/fix-soft-wrap-disabled
Avoid building up pending edits when soft wrapping is disabled
Nathan Sobo created
0ed488d
Avoid building up pending edits when soft wrapping is disabled
This was causing us to get slower over time as we stacked up hundreds of thousands of pending edits whenever soft wrap was disabled. Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Nathan Sobo and Antonio Scandurra created
fcbd7f9
Merge pull request #266 from zed-industries/fix-go-to-line
Use display coordinates for the highlighted row in "go to line"
Antonio Scandurra created
2449834
Use display coordinates for the highlighted row in "go to line"
Antonio Scandurra created
cb942a0
Merge pull request #265 from zed-industries/fix-collaborators-test
Fix flaky contacts test
Nathan Sobo created
a141216
Fix randomized test failures by waiting for client_b to be added to worktree_a
We perform an async fetch of client_b's user data on worktree_a, which ends up holding a handle that prevents worktree_a from being released later in the test. By waiting for this fetch to finish before proceeding, we can be sure worktree_a actually gets released. A more comprehensive fix would be some way to ensure we actually perform a release if an entity is fully dropped outside of an update cycle, but this fixes the issue for now. Co-Authored-By: Max Brunsfeld <max@zed.dev>
Nathan Sobo and Max Brunsfeld created
1a91aa8
Introduce a collections crate w/ deterministic hashmap, hashset in tests
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Max Brunsfeld and Nathan Sobo created
5ec0035
Consolidate pending effects logic into MutableAppContext::update
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Max Brunsfeld and Nathan Sobo created
4cc1556
Introduce weak_handle methods on ModelContext and ViewContext
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Max Brunsfeld and Nathan Sobo created
29b616f
Merge pull request #263 from zed-industries/fix-highlighting-when-x-scrolled
Paint highlighted lines correctly when horizontally scrolled
Max Brunsfeld created
88e0fe6
Paint highlighted lines correctly when horizontally scrolled
Max Brunsfeld created
7537c3b
Merge pull request #261 from zed-industries/setting-overrides
Override soft-wrap settings for Markdown and Plain Text
Max Brunsfeld created
1803bd7
Fix test assertions
Antonio Scandurra created
9d7039e
Embed a plain text grammar and override settings for that too
Antonio Scandurra created
2c17ae9
Introduce a new `Grammar` struct and allow it to be optional
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
b9edde7
Make settings fields that can be overridden private
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
cc78ae1
Add a sample markdown grammar to honor the new soft wrap override
Antonio Scandurra created
93de2bc
Allow overriding editor settings on a per-language basis
Antonio Scandurra created
e0998db
Merge pull request #260 from zed-industries/show-collaborators
Show collaborators for the active worktree in the titlebar
Nathan Sobo created
815cc7e
Give avatar ribbons a rounded top
Nathan Sobo created
fbc307c
Associate collaborator avatars with "ribbons" corresponding to their cursor color
Nathan Sobo created
a5039ca
Tweak avatar sizes in titlebar
Nathan Sobo created
6ce76ca
Render active worktree collaborator avatars in the titlebar
Nathan Sobo created
4bd43e6
Introduce a TestClient and associate it with a PeerId
This makes it easier to integration test peer interactions because now we know their PeerIds.
Nathan Sobo created
b307a7e
Populate the user data of worktree collaborators
This will make it possible for us to render their avatars. Previously we only had the user ids. During rendering, everything needs to be available synchronously. So now, whenever collaborators are added, we perform the async I/O to fetch their user data prior to adding them to the worktree.
Nathan Sobo created
9930e92
WIP: Give worktrees a reference to the UserStore
This will allow them to fetch user data when peers are added or removed. Still work to do though.
Nathan Sobo created
21aba54
Introduce a worktree::Collaborator struct that holds the user_id
We can use this to render avatars. Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com> Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Nathan Sobo , Max Brunsfeld , and Antonio Scandurra created
d78d571
Rename PeoplePanel to ContactsPanel
Yeah, it's true they're people, but this is a more specific way in which they're people. Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Nathan Sobo and Antonio Scandurra created
c8ad5b6
Rename collaborator_logins to authorized_logins
Again, this is about reserving the concept of a "collaborator" for actual collaborators on a worktree. Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Nathan Sobo and Antonio Scandurra created
cd2c3c3
Rename Collaborators to Contacts
This will allow us to use the word "collaborator" to describe users that are actively collaborating on a worktree. Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Nathan Sobo and Antonio Scandurra created
9f29eed
Associate Peers with a user_id
This will help us render the collaborator avatars for the active worktree when we know its peers.
Nathan Sobo created