[PATCH weston 00/11] libweston
Giulio Camuffo
giuliocamuffo at gmail.com
Mon Jun 22 13:02:47 PDT 2015
Hi,
This is the new revision of libweston, with quite many changes
after Pekka's comments:
- no more weston_compositor_init/fini, but weston_compositor_create/destroy.
in a far future we may manage to make weston_compositor an opaque struct.
- all the backends are now loaded through a common weston_compositor_init_backend.
the struct weston_backend_config is used to pass backend specific data,
by creating a backend specific subclass of it, as defined in the backends's
new header files.
struct weston_backend gained a create_output vfunc. Only some backends set
it though, namely the nested ones. The other backends have a callback to
get the output configuration when needed.
In a far future it would be nice if we managed to unify these with a common
API, not sure if feasible though.
- no more xwayland library. Left as a follow up patch, will probably go the same
route as the backends.
- fixed quite a few autotools fuckups. Can't say there are no more though. ;)
The biggest change for Weston-the-compositor here is that we kinda lose the
ability to load random backends. Since the backends cannot have anymore weston
specific configurations in them we need to fetch that configurations outside,
currently in weston.c. While less nice than before I don't think it's that big
of an issue.
Giulio Camuffo (11):
compositor: introduce struct weston_backend
compositor: add API to manage compositor instances
compositor: move the main() to a new weston.c file
make the backends compositor-neutral
compositor: remove the weston_config field from weston_compositor
build a libweston.so used by the weston binary
libweston: allow compositors to define the logging behavior
libweston: move the child process launching and monitoring to weston
libweston: handle the screenshoot and record bindings in weston.c
text: build the text-backend in weston
configure: add an option to allow building only the libraries
Makefile.am | 95 +-
configure.ac | 11 +
desktop-shell/shell.c | 11 +-
desktop-shell/shell.h | 1 +
fullscreen-shell/fullscreen-shell.c | 3 +-
ivi-shell/hmi-controller.c | 18 +-
ivi-shell/ivi-layout-private.h | 2 +-
ivi-shell/ivi-layout.c | 4 +-
ivi-shell/ivi-shell.c | 13 +-
src/cms-colord.c | 3 +-
src/cms-static.c | 7 +-
src/compositor-drm.c | 815 ++++++++--------
src/compositor-drm.h | 83 ++
src/compositor-fbdev.c | 231 ++---
src/compositor-fbdev.h | 64 ++
src/compositor-headless.c | 168 ++--
src/compositor-headless.h | 47 +
src/compositor-rdp.c | 202 ++--
src/compositor-rdp.h | 54 ++
src/compositor-rpi.c | 199 ++--
src/compositor-rpi.h | 57 ++
src/compositor-wayland.c | 542 ++++-------
src/compositor-wayland.h | 58 ++
src/compositor-x11.c | 671 ++++++-------
src/compositor-x11.h | 55 ++
src/compositor.c | 1029 ++------------------
src/compositor.h | 61 +-
src/input.c | 2 +-
src/libinput-device.c | 29 +-
src/libinput-device.h | 2 +
src/libinput-seat.c | 10 +
src/libinput-seat.h | 6 +
src/log.c | 69 +-
src/screenshooter.c | 173 +---
src/text-backend.c | 10 +-
src/weston.c | 1833 +++++++++++++++++++++++++++++++++++
src/weston.h | 36 +
tests/ivi_layout-internal-test.c | 2 +
tests/ivi_layout-test-plugin.c | 2 +
tests/surface-global-test.c | 3 +-
tests/surface-screenshot.c | 7 +-
tests/surface-test.c | 3 +-
tests/weston-test.c | 3 +-
xwayland/launcher.c | 6 +-
xwayland/xwayland.h | 1 +
45 files changed, 3897 insertions(+), 2804 deletions(-)
create mode 100644 src/compositor-drm.h
create mode 100644 src/compositor-fbdev.h
create mode 100644 src/compositor-headless.h
create mode 100644 src/compositor-rdp.h
create mode 100644 src/compositor-rpi.h
create mode 100644 src/compositor-wayland.h
create mode 100644 src/compositor-x11.h
create mode 100644 src/weston.c
create mode 100644 src/weston.h
--
2.4.4
More information about the wayland-devel
mailing list