Topics

Names of mouse events?

Karl-Otto Rosenqvist
 

Hi!
I'd like to act upon mouse down/click on a control that I have an overlay class for in order to get NVDA to read its contents. I've implemented the event_gainFocus and that works the when the control gets focused regardless of if it's due to a mouse click or tabbing into it. I'd like to make it speak when it already has focus and the user clicks in a different spot on the control.

I haven't found any add-ons or examples on the web that I could learn from, unfortunately, and as far as I know there's no list of events somewhere?


Kind regards

Karl-Otto


--
Karl-Otto Rosenqvist
Mawingu
Orgnr: 750804-3937
0701- 75 98 56
karl-otto@...
https://mawingu.se

James Scholes
 

What exactly are you trying to do? It doesn't seem like it should be NVDA's responsibility to handle mouse input within a separate application, create click targets, etc. The fact that the gain focus event works, and that you can technically create handlers for space and enter to click on stuff from a keyboard perspective, are just side effects of NVDA's inner workings.

Regards,

James Scholes

On 16/10/2019 at 9:18 pm, Karl-Otto Rosenqvist wrote:
Hi!
I'd like to act upon mouse down/click on a control that I have an overlay class for in order to get NVDA to read its contents. I've implemented the event_gainFocus and that works the when the control gets focused regardless of if it's due to a mouse click or tabbing into it. I'd like to make it speak when it already has focus and the user clicks in a different spot on the control.
I haven't found any add-ons or examples on the web that I could learn from, unfortunately, and as far as I know there's no list of events somewhere?
Kind regards
Karl-Otto

Karl-Otto Rosenqvist
 

Hi!
There’s a grid I’m trying to make accessible and if you click on it so it gains focus it speaks its selection. Because I’ve implemented gestures for the arrow keys I make it speak its selection when the user moves around in the grid with the keyboard. I’d like to make it speak if you use the mouse to change the selection so if I could trap the mouse down event I could call my method ReadGridSelection.

An alternative I could assign the SelectionInvalidated UIA event instead. That way I could skip the keyboard gestures and let the UIA event trigger the speech. The problem is that I know how to do this in C# but not how it’s done in an app module in Python and there’s no documentation that I’ve found.


Kind regards

Karl-Otto
0701-75 98 56

Även om det är ett äpple på baksidan så får du inte tugga på min mobil!

16 okt. 2019 kl. 23:12 skrev James Scholes <james@...>:

What exactly are you trying to do? It doesn't seem like it should be NVDA's responsibility to handle mouse input within a separate application, create click targets, etc. The fact that the gain focus event works, and that you can technically create handlers for space and enter to click on stuff from a keyboard perspective, are just side effects of NVDA's inner workings.

Regards,

James Scholes

On 16/10/2019 at 9:18 pm, Karl-Otto Rosenqvist wrote:
Hi!
I'd like to act upon mouse down/click on a control that I have an overlay class for in order to get NVDA to read its contents. I've implemented the event_gainFocus and that works the when the control gets focused regardless of if it's due to a mouse click or tabbing into it. I'd like to make it speak when it already has focus and the user clicks in a different spot on the control.
I haven't found any add-ons or examples on the web that I could learn from, unfortunately, and as far as I know there's no list of events somewhere?
Kind regards
Karl-Otto

derek riemer
 

Can you give us more details on how the selection model and a11y tree appear in the app you're modding? A few things that'll be useful:
mousehandler.py: The mouse handling code, which tracks the mouse.
eventHandler.py: The event tracking and pumping logic.
This is a bit gnarly, so basically, each event, besides the NVDAObject level, receives a next function, conventionally called nextHandler, that dispatches the event to the next part of the system. This way, anything in NVDA can ask to be notified about an event by declaring a method called event_<eventname> taking a self, obj, and nextHandler argument. It can drop the event chain on the floor stopping execution, by ignoring the nextHandler argument, or it can continue the chain of event propagation by calling nextHandler with no arguments. This is why there are no lists of possible events, the function to call is derived on the fly from the event name. When trying to fix mouse handling, you'll want to know about something called hit-testing, which is just fancy language that means given an x,y coordinate on screen, what element is at that coordinate. UIA and IAccessible both can do this, and the LocationHelper classes and TextInfo/obj.location properties will probably help you. I don't know how to help you further at this time, because it depends on how you have things set up.


