`switch-to-other-buffer', or perhaps something lower down (?) will,
when you have frames open on multiple displays, get confused as to
which cursor position to use when you flip back to the other buffer.
I've got an XEmacs (recent CVS, X build, since GTK doesn't work with
multiple X displays) that's running on the machine I develop on at
work. It's got frames on my home workstation's X server, my
workstation at work's, and on a third machine (my progeny sidekick)
at work.
On sidekick, I've got an Apache error log tail -f going, and on my
workstation I edit code. When I left home this morning, one file I'm
working in was left showing with the cursor somewhere within it... I
cannot recall where. (when I got home the cursor was at upper left).
On my workstation, I'd switch buffers using `M-C-l'
(switch-to-other-buffer) between the code and the shell I was
restarting the Apache from. If I left the shell showing, while I
watched the error log tail over to my right on sidekick's display,
then flipped back to the code buffer, the cursor would lose position
and be shown at the upper left.
I think it was getting confused about which frame/window it needed to
display... but when I flipped back right away, not sitting around
waiting for the server restart messages to print to the shell, but
right back to the code in front of me on the workstation, the cursor
would stay put.
I am not sure where to begin looking for the bug or what the symptoms
indicate. Will someone please essay? TIA. I'd fix it if I could.