Improving accessibility for visualy impaired users

Bug #195209 reported by Sayangel
2
Affects Status Importance Assigned to Milestone
DC++
Fix Released
Wishlist
Dcplusplus-team
LinuxDC++
Invalid
Undecided
Unassigned

Bug Description

Dear,

I alert you about using dc++ with JAWS (Job Access With Speech) for Windows a screen reader dedicated to visualy aimpaired users.

Indeed, we have some troubles issues for using it with JAWS.

For exemple :
No possibility to switch between settings tabs with keyboard ;
Tab key doesn't work on PM (needed to read messages from others users) but works on main chat area ;
we cannot switch to almost client windows and read content with arrows without using mouse befor ;
no possibility to set special sound for main chat messages, PM and favorites users PM, important to know in which window we receved message ;
And much more ...

There for, i have to emulate mouse for some kind of those tasks but, it would be really great if all of them may be usable without this action (directly with keyboard) :)

Best regards

Sayangel (webflow)
description: updated
description: updated
Revision history for this message
Fredrik Ullner (ullner) wrote :

Ideally, all bug reports or RFEs should be filed separately...

<Tab key doesn't work on PM (needed to read messages from others users) but works on main chat area ;
I don't get it, what should tab do in PMs? There are no other users to tab complete...

<we cannot switch to almost client windows and read content with arrows without using mouse befor ;
I'm sorry, but I really don't understand what you've written here. What are "client windows"? If you mean hub windows, well, I can scroll through the chat with the arrow keys... But I don't think that's what you mean.

<no possibility to set special sound for [..], PM
Hm? There is a setting for PMs. (Not per favorite user, though.)

<And much more ...
Yeah, but what are they?

Revision history for this message
Sayangel (webflow) wrote :

Sorry.

Tab key in pm should normaly switch to the read only field, where we could read msgs with arrows keys like in main chat window.

Client windows i mean dc++ internal windows (transfers , finished upload, download queue etc.)

About sound, i mean special sound for pm and others for favorite users pm, main chat ... with possibility to set them up individualy.

Revision history for this message
Fredrik Ullner (ullner) wrote :

I'm using the current development version (though, I'm behind a few revisions, I think) and I can (1) use tab to switch in PMs, (2) move with tab in Finished downloads, download queue and favorite users...

So, unless those features are also in the current version (which I thought it was), wait for the upcoming version.

