Commit log

0b3a63b Fix error in follower when leader creates pending selections

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Max Brunsfeld and Nathan Sobo created

454f7a5 Add global change observations

Keith Simmons created

10f1760 Merge pull request #662 from zed-industries/fix-refresh-selections-when-mouse-selecting

Click to expand commit body
Account for pending selections when calling `Editor::refresh_selections`

Antonio Scandurra created

b73f57d Don't destroy pending selection on `Editor::refresh_selections`

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

004f98c Merge pull request #661 from zed-industries/follow

Click to expand commit body
Introduce basic following experience

Antonio Scandurra created

60b6b0b Cycle through panes spatially rather than in the order in which they created

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

5ac39aa Don't show local cursors when editor is not focused

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

4f27049 Focus followed items when they become active if the pane is active

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

edc038a Activate previous pane and next pane via `cmd-k cmd-left` and `cmd-k cmd-right`

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

097bbe3 Update follow binding, remove unfollow binding

Click to expand commit body
The previous binding to follow had ergonomics issues for the frequency that I think we'll want to use it. It would also conflict with the sub-word selection binding.

Now that moving the cursor etc unfollows, I don't think we need the follow binding.

Nathan Sobo created

da15669 Merge pull request #656 from zed-industries/add-editor-lifetime-events

Click to expand commit body
Add editor lifetime events

Nathan Sobo created

d24bd6f Account for pending selections when calling `Editor::refresh_selections`

Antonio Scandurra created

3298529 Fix global nested event test after turning subscriptions into effects

Antonio Scandurra created

7acde40 Merge pull request #655 from zed-industries/add-editor-selection-helpers

Click to expand commit body
Add editor selection helpers

Keith Simmons created

fa62fd9 Autoscroll when leader moves cursors

Click to expand commit body
instead of copying their scroll top.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Max Brunsfeld and Nathan Sobo created

fad299e Add unit test for editor's following methods

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Max Brunsfeld and Nathan Sobo created

8699dd9 Replicate fractional component of leader's scroll position

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Max Brunsfeld and Nathan Sobo created

880eaa2 Coalesce followed view updates only within one frame

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Max Brunsfeld and Nathan Sobo created

4435d9b Combine updates from multiple view events when updating followers

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Max Brunsfeld and Nathan Sobo created

fba6f24 Add editor lifetime events

Keith Simmons created

6a1c197 Add editor selection utilities

Click to expand commit body
Also improved test that was failing during above to use marker text approach as a drive by

Keith Simmons created

308bfa3 Merge pull request #654 from zed-industries/remove-movment-results

Click to expand commit body
Remove results from movement functions

Keith Simmons created

fc811e0 Don't represent editor's scroll top anchor as an option

Click to expand commit body
Use Anchor::min as the special value representing a scroll top of zero

Max Brunsfeld created

0a3f013 Use env_logger when running the app in a terminal

Max Brunsfeld created

c105802 Allow customizing the pane's following border width in the theme

Max Brunsfeld created

4ed8f6f Make UpdateBuffer a foreground message

Max Brunsfeld created

df75186 Remove results from movement function return values, and move editor test utilities to test file

Keith Simmons created

ec7bada Merge pull request #651 from zed-industries/refine-word-movement

Click to expand commit body
Add sub-word movement and helper functions for finding word boundaries

Max Brunsfeld created

c78bcf7 Ensure leader updates don't change the active pane of followers

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

9885c4f Don't trigger observations with notifications emitted prior to observing

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

5ecf945 Don't trigger global subscriptions with events emitted prior to subscribing

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

73eae28 Don't trigger subscriptions with events emitted prior to subscribing

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

284a446 WIP

Antonio Scandurra created

381c827 Bump protocol version

Antonio Scandurra created

016fb01 Merge branch 'main' into follow

Antonio Scandurra created

e5a99cf Stop following when leader disconnects

Antonio Scandurra created

ffaf409 Forget last pane's leader when such pane is removed

Click to expand commit body
This is just a memory optimization and doesn't cause any observable
change in behavior.

Antonio Scandurra created

5dc3626 Reflect leader's view state when recycling existing local editors

Antonio Scandurra created

34e5a1f Always render local selections on top of remote ones

Antonio Scandurra created

7d566ce Follow last collaborator or the next one via `cmd-alt-shift-f`

Antonio Scandurra created

67dbc31 Stop following when activating a different item on the follower pane

Antonio Scandurra created

3117554 Automatically unfollow when editing, scrolling or changing selections

Antonio Scandurra created

c550fc3 WIP - Start work on unfollowing automatically

Max Brunsfeld created

1728551 Always mirror the leader's selections when following

Max Brunsfeld created

ee3e604 Make boundary-finding methods wrap across newlines

Click to expand commit body
This requires word and subword methods to explicitly acknowledge that they want to stop at newlines, which I think actually increases clarity. It makes the boundary finding method more general and useful for external callers such as the forthcoming vim crate.

Nathan Sobo created

f70f4c7 Improve DisplayPoint Debug impl

Nathan Sobo created

e5a00d7 Implement next_subword_end

Nathan Sobo created

c0d05c8 WIP: Start on previous_subword_start

Click to expand commit body
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Keith Simmons <keith@the-simmons.net>

Nathan Sobo , Max Brunsfeld , and Keith Simmons created

c8f36af Show borders around avatars and panes to indicate following state

Max Brunsfeld created

5b54874 Extract logic for scanning over character boundaries

Nathan Sobo created