Two improvements to reflow from Balazs Kezes:

- Don't extend the line to full width on insert/delete character which
  means leaves extra spaces when reflowing.

- Only mark a line wrapped when the cursor actually goes off the end,
  not on newlines which can be used for positioning.
This commit is contained in:
nicm 2014-11-08 12:58:31 +00:00
parent c6129f9c09
commit 8f1302282b
2 changed files with 2 additions and 4 deletions

View File

@ -184,7 +184,7 @@ grid_view_insert_cells(struct grid *gd, u_int px, u_int py, u_int nx)
px = grid_view_x(gd, px);
py = grid_view_y(gd, py);
sx = grid_view_x(gd, gd->sx);
sx = grid_view_x(gd, gd->linedata[py].cellsize);
if (px == sx - 1)
grid_clear(gd, px, py, 1, 1);
@ -201,7 +201,7 @@ grid_view_delete_cells(struct grid *gd, u_int px, u_int py, u_int nx)
px = grid_view_x(gd, px);
py = grid_view_y(gd, py);
sx = grid_view_x(gd, gd->sx);
sx = grid_view_x(gd, gd->linedata[py].cellsize);
grid_move_cells(gd, px, px + nx, py, sx - px - nx);
grid_clear(gd, sx - nx, py, px + nx - (sx - nx), 1);

View File

@ -795,8 +795,6 @@ screen_write_linefeed(struct screen_write_ctx *ctx, int wrapped)
gl = &s->grid->linedata[s->grid->hsize + s->cy];
if (wrapped)
gl->flags |= GRID_LINE_WRAPPED;
else
gl->flags &= ~GRID_LINE_WRAPPED;
if (s->cy == s->rlower)
grid_view_scroll_region_up(s->grid, s->rupper, s->rlower);