Also, there is an ability to change the default sound for incoming PMs in Settings -> Colors and sounds. And *that* have been there for a while. (Yes, it's just for PMs, but you've said twice that it's not possible.)

Revision history for this message
Sayangel (webflow) wrote :

Thanks.

Here are some hotkeys i'd like you to add :)

Miscs
- CTRL+F3 for settings window

In Userlist :

- ctrl+m for opening an user's private message window
- ctrl+k for kicks

And special sound for main chat msgs

Best regards

Revision history for this message
poy (poy) wrote :

- tab key in private messages didn't switch controls correctly in DC++ 0.699, but that's fixed in the current development version and probably also in DC++ 0.704.

- tab key in hub windows wasn't switching to other controls when there's no text to auto-complete in the message box; this was working in DC++ 0.699 and should be working again in the next release.

- i've tried several things to add ctrl+tab in settings, but could never manage to catch all child windows' keyboard input. this needs to be fixed...

Changed in dcplusplus:
status: New → In Progress
Revision history for this message
Sayangel (webflow) wrote :

Thanks.

The real problem in settings window is i can't bring cursor to tab name without using mouse.

For exemple, if i use tab key, i switche from cancel buton to nickname field without going to name of this settings category name (general).

And that's why i can't go to other tab settings with my keyboard (arow keys).

Regards

Revision history for this message
poy (poy) wrote :

you must be using an old version of DC++; in recently released ones, you can reach the tree view on the left of the settings window by pressing the tab key.

Revision history for this message
Sayangel (webflow) wrote :

Indeed, i'm using 0.699, last stable version :)

Revision history for this message
Sayangel (webflow) wrote :

I downloaded last (0.704) and i'm testing it now.

Revision history for this message
Sayangel (webflow) wrote :

As said above :

< - tab key in hub windows wasn't switching to other controls when there's no text to auto-complete in the message box; this was working in DC++ 0.699 andshould be working again in the next release.

I hope so, because i can't read any main chat message with 0.704 .. tab key do nothing :)

Other thing: ctrl+f hotkey doesn't work for opening favorite hub window

And if alt+u hotkey may be added for switching to hub's userlist's in next release, it'll be great :)

Please, don't forget different sound for main chat messages

Regards

Fredrik Ullner (ullner)
Changed in dcplusplus:
importance: Undecided → Wishlist
Revision history for this message
Fredrik Ullner (ullner) wrote :

As far as I can tell, every suggestion is implemented (though, possibly in the development version only for some), except for the ability to set a sound for different actions. (Though, I can imagine that having a sound for eg every chat message is annoying as hell.)

Revision history for this message
Sayangel (webflow) wrote :

I don't ask to add sound for everything. I ask for main chat messages and not enabled by default because, as blind users, we cannot see screen for knowing if there is a new msg on chat or no. And with a special sound, we may know that.

Revision history for this message
Sayangel (webflow) wrote :

Dear,

I saw new DC++ version (705) released recently.

But, after testing it, i d'ont see any of my suggestions / wishs regarding visualy impaired users. normal ?

Did you finaly decide not to implement them ?

Best regards

Revision history for this message
poy (poy) wrote :

most of your suggestions, which were about tabbing, did make it into DC++ 0.705.

as for the sounds, i have an idea about it, which is why the status of this bug is still "in progress"; i'll probably submit a patch here soon.

Revision history for this message
Sayangel (webflow) wrote :

Thanks very much for your answer and for your help :)

I suggested some others hotkeys though for helping us to be more faster, like ctrl+m for pming an user or ctrl+k for kick, ctrl+f3 for setting ...

Anyway thanks again for your improvements on DC++ regarding visualy impaired users :)

Revision history for this message
poy (poy) wrote :

this patch changes the "Colors and sounds" settings page, in which the 2 check-boxes are replaced by a list-view with 3 options; "sound for main chat", "for PMs", "for when a PM window opens".
the sound selection field in the bottom stays the same, and is enabled only when a sound option is selected and checked (as in the "Logs" page).

i've tried to add the lowest possible number of settings added to SettingsManager: only 3 settings are used for sounds, 1 per event. each setting is either empty (no sound to play), "beep" (play the default "beep" sound), or a path to a sound file that the user has choosen in settings. that means each event can have a different sound.

after that, the following is left to make this feature request[s] fulfilled:
- Ctrl+Tab, Ctrl+Shift+Tab to switch between settings pages; not so important since the tree-view can be accessed through usual tabbing and then pages can be switched with keyboard arrows;
- accelerators in child windows, only the main window's accelerators are currently working.

Revision history for this message
Sayangel (webflow) wrote :

Dear,

Thanks alot for your improvements.

How do i patch my dc++ version ? i don't have any of tools for this kind of work.
Is last dc++ beta patched ?

ctrl+tab / ctrl+maj+tab is not really important as you said because in this version (705), tab window key can switch easyly to tab settings list.

More important are ctrl+F3 for going to settings quickly, alt+u for switching to userlist while chatting, and hability to hide or no nick filter.

Because when we switch with tab key from typing field to reading field, nick filter slows us a bit ; indeeds it's between typing and reading field with tab key.

And finaly some other keys: ctrl+m for msging someone on userlist, ctrl+k for kicking him ... without using right-click mouse.

If all of those mods mentionned above are ok and if they are kept on dc++ futur versions, then i think dc++ won't have any problem with JAWS (most screen reader used by visualy impaired users) anymore.

Best regards

Revision history for this message
poy (poy) wrote :

the patch i've sent describes changes to the source code used to generate DC++; you can't apply it yourself. if it is applied to the current source code, then these changes will appear in the next DC++ release.

