Hello.

I was trying to understand what is the minimal code needed to get a square painter on the screen. However, although I can make the client talk to the Weston compositor, enumerate the global objects, etc, I can't still see my surface drawn in the compositor scene.

The steps that my program makes so far are as follows:
 - call wl_display_connect(NULL)
 - call wl_display_get_registry(display)
- Install listeners for the registry that wl_registry_bind() many of the advertised objects. However, I'm not listening to the events of the objects advertised by the registry. Is it needed?
 - call wl_display_dispatch()  and wl_display_roundtrip()
 - call wl_compositor_create_surface()
 - mkostemp() a file and ftruncate() it to some 10MB or so
 - mmap() the entire file created
 - call wl_shm_create_pool()
 - call wl_shm_pool_create_buffer()
 - call wl_display_dispatch()
- Fill the buffer with some content. I filled it entirely with pattern 0x40404040.
 - call wl_surface_attach(surface, buffer, 0, 0)
 - Then the program just sits in an infinite loop...

Am I missing anything?

Sorry for my poor English (assuming that you think it's poor)....
João Jerónimo

_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to