On Wed, Oct 16, 2019 at 10:56 PM Karl-Otto Rosenqvist <Karl-otto@...> wrote:
Hi!
There’s a grid I’m trying to make accessible and if you click on it so it gains focus it speaks its selection. Because I’ve implemented gestures for the arrow keys I make it speak its selection when the user moves around in the grid with the keyboard. I’d like to make it speak if you use the mouse to change the selection so if I could trap the mouse down event I could call my method ReadGridSelection.

An alternative I could assign the SelectionInvalidated  UIA event instead. That way I could skip the keyboard gestures and let the UIA event trigger the speech. The problem is that I know how to do this in C# but not how it’s done in an app module in Python and there’s no documentation that I’ve found.


Kind regards

Karl-Otto
0701-75 98 56

Även om det är ett äpple på baksidan så får du inte tugga på min mobil!

> 16 okt. 2019 kl. 23:12 skrev James Scholes <james@...>:
>
> What exactly are you trying to do?  It doesn't seem like it should be NVDA's responsibility to handle mouse input within a separate application, create click targets, etc.  The fact that the gain focus event works, and that you can technically create handlers for space and enter to click on stuff from a keyboard perspective, are just side effects of NVDA's inner workings.
>
> Regards,
>
> James Scholes
>
>> On 16/10/2019 at 9:18 pm, Karl-Otto Rosenqvist wrote:
>> Hi!
>> I'd like to act upon mouse down/click on a control that I have an overlay class for in order to get NVDA to read its contents. I've implemented the event_gainFocus and that works the when the control gets focused regardless of if it's due to a mouse click or tabbing into it. I'd like to make it speak when it already has focus and the user clicks in a different spot on the control.
>> I haven't found any add-ons or examples on the web that I could learn from, unfortunately, and as far as I know there's no list of events somewhere?
>> Kind regards
>> Karl-Otto
>
>
>






--
Derek Riemer
Improving the world one byte at a time!        ⠠⠊⠍⠏⠗⠕⠧⠬ ⠮ ⠸⠺ ⠐⠕ ⠃⠽⠞⠑ ⠁⠞ ⠁ ⠐⠞⠖
•    Accessibility enthusiast.
•    Proud user of the NVDA screen reader.
•    Open source enthusiast.
•    Skier.

•    Personal website: https://derekriemer.com




Karl-Otto Rosenqvist
 

Hi!
Thanks for your 

Karl-Otto
0701-75 98 56

Även om det är ett äpple på baksidan så får du inte tugga på min mobil!

18 okt. 2019 kl. 04:06 skrev derek riemer <driemer.riemer@...>:


Can you give us more details on how the selection model and a11y tree appear in the app you're modding? A few things that'll be useful:
mousehandler.py: The mouse handling code, which tracks the mouse.
eventHandler.py: The event tracking and pumping logic.
This is a bit gnarly, so basically, each event, besides the NVDAObject level, receives a next function, conventionally called nextHandler, that dispatches the event to the next part of the system. This way, anything in NVDA can ask to be notified about an event by declaring a method called event_<eventname> taking a self, obj, and nextHandler argument. It can drop the event chain on the floor stopping execution, by ignoring the nextHandler argument, or it can continue the chain of event propagation by calling nextHandler with no arguments. This is why there are no lists of possible events, the function to call is derived on the fly from the event name. When trying to fix mouse handling, you'll want to know about something called hit-testing, which is just fancy language that means given an x,y coordinate on screen, what element is at that coordinate. UIA and IAccessible both can do this, and the LocationHelper classes and TextInfo/obj.location properties will probably help you. I don't know how to help you further at this time, because it depends on how you have things set up.

On Wed, Oct 16, 2019 at 10:56 PM Karl-Otto Rosenqvist <Karl-otto@...> wrote:
Hi!
There’s a grid I’m trying to make accessible and if you click on it so it gains focus it speaks its selection. Because I’ve implemented gestures for the arrow keys I make it speak its selection when the user moves around in the grid with the keyboard. I’d like to make it speak if you use the mouse to change the selection so if I could trap the mouse down event I could call my method ReadGridSelection.

An alternative I could assign the SelectionInvalidated  UIA event instead. That way I could skip the keyboard gestures and let the UIA event trigger the speech. The problem is that I know how to do this in C# but not how it’s done in an app module in Python and there’s no documentation that I’ve found.


Kind regards

Karl-Otto
0701-75 98 56

Även om det är ett äpple på baksidan så får du inte tugga på min mobil!

