[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: lynx-dev Nitsy "reset" display buglet
From: |
Klaus Weide |
Subject: |
Re: lynx-dev Nitsy "reset" display buglet |
Date: |
Fri, 5 Feb 1999 06:20:33 -0600 (CST) |
On Fri, 5 Feb 1999, Kim DeVaughn wrote:
> When you activate a forms "reset button", the statusline gets
> completely blanked, until you move off the button.
>
> A dump of the actual output to the screen, shows that the following
> strings actually get written (sequentially) to the screen:
>
> Resetting form...
> Commands: Use arrow keys to move, '?' for help, 'q' to quit, '<-' to go back.
> __________________________
> Reset to initial text
> Reset to initial text
>
> but when change_form_link() returns to mainloop() after it has set
> *refresh_screen = TRUE, the screen refreshes (which is required to
> reflect the now "reset" textarea to the screen), and is where the
> statusline gets blanked.
>
> Since the refresher can't know why it was invoked, it can't put up a
> statusline msg, and since the cursor hasn't moved off the reset button,
> there's been no keyboard action that would generate a new statusline
> msg.
>
> Anyone have a solution to this rather pathological case?
Only some untested ideas:
1) Find an earlier Lynx version where this didn't happen (if such exists),
and see what has changed...
2) Try this (copied from much earlier in the file)
/*
* Make sure curdoc.line will not be equal
* to Newline, so we get a redraw.
*/
curdoc.line = -1;
after change_form_link() [hmm, which of the two?] has set
*refresh_screen = TRUE, to get the right kind of refresh
which doesn't imply a clear() or erase().
3) Try to figure out what's wrong with the logic of the variable
show_help in mainloop(). I guess it should just be reset in
the block starting with
/*
* Refresh the screen if necessary.
*/
if (refresh_screen) {
similar to what is done in the block preceding that one.
Klaus
Re: lynx-dev Nitsy "reset" display buglet, Leonid Pauzner, 1999/02/05