@@ -471,14 +471,20 @@ impl EditorView {
471471 text.reserve(*width); // ensure there's enough space for the gutter
472472 for (i, line) in (view.offset.row..(last_line + 1)).enumerate() {
473473 let selected = cursors.contains(&line);
474+ let x = viewport.x + offset;
475+ let y = viewport.y + i as u16;
474476
475477 if let Some(style) = gutter(line, selected, &mut text) {
476− surface.set_stringn(
477− viewport.x + offset,
478− viewport.y + i as u16,
479− &text,
480− *width,
481− gutter_style.patch(style),
478+ surface.set_stringn(x, y, &text, *width, gutter_style.patch(style));
479+ } else {
480+ surface.set_style(
481+ Rect {
482+ x,
483+ y,
484+ width: *width as u16,
485+ height: 1,
486+ },
487+ gutter_style,
482488 );
483489 }
484490 text.clear();