i include the hot-keys you've mentioned in "accelerators in child windows", which is not fully implemented yet. when it is, adding new hot-keys shouldn't be too hard.
if you want to avoid pressing Tab 3 times to switch from the message writing box to the chat window, you can press Shift+Tab (Maj+Tab in French) twice to get the same result. Shift+Tab goes backward when Tab goes forward in the tab order. agreed, a shortcut would be easier...

Revision history for this message
Sayangel (webflow) wrote :

Ok. Thanks. I'll wait for next release before testing.

Revision history for this message
Sayangel (webflow) wrote :

Hi,

Btw, i think it would be better if nick filter may be hidden and displaid via view menu "nick filter".

It'd let the choice for us to display it or no on main window.

Best regards

Revision history for this message
poy (poy) wrote :

adds a checkbox in settings > Appearance that allows to hide the users list filter. when the filter is disabled, the controls are not only hidden, they're not created at all when a hub window is opened.

Revision history for this message
Sayangel (webflow) wrote :

Thanks :)

I hope i'll be able to test those improvements soon on next release and other DC++ mods implement those patchs on their releases though :)

Revision history for this message
Sayangel (webflow) wrote :

Btw, what about a special sound for differencing favorites users pm from other users PM ?

Regards

Revision history for this message
Jacek Sieka (arnetheduck) wrote :

patch 1 applied, patch 2 is bloat...
I can however be convinced of a shortcut key to jump between message and user list...

Revision history for this message
Sayangel (webflow) wrote :

i'm really sad about patch2 rejecting.

The problem, as i mentionned above, is we can't disable nick filter.

So, when we are chatting on main hub window, we spend / lost time for reading chat and getting back to writting field with tab key or shift+tab everytime.

Indeeds, nick filter is always between them and we cannot hide it at all ...

Try yourself. Drop your mouse and use tab key for switching from writting field to reading field during some minutes and maybe, you'll understand what i mean.

That's why, it would be really great if patch2 might be included then we could choose to hide nick filter directly from settings window instead :)

So, if you may include this patch it would really help us.

Best regards

Revision history for this message
Jacek Sieka (arnetheduck) wrote :

