prev
17th September 2004
by Derek Kite
next


This Week...
Kpdf adds zoom, search, thumbnails and is optimized. Kontact now supports Kolab version 2. Krita adds startup templates. Khtml improves the outline painting algorithm. Kopete merges Novell GroupWise Messenger support into HEAD. Plastik style optimized.

Click here for new and improved Digest layout. Same information but organized differently. Suggestions welcome.

What can we expect from KDE on the Accessibility front? Harald Fernengel gave a presentation at aKademy titled Making Qt KDE Applications Accessible (Slides, Audio, Video).

As mentioned in the other accessibility talks, API based accessibility function is the best way. And as we review the plans for Qt accessibility, we see why.

The goals of Qt Accessibility Module is to make applications accessible by default, with no or little impact on existing code. There will be no performance penalties where accessibility function is not required. Harald gave an example of an application where if accessibility was enabled, but it took considerably longer to load. Hence the administrators would disable the accessibility function.

The accessibility features are on by default. All widgets are supposed to be accessible. Subclasses would inherit accessibility function from super classes. The interface can be plugins which permit on the fly loading. An accessiblility bridge will bridge to other api's, MSAA, at-spi, etc.

Hence, custom widgets are accessible. There is no need for an independant patch for accessiblility. If special accessibility interface is required for your custom widget, all you need to do is ship a plugin. The accessible bridges are plugins.

Here is the class reference for QAccessible.

The difference between Qt and AT-SPI is there isn't necessarily one interface per widget. For example, all the children of a combobox can have the same accessiblility data.

Qt also defines relations, ie Label -> linedit, and linedit -> label.

Permits navigation to next child, above, below, left or right. Tab order is not enough for rapid navigation.

QAccessible has a generic action interface. You can define how many custom actions the widget supports, Action text, in short and long format and Do action which executes.

For example, buttons have the predefined actions such as click, but a custom widget can implement it's special actions.

Advantages:
  1. Low memory, just a pointer to the widget.
  2. Children don't need accessibility object.
  3. Generic: no special interfaces to specific assistive technologies. Binary compatible, reimpoiment functions, ship a plugin.
  4. New widgets can be accessible without modifying assistive technology.
  5. Accessible interface knows when it is needed, loads on demand.
In Qt Designer, accessible texts can be set by non technical people, and localized.

Question: How would a mixed language environment work? AT-SPI doesn't implement this. Generic texts methods return text with meta information, provider must provide meta info.

Peter Korn added that some shouldn't be translated, for example the state, since the assistive technology, ie. a screen reader depends on a text string to determine state.

All widgets and backend classes are accessible ready. Document-View class is ready.

Slides then showed the bridging strategies to either AT-SPI, which needs 15-20 packages from Gnome. The Qt bridge is open to new backends, for example dbus. The bridge tranlates Qt to at-spi or whatever is necessary. That already works. There are issues with Qt metadata since AT-SPI doesn't support metadata, For example an email reader, there is metadata such as block, level 1, level 2. How to tell Screen reader? Rich text is another example.

Harald then demonstrated the Qt->AT-SPI bridge, using a Qt demonstration application and Gnopernicus. He then showed the beginnings of a Qt->D-BUS bridge, where instead of using the Corba backend to communicate between the applications, D-BUS will be used for message passing. This would allow a Qt or KDE application to be accessible to someone using the Gnome accessibility tools.

In my opinion, these bridges have the potential of consuming unreasonable computer resources. Peter Korn mentioned during his presentation that the screen reader wasn't responsive enough, presumably due to the resource heavy inter process communication backend. Of course it would be preferable for KDE and Qt users to have available the necessary accessibility tools, which would take advantage of the inherent inter process communications, but that may not be a reasonable expectation at least in the near term. So the advantages of a light weight cross desktop communications bus are clear. We shall see if D-BUS fills that role adequately.

Mark Kretschmann announced version 1.1-beta2 of the amaroK audio player
This release not only fixes many bugs from the previous beta version, but also introduces some stunning new features. We invite our users to test the program thoroughly, as this will likely be the last beta release before 1.1-final.

New in this version:
  • Crossfading support for GStreamer
  • Custom Smart Playlists
  • Animated systray icon with progress display
  • Support for the Media Application Server (MAS)
  • Color scheming for player window
  • K3B integration for direct CD burning
  • Cool-Streams, a collection of recommended radio streams
  • Cutting edge SQLite-3 database
  • Third category for Collection filtering
  • Rating system for music

Jeroen Wijnhout announced the first public beta release of Kile, an Integrated LaTeX Environment for KDE
(for instructions use this link):
http://kile.sourceforget.net/download.php
or directly:
http://prdownloads.sourceforge.net/kile/kile-1.7b2.tar.bz2?download

Kile-1.7 requires KDE 3.2 or newer.

This test release offers many new features, in particular the following should be tested (full Changelog can be found below):
  • new tool system, QuickBuild tool can be configured completely
  • it is possible to switch to other TeX systems besides LaTeX
  • autocompletion of (La)TeX commands, configurable (Settings->Configure Kile->Complete)
  • System Check (Settings->System Check), checks if all (La)TeX tools are available and if Kile is configured correctly. This needs to be checked since people have reported problems with this feature.
  • Detailed clickable error summary.
Several others have worked on this release, in particular I would like to mention Holger Danielsson and Simon Martin, who both put a lot of effort into Kile.

Please test!


Statistics
Commits: 2298 by 196 developers, 209695 lines modified, 627 new files.
Open Bugs: 7452
Open Wishes: 6965
Bugs Opened: 328 in the last 7 days.
Bugs Closed: 212 in the last 7 days.

Commit Summary
Module Commits
kde-i18n
735
kdelibs
176
www
176
kdepim
144
kdeextragear-2
130
koffice
98
kdeextragear-1
89
kdebase
84
kdenonbeta
82
kdeextragear-3
72
Lines Developer Commits
12999
Gilles Caulier
149
19204
Gaute
134
2025
David Faure
105
7600
Andrew Coles
102
2658
Pedro Morais
102
13112
Nicolas Goutte
74
5456
Jaroslaw Staniek
74
652
Stephan Binner
65
27877
Kevin Donnelly
57
564
Mark Kretschmann
46

Internationalisation (i18n) Status
Language Percentage Complete
British English
98.96%
Portuguese
97.92%
Swedish
95.63%
Danish
94.44%
Estonian
94.21%
Spanish
92.99%
Dutch
92.79%
Italian
91.27%
Tamil
90.88%
Brazilian Portuguese
90.25%

Bug Killers
Bug Killer Number Of Bugs Closed
Aaron J. Seigo
39
Andras Mantia
29
Stephan Binner
26
Michael Jahn
22
Matt Rogers
19
Reinhold Kainhofer
18
Waldo Bastian
12
Sebastian Trueg
11
Luboš Luňák
10
Till Adam
9

Thanks for reading the KDE Commit-Digest!
KDE Commit-Digest by Danny Allen, 2006-2008
All issues in archive by Derek Kite