-
-
Notifications
You must be signed in to change notification settings - Fork 669
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
Unable to implement fake table navigation in a list #10864
Comments
I did not yet provide a PR to fix this because I would like to agree on what should be implemented: change RowWithoutCellObjects._getColumnLocation documentation to so that its implementation should be mandatory or change _FakeTableCell._get_state implementation. @LeonarddeR, since you have implemented the commit, could you provide feedback on the alternative you would prefer? You could also comment on the nav object highlight question. |
CC @LeonarddeR
From: CyrilleB79 <notifications@github.com>
Sent: Tuesday, March 10, 2020 2:36 AM
To: nvaccess/nvda <nvda@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Subject: [nvaccess/nvda] Unable to implement fake table navigation in a list (#10864)
Steps to reproduce:
In my Outlook Extended add-on V1.4, I have implemented fake table navigation in the address book results list by creating a custom class inheriting from RowWithoutCellObjects and RowWithFakeNavigation from behaviors.py.
This class implements the required method _getColumnContent as well as the optional method _getColumnHeader.
This was working with NVDA 2019.2 as well as with early Py3 alpha versions. However, this feature was broken in NVDA 2019.3.
Although documented as optional, I have had to implement _getColumnLocation to fix the issue (fixed in V1.5).
Actual behavior:
RowWithoutCellObjects._getColumnLocation is documented as optional in behaviors.py
Expected behavior:
RowWithoutCellObjects._getColumnLocation implementation in subclasses should be documented as mandatory.
An other alternative would be not to add INVISIBLE state to a _FakeTableCell if _FakeTableCell._get_location does not return a location (i.e. returns None). I do not know however how the navigator object highlight would behave in this case.
Technical background
This doc mismatch was introduced with the following commit:
Author: Leonard de Ruijter <leonardder@users.noreply.github.com>
Date: Tue Sep 17 09:11:21 2019 +0200
Hide invisible columns in syslistview32 lists (#9873)
System configuration
NVDA installed/portable/running from source:
installed
NVDA version:
2019.3.1
Windows version:
10
Name and version of other software in use when reproducing the issue:
N/A
Other information about your system:
N/A
Other questions
Does the issue still occur after restarting your computer?
yes
Have you tried any other versions of NVDA? If so, please report their behaviors.
Yes. NVDA2019.2.1 is OK.
If addons are disabled, is your problem still occuring?
N/A
Did you try to run the COM registry fixing tool in NVDA menu / tools?
N/A
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub <#10864?email_source=notifications&email_token=AB4AXEFQY66JNRDG5TUN62TRGYCY7A5CNFSM4LE2VXRKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4IT2NQBQ> , or unsubscribe <https://github.com/notifications/unsubscribe-auth/AB4AXEAOZYLPGCAWH6Q5CSTRGYCY7ANCNFSM4LE2VXRA> .
|
Ugh, this side effect was unintended. I think a solution should be among the lines of:uggest
|
Yes, after studying a little more the issue:
You write:
Not sure to understand what you mean and how beTransparentToMouse is working. At which level do you suggest this change? Only in fake cells or for any NVDAObject? |
We may follow this discussion in the PR (#10868) since we are already talking of code details. |
Steps to reproduce:
In my Outlook Extended add-on V1.4, I have implemented fake table navigation in the address book results list by creating a custom class inheriting from RowWithoutCellObjects and RowWithFakeNavigation from behaviors.py.
This class implements the required method _getColumnContent as well as the optional method _getColumnHeader.
This was working with NVDA 2019.2 as well as with early Py3 alpha versions. However, this feature was broken in NVDA 2019.3.
Although documented as optional, I have had to implement _getColumnLocation to fix the issue (fixed in V1.5).
Actual behavior:
RowWithoutCellObjects._getColumnLocation is documented as optional in behaviors.py
Expected behavior:
RowWithoutCellObjects._getColumnLocation implementation in subclasses should be documented as mandatory.
An other alternative would be not to add INVISIBLE state to a _FakeTableCell if _FakeTableCell._get_location does not return a location (i.e. returns None). I do not know however how the navigator object highlight would behave in this case.
Technical background
This doc mismatch was introduced with the following commit:
System configuration
NVDA installed/portable/running from source:
installed
NVDA version:
2019.3.1
Windows version:
10
Name and version of other software in use when reproducing the issue:
N/A
Other information about your system:
N/A
Other questions
Does the issue still occur after restarting your computer?
yes
Have you tried any other versions of NVDA? If so, please report their behaviors.
Yes. NVDA2019.2.1 is OK.
If addons are disabled, is your problem still occuring?
N/A
Did you try to run the COM registry fixing tool in NVDA menu / tools?
N/A
The text was updated successfully, but these errors were encountered: