Jan Vroonhof <vroonhof(a)math.ethz.ch> writes:
wmperry(a)aventail.com (William M. Perry) writes:
> Here is a reworked version of the GPM support. This is equivalent
> functionality-wise to the current implementation, but does not sink its
> teeth into all the console and event loops like the old one.
Cool... The patch is mangled however. It has broken lines and there is
the tab vs space problem.
Tabs are your friend. :)
> -----------------
> `gpm-mode' is a built-in function
> (gpm-mode &optional ARG)
How do you suppose this gets enabled? I would love for this to be still
the default.
We could throw a call to it in syms_of_gpmevent() if you want.
> - if ((mousefd >= 0) &&
!filedesc_to_what_closure[mousefd]) {
> - select_filedesc (mousefd, console);
> }
> - }
> -#endif
> -}
You really don't want to delete that brace.
But there's an extra one from up above - everything balances out, it just
looks a little odd. :)
However if you want to progress from mere coolness to utter
enlightenment then you should
0. make sure the case when we have frames on more than one VC works
1. make sure the xterm mouse stuff works.
There is no way to get this working using GPM, because it requires you to
use a GPM function to read characters from the terminal, and it deals with
cooking them into GPM events or really passing them back to you.
2. [Bonus points] include the xterm only file that libgpm supports
in
the source so that if you are not on Linux you still get xterm
mouse support.
Now that Hrvoje made make-event actually useful, we could port xt-mouse.el
from Emacs. It works off of function-key-map, and in trivial testing right
now, it mostly works. Just a few functions missing in XEmacs (window-at,
coordinates-in-window-p), but that should be easy to work around.
3. Make XEmacs support the GPM selection protocol.
Where is this documented? I couldn't find anything in the GPM headers or
documentation.
-Bill P.