[C] Fix unwanted point moveage in VM

Jeff Miller jmiller at cablespeed.com
Mon Sep 24 22:07:59 EDT 2007


Michael Sperber writes:

 > OK, I've found this one.  The reason is that VM uses
 > `delete-other-windows' in the process of recreating the correct window
 > configuration. ``delete-other-windows' tries to minimize redisplay and
 > thus keeps the top of the summary windows at the same place as before.
 > As the point is now offscreen, redisplay adjusts the point.  However, we
 > want to keep the current point.  I already encountered this problem when
 > rewriting the window configurations, and there's a function there that
 > already does the right thing.
 > 
 > (This window-point stuff and the interaction with redisplay is just
 > hideous.  It took me a few hours to track this down.)

I have made it back home and tried out your patch.   It does seem to
fix the weird point movement problem. 

I'm seeing a different problem now though.  Since no one else has
reported it, maybe it's just something weird with my config.

When running vm ( 8.0.1 in this case), after applying your tapestry
patch, if I press "n" to go to the next message, the "->" pointer
moves to the next message but the cursor does not.   Any further
attempts to press "n", have no effect.   It seems that vm uses
whatever message the cursor is on as the current msg, not what "->" is
pointing to.   The same effect happens if I press "p" for previous
message, except in reverse.

Under 21.4, the cursor and "->" pointer track each other in unison.
Under 21.5, they end up on different lines.  I tried tracing this all
under edebug and I think that pointer updates happen in
vm-set-summary-pointer.  I haven't been able to figure out what's
going wrong though.  



-- 
Jeff Miller
jmiller at cablespeed.com



More information about the XEmacs-Beta mailing list