This is take 3 of my new output configuration API. Two major changes happened:
- weston_output_init_pending() was split into weston_compositor_add_pending_output(), so weston_output_init_pending() wouldn't announce a new pending output before some configuration is done in certain backends. - First task enabled me to drop wayland_output_api entirely for configuring outputs when running wayland backend on fullscreen-shell or when started with --sprawl. The backend received major rework and was simplified a lot. The rest is all minor, mostly issues raised by Pekka during the review. That includes one additional patch, which was split from previous RDP backend port, to implement something that wasn't implemented before separately, rather than through rdp backend porting patch. Another additional patch to this series was just to remove requirement of setting mm_width/mm_height, as that was only required to keep weston_output_init() working while the backends were ported. After it was gone, those aren't required to be set anymore. For information on purpose of this series and information about previous changes, see: https://lists.freedesktop.org/archives/wayland-devel/2016-August/030591.html All patches are available at github, rebased against today's git master: https://github.com/krezovic/weston/commits/gsoc-v11 Armin Krezović (14): libweston: Add more functionality for handling weston_output objects libweston: Add initial output API for windowed outputs configuration compositor: Implement output configuration using windowed_output_api weston: Port DRM backend to new output handling API weston: Port fbdev backend to new output handling API weston: Port headless backend to new output handling API weston: Port RDP backend to new output handling API weston: Port Wayland backend to new output handling API weston: Port X11 backend to new output handling API libweston: Merge weston_output_init() into weston_output_enable() weston: Rename weston_output_init_pending() to weston_output_init() libweston: Remove weston_backend_output_config structure libweston: Drop requirement of setting mm_width/mm_height in backends compositor-rdp: Properly destroy the renderer and pixman image Makefile.am | 1 + compositor/main.c | 781 ++++++++++++++++++++++++---------------- libweston/compositor-drm.c | 434 ++++++++++++---------- libweston/compositor-drm.h | 50 ++- libweston/compositor-fbdev.c | 87 +++-- libweston/compositor-fbdev.h | 4 +- libweston/compositor-headless.c | 152 +++++--- libweston/compositor-headless.h | 8 +- libweston/compositor-rdp.c | 139 ++++--- libweston/compositor-rdp.h | 26 +- libweston/compositor-wayland.c | 324 ++++++++++------- libweston/compositor-wayland.h | 8 - libweston/compositor-x11.c | 312 +++++++++------- libweston/compositor-x11.h | 13 +- libweston/compositor.c | 401 +++++++++++++++++---- libweston/compositor.h | 51 ++- libweston/windowed-output-api.h | 92 +++++ 17 files changed, 1851 insertions(+), 1032 deletions(-) create mode 100644 libweston/windowed-output-api.h -- 2.9.3 _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel