[java-atk-wrapper] Add D-Bus support
- From: Ke Wang <kewang src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [java-atk-wrapper] Add D-Bus support
- Date: Fri, 27 Nov 2009 07:54:31 +0000 (UTC)
commit d4961d7b65f2d929bae2407a24e1942202ad2882
Author: Ke Wang <ke wang sun com>
Date: Fri Nov 27 15:43:30 2009 +0800
Add D-Bus support
configure.in | 7 +++++--
jni/src/AtkWrapper.c | 16 +++++++++++++---
jni/src/Makefile.am | 3 ++-
3 files changed, 20 insertions(+), 6 deletions(-)
---
diff --git a/configure.in b/configure.in
index a2a4660..666c1e5 100644
--- a/configure.in
+++ b/configure.in
@@ -31,10 +31,13 @@ PKG_CHECK_MODULES(JAW, [
gthread-2.0
gmodule-2.0
gdk-2.0
+ gconf-2.0
])
-ATK_BRIDGE_LIB_NAME="`pkg-config --variable=libdir gtk+-2.0`/gtk-2.0/modules/libatk-bridge.so"
-AC_SUBST(ATK_BRIDGE_LIB_NAME)
+ATK_BRIDGE_LIB_NAME_DBUS="`pkg-config --variable=libdir gtk+-2.0`/gtk-2.0/modules/libatk-bridge.so"
+ATK_BRIDGE_LIB_NAME_CORBA="`pkg-config --variable=libdir gtk+-2.0`/gtk-2.0/modules/at-spi-corba/modules/libatk-bridge.so"
+AC_SUBST(ATK_BRIDGE_LIB_NAME_DBUS)
+AC_SUBST(ATK_BRIDGE_LIB_NAME_CORBA)
# java wrapper
diff --git a/jni/src/AtkWrapper.c b/jni/src/AtkWrapper.c
index 4314c68..891a857 100644
--- a/jni/src/AtkWrapper.c
+++ b/jni/src/AtkWrapper.c
@@ -23,6 +23,7 @@
#include <gmodule.h>
#include <gdk/gdk.h>
#include <X11/Xlib.h>
+#include <gconf/gconf-client.h>
#include "jawutil.h"
#include "jawimpl.h"
#include "jawtoplevel.h"
@@ -98,12 +99,21 @@ jaw_load_atk_bridge (gpointer p)
return NULL;
}
+ gboolean use_corba = gconf_client_get_bool(
+ gconf_client_get_default(),
+ "/desktop/gnome/interface/at-spi-corba",
+ NULL);
+
GModule *module;
- module = g_module_open(ATK_BRIDGE_LIB_NAME, G_MODULE_BIND_LAZY);
+ if (use_corba)
+ module = g_module_open(ATK_BRIDGE_LIB_NAME_CORBA, G_MODULE_BIND_LAZY);
+ else
+ module = g_module_open(ATK_BRIDGE_LIB_NAME_DBUS, G_MODULE_BIND_LAZY);
+
if (!module) {
return NULL;
}
-
+
GVoidFunc dl_init;
if (!g_module_symbol( module, "gnome_accessibility_module_init", (gpointer*)&dl_init)) {
g_module_close(module);
@@ -132,7 +142,7 @@ JNIEXPORT void JNICALL Java_org_GNOME_Accessibility_AtkWrapper_initNativeLibrary
// Java app with GTK Look And Feel will load gail
// Set NO_GAIL to "1" to prevent gail from executing
g_setenv("NO_GAIL", "1", TRUE);
-
+
g_type_class_unref(g_type_class_ref(JAW_TYPE_UTIL));
g_type_class_unref(g_type_class_ref(JAW_TYPE_MISC));
// Force to invoke base initialization function of each ATK interfaces
diff --git a/jni/src/Makefile.am b/jni/src/Makefile.am
index 7456ee5..17c2a9c 100644
--- a/jni/src/Makefile.am
+++ b/jni/src/Makefile.am
@@ -24,7 +24,8 @@ noinst_HEADERS = jawimpl.h \
libatk_wrapper_la_CPPFLAGS = $(JNI_INCLUDES)\
$(JAW_CFLAGS)\
- -DATK_BRIDGE_LIB_NAME=\"$(ATK_BRIDGE_LIB_NAME)\"
+ -DATK_BRIDGE_LIB_NAME_DBUS=\"$(ATK_BRIDGE_LIB_NAME_DBUS)\"\
+ -DATK_BRIDGE_LIB_NAME_CORBA=\"$(ATK_BRIDGE_LIB_NAME_CORBA)\"
libatk_wrapper_la_LDFLAGS = -version-info $(LIB_ATK_WRAPPER_LT_VERSION)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]