Re: GTK+ modules loading changes



From: Bastien Nocera <hadess hadess net>

Hi, thanks for the announce. But I have some doubts.

> This will affect you if you install a GTK+ module.
> 
> The latest version of gnome-settings-daemon[1] will load GTK+ modules
> using .desktop files in the
> $(libdir)/gnome-settings-daemon-3.0/gtk-modules/ directory.
> 
> The desktop files are fairly simple:
> [GTK Module]
> Name=My module
> Description=My super GTK module
> X-GTK-Module-Name=supermodule

Ok, so explaining that in a rough way, this is equivalent to set the
env var GTK_MODULES to the modules you want.

> This will make the libsupermodule.so GTK+ module be loaded by GTK+.
> 
> If you need the module to be conditionally loaded, you'd add those 2
> lines to your .desktop file:
> X-GTK-Module-Enabled-Schema=org.gnome.desktop.interface
> X-GTK-Module-Enabled-Key=accessibility

And going on with the rough way, this is equivalent to fill
GTK_MODULES in a conditional way.

> With your own schema and key there, as you would expect. Note that the
> schema and key *must* be defined by gnome-settings-daemon or one of its
> dependencies (such as gsettings-desktop-schemas), or shipped with your
> module.
> 
> Finally, if you require 2 modules to be loaded in a certain order,
> you'll need to define the X-GTK-Module-Name as "module1:module2". This
> is the case for the a11y modules.

Fine.

And now the question (related with the order). In some cases a
specific application would require to load his own accessibility
module add-on. Right now Firefox is the poster boy (so instead of
gail:atk-bridge, firefox uses gail:<firefox-thing>:atk-bridge).

In order to support this, it is used the envvars NO_GAIL and
NO_AT_BRIDGE. In order to support this atk-bridge and gail has code in
his module_init code preventing this.

As far as I see this should be still working. But to be sure... could
you confirm it? Any advice to the current procedure ? (the current
procedure is a hack). This question arised after read this "Adds the
disabled-gtk-modules..." [7]

More info about the Firefox loading modules mess here [5]

PS: I have a provisional patch implementing the accessibility loading
modules on gnome shell using a similar approach, including checking a
gconf property [6], I guess this should be totally moved to gsettings.

> I already added patches for at-spi[2], at-spi2-atk[3], and filed a bug
> for gnome-packagekit[4]. If somebody wants to do that for libcanberra,
> go for it.

I think that at-spi2-atk bugs are still on freedesktop [8], I will ask
Mike Gorse about it.

> Cheers
> 
> [1]: https://bugzilla.gnome.org/show_bug.cgi?id=633191
> [2]: https://bugzilla.gnome.org/show_bug.cgi?id=633192
> [3]: https://bugzilla.gnome.org/show_bug.cgi?id=633194
> [4]: https://bugzilla.gnome.org/show_bug.cgi?id=633195

[5] http://mail.gnome.org/archives/gnome-accessibility-list/2009-January/msg00030.html
[6] https://bugzilla.gnome.org/show_bug.cgi?id=612599
[7] https://bugzilla.gnome.org/show_bug.cgi?id=633191#c6
[8] https://bugs.freedesktop.org/buglist.cgi?query_format=advanced&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=atk&product=at-spi2

===
API (apinheiro igalia com)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]