GNOME Bugzilla – Bug 88047
GTK_MODULES='gail:atk-bridge'
Last modified: 2004-12-22 21:47:04 UTC
I was wondering what we should do about the need to set GTK_MODULES? It seems that this is still necessary in order to let gok access the UI of an application. I think that it is very cumbersome to require users to set this variable for each application that they run. Is it possible to set this variable in the login process? What does gok do if it is running in an environment in which this variable is set?
the gok misbehaves when run in the context where that variable is set - i'm working on a fix.
the GTK_MODULES environment variable should not be needed by gok. it's also not the preferred mechanism for enabling accessibility, the proper way of loading the necessary modules (for assistive technology support) is by setting the gconf key /desktop/gnome/interface/accessibility to 'true'. gconftool-2 -s /desktop/gnome/interface/accessibility -t bool true I think that the issue David brings up is one of GOK listening to itself. Probably GOK should load the accessibility modules (in case some additional AT is running which needs to access GOK via at-spi, perhaps an uncommon case but not impossible), but GOK may need to special-case some of its logic for events which originate 'inside gok' but which are received from AT-SPI. That said, wouldn't gok need to continue running when the settings dialog is up, in order to provide end-user access to settings?
By the way, a clarification: "pure gtk+" programs such as gtk-demo, which don't call libgnome, *do* need the GTK_MODULES environment variable in order to expose accessibility. "Gnome" apps do not. The (partly redundant) case where both the gconf key *and* the GTK_MODULES env variable are set should be handled gracefully. THe reason for using the gconf key and not just the env is twofold: it enables ATK support without requiring that all apps link to gnome and gconf, and also the modules needed are application-dependent, so for applications that use Bonobo (for instance), GTK_MODULES=gail:atk-bridge is not sufficient, you need other libs as well. This second case is handled gracefully by the gnome initialization procedure which is controlled by the gconf key, but the first case (GTK_MODULES) is maintained for gtk+-compatibility reasons.