XEmbed, adding second client to same embedder

Andreas Aardal Hanssen xdg at andreas.hanssen.name
Fri Aug 22 15:45:38 EEST 2003

Hi, list. :-)

When an XEmbed embedder detects a client (through ReparentNotify or
CreateNotify), the message XEMBED_EMBEDDED_NOTIFY is sent from the
embedder to the client, as defined in the protocol.

There seems to be a missing message (or rationale) in the protocol for the
case when the embedder does _not_ wish to embed the client. There can be
several reasons for this case; the most obvious being case where the
embedder already has embedded a client.

There may also be other cases where the embedder does not wish to accept a
client, but I can only construct a few unlikely examples myself (the
embedder only accepts clients of a certain kind, with certain properties).

My implementation immediately reparents the second client window to root,
and then continues operation as if nothing happened. The client would then
handle this as if the embedder had shut down, and it might (depending on
the specific client) issue a warning, or otherwise react accordingly,
although the assumed reason for the shutdown is not right.

I'm thinking of a message such as XEMBED_CLIENT_REJECTED, where data1 has
flags that give more information about the reason for the reject. This is
thinking out aloud, but I think it's good if this case is mentioned in the
protocol specification.

Regards, Andreas

Andreas Aardal Hanssen

More information about the xdg mailing list