Re: [g-a-devel] [Accessibility-atspi] AT-SPI and D-Bus



Hello,

On Friday 04 August 2006 13:50, Bill Haneman wrote:
> On Fri, 2006-08-04 at 10:46, Olaf Jan Schmidt wrote:
> > [...]
> [...about problems of using ATK with Qt/KDE programs...]
>
> If by "problems with the way glib is written" you are referring to
> glib mainloop issues, surely that problem can be addressed "at source".
> Or perhaps they can be worked around; Michael meeks managed to solve
> these problems for OpenOffice.org when they encountered them.  I am
> sure that he would have useful suggestions.

In fact the "problems with the way glib is written" are glib mainloop 
issues. From what Harald Fernengel (the developer at Trolltech who writes 
the AT-SPI bridge for Qt/KDE), there are two ways to integrate Qt 4.x with 
the glib mainloop:

1. Usually use the Qt event loop and only call the glib mainloop if you 
know that something in ATK needs to be processed.

There are two reasons why something in ATK needs to be processed: The first 
one is that you just have some changes in the GUI which in turn create 
AT-SPI events which will be generated. The second one is that data arrives 
on a socket which is used for the CORBA communication. This is the harder 
part as you do not know which of the sockets that are opened by your 
application are the ones that are used by ORBit2.

2. Let Qt 4.x run in the glib mainloop.

This way you only have one main loop, so that you do not need to know when 
to call the glib mainloop. Instead there are other problems. If what I 
heard is correct, then there is no way in glib to disable a timer, and it 
is an expensive operation to create or destroy a given timer. The problem 
with that is that Qt makes heavy use of QTimers (which _can_ be disabled, 
so that they do no longer fire events), so there you have performance 
problems.

It may be that I misunderstood some of the points when Harald told me about 
them, but I trust him that he knows what he is talking about.

Gunnar Schmi Dt
-- 
Member of KDE's Technical Working Group
Co-maintainer of the KDE Accessibility Project
Maintainer of the kdeaccessibility package
http://accessibility.kde.org/

Attachment: pgpGL2CComPev.pgp
Description: PGP signature



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