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

[bug report] gridcell and columnheader in html table. #4560

Closed
nvaccessAuto opened this issue Oct 20, 2014 · 9 comments
Closed

[bug report] gridcell and columnheader in html table. #4560

nvaccessAuto opened this issue Oct 20, 2014 · 9 comments

Comments

@nvaccessAuto
Copy link

nvaccessAuto commented Oct 20, 2014

Reported by khsruru on 2014-10-20 08:12
Hello, I'm Hyongsop Kim in Korea.

I have a bug report about Nvda and gridcell and role=columnheader.
As you know, in broken table, developer can use gridcell and columnheader role. Nvda doesn't recognize second table as a tbody. This means Ctrl+Alt+arrow keys can not be used in the tbody section. I think that in case role=columnheader and role=presentation is attached, Nvda should recognize second table as a tbody and verbal th and content itself when I press Ctrl+Alt+Arrow keys.

Test url: http://www.khsruru.com/html/aria-table.html

Edit: Formatting and inline example

<h1> broken table test with aria </h1>
<div aria-readonly="true" role="grid">
    <table role="presentation"><tbody>
        <tr role="row">
            <th role="columnheader">Dog Names</th>
            <th role="columnheader">Cat Names</th>
            <th role="columnheader">Cow names</th>
        </tr>
    </tbody></table>
    <table role="presentation"><tbody>
        <tr role="row">
            <td role="gridcell">Fido</td>
            <td role="gridcell">Whiskers</td>
            <td role="gridcell">Clarabella</td>
       </tr>
       <tr role="row">
            <td role="gridcell">Woofie</td>
            <td role="gridcell">Claws</td>
            <td role="gridcell">Glenn</td>
        </tr>
    </tbody></table>
</div>
@nvaccessAuto
Copy link
Author

Comment 1 by jteh on 2014-10-21 03:13
What browser are you using? This should work as expected in Firefox. It is not yet supported in Internet Explorer.

@nvaccessAuto
Copy link
Author

Comment 2 by khsruru on 2014-10-21 05:02
Thank you for your reply.
In my case, even if Firefox, it doesn't work.
In test page that I gave, body section is not recognized as a table and navigate with control alt arrow keys.

Please check this issue again.

@nvaccessAuto
Copy link
Author

Comment 3 by jteh on 2014-10-21 05:13
I wanted to know what browser you used before i did extensive investigation because both browsers expose information very differently. Please always specify the browser when reporting issues in future. Thanks.

I've now tested this in Firefox. This appears to be due to a Firefox bug. Firefox doesn't treat these cells as table cells, which I believe is incorrect.

@ehollig
Copy link
Collaborator

ehollig commented Dec 7, 2017

The provided example now works as expected in Firefox 57. It still does not recognise it as a table in Internet Explorer. Marking this as Internet Explorer specific, but since this issue already has the NeedsExternalFix label, and it is unlikely Microsoft will fix this in Internet Explorer, should we close as cantfix? CC @jcsteh

@feerrenrut
Copy link
Contributor

For completeness sake, it would be worth verifying that this works as expected in Chrome as well. If so, please close as cantfix.

@ehollig
Copy link
Collaborator

ehollig commented Dec 11, 2017

This does not work in Chrome either.

IO - speech.speak (07:48:24.364):
Speaking [u'row 2 Dog Names column 1', u'Woofie']
IO - inputCore.InputManager.executeGesture (07:48:25.427):
Input: kb(laptop):alt+control+rightArrow
IO - speech.speak (07:48:25.450):
Speaking [u'Edge of table']
ERROR - scriptHandler.executeScript (07:48:25.454):
error executing script: <bound method ChromeVBuf.script_nextColumn of <NVDAObjects.IAccessible.chromium.ChromeVBuf object at 0x073024D0>> with gesture u'alt+ctrl+right arrow'
Traceback (most recent call last):
File "scriptHandler.pyc", line 187, in executeScript
File "browseMode.pyc", line 1759, in script_nextColumn
File "browseMode.pyc", line 1742, in _tableMovementScriptHelper
File "virtualBuffers\gecko_ia2.pyc", line 292, in _getTableCellAt
LookupError

INFO - globalCommands.GlobalCommands.script_navigatorObject_devInfo (07:48:27.479):
Developer info for navigator object:
name: u'Woofie'
role: ROLE_TABLECELL
states: STATE_READONLY, STATE_SELECTABLE
isFocusable: False
hasFocus: False
Python object: <NVDAObjects.Dynamic_imageDescriptionIa2WebIAccessible object at 0x07369C10>
Python class mro: (<class 'NVDAObjects.Dynamic_imageDescriptionIa2WebIAccessible'>, <class globalPlugins.Assistech_IIT_Delhi.imageDescription.imageDescription at 0x0721C3E8>, <class 'NVDAObjects.IAccessible.ia2Web.Ia2Web'>, <class 'NVDAObjects.IAccessible.IAccessible'>, <class 'NVDAObjects.window.Window'>, <class 'NVDAObjects.NVDAObject'>, <class 'baseObject.ScriptableObject'>, <class 'baseObject.AutoPropertyObject'>, <type 'object'>)
description: None
location: (10, 218, 49, 21)
value: u''
appModule: <'appModuleHandler' (appName u'chrome', process ID 14828) at address 6a2e310>
appModule.productName: u'Google Chrome'
appModule.productVersion: u'62.0.3202.94'
TextInfo: <class 'NVDAObjects.IAccessible.IA2TextTextInfo'>
windowHandle: 722646L
windowClassName: u'Chrome_RenderWidgetHostHWND'
windowControlID: 1041283312
windowStyle: 1445986304
windowThreadID: 14708
windowText: u'Chrome Legacy Window'
displayText: u''
IAccessibleObject: <POINTER(IAccessible2) ptr=0x277fabc at 72dbe90>
IAccessibleChildID: 0
IAccessible event parameters: windowHandle=722646, objectID=-4, childID=-1677
IAccessible accName: u'Woofie'
IAccessible accRole: ROLE_SYSTEM_CELL
IAccessible accState: STATE_SYSTEM_SELECTABLE, STATE_SYSTEM_READONLY, STATE_SYSTEM_VALID (2097216)
IAccessible accDescription: None
IAccessible accValue: u''
IAccessible2 windowHandle: 722646
IAccessible2 uniqueID: -1677
IAccessible2 role: ROLE_SYSTEM_CELL
IAccessible2 states: IA2_STATE_OPAQUE (1024)
IAccessible2 attributes: u'display:table-cell;tag:td;xml-roles:gridcell;'

@feerrenrut
Copy link
Contributor

Related to #7852

@Adriani90
Copy link
Collaborator

In Google Crome it is still reproducible. I cannot navigate to the headers with ctrl+alt+arrow keys. It is also reproducible in IE and MS Edge where table navigation keys don't work at all in this example.

@Adriani90
Copy link
Collaborator

It works as expected now in Chrome 79 with NVDA 2019.3 Beta 1.
Closing as can't fix for IE11.

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

4 participants