Leave the hardware cursor at the position of the selected line in choose

modes and current editing position and at the command prompt. It is
invisible but this is helpful for people using screen readers. GitHub
issue 2970.
This commit is contained in:
nicm
2021-11-15 10:58:13 +00:00
parent cb8a0d83fb
commit b55f0ac6b9
4 changed files with 21 additions and 6 deletions

View File

@ -736,10 +736,8 @@ mode_tree_draw(struct mode_tree_data *mtd)
}
sy = screen_size_y(s);
if (!mtd->preview || sy <= 4 || h <= 4 || sy - h <= 4 || w <= 4) {
screen_write_stop(&ctx);
return;
}
if (!mtd->preview || sy <= 4 || h <= 4 || sy - h <= 4 || w <= 4)
goto done;
line = &mtd->line_list[mtd->current];
mti = line->item;
@ -783,6 +781,8 @@ mode_tree_draw(struct mode_tree_data *mtd)
mtd->drawcb(mtd->modedata, mti->itemdata, &ctx, box_x, box_y);
}
done:
screen_write_cursormove(&ctx, 0, mtd->current - mtd->offset, 0);
screen_write_stop(&ctx);
}