diff --git a/configure.ac b/configure.ac index 8d603bc0..9646a697 100644 --- a/configure.ac +++ b/configure.ac @@ -120,6 +120,22 @@ fi AM_CONDITIONAL(ENABLE_XTEST, [test x$enable_xtest = xyes]) AC_MSG_RESULT($enable_xtest) +dnl use X to mark the fullscreen window as dock +AC_MSG_CHECKING([whether you enable X dock]) +AC_ARG_ENABLE(x-dock, + AS_HELP_STRING([--enable-x-dock=no/yes], + [Enable X dock default=yes]),, + enable_x_dock=yes) + +if test x$enable_x_dock = xyes; then + PKG_CHECK_MODULES([XDOCK], [x], , enable_x_dock=no) + if test x$enable_x_dock = xyes; then + AC_DEFINE([HAVE_XDOCK], [1], [Define if X dock is found]) + fi +fi +AM_CONDITIONAL(ENABLE_XDOCK, [test x$enable_x_dock = xyes]) +AC_MSG_RESULT($enable_x_dock) + focus_listeners="" keystroke_listeners="" diff --git a/src/Makefile.am b/src/Makefile.am index 81d29c8b..b3a77946 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -83,6 +83,11 @@ eekboard_server_CFLAGS += $(CLUTTER_GTK_CFLAGS) eekboard_server_LDADD += $(top_builddir)/eek/libeek-clutter.la $(CLUTTER_GTK_LIBS) endif +if ENABLE_XDOCK +eekboard_server_CFLAGS += $(XDOCK_CFLAGS) +eekboard_server_LDADD += $(XDOCK_LIBS) +endif + eekboard_server_headers = server-server.h server-context.h eekboard_server_SOURCES = server-server.c server-context.c server-main.c diff --git a/src/server-context.c b/src/server-context.c index e98c9381..5123ce82 100644 --- a/src/server-context.c +++ b/src/server-context.c @@ -200,6 +200,7 @@ static void on_realize_set_dock (GtkWidget *widget, gpointer user_data) { +#ifdef HAVE_XDOCK GdkWindow *window = gtk_widget_get_window (widget); Atom atoms[2] = { None, None }; gint x, y, width, height, depth; @@ -243,6 +244,7 @@ on_realize_set_dock (GtkWidget *widget, "_NET_WM_STRUT_PARTIAL", False), XA_CARDINAL, 32, PropModeReplace, (guchar *)vals, 12); +#endif /* HAVE_XDOCK */ } static void