Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

classic client: UI lock up when using accessibility services #573

Closed
beqabeqa473 opened this issue Jul 2, 2020 · 11 comments
Closed

classic client: UI lock up when using accessibility services #573

beqabeqa473 opened this issue Jul 2, 2020 · 11 comments

Comments

@beqabeqa473
Copy link
Contributor

hello all.

the following problem was observed when using classic client for years.
first of all, the biggest problem which every person who is using accessibility service, specifically screenreader, is facing, is massive ui lock up when logging on to the server, where is 100 or more channels, and 20-30 users.
unfortunately, i don't know what is happening, maybe there are filling ui elements and querying that ui element by screenread at the same time.
the same effect is happening, when there are 300000 characters in the chat history and tab is switched on files and then on chat again.
ui lockups are continued from 5 to 15 seconds and because of that, whole system is hanging.

you can test that by downloading nvda screenreader or simply turning on narrator by shortcut ctrl+windows+enter

possible suggestion: maybe if it is possible, it would be reasonable to put ui work into background thread, however it should be identified firstly, what is the reason of that.

@OzancanKaratas
Copy link
Contributor

OzancanKaratas commented Jul 18, 2020

In my opinion, a work on improving accessibility on Qt TeamTalk should be done and TeamTalk Classic should be removed. Or, by building an optional WxWidgets interface on the Qt TeamTalk, MFC should be abandoned. Qt 5 is now meeting the accessibility requirements.

@CoBC
Copy link
Contributor

CoBC commented Jul 18, 2020 via email

@bear101
Copy link
Contributor

bear101 commented Jul 18, 2020

I tried to improve navigation in the tree control for VoiceOver (on macOS) and it was very difficult. I was modifying how the Qt framework handles accessibility events in QTreeWidget but I never made it work right.

One solution could be to use a QListView instead of QTreeWidget. I think QListView has better accessibility. Then navigation could be similar to iOS and Android's UI.

Whether to use QListView or QTreeWidget should, however, be configurable, because it is much faster to navigate in the tree control.

@MarcoZehe
Copy link

One solution could be to use a QListView instead of QTreeWidget. I think QListView has better accessibility. Then navigation could be similar to iOS and Android's UI.

How would the sub rooms and users in a room be displayed, then? Right now, in the tree, these are revealed once you expand a room or room group. A list view doesn't have this hierarchical structure by nature.

@bear101
Copy link
Contributor

bear101 commented Aug 26, 2020

Parent channel and sub-channels are shown in the list so you can navigate back and forth. The Android and iOS client work the same.

@beqabeqa473
Copy link
Contributor Author

@bear101 i was able to track down a way when classic client is freezing with screenreaders.

it is in tree sorting, specifically in these lines
HTREEITEM hItem1 = pTreeCtrl->GetChannelItem(lParam1 & ID_ITEMDATA);
HTREEITEM hItem2 = pTreeCtrl->GetChannelItem(lParam2 & ID_ITEMDATA);

for some reason, in my debug build, with nvda turned on, it takes about 20 seconds to retrieve 100 channels and sort them.

do you have any thoughts what is happening there?

thanks.

@bear101
Copy link
Contributor

bear101 commented Sep 19, 2020 via email

@beqabeqa473
Copy link
Contributor Author

beqabeqa473 commented Sep 19, 2020 via email

@bear101
Copy link
Contributor

bear101 commented Jan 4, 2021

You can try a very early alpha release of TeamTalk v5.7 which fixes the sort issue here:
http://bearware.dk/beta/TeamTalkClassic_v5.7.0.5016_Portable.zip

@beqabeqa473
Copy link
Contributor Author

beqabeqa473 commented Jan 4, 2021 via email

@njsch
Copy link

njsch commented Jan 5, 2021

Following.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants