|
From: | Reuben Thomas |
Subject: | Re: [zile-devel] Some changes |
Date: | Wed, 2 Feb 2005 03:12:50 +0100 (CET) |
On Sun, 30 Jan 2005, David A. Capello wrote:
En Sun, 30 Jan 2005 15:34:07 +0100 (CET), Reuben Thomas <address@hidden> escribió:for (;;) { ...This messes up the display because if the minibuf has a message in it, it is deleted before the display is updated. This means that errors &c. cannot be seen in the minibuffer, because they are immediately deleted. What's the point of this change?Because minibuf_clear() moves the cursor to the bottom of the screen, and the cursor should stay in the current window point. I don't known why, but with the original code, termcap works just fine, but allegro leaves the cursor in the minibuf (so you never see the cursor in the current window).
I've just had a quick look at the code and it's not trivial to fix, because the current physical position of the cursor on screen is not always known, and is computed in term_refresh. I think the simplest thing is to make the variable cur_topline in term_refresh a static global, and then add a function term_show_cursor which consists of just the last line of term_refresh, i.e. the call to term_move with the right values. term_show_cursor can then be called in main to reposition the cursor after minibuf_clear.
How does that sound?How are you getting on applying your changes to the 2.0 branch? I'd like to release 2.0beta12 as soon as possible. I have a security fix and a build fix for EPOC, and it would be nice to have your allegro fixes too.
-- http://rrt.sc3d.org/ | wisdom, n. knowing when to be foolish
[Prev in Thread] | Current Thread | [Next in Thread] |