Rename selected_ranges and selected_display_ranges to remove redundant selected
This commit is contained in:
parent
de9dc27980
commit
c3a36e6d8a
8 changed files with 197 additions and 226 deletions
|
@ -5499,11 +5499,11 @@ mod tests {
|
||||||
Some((worktree_id, "2.txt").into())
|
Some((worktree_id, "2.txt").into())
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor_b2.read_with(cx_b, |editor, cx| editor.selections.selected_ranges(cx)),
|
editor_b2.read_with(cx_b, |editor, cx| editor.selections.ranges(cx)),
|
||||||
vec![2..3]
|
vec![2..3]
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor_b1.read_with(cx_b, |editor, cx| editor.selections.selected_ranges(cx)),
|
editor_b1.read_with(cx_b, |editor, cx| editor.selections.ranges(cx)),
|
||||||
vec![0..1]
|
vec![0..1]
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -5546,7 +5546,7 @@ mod tests {
|
||||||
});
|
});
|
||||||
editor_b1
|
editor_b1
|
||||||
.condition(cx_b, |editor, cx| {
|
.condition(cx_b, |editor, cx| {
|
||||||
editor.selections.selected_ranges(cx) == vec![1..1, 2..2]
|
editor.selections.ranges(cx) == vec![1..1, 2..2]
|
||||||
})
|
})
|
||||||
.await;
|
.await;
|
||||||
|
|
||||||
|
@ -5561,7 +5561,7 @@ mod tests {
|
||||||
});
|
});
|
||||||
editor_b1
|
editor_b1
|
||||||
.condition(cx_b, |editor, cx| {
|
.condition(cx_b, |editor, cx| {
|
||||||
editor.selections.selected_ranges(cx) == vec![3..3]
|
editor.selections.ranges(cx) == vec![3..3]
|
||||||
})
|
})
|
||||||
.await;
|
.await;
|
||||||
|
|
||||||
|
|
|
@ -897,7 +897,7 @@ mod tests {
|
||||||
// Cursor is at the first diagnostic
|
// Cursor is at the first diagnostic
|
||||||
view.editor.update(cx, |editor, cx| {
|
view.editor.update(cx, |editor, cx| {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.selections.selected_display_ranges(cx),
|
editor.selections.display_ranges(cx),
|
||||||
[DisplayPoint::new(12, 6)..DisplayPoint::new(12, 6)]
|
[DisplayPoint::new(12, 6)..DisplayPoint::new(12, 6)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -998,7 +998,7 @@ mod tests {
|
||||||
// Cursor keeps its position.
|
// Cursor keeps its position.
|
||||||
view.editor.update(cx, |editor, cx| {
|
view.editor.update(cx, |editor, cx| {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.selections.selected_display_ranges(cx),
|
editor.selections.display_ranges(cx),
|
||||||
[DisplayPoint::new(19, 6)..DisplayPoint::new(19, 6)]
|
[DisplayPoint::new(19, 6)..DisplayPoint::new(19, 6)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -129,6 +129,9 @@ impl SelectionsCollection {
|
||||||
range: Range<Anchor>,
|
range: Range<Anchor>,
|
||||||
cx: &AppContext,
|
cx: &AppContext,
|
||||||
) -> Vec<Selection<Point>> {
|
) -> Vec<Selection<Point>> {
|
||||||
|
// TODO: Make sure pending selection is handled correctly here
|
||||||
|
// if it is interleaved properly, we can sue resolve_multiple
|
||||||
|
// to improve performance
|
||||||
let buffer = self.buffer(cx);
|
let buffer = self.buffer(cx);
|
||||||
let start_ix = match self
|
let start_ix = match self
|
||||||
.disjoint
|
.disjoint
|
||||||
|
@ -211,7 +214,7 @@ impl SelectionsCollection {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(any(test, feature = "test-support"))]
|
#[cfg(any(test, feature = "test-support"))]
|
||||||
pub fn selected_ranges<D: TextDimension + Ord + Sub<D, Output = D> + std::fmt::Debug>(
|
pub fn ranges<D: TextDimension + Ord + Sub<D, Output = D> + std::fmt::Debug>(
|
||||||
&self,
|
&self,
|
||||||
cx: &AppContext,
|
cx: &AppContext,
|
||||||
) -> Vec<Range<D>> {
|
) -> Vec<Range<D>> {
|
||||||
|
@ -228,7 +231,7 @@ impl SelectionsCollection {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(any(test, feature = "test-support"))]
|
#[cfg(any(test, feature = "test-support"))]
|
||||||
pub fn selected_display_ranges(&self, cx: &mut MutableAppContext) -> Vec<Range<DisplayPoint>> {
|
pub fn display_ranges(&self, cx: &mut MutableAppContext) -> Vec<Range<DisplayPoint>> {
|
||||||
let display_map = self.display_map(cx);
|
let display_map = self.display_map(cx);
|
||||||
self.disjoint_anchors()
|
self.disjoint_anchors()
|
||||||
.iter()
|
.iter()
|
||||||
|
|
|
@ -54,5 +54,5 @@ pub fn assert_text_with_selections(
|
||||||
let (unmarked_text, text_ranges) = marked_text_ranges(marked_text);
|
let (unmarked_text, text_ranges) = marked_text_ranges(marked_text);
|
||||||
|
|
||||||
assert_eq!(editor.text(cx), unmarked_text);
|
assert_eq!(editor.text(cx), unmarked_text);
|
||||||
assert_eq!(editor.selections.selected_ranges(cx), text_ranges);
|
assert_eq!(editor.selections.ranges(cx), text_ranges);
|
||||||
}
|
}
|
||||||
|
|
|
@ -729,9 +729,7 @@ mod tests {
|
||||||
assert_eq!(search_bar.active_match_index, Some(0));
|
assert_eq!(search_bar.active_match_index, Some(0));
|
||||||
search_bar.select_next_match(&SelectNextMatch, cx);
|
search_bar.select_next_match(&SelectNextMatch, cx);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.update(cx, |editor, cx| editor
|
editor.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
.selections
|
|
||||||
.selected_display_ranges(cx)),
|
|
||||||
[DisplayPoint::new(0, 41)..DisplayPoint::new(0, 43)]
|
[DisplayPoint::new(0, 41)..DisplayPoint::new(0, 43)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -742,9 +740,7 @@ mod tests {
|
||||||
search_bar.update(cx, |search_bar, cx| {
|
search_bar.update(cx, |search_bar, cx| {
|
||||||
search_bar.select_next_match(&SelectNextMatch, cx);
|
search_bar.select_next_match(&SelectNextMatch, cx);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.update(cx, |editor, cx| editor
|
editor.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
.selections
|
|
||||||
.selected_display_ranges(cx)),
|
|
||||||
[DisplayPoint::new(3, 11)..DisplayPoint::new(3, 13)]
|
[DisplayPoint::new(3, 11)..DisplayPoint::new(3, 13)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -755,9 +751,7 @@ mod tests {
|
||||||
search_bar.update(cx, |search_bar, cx| {
|
search_bar.update(cx, |search_bar, cx| {
|
||||||
search_bar.select_next_match(&SelectNextMatch, cx);
|
search_bar.select_next_match(&SelectNextMatch, cx);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.update(cx, |editor, cx| editor
|
editor.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
.selections
|
|
||||||
.selected_display_ranges(cx)),
|
|
||||||
[DisplayPoint::new(3, 56)..DisplayPoint::new(3, 58)]
|
[DisplayPoint::new(3, 56)..DisplayPoint::new(3, 58)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -768,9 +762,7 @@ mod tests {
|
||||||
search_bar.update(cx, |search_bar, cx| {
|
search_bar.update(cx, |search_bar, cx| {
|
||||||
search_bar.select_next_match(&SelectNextMatch, cx);
|
search_bar.select_next_match(&SelectNextMatch, cx);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.update(cx, |editor, cx| editor
|
editor.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
.selections
|
|
||||||
.selected_display_ranges(cx)),
|
|
||||||
[DisplayPoint::new(0, 41)..DisplayPoint::new(0, 43)]
|
[DisplayPoint::new(0, 41)..DisplayPoint::new(0, 43)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -781,9 +773,7 @@ mod tests {
|
||||||
search_bar.update(cx, |search_bar, cx| {
|
search_bar.update(cx, |search_bar, cx| {
|
||||||
search_bar.select_prev_match(&SelectPrevMatch, cx);
|
search_bar.select_prev_match(&SelectPrevMatch, cx);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.update(cx, |editor, cx| editor
|
editor.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
.selections
|
|
||||||
.selected_display_ranges(cx)),
|
|
||||||
[DisplayPoint::new(3, 56)..DisplayPoint::new(3, 58)]
|
[DisplayPoint::new(3, 56)..DisplayPoint::new(3, 58)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -794,9 +784,7 @@ mod tests {
|
||||||
search_bar.update(cx, |search_bar, cx| {
|
search_bar.update(cx, |search_bar, cx| {
|
||||||
search_bar.select_prev_match(&SelectPrevMatch, cx);
|
search_bar.select_prev_match(&SelectPrevMatch, cx);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.update(cx, |editor, cx| editor
|
editor.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
.selections
|
|
||||||
.selected_display_ranges(cx)),
|
|
||||||
[DisplayPoint::new(3, 11)..DisplayPoint::new(3, 13)]
|
[DisplayPoint::new(3, 11)..DisplayPoint::new(3, 13)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -807,9 +795,7 @@ mod tests {
|
||||||
search_bar.update(cx, |search_bar, cx| {
|
search_bar.update(cx, |search_bar, cx| {
|
||||||
search_bar.select_prev_match(&SelectPrevMatch, cx);
|
search_bar.select_prev_match(&SelectPrevMatch, cx);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.update(cx, |editor, cx| editor
|
editor.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
.selections
|
|
||||||
.selected_display_ranges(cx)),
|
|
||||||
[DisplayPoint::new(0, 41)..DisplayPoint::new(0, 43)]
|
[DisplayPoint::new(0, 41)..DisplayPoint::new(0, 43)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -828,9 +814,7 @@ mod tests {
|
||||||
assert_eq!(search_bar.active_match_index, Some(1));
|
assert_eq!(search_bar.active_match_index, Some(1));
|
||||||
search_bar.select_prev_match(&SelectPrevMatch, cx);
|
search_bar.select_prev_match(&SelectPrevMatch, cx);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.update(cx, |editor, cx| editor
|
editor.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
.selections
|
|
||||||
.selected_display_ranges(cx)),
|
|
||||||
[DisplayPoint::new(0, 41)..DisplayPoint::new(0, 43)]
|
[DisplayPoint::new(0, 41)..DisplayPoint::new(0, 43)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -849,9 +833,7 @@ mod tests {
|
||||||
assert_eq!(search_bar.active_match_index, Some(1));
|
assert_eq!(search_bar.active_match_index, Some(1));
|
||||||
search_bar.select_next_match(&SelectNextMatch, cx);
|
search_bar.select_next_match(&SelectNextMatch, cx);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.update(cx, |editor, cx| editor
|
editor.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
.selections
|
|
||||||
.selected_display_ranges(cx)),
|
|
||||||
[DisplayPoint::new(3, 11)..DisplayPoint::new(3, 13)]
|
[DisplayPoint::new(3, 11)..DisplayPoint::new(3, 13)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -870,9 +852,7 @@ mod tests {
|
||||||
assert_eq!(search_bar.active_match_index, Some(2));
|
assert_eq!(search_bar.active_match_index, Some(2));
|
||||||
search_bar.select_prev_match(&SelectPrevMatch, cx);
|
search_bar.select_prev_match(&SelectPrevMatch, cx);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.update(cx, |editor, cx| editor
|
editor.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
.selections
|
|
||||||
.selected_display_ranges(cx)),
|
|
||||||
[DisplayPoint::new(3, 56)..DisplayPoint::new(3, 58)]
|
[DisplayPoint::new(3, 56)..DisplayPoint::new(3, 58)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -891,9 +871,7 @@ mod tests {
|
||||||
assert_eq!(search_bar.active_match_index, Some(2));
|
assert_eq!(search_bar.active_match_index, Some(2));
|
||||||
search_bar.select_next_match(&SelectNextMatch, cx);
|
search_bar.select_next_match(&SelectNextMatch, cx);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.update(cx, |editor, cx| editor
|
editor.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
.selections
|
|
||||||
.selected_display_ranges(cx)),
|
|
||||||
[DisplayPoint::new(0, 41)..DisplayPoint::new(0, 43)]
|
[DisplayPoint::new(0, 41)..DisplayPoint::new(0, 43)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
@ -912,9 +890,7 @@ mod tests {
|
||||||
assert_eq!(search_bar.active_match_index, Some(0));
|
assert_eq!(search_bar.active_match_index, Some(0));
|
||||||
search_bar.select_prev_match(&SelectPrevMatch, cx);
|
search_bar.select_prev_match(&SelectPrevMatch, cx);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
editor.update(cx, |editor, cx| editor
|
editor.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
.selections
|
|
||||||
.selected_display_ranges(cx)),
|
|
||||||
[DisplayPoint::new(3, 56)..DisplayPoint::new(3, 58)]
|
[DisplayPoint::new(3, 56)..DisplayPoint::new(3, 58)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
|
@ -891,7 +891,7 @@ mod tests {
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
search_view
|
search_view
|
||||||
.results_editor
|
.results_editor
|
||||||
.update(cx, |editor, cx| editor.selections.selected_display_ranges(cx)),
|
.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
[DisplayPoint::new(2, 32)..DisplayPoint::new(2, 35)]
|
[DisplayPoint::new(2, 32)..DisplayPoint::new(2, 35)]
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -901,9 +901,9 @@ mod tests {
|
||||||
search_view.update(cx, |search_view, cx| {
|
search_view.update(cx, |search_view, cx| {
|
||||||
assert_eq!(search_view.active_match_index, Some(1));
|
assert_eq!(search_view.active_match_index, Some(1));
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
search_view.results_editor.update(cx, |editor, cx| editor
|
search_view
|
||||||
.selections
|
.results_editor
|
||||||
.selected_display_ranges(cx)),
|
.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
[DisplayPoint::new(2, 37)..DisplayPoint::new(2, 40)]
|
[DisplayPoint::new(2, 37)..DisplayPoint::new(2, 40)]
|
||||||
);
|
);
|
||||||
search_view.select_match(Direction::Next, cx);
|
search_view.select_match(Direction::Next, cx);
|
||||||
|
@ -912,9 +912,9 @@ mod tests {
|
||||||
search_view.update(cx, |search_view, cx| {
|
search_view.update(cx, |search_view, cx| {
|
||||||
assert_eq!(search_view.active_match_index, Some(2));
|
assert_eq!(search_view.active_match_index, Some(2));
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
search_view.results_editor.update(cx, |editor, cx| editor
|
search_view
|
||||||
.selections
|
.results_editor
|
||||||
.selected_display_ranges(cx)),
|
.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
[DisplayPoint::new(5, 6)..DisplayPoint::new(5, 9)]
|
[DisplayPoint::new(5, 6)..DisplayPoint::new(5, 9)]
|
||||||
);
|
);
|
||||||
search_view.select_match(Direction::Next, cx);
|
search_view.select_match(Direction::Next, cx);
|
||||||
|
@ -923,9 +923,9 @@ mod tests {
|
||||||
search_view.update(cx, |search_view, cx| {
|
search_view.update(cx, |search_view, cx| {
|
||||||
assert_eq!(search_view.active_match_index, Some(0));
|
assert_eq!(search_view.active_match_index, Some(0));
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
search_view.results_editor.update(cx, |editor, cx| editor
|
search_view
|
||||||
.selections
|
.results_editor
|
||||||
.selected_display_ranges(cx)),
|
.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
[DisplayPoint::new(2, 32)..DisplayPoint::new(2, 35)]
|
[DisplayPoint::new(2, 32)..DisplayPoint::new(2, 35)]
|
||||||
);
|
);
|
||||||
search_view.select_match(Direction::Prev, cx);
|
search_view.select_match(Direction::Prev, cx);
|
||||||
|
@ -934,9 +934,9 @@ mod tests {
|
||||||
search_view.update(cx, |search_view, cx| {
|
search_view.update(cx, |search_view, cx| {
|
||||||
assert_eq!(search_view.active_match_index, Some(2));
|
assert_eq!(search_view.active_match_index, Some(2));
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
search_view.results_editor.update(cx, |editor, cx| editor
|
search_view
|
||||||
.selections
|
.results_editor
|
||||||
.selected_display_ranges(cx)),
|
.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
[DisplayPoint::new(5, 6)..DisplayPoint::new(5, 9)]
|
[DisplayPoint::new(5, 6)..DisplayPoint::new(5, 9)]
|
||||||
);
|
);
|
||||||
search_view.select_match(Direction::Prev, cx);
|
search_view.select_match(Direction::Prev, cx);
|
||||||
|
@ -945,9 +945,9 @@ mod tests {
|
||||||
search_view.update(cx, |search_view, cx| {
|
search_view.update(cx, |search_view, cx| {
|
||||||
assert_eq!(search_view.active_match_index, Some(1));
|
assert_eq!(search_view.active_match_index, Some(1));
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
search_view.results_editor.update(cx, |editor, cx| editor
|
search_view
|
||||||
.selections
|
.results_editor
|
||||||
.selected_display_ranges(cx)),
|
.update(cx, |editor, cx| editor.selections.display_ranges(cx)),
|
||||||
[DisplayPoint::new(2, 37)..DisplayPoint::new(2, 40)]
|
[DisplayPoint::new(2, 37)..DisplayPoint::new(2, 40)]
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
|
@ -1180,7 +1180,7 @@ mod tests {
|
||||||
let editor = item.downcast::<Editor>().unwrap();
|
let editor = item.downcast::<Editor>().unwrap();
|
||||||
let (selections, scroll_position) = editor.update(cx, |editor, cx| {
|
let (selections, scroll_position) = editor.update(cx, |editor, cx| {
|
||||||
(
|
(
|
||||||
editor.selections.selected_display_ranges(cx),
|
editor.selections.display_ranges(cx),
|
||||||
editor.scroll_position(cx),
|
editor.scroll_position(cx),
|
||||||
)
|
)
|
||||||
});
|
});
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue