some terminals require set-cursor-visible to be called before redraw,
some require it to be called after redraw