barriers: Separate implementation from public API

Desktop / GNOME / Mutter - Jonas Ådahl [gmail.com] - 17 January 2015 19:22 UTC

This patch removes the X11 specific code from MetaBarrier and creates an abstraction layer MetaBarrierImpl. The existing X11 implementation is moved to a new GObject MetaBarrierImplX11 implementing the abstract interface MetaBarrierImpl which is instantiated by MetaBarrier when supported.

While at it, move it to backends/ and properly name the files.

https://bugzilla.gnome.org/show_bug.cgi?id=706655

5f91a62 barriers: Separate implementation from public API
src/Makefile.am | 5 +-
src/backends/meta-barrier-private.h | 81 +++++++
src/backends/meta-barrier.c | 346 ++++++++++++++++++++++++++++
src/backends/x11/meta-barrier-x11.c | 216 ++++++++++++++++++
src/backends/x11/meta-barrier-x11.h | 57 +++++
src/core/barrier.c | 422 -----------------------------------
6 files changed, 704 insertions(+), 423 deletions(-)

Upstream: git.gnome.org


  • Share