I doubt yet another obscure option will help anyone actually...dedicated hot keys to move to read / write / user list should be easier to use (because you don't have to know which window you're in) and are less intrusive (don't make the settings screens even more complicated)...

As for reading new messages, how do screen readers react to balloon tooltips popping up from the tray icon? I'd accept a patch that opens a balloon (or a small notification window) for each new message, and then you wouldn't have to move between read and write as often...

Revision history for this message
Jacek Sieka (arnetheduck) wrote :

In alternative, tab order could be changed to put read & write message next to each other if those are the two most common windows you use...maybe more simple for first-time (blind or not) users...

Revision history for this message
Sayangel (webflow) wrote :

I think last solution is better. Putting them next to each other.

JAWS (screen reader) cannot really interact with Balloon tooltips popping up from the tray icon.

Revision history for this message
Sayangel (webflow) wrote :

However i think alt+u hotkey for switching to userlist would be good, and other hotkeys in userlist i mentionned above though.

Revision history for this message
poy (poy) wrote :

we finally have some keyboard shortcut management, and all shortcuts mentioned here will be added to the next version:
- Ctrl+(Shift+)Tab in settings.
- Alt+C/M to focus the chat and message boxes in chat windows.
- Alt+U to focus the user list in hubs.
- Alt+G to get file lists and +P to send PMs in hubs.
feel free to suggest more, they are easy to add now!

Changed in dcplusplus:
status: In Progress → Fix Committed
Revision history for this message
Twilight2013 (twilight2013) wrote :

Here's the current keyboard shortcuts on DC++ 0.75 & the 1 in parenthesis that needs it.

File
Quick Connect Ctrl+Q
Reconnect Ctrl+R
Follow last redirect Ctrl+T
Open file list Ctrl+L
Open own list (needs keyboard shortcuts)
Match downloaded list (needs keyboard shortcuts)
Refresh file list Ctrl+E
Open downloads directory (needs keyboard shortcuts)
Settings (needs keyboard shortcuts)
Exit (needs keyboard shortcuts)

View
Public Hubs Ctrl+P
Favorite Hubs Ctrl+F
Favorite Users Ctrl+U
Download Queue Ctrl+D
Finished Downloads (needs keyboard shortcuts)
Waiting Users (needs keyboard shortcuts)
Finished Uploads (needs keyboard shortcuts)
Search Ctrl+S
ADL Search (needs keyboard shortcuts)
Search Spy (needs keyboard shortcuts)
Notepad Ctrl+N
System Log (needs keyboard shortcuts)
Network Statistics (needs keyboard shortcuts)
Indexing progress (needs keyboard shortcuts)

Window (all 5 needs keyboard shortcuts)
Close disconnected
Close all PM windows
Close all offline PM windows
Close all file list windows
Close all search windows

Help
Help contents F1
Get started (needs keyboard shortcuts)
Change Log (needs keyboard shortcuts)
About DC++ (needs keyboard shortcuts)
DC++ Homepage (needs keyboard shortcuts)
Downloads (needs keyboard shortcuts)
GeoIP database update (needs keyboard shortcuts)
Frequently asked questions (needs keyboard shortcuts)
Support (needs keyboard shortcut) instead of Help forum & DC++ discussion forum because they are duplicates
Bug/Feature (needs keyboard shortcut) instead of Request a feature & Report a bug because they are duplicates
Donate (paypal) needs keyboard shortcut

I hope it's not too much to ask.

Revision history for this message
poy (poy) wrote :

in my list of new kb shortcuts above, i forgot to mention Ctrl+F3 for settings.
just added F5 to refresh the filst.
i don't think "Exit" needs a shortcut, there's already Alt+F4.
as for the rest, i wouldn't say they necessarily "need" shortcuts, but if you can think of combinations that would fit, feel free to propose them. :)

Revision history for this message
poy (poy) wrote :

Fixed in version 0.760.

Changed in dcplusplus:
status: Fix Committed → Fix Released
Revision history for this message
Toast (swetoast-deactivatedaccount) wrote :

I wanna promote a new idea for this with Speech Synthesis instead of short command i know this is a huge project but i dugg up the api for windows and a link to linux but since we are still on the windows platform we should probly focus on the windows api but i throwing this up as a discussion since i for one wanna help out and improve our software in these parts.

Windows: http://msdn.microsoft.com/en-us/library/ms862709.aspx
Linux: https://secure.wikimedia.org/wikipedia/en/wiki/VoxForge

So im reopening for discussion for developers and adding linuxdc++ to the discussion

Changed in dcplusplus:
status: Fix Released → New
affects: dcplusplus → linuxdcpp
affects: linuxdcpp → dcplusplus
Changed in dcplusplus:
assignee: nobody → Dcplusplus-team (dcplusplus-team)
Revision history for this message
Steven Sheehy (steven-sheehy) wrote :

If you want to request a feature for LinuxDC++, then please open a new bug instead of attaching to this old, generic accessibility bug that's by and large specific to the Windows version. At a cursory glance of the issue though, speech recognition in linux is almost non-existent and still in its early stages. Speech recognition would need to be added first to GTK+/ATK/GAIL, so it's really a non-starter until that happens.

Changed in linuxdcpp:
status: New → Invalid
Revision history for this message
Toast (swetoast-deactivatedaccount) wrote :

That seems kinda redundant when there is a bug thats specific to the cause and has many crucial and valid points but hey dont wanna do it then ill just put my focus back on DC++ cause i think its a good feature to include in our client let someone else worry about the linux side

Revision history for this message
eMTee (realprogger) wrote :

Because of 'fix released' state bugs are bound to to changelog by their numbers I'd like to ask you to open up a new bug for this on DC++, too. The idea is great though and I think everyone backs it but it needs a different implementation.

Changed in dcplusplus:
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.