aboutsummaryrefslogtreecommitdiff
path: root/helix-term/src/ui
diff options
context:
space:
mode:
authorNathan Vegdahl2021-07-19 15:39:48 +0000
committerNathan Vegdahl2021-07-19 15:39:48 +0000
commit079d4ed86df30c78ca00fd4b86f906c3ea9df7db (patch)
treea2a9b448ceb109cdfe66fe8ec5a7714f06415a19 /helix-term/src/ui
parent1a9ae72fcb3e566d7a77ee40e009a5070899558e (diff)
Properly fix `last_line` view calculation.
Turned out to be simpler than I thought. Didn't even need to change the other use-sites.
Diffstat (limited to 'helix-term/src/ui')
-rw-r--r--helix-term/src/ui/editor.rs11
1 files changed, 1 insertions, 10 deletions
diff --git a/helix-term/src/ui/editor.rs b/helix-term/src/ui/editor.rs
index 769771af..6a588e12 100644
--- a/helix-term/src/ui/editor.rs
+++ b/helix-term/src/ui/editor.rs
@@ -330,16 +330,7 @@ impl EditorView {
// document or not. We only draw it if it's not an empty line.
let draw_last = text.line_to_byte(last_line) < text.len_bytes();
- // This is a little confuding: We can't use the `last_line` variable for
- // our iteration below, because there's a mismatch between the
- // inclusive/exclusiveness of the screen-based last line and the
- // text-based last line. So we compute what we actually need specially here.
- let last_line_number = std::cmp::min(
- view.first_line + view.area.height.saturating_sub(1) as usize,
- doc.text().len_lines(),
- );
-
- for (i, line) in (view.first_line..last_line_number).enumerate() {
+ for (i, line) in (view.first_line..(last_line + 1)).enumerate() {
use helix_core::diagnostic::Severity;
if let Some(diagnostic) = doc.diagnostics().iter().find(|d| d.line == line) {
surface.set_stringn(