Change summary
crates/editor/src/editor.rs | 31 ++++++++++++++-----------------
1 file changed, 14 insertions(+), 17 deletions(-)
Detailed changes
@@ -5672,12 +5672,11 @@ impl Editor {
let end_point = range_around_target.end.to_point(&snapshot);
let target_point = target.text_anchor.to_point(&snapshot);
- let cursor_relative_position =
- line_layouts.get(start_point.row as usize).map(|line| {
- let start_column_x = line.x_for_index(start_point.column as usize);
- let target_column_x = line.x_for_index(target_point.column as usize);
- target_column_x - start_column_x
- });
+ let start_column_x =
+ line_layouts[start_point.row as usize].x_for_index(start_point.column as usize);
+ let target_column_x = line_layouts[target_point.row as usize]
+ .x_for_index(target_point.column as usize);
+ let cursor_relative_position = target_column_x - start_column_x;
let fade_before = start_point.column > 0;
let fade_after = end_point.column < snapshot.line_len(end_point.row);
@@ -5720,17 +5719,15 @@ impl Editor {
),
)
})
- .when_some(cursor_relative_position, |parent, position| {
- parent.child(
- div()
- .w(px(2.))
- .h_full()
- .bg(cursor_color)
- .absolute()
- .top_0()
- .left(position),
- )
- }),
+ .child(
+ div()
+ .w(px(2.))
+ .h_full()
+ .bg(cursor_color)
+ .absolute()
+ .top_0()
+ .left(cursor_relative_position),
+ ),
)
}),
)