Rename editor::Event::Edited to editor::Event::BufferEdited

This is to distinguish it from a new event we're about to add which
represent edits originating from that specific editor.
This commit is contained in:
Antonio Scandurra 2022-03-24 08:55:46 +01:00
parent 864bede8a2
commit a739c362d9
11 changed files with 26 additions and 38 deletions

View File

@ -5526,10 +5526,10 @@ impl Editor {
cx: &mut ViewContext<Self>, cx: &mut ViewContext<Self>,
) { ) {
match event { match event {
language::Event::Edited { local } => { language::Event::Edited => {
self.refresh_active_diagnostics(cx); self.refresh_active_diagnostics(cx);
self.refresh_code_actions(cx); self.refresh_code_actions(cx);
cx.emit(Event::Edited { local: *local }); cx.emit(Event::BufferEdited);
} }
language::Event::Dirtied => cx.emit(Event::Dirtied), language::Event::Dirtied => cx.emit(Event::Dirtied),
language::Event::Saved => cx.emit(Event::Saved), language::Event::Saved => cx.emit(Event::Saved),
@ -5656,7 +5656,7 @@ fn compute_scroll_position(
#[derive(Copy, Clone)] #[derive(Copy, Clone)]
pub enum Event { pub enum Event {
Activate, Activate,
Edited { local: bool }, BufferEdited,
Blurred, Blurred,
Dirtied, Dirtied,
Saved, Saved,

View File

@ -198,7 +198,7 @@ impl FollowableItem for Editor {
fn should_unfollow_on_event(event: &Self::Event, _: &AppContext) -> bool { fn should_unfollow_on_event(event: &Self::Event, _: &AppContext) -> bool {
match event { match event {
Event::Edited { local } => *local, // Event::BufferEdited { local } => *local,
Event::SelectionsChanged { local } => *local, Event::SelectionsChanged { local } => *local,
Event::ScrollPositionChanged { local } => *local, Event::ScrollPositionChanged { local } => *local,
_ => false, _ => false,

View File

@ -291,7 +291,7 @@ impl FileFinder {
cx: &mut ViewContext<Self>, cx: &mut ViewContext<Self>,
) { ) {
match event { match event {
editor::Event::Edited { .. } => { editor::Event::BufferEdited { .. } => {
let query = self.query_editor.update(cx, |buffer, cx| buffer.text(cx)); let query = self.query_editor.update(cx, |buffer, cx| buffer.text(cx));
if query.is_empty() { if query.is_empty() {
self.latest_search_id = post_inc(&mut self.search_count); self.latest_search_id = post_inc(&mut self.search_count);

View File

@ -102,7 +102,7 @@ impl GoToLine {
) { ) {
match event { match event {
editor::Event::Blurred => cx.emit(Event::Dismissed), editor::Event::Blurred => cx.emit(Event::Dismissed),
editor::Event::Edited { .. } => { editor::Event::BufferEdited { .. } => {
let line_editor = self.line_editor.read(cx).buffer().read(cx).read(cx).text(); let line_editor = self.line_editor.read(cx).buffer().read(cx).read(cx).text();
let mut components = line_editor.trim().split(&[',', ':'][..]); let mut components = line_editor.trim().split(&[',', ':'][..]);
let row = components.next().and_then(|row| row.parse::<u32>().ok()); let row = components.next().and_then(|row| row.parse::<u32>().ok());

View File

@ -142,7 +142,7 @@ pub enum Operation {
#[derive(Clone, Debug, PartialEq, Eq)] #[derive(Clone, Debug, PartialEq, Eq)]
pub enum Event { pub enum Event {
Operation(Operation), Operation(Operation),
Edited { local: bool }, Edited,
Dirtied, Dirtied,
Saved, Saved,
FileHandleChanged, FileHandleChanged,
@ -967,7 +967,7 @@ impl Buffer {
) -> Option<TransactionId> { ) -> Option<TransactionId> {
if let Some((transaction_id, start_version)) = self.text.end_transaction_at(now) { if let Some((transaction_id, start_version)) = self.text.end_transaction_at(now) {
let was_dirty = start_version != self.saved_version; let was_dirty = start_version != self.saved_version;
self.did_edit(&start_version, was_dirty, true, cx); self.did_edit(&start_version, was_dirty, cx);
Some(transaction_id) Some(transaction_id)
} else { } else {
None None
@ -1160,7 +1160,6 @@ impl Buffer {
&mut self, &mut self,
old_version: &clock::Global, old_version: &clock::Global,
was_dirty: bool, was_dirty: bool,
local: bool,
cx: &mut ModelContext<Self>, cx: &mut ModelContext<Self>,
) { ) {
if self.edits_since::<usize>(old_version).next().is_none() { if self.edits_since::<usize>(old_version).next().is_none() {
@ -1169,7 +1168,7 @@ impl Buffer {
self.reparse(cx); self.reparse(cx);
cx.emit(Event::Edited { local }); cx.emit(Event::Edited);
if !was_dirty { if !was_dirty {
cx.emit(Event::Dirtied); cx.emit(Event::Dirtied);
} }
@ -1206,7 +1205,7 @@ impl Buffer {
self.text.apply_ops(buffer_ops)?; self.text.apply_ops(buffer_ops)?;
self.deferred_ops.insert(deferred_ops); self.deferred_ops.insert(deferred_ops);
self.flush_deferred_ops(cx); self.flush_deferred_ops(cx);
self.did_edit(&old_version, was_dirty, false, cx); self.did_edit(&old_version, was_dirty, cx);
// Notify independently of whether the buffer was edited as the operations could include a // Notify independently of whether the buffer was edited as the operations could include a
// selection update. // selection update.
cx.notify(); cx.notify();
@ -1321,7 +1320,7 @@ impl Buffer {
if let Some((transaction_id, operation)) = self.text.undo() { if let Some((transaction_id, operation)) = self.text.undo() {
self.send_operation(Operation::Buffer(operation), cx); self.send_operation(Operation::Buffer(operation), cx);
self.did_edit(&old_version, was_dirty, true, cx); self.did_edit(&old_version, was_dirty, cx);
Some(transaction_id) Some(transaction_id)
} else { } else {
None None
@ -1342,7 +1341,7 @@ impl Buffer {
self.send_operation(Operation::Buffer(operation), cx); self.send_operation(Operation::Buffer(operation), cx);
} }
if undone { if undone {
self.did_edit(&old_version, was_dirty, true, cx) self.did_edit(&old_version, was_dirty, cx)
} }
undone undone
} }
@ -1353,7 +1352,7 @@ impl Buffer {
if let Some((transaction_id, operation)) = self.text.redo() { if let Some((transaction_id, operation)) = self.text.redo() {
self.send_operation(Operation::Buffer(operation), cx); self.send_operation(Operation::Buffer(operation), cx);
self.did_edit(&old_version, was_dirty, true, cx); self.did_edit(&old_version, was_dirty, cx);
Some(transaction_id) Some(transaction_id)
} else { } else {
None None
@ -1374,7 +1373,7 @@ impl Buffer {
self.send_operation(Operation::Buffer(operation), cx); self.send_operation(Operation::Buffer(operation), cx);
} }
if redone { if redone {
self.did_edit(&old_version, was_dirty, true, cx) self.did_edit(&old_version, was_dirty, cx)
} }
redone redone
} }
@ -1440,7 +1439,7 @@ impl Buffer {
if !ops.is_empty() { if !ops.is_empty() {
for op in ops { for op in ops {
self.send_operation(Operation::Buffer(op), cx); self.send_operation(Operation::Buffer(op), cx);
self.did_edit(&old_version, was_dirty, true, cx); self.did_edit(&old_version, was_dirty, cx);
} }
} }
} }

View File

@ -122,19 +122,11 @@ fn test_edit_events(cx: &mut gpui::MutableAppContext) {
let buffer_1_events = buffer_1_events.borrow(); let buffer_1_events = buffer_1_events.borrow();
assert_eq!( assert_eq!(
*buffer_1_events, *buffer_1_events,
vec![ vec![Event::Edited, Event::Dirtied, Event::Edited, Event::Edited]
Event::Edited { local: true },
Event::Dirtied,
Event::Edited { local: true },
Event::Edited { local: true }
]
); );
let buffer_2_events = buffer_2_events.borrow(); let buffer_2_events = buffer_2_events.borrow();
assert_eq!( assert_eq!(*buffer_2_events, vec![Event::Edited, Event::Dirtied]);
*buffer_2_events,
vec![Event::Edited { local: false }, Event::Dirtied]
);
} }
#[gpui::test] #[gpui::test]

View File

@ -224,7 +224,7 @@ impl OutlineView {
) { ) {
match event { match event {
editor::Event::Blurred => cx.emit(Event::Dismissed), editor::Event::Blurred => cx.emit(Event::Dismissed),
editor::Event::Edited { .. } => self.update_matches(cx), editor::Event::BufferEdited { .. } => self.update_matches(cx),
_ => {} _ => {}
} }
} }

View File

@ -6229,10 +6229,7 @@ mod tests {
assert!(buffer.is_dirty()); assert!(buffer.is_dirty());
assert_eq!( assert_eq!(
*events.borrow(), *events.borrow(),
&[ &[language::Event::Edited, language::Event::Dirtied]
language::Event::Edited { local: true },
language::Event::Dirtied
]
); );
events.borrow_mut().clear(); events.borrow_mut().clear();
buffer.did_save(buffer.version(), buffer.file().unwrap().mtime(), None, cx); buffer.did_save(buffer.version(), buffer.file().unwrap().mtime(), None, cx);
@ -6255,9 +6252,9 @@ mod tests {
assert_eq!( assert_eq!(
*events.borrow(), *events.borrow(),
&[ &[
language::Event::Edited { local: true }, language::Event::Edited,
language::Event::Dirtied, language::Event::Dirtied,
language::Event::Edited { local: true }, language::Event::Edited,
], ],
); );
events.borrow_mut().clear(); events.borrow_mut().clear();
@ -6269,7 +6266,7 @@ mod tests {
assert!(buffer.is_dirty()); assert!(buffer.is_dirty());
}); });
assert_eq!(*events.borrow(), &[language::Event::Edited { local: true }]); assert_eq!(*events.borrow(), &[language::Event::Edited]);
// When a file is deleted, the buffer is considered dirty. // When a file is deleted, the buffer is considered dirty.
let events = Rc::new(RefCell::new(Vec::new())); let events = Rc::new(RefCell::new(Vec::new()));

View File

@ -328,7 +328,7 @@ impl ProjectSymbolsView {
) { ) {
match event { match event {
editor::Event::Blurred => cx.emit(Event::Dismissed), editor::Event::Blurred => cx.emit(Event::Dismissed),
editor::Event::Edited { .. } => self.update_matches(cx), editor::Event::BufferEdited { .. } => self.update_matches(cx),
_ => {} _ => {}
} }
} }

View File

@ -360,7 +360,7 @@ impl SearchBar {
cx: &mut ViewContext<Self>, cx: &mut ViewContext<Self>,
) { ) {
match event { match event {
editor::Event::Edited { .. } => { editor::Event::BufferEdited { .. } => {
self.query_contains_error = false; self.query_contains_error = false;
self.clear_matches(cx); self.clear_matches(cx);
self.update_matches(true, cx); self.update_matches(true, cx);
@ -377,7 +377,7 @@ impl SearchBar {
cx: &mut ViewContext<Self>, cx: &mut ViewContext<Self>,
) { ) {
match event { match event {
editor::Event::Edited { .. } => self.update_matches(false, cx), editor::Event::BufferEdited { .. } => self.update_matches(false, cx),
editor::Event::SelectionsChanged { .. } => self.update_match_index(cx), editor::Event::SelectionsChanged { .. } => self.update_match_index(cx),
_ => {} _ => {}
} }

View File

@ -204,7 +204,7 @@ impl ThemeSelector {
cx: &mut ViewContext<Self>, cx: &mut ViewContext<Self>,
) { ) {
match event { match event {
editor::Event::Edited { .. } => { editor::Event::BufferEdited { .. } => {
self.update_matches(cx); self.update_matches(cx);
self.select_if_matching(&cx.global::<Settings>().theme.name); self.select_if_matching(&cx.global::<Settings>().theme.name);
self.show_selected_theme(cx); self.show_selected_theme(cx);