emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GtkPlug patch


From: Jan D.
Subject: Re: GtkPlug patch
Date: Tue, 3 Jan 2006 08:53:37 +0100 (CET)

>     > Does anyone know what we need to do
>     > to make the Xt versions of Emacs handle XEmbed?
> 
>     Since Emacs has its own event loop, the implementation for non-Xt (i.e. 
> pure 
>     Xlib) would be the same as for Xt.  Like the drop part of drag and drop 
> is now.
> 
> So much the better--but still, does someone know how to make the event loop
> handle these?

We have to take care of some SendEvent:s and PropertyNotify regarding
focus and keyboard/mouse input, as well as reacting slightly different
to ReparentNotify.

Basically XEMBED spcifies how an embedder shall forward events (key, mouse)
to the embedded application (Emacs in this case).  It also specifies how
the embedder tells the embedded application when it has focus or not, and
when it should move the focus to the next member in a TAB-group (like
tabbing to the next button in a toolbar).  The embedded application can
also register accelerator keys so when the embedder has focus it knows when
an accelerator key is pressed that it should go to the embedded application.

But even if it is very simple in the Gtk+ case, and only a bit more
complicated in the general case, there are other issues here.  Like for
instance, what should an embedded Emacs do when someone tries to
move or resize the window from lisp?  The code in general assumes Emacs
is not embedded, but a free standing application.  I suspect if we put this
in now, we will find several such issues.  Therefore I think this should wait
to the next release.

        Jan D.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]