> 16 okt. 2019 kl. 23:12 skrev James Scholes <james@...>:
>
> What exactly are you trying to do?  It doesn't seem like it should be NVDA's responsibility to handle mouse input within a separate application, create click targets, etc.  The fact that the gain focus event works, and that you can technically create handlers for space and enter to click on stuff from a keyboard perspective, are just side effects of NVDA's inner workings.
>
> Regards,
>
> James Scholes
>
>> On 16/10/2019 at 9:18 pm, Karl-Otto Rosenqvist wrote:
>> Hi!
>> I'd like to act upon mouse down/click on a control that I have an overlay class for in order to get NVDA to read its contents. I've implemented the event_gainFocus and that works the when the control gets focused regardless of if it's due to a mouse click or tabbing into it. I'd like to make it speak when it already has focus and the user clicks in a different spot on the control.
>> I haven't found any add-ons or examples on the web that I could learn from, unfortunately, and as far as I know there's no list of events somewhere?
>> Kind regards
>> Karl-Otto
>
>
>






--
Derek Riemer
Improving the world one byte at a time!        ⠠⠊⠍⠏⠗⠕⠧⠬ ⠮ ⠸⠺ ⠐⠕ ⠃⠽⠞⠑ ⠁⠞ ⠁ ⠐⠞⠖
•    Accessibility enthusiast.
•    Proud user of the NVDA screen reader.
•    Open source enthusiast.
•    Skier.

•    Personal website: https://derekriemer.com




Karl-Otto Rosenqvist
 

Hi!
I was interested in triggering my readCurrentRow() method when the user clicked in the control I’ve encapsulated in a custom class.
I was able, with the help of Joseph Lee, to implement the UIAutmationSelectionInvalidated event thus handling the mouse clicks aren’t necessary at this time anymore.

On the other hand, it would be nice if I could do some hit testing on the custom control so the user can get info about what’s below the cursor without having to click.

Where can I get info about the params that comes with eventMouseMove() or what it’s called? I’m getting better at understanding the source as my understanding of Python and NVDA gets better.


Kind regards
Karl-Otto
0701-75 98 56

Även om det är ett äpple på baksidan så får du inte tugga på min mobil!

18 okt. 2019 kl. 04:06 skrev derek riemer <driemer.riemer@...>:


Can you give us more details on how the selection model and a11y tree appear in the app you're modding? A few things that'll be useful:
mousehandler.py: The mouse handling code, which tracks the mouse.
eventHandler.py: The event tracking and pumping logic.
This is a bit gnarly, so basically, each event, besides the NVDAObject level, receives a next function, conventionally called nextHandler, that dispatches the event to the next part of the system. This way, anything in NVDA can ask to be notified about an event by declaring a method called event_<eventname> taking a self, obj, and nextHandler argument. It can drop the event chain on the floor stopping execution, by ignoring the nextHandler argument, or it can continue the chain of event propagation by calling nextHandler with no arguments. This is why there are no lists of possible events, the function to call is derived on the fly from the event name. When trying to fix mouse handling, you'll want to know about something called hit-testing, which is just fancy language that means given an x,y coordinate on screen, what element is at that coordinate. UIA and IAccessible both can do this, and the LocationHelper classes and TextInfo/obj.location properties will probably help you. I don't know how to help you further at this time, because it depends on how you have things set up.

On Wed, Oct 16, 2019 at 10:56 PM Karl-Otto Rosenqvist <Karl-otto@...> wrote:
Hi!
There’s a grid I’m trying to make accessible and if you click on it so it gains focus it speaks its selection. Because I’ve implemented gestures for the arrow keys I make it speak its selection when the user moves around in the grid with the keyboard. I’d like to make it speak if you use the mouse to change the selection so if I could trap the mouse down event I could call my method ReadGridSelection.

An alternative I could assign the SelectionInvalidated  UIA event instead. That way I could skip the keyboard gestures and let the UIA event trigger the speech. The problem is that I know how to do this in C# but not how it’s done in an app module in Python and there’s no documentation that I’ve found.


Kind regards

Karl-Otto
0701-75 98 56

Även om det är ett äpple på baksidan så får du inte tugga på min mobil!

> 16 okt. 2019 kl. 23:12 skrev James Scholes <james@...>:
>
> What exactly are you trying to do?  It doesn't seem like it should be NVDA's responsibility to handle mouse input within a separate application, create click targets, etc.  The fact that the gain focus event works, and that you can technically create handlers for space and enter to click on stuff from a keyboard perspective, are just side effects of NVDA's inner workings.
>
> Regards,
>
> James Scholes
>
>> On 16/10/2019 at 9:18 pm, Karl-Otto Rosenqvist wrote:
>> Hi!
>> I'd like to act upon mouse down/click on a control that I have an overlay class for in order to get NVDA to read its contents. I've implemented the event_gainFocus and that works the when the control gets focused regardless of if it's due to a mouse click or tabbing into it. I'd like to make it speak when it already has focus and the user clicks in a different spot on the control.
>> I haven't found any add-ons or examples on the web that I could learn from, unfortunately, and as far as I know there's no list of events somewhere?
>> Kind regards
>> Karl-Otto
>
>
>






--
Derek Riemer
Improving the world one byte at a time!        ⠠⠊⠍⠏⠗⠕⠧⠬ ⠮ ⠸⠺ ⠐⠕ ⠃⠽⠞⠑ ⠁⠞ ⠁ ⠐⠞⠖
•    Accessibility enthusiast.
•    Proud user of the NVDA screen reader.
•    Open source enthusiast.
•    Skier.

•    Personal website: https://derekriemer.com




derek riemer
 

I think event_mouseMove might be a thing.

On Sat, Oct 19, 2019 at 6:51 AM Karl-Otto Rosenqvist <Karl-otto@...> wrote:
Hi!
I was interested in triggering my readCurrentRow() method when the user clicked in the control I’ve encapsulated in a custom class.
I was able, with the help of Joseph Lee, to implement the UIAutmationSelectionInvalidated event thus handling the mouse clicks aren’t necessary at this time anymore.

On the other hand, it would be nice if I could do some hit testing on the custom control so the user can get info about what’s below the cursor without having to click.

Where can I get info about the params that comes with eventMouseMove() or what it’s called? I’m getting better at understanding the source as my understanding of Python and NVDA gets better.


Kind regards
Karl-Otto
0701-75 98 56

Även om det är ett äpple på baksidan så får du inte tugga på min mobil!

18 okt. 2019 kl. 04:06 skrev derek riemer <driemer.riemer@...>:


Can you give us more details on how the selection model and a11y tree appear in the app you're modding? A few things that'll be useful:
mousehandler.py: The mouse handling code, which tracks the mouse.
eventHandler.py: The event tracking and pumping logic.
This is a bit gnarly, so basically, each event, besides the NVDAObject level, receives a next function, conventionally called nextHandler, that dispatches the event to the next part of the system. This way, anything in NVDA can ask to be notified about an event by declaring a method called event_<eventname> taking a self, obj, and nextHandler argument. It can drop the event chain on the floor stopping execution, by ignoring the nextHandler argument, or it can continue the chain of event propagation by calling nextHandler with no arguments. This is why there are no lists of possible events, the function to call is derived on the fly from the event name. When trying to fix mouse handling, you'll want to know about something called hit-testing, which is just fancy language that means given an x,y coordinate on screen, what element is at that coordinate. UIA and IAccessible both can do this, and the LocationHelper classes and TextInfo/obj.location properties will probably help you. I don't know how to help you further at this time, because it depends on how you have things set up.

On Wed, Oct 16, 2019 at 10:56 PM Karl-Otto Rosenqvist <Karl-otto@...> wrote:
Hi!
There’s a grid I’m trying to make accessible and if you click on it so it gains focus it speaks its selection. Because I’ve implemented gestures for the arrow keys I make it speak its selection when the user moves around in the grid with the keyboard. I’d like to make it speak if you use the mouse to change the selection so if I could trap the mouse down event I could call my method ReadGridSelection.

An alternative I could assign the SelectionInvalidated  UIA event instead. That way I could skip the keyboard gestures and let the UIA event trigger the speech. The problem is that I know how to do this in C# but not how it’s done in an app module in Python and there’s no documentation that I’ve found.


Kind regards

Karl-Otto
0701-75 98 56

Även om det är ett äpple på baksidan så får du inte tugga på min mobil!

> 16 okt. 2019 kl. 23:12 skrev James Scholes <james@...>:
>
> What exactly are you trying to do?  It doesn't seem like it should be NVDA's responsibility to handle mouse input within a separate application, create click targets, etc.  The fact that the gain focus event works, and that you can technically create handlers for space and enter to click on stuff from a keyboard perspective, are just side effects of NVDA's inner workings.
>
> Regards,
>
> James Scholes
>
>> On 16/10/2019 at 9:18 pm, Karl-Otto Rosenqvist wrote:
>> Hi!
>> I'd like to act upon mouse down/click on a control that I have an overlay class for in order to get NVDA to read its contents. I've implemented the event_gainFocus and that works the when the control gets focused regardless of if it's due to a mouse click or tabbing into it. I'd like to make it speak when it already has focus and the user clicks in a different spot on the control.
>> I haven't found any add-ons or examples on the web that I could learn from, unfortunately, and as far as I know there's no list of events somewhere?
>> Kind regards
>> Karl-Otto
>
>
>






--
Derek Riemer
Improving the world one byte at a time!        ⠠⠊⠍⠏⠗⠕⠧⠬ ⠮ ⠸⠺ ⠐⠕ ⠃⠽⠞⠑ ⠁⠞ ⠁ ⠐⠞⠖
•    Accessibility enthusiast.
•    Proud user of the NVDA screen reader.
•    Open source enthusiast.
•    Skier.

•    Personal website: https://derekriemer.com






--
Derek Riemer
Improving the world one byte at a time!        ⠠⠊⠍⠏⠗⠕⠧⠬ ⠮ ⠸⠺ ⠐⠕ ⠃⠽⠞⠑ ⠁⠞ ⠁ ⠐⠞⠖
•    Accessibility enthusiast.
•    Proud user of the NVDA screen reader.
•    Open source enthusiast.
•    Skier.

•    Personal website: https://derekriemer.com




derek riemer
 

Yeah, take a look in the def executeMouseMoveEvent(x,y): function of mouseHandler.py to see where the mouseMove event is fired. Your definition is going to look like

def event_mouseMove(self, x, y): for an overlay, or def event_mouseMove(self, obj, nextHandler, x, y): for any other object.


On Sat, Oct 19, 2019 at 3:29 PM Derek Riemer <driemer.riemer@...> wrote:
I think event_mouseMove might be a thing.

On Sat, Oct 19, 2019 at 6:51 AM Karl-Otto Rosenqvist <Karl-otto@...> wrote:
Hi!
I was interested in triggering my readCurrentRow() method when the user clicked in the control I’ve encapsulated in a custom class.
I was able, with the help of Joseph Lee, to implement the UIAutmationSelectionInvalidated event thus handling the mouse clicks aren’t necessary at this time anymore.

On the other hand, it would be nice if I could do some hit testing on the custom control so the user can get info about what’s below the cursor without having to click.

Where can I get info about the params that comes with eventMouseMove() or what it’s called? I’m getting better at understanding the source as my understanding of Python and NVDA gets better.


Kind regards
Karl-Otto
0701-75 98 56

Även om det är ett äpple på baksidan så får du inte tugga på min mobil!

18 okt. 2019 kl. 04:06 skrev derek riemer <driemer.riemer@...>:


Can you give us more details on how the selection model and a11y tree appear in the app you're modding? A few things that'll be useful:
mousehandler.py: The mouse handling code, which tracks the mouse.
eventHandler.py: The event tracking and pumping logic.
This is a bit gnarly, so basically, each event, besides the NVDAObject level, receives a next function, conventionally called nextHandler, that dispatches the event to the next part of the system. This way, anything in NVDA can ask to be notified about an event by declaring a method called event_<eventname> taking a self, obj, and nextHandler argument. It can drop the event chain on the floor stopping execution, by ignoring the nextHandler argument, or it can continue the chain of event propagation by calling nextHandler with no arguments. This is why there are no lists of possible events, the function to call is derived on the fly from the event name. When trying to fix mouse handling, you'll want to know about something called hit-testing, which is just fancy language that means given an x,y coordinate on screen, what element is at that coordinate. UIA and IAccessible both can do this, and the LocationHelper classes and TextInfo/obj.location properties will probably help you. I don't know how to help you further at this time, because it depends on how you have things set up.

On Wed, Oct 16, 2019 at 10:56 PM Karl-Otto Rosenqvist <Karl-otto@...> wrote:
Hi!
There’s a grid I’m trying to make accessible and if you click on it so it gains focus it speaks its selection. Because I’ve implemented gestures for the arrow keys I make it speak its selection when the user moves around in the grid with the keyboard. I’d like to make it speak if you use the mouse to change the selection so if I could trap the mouse down event I could call my method ReadGridSelection.

An alternative I could assign the SelectionInvalidated  UIA event instead. That way I could skip the keyboard gestures and let the UIA event trigger the speech. The problem is that I know how to do this in C# but not how it’s done in an app module in Python and there’s no documentation that I’ve found.


Kind regards

Karl-Otto
0701-75 98 56

Även om det är ett äpple på baksidan så får du inte tugga på min mobil!

> 16 okt. 2019 kl. 23:12 skrev James Scholes <james@...>:
>
> What exactly are you trying to do?  It doesn't seem like it should be NVDA's responsibility to handle mouse input within a separate application, create click targets, etc.  The fact that the gain focus event works, and that you can technically create handlers for space and enter to click on stuff from a keyboard perspective, are just side effects of NVDA's inner workings.
>
> Regards,
>
> James Scholes
>
>> On 16/10/2019 at 9:18 pm, Karl-Otto Rosenqvist wrote:
>> Hi!
>> I'd like to act upon mouse down/click on a control that I have an overlay class for in order to get NVDA to read its contents. I've implemented the event_gainFocus and that works the when the control gets focused regardless of if it's due to a mouse click or tabbing into it. I'd like to make it speak when it already has focus and the user clicks in a different spot on the control.
>> I haven't found any add-ons or examples on the web that I could learn from, unfortunately, and as far as I know there's no list of events somewhere?
>> Kind regards
>> Karl-Otto
>
>
>






--
Derek Riemer
Improving the world one byte at a time!        ⠠⠊⠍⠏⠗⠕⠧⠬ ⠮ ⠸⠺ ⠐⠕ ⠃⠽⠞⠑ ⠁⠞ ⠁ ⠐⠞⠖
•    Accessibility enthusiast.
•    Proud user of the NVDA screen reader.
•    Open source enthusiast.
•    Skier.

•    Personal website: https://derekriemer.com






--
Derek Riemer
Improving the world one byte at a time!        ⠠⠊⠍⠏⠗⠕⠧⠬ ⠮ ⠸⠺ ⠐⠕ ⠃⠽⠞⠑ ⠁⠞ ⠁ ⠐⠞⠖
•    Accessibility enthusiast.
•    Proud user of the NVDA screen reader.
•    Open source enthusiast.
•    Skier.

•    Personal website: https://derekriemer.com






--
Derek Riemer
Improving the world one byte at a time!        ⠠⠊⠍⠏⠗⠕⠧⠬ ⠮ ⠸⠺ ⠐⠕ ⠃⠽⠞⠑ ⠁⠞ ⠁ ⠐⠞⠖
•    Accessibility enthusiast.
•    Proud user of the NVDA screen reader.
•    Open source enthusiast.
•    Skier.

•    Personal website: https://derekriemer.com




Pettyjohn, Chris G. (FTC)
 

Hi Karl-Otto,
  Would you mind sharing your code for readCurrentRow(). I have a grid that i will eventually need to write some code for.  The selected row is not speaking when navigating with arrow keys.  Your code might be useful to me.
thanks,
 Chris

Karl-Otto Rosenqvist
 

Hi!
I take no responsibility for what this code does...
I've been writing code for over two decages but Python...? No, just started and it starts to, perhaps, be more readable but I can't say that I'm comfortable.

I think you have to poke around witht the Python Console and inspect the grid and where you can find the data you're looking for.
The grid I'm working with lacs implementation of the SelectionItemPattern and GridItemPattern and that forces me to get the data from the SelectionPattern and right now there's a bug so it contains the data for the current row + 1... and when the grid isn't full row select mode you don't get the same SelectionInvalidated events...
Yea, I'm pounding on the company that creates this application so they can get their head out of their ... and fix this in their upcoming release that's scheduled for mid november.

Hope you can get anything out of the code.


Cheers!

Karl-Otto


Karl-Otto Rosenqvist
Mawingu
Orgnr: 750804-3937
0701- 75 98 56
karl-otto@...
https://mawingu.se

Den 2019-10-23 kl. 15:51, skrev Pettyjohn, Chris G. (FTC) via Groups.Io:

Hi Karl-Otto,
  Would you mind sharing your code for readCurrentRow(). I have a grid that i will eventually need to write some code for.  The selected row is not speaking when navigating with arrow keys.  Your code might be useful to me.
thanks,
 Chris

Pettyjohn, Chris G. (FTC)
 

thanks