Hi! In KDE's Human-Computer-Interface (HCI) working group, we have collected a number of items that need to be changed in Qt4 for our plans to improve the usability, accessibility and artwork of KDE4. Some of them (e.g. all of the accessibility issues) have already been mentioned to various Qt developers during the development of Qt 4.0 and 4.1., but so far we have not managed to convince Trolltech that all of these are important for KDE. We are therefor summarizing the points in an "official" list that has the joint support from members of the various HCI-related teams in KDE (accessibility, usability, artwork, documentation, internationalization). The list contains all requirements that we have managed to refine enough to request them at this time. We expect to develop others as the time goes on and will then contact Trolltech again about having them implemented in future releases. The items can fit into roughly three areas. 1. AT-SPI: - In short term-perspective, an official statement of planned AT-SPI support in Qt and a rough schedule for it are very important. Because of the politics in the Free Standards Group, we need a reply from Trolltech on this issue as soon as possible. - The AT-SPI protocol allows assistive technologies such as the Orca screen reader to enquire the user interface of applications. Making KDE accessible to blind users is a key priority to our work on KDE4. This of course requires educating developers how to use the Qt Accessibility Framework in custom widgets, which means that we need proper documentation and testing tools at least by aKademy. - The implementation of AT-SPI is currently uses a number of GNOME dependencies, e.g. bonobo and ORBit2. IBM already started work on replacing these dependencies with D-Bus, but they stopped the work after Trolltech released Qt 4.0 and Qt 4.1 without the AT-SPI support promised in the release announcement of the Qt 4.0 Technology Preview. - The Free Standards Group is currently discussing whether to standardize the current AT-SPI implementation (including the GNOME dependencies) rather than waiting for a possible D-Bus version that no one is publically seen to be working on. We plan to prevent this, because it would make it much more difficult to later implement support for it in Qt. - We know that Harald Fernengel has been working on a D-Bus based version of AT-SPI during the last two years, and incidentally he sent a first snapshot of the code to members of the KDE accessibility team today. This work is extremely helpful for supporting our position in the FSG. What is also needed is a quotable statement confirming that Trolltech has allocated resources for D-Bus based version of AT-SPI. With it, we have good chances to convince the Free Standards Group not to standardize the GNOME dependencies of current version of AT-SPI. 2. We are currently working on a detailed concept to replace the color, font and icon settings in KDE4. The document is not finalized yet, but during our work on it so far, we found various Qt-related issues. QPalette: - The algorithm computing the values for "Light, Midlight, Dark, Mid, Shadow" and for the disabled color group does not work with dark background color schemes. This is a problem both for artists designing color schemes and for users with visual impairment, who might be unable to read text on light backgrounds. (Artwork, Accessibility) - In KDE4, we are planning to change the color roles defined in KDE's color schemes. Some of the new color roles need to be passed on to the widget styles. This should be possible either by extending QPalette or by subclassing it in KDE. (Artwork, Accessibility) All widget styles: - None of widgets shipped with Qt currently work with dark background color schemes. This might be caused by bugs in QPalette (see above). QFontDialog: - We need the ability to make relative changes to font settings, e.g. "Font Family: Default, Font Style: Bold, Size: 120% (11)". (Usability, Accessibility) QColorDialog and KColorChooser: - We have worked out a suggestion for a new color selection dialog in KDE4 that combines the improved user interface of the Qt color dialog with the features of the KDE3 color dialog. It should be evaluated whether the implementation of it makes more sense in Qt or in kdelibs (Usability) QCombobox: - Add the ability to have separators within a combobox (or ensure that it is easy to add those in a KDE subclass). (Usability) 3. The third important topic is full accessibility of the user interface via keyboard. All widgets: - Make sure all widgets can be completely used via keyboard. QToolButton: - The toolbars should be part of the normal tab order as in Gtk+. Moving the focus within a toolbar can then done with arrow keys, selection of a focused tool button with space. If the operating system defines a different method to set the keyboard focus to tool buttons (like in Mac OS X), then this should additionally be supported. QToolBox: - It would be great if keyboard accelerators in QToolBox headings set the keyboard focus to the first item within the toolbox page. (They appear not to work at all in Qt3.) QRadioButton and QCheckbox: - If the accelerator of a radio button of check box is pressed, then the keyboard focus should move as well. To keep the mail within reasonable size, we did not include all details for the mentioned items. We will send it to you upon request. Since some of the members of the HCI working group are located in Berlin, it might perhaps make sense to discuss this at a face-to-face in Trolltech's new office in Berlin. We would greatly appreciate it if Trolltech commits to at least those items that cannot be solved within KDE. For KDE's HCI workgroup, Olaf Jan Schmidt -- Olaf Jan Schmidt, KDE Accessibility co-maintainer, open standards accessibility networker, Protestant theology student and webmaster of http://accessibility.kde.org/ and http://www.amen-online.de/