A simple CPU rendered GUI IDE experience.
Diffstat (limited to 'src/text.rs')
-rw-r--r--src/text.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/text.rs b/src/text.rs
index 1a66d11..7b18be5 100644
--- a/src/text.rs
+++ b/src/text.rs
@@ -243,6 +243,7 @@ impl TextArea {
self.rope.len_lines()
}
#[implicit_fn]
+ #[lower::apply(saturating)]
pub fn index_at(&self, (x, y): (usize, usize)) -> usize {
let l_i = self.vo + y;
self.rope
@@ -253,7 +254,7 @@ impl TextArea {
.get_line(l_i)
.map(_.len_chars() - 1)
.unwrap_or_default())
- .min(x.saturating_sub(self.line_number_offset() + 1))
+ .min(x - (self.line_number_offset() + 1))
})
.unwrap_or(usize::MAX)
.min(self.rope.len_chars())