Add note about how clients could embed other applications.
authorKristian Høgsberg <krh@redhat.com>
Thu, 4 Dec 2008 23:40:14 +0000 (18:40 -0500)
committerKristian Høgsberg <krh@redhat.com>
Thu, 4 Dec 2008 23:40:14 +0000 (18:40 -0500)
NOTES

diff --git a/NOTES b/NOTES
index 8c49bac..48836fe 100644 (file)
--- a/NOTES
+++ b/NOTES
@@ -140,4 +140,24 @@ the type of event.  Events are generated both in repsonse to a request
 spontanously when the server state changes.
 
 the get_interface method is called on an object to get an object
-handle that implements the specified interface.
\ No newline at end of file
+handle that implements the specified interface.
+
+
+EMBEDDING OTHER WINDOWS
+
+X11 lets clients embed windows from other clients other copy pixmap
+contents rendered by another client into their window.  This is often
+used for applets in a panel, browser plugins and similar.  Wayland
+doesn't directly allow this, but clients can communicate GEM buffer
+names out-of-band, for example, using d-bus or as command line
+arguments when the panel launches the applet.  Another option is to
+use a nested wayland instance.  For this, the wayland server will have
+to be a library that the host application links to.  The host
+application will then pass the wayland server socket name to the
+embedded application, and will need to implement the wayland
+compositor interface.  The host application composites the client
+surfaces as part of it's window, that is, in the web page or in the
+panel.  The benefit of nesting the wayland server is that it provides
+the requests the embedded client needs to inform the host about buffer
+updates and a mechanism for forwarding input events from the host
+application.