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

The Alpine e-mail client can't be used with NVDA #5358

Closed
nvaccessAuto opened this issue Sep 13, 2015 · 9 comments
Closed

The Alpine e-mail client can't be used with NVDA #5358

nvaccessAuto opened this issue Sep 13, 2015 · 9 comments

Comments

@nvaccessAuto
Copy link

Reported by jkinnunen on 2015-09-13 19:29
Those who are using the Alpine e-mail client with JAWS would like to use it also with NVDA, but currently that's not possible due to the fact that the menus (e.g. the main menu where one can choose to compose a message or configure settings) can't be navigated with the arrow keys, nor can screen review be used to examine the application window.

Alpine can be downloaded from here.

@nvaccessAuto
Copy link
Author

Comment 1 by jkinnunen on 2015-10-27 12:49
Changes:
Changed title from "Support for the Alpine e-mail client" to "The Alpine e-mail client can't be used with NVDA"

@nvaccessAuto
Copy link
Author

Comment 2 by jkinnunen on 2015-10-27 13:09
A package that includes all of the Alpine files is available here.

@jkinnunen
Copy link

Would it be possible to do something about this issue?

@ehollig
Copy link
Collaborator

ehollig commented Oct 22, 2018

@jkinnunen it appears the links provided above no longer works. Can you verify if this email client does not work with the latest version of NVDA? Also, can you be specific on what exactly does not work, along with the steps you took to reproduce, what was the actual behavior, along with what you expected to happen instead?

@jkinnunen
Copy link

jkinnunen commented Oct 22, 2018

I Just tested with the latest version of NVDA, and Alpine still doesn't work. This is the version of Alpine i'm using:
Alpine.zip

Steps to reproduce

  • Start Alpine.
  • Now that you're in the main menu, try to move through it with the up and down arrow keys and/or use NVDA's screen review mode to explore the application window.

Expected behavior

When moving with the up and down arrow keys, NVDA should report the focused menu item, e.g. "C COMPOSE MESSAGE - Compose and send a message" or "I MESSAGE INDEX - View messages in current folder".
When using NVDA's screen review mode, the window should look like something like this:

INBOX - Alpine
File Edit Go Message Send Config Help
ALPINE 2.21.99 MAIN MENU Folder: INBOX
42 Messages +

                                                                ?     HELP               -  Get help using Alpine
                                         
                                                                C     COMPOSE MESSAGE    -  Compose and send a message
                                         
                                                                I     MESSAGE INDEX      -  View messages in current folder
                                         
                                                                L     FOLDER LIST        -  Select a folder to view
                                         
                                                                A     ADDRESS BOOK       -  Update address book
                                         
                                                                S     SETUP              -  Configure Alpine Options
                                         
                                                                Q     QUIT               -  Leave the Alpine program

Actual behavior

NVDA only reports "blank" when arrowing through the menu or when screen review is used. In fact, it seems that NVDA incorrectly recognizes the window as editable, even though it isn't.

If it's of any help, here is the developer info for the application window:

Developer info for navigator object:
name: u'INBOX - Alpine'
role: ROLE_EDITABLETEXT
states: STATE_FOCUSABLE, STATE_FOCUSED
isFocusable: True
hasFocus: True
Python object: <baseObject.Dynamic_IAccessibleDisplayModelEditableTextWindowNVDAObject object at 0x050CCF50>
Python class mro: (<class 'baseObject.Dynamic_IAccessibleDisplayModelEditableTextWindowNVDAObject'>, <class 'NVDAObjects.IAccessible.IAccessible'>, <class 'NVDAObjects.window.DisplayModelEditableText'>, <class 'NVDAObjects.behaviors.EditableText'>, <class 'editableText.EditableText'>, <class 'NVDAObjects.window.Window'>, <class 'NVDAObjects.NVDAObject'>, <class 'documentBase.TextContainerObject'>, <class 'baseObject.ScriptableObject'>, <class 'baseObject.AutoPropertyObject'>, <type 'object'>)
description: None
location: RectLTWH(left=0, top=43, width=1583, height=817)
value: None
appModule: <'appModuleHandler' (appName u'alpine', process ID 139760) at address 5103810>
appModule.productName: u'alpine'
appModule.productVersion: u'2.21.99'
TextInfo: <class 'displayModel.EditableTextDisplayModelTextInfo'>
windowHandle: 920246
windowClassName: u'PineWnd'
windowControlID: 31393489
windowStyle: 367984640
windowThreadID: 140160
windowText: u'INBOX - Alpine'
displayText: u' ALPINE 2.21.99 MAIN MENU Folder: INBOX 30 Messages + ' (truncated)
IAccessibleObject: <POINTER(IAccessible) ptr=0x76cb778 at 4c7dee0>
IAccessibleChildID: 0
IAccessible event parameters: windowHandle=920246, objectID=-4, childID=0
IAccessible accName: u'INBOX - Alpine'
IAccessible accRole: ROLE_SYSTEM_CLIENT
IAccessible accState: STATE_SYSTEM_FOCUSED, STATE_SYSTEM_FOCUSABLE, STATE_SYSTEM_VALID (1048580)
IAccessible accDescription: None
IAccessible accValue: None

@Adriani90
Copy link
Collaborator

@jkinnunen can you still reproduce this issue with NVDA 2024.4 Beta and Alpine 2.26?
Did you already contact the alpine developers team or anyone who is working on Alpine? I suspect the accessibility is not implemented in the software itself at all and then NVDA cannot really do anything about it if they don't change anything on their end.

@XLTechie
Copy link
Collaborator

XLTechie commented Oct 5, 2024

@Adriani90, this can definitely repro with Alpine 2.26 and modern NVDA. While, when using Screen Review mode, at least sometimes parts of Alpine can be accessed, including the main menu: navigation in this way only works from bottom to top. As soon as you try to navigate down with review commands, the review location resets to the menu bar, which is quite undesirable.
Note, that in Alpine, the Main menu is not the same as any of the menus on the menu bar. The main menu is essentially the Alpine home screen, in modern terminology.

setting Alpine to use dialogs on its window config menu, and setting "show cursor" (search for it with the w command) under Alpine setup (s, c, from the main menu), can help a bit.

It is possible this could be made to work with an app module, but I have found object nav is not very useful as it stands. An extensive amount of work would have to be done, I think. It might even require some work in Alpine itself, and its development team is now just one guy, maintaining some patches for general functionality. Major changes are not likely.

This is closer to working with the terminal than normal Windows accessibility APIs, I suspect.

Using Alpine under WSL or ssh, is much easier, though anything Ncurses based has some issues.

Note, that a binary copy of Alpine 2.26 can be obtained at https://alpineapp.email

@jkinnunen
Copy link

@Adriani90 This issue can be closed as Alpine is no longer important to me. However, if someone else would like to take this over, feel free to do so.

@XLTechie
Copy link
Collaborator

XLTechie commented Oct 5, 2024

I have a particular fondness for Alpine, but I think the level of work to bring this support to core is not worth the number of users who might find it valuable. Closing as not of sufficient community interest.

@XLTechie XLTechie closed this as not planned Won't fix, can't repro, duplicate, stale Oct 5, 2024
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