diff --git a/crates/editor/src/editor.rs b/crates/editor/src/editor.rs index 19812e308357a0b5b2590def20e941d1ef896f0d..c4808215d75be1458fa380f64033681cb7e23ca9 100644 --- a/crates/editor/src/editor.rs +++ b/crates/editor/src/editor.rs @@ -3364,6 +3364,7 @@ impl Editor { self.set_selections(selections, None, true, cx); } self.request_autoscroll(Autoscroll::Fit, cx); + cx.emit(Event::Edited); } } @@ -3373,6 +3374,7 @@ impl Editor { self.set_selections(selections, None, true, cx); } self.request_autoscroll(Autoscroll::Fit, cx); + cx.emit(Event::Edited); } } @@ -5148,6 +5150,8 @@ impl Editor { } else { log::error!("unexpectedly ended a transaction that wasn't started by this editor"); } + + cx.emit(Event::Edited); } } @@ -5657,6 +5661,7 @@ fn compute_scroll_position( pub enum Event { Activate, BufferEdited, + Edited, Blurred, Dirtied, Saved, diff --git a/crates/editor/src/items.rs b/crates/editor/src/items.rs index 9d3a1bd0546eb4c5063db917badb1c135522e2ae..f10956c125e3d3cc9bc0eab86432a22942a884af 100644 --- a/crates/editor/src/items.rs +++ b/crates/editor/src/items.rs @@ -198,7 +198,7 @@ impl FollowableItem for Editor { fn should_unfollow_on_event(event: &Self::Event, _: &AppContext) -> bool { match event { - // Event::BufferEdited { local } => *local, + Event::Edited => true, Event::SelectionsChanged { local } => *local, Event::ScrollPositionChanged { local } => *local, _ => false,