[jawsscripts] Re: Where to find the language-specific strings for UIA ControlType IDs?

  • From: Udo Egner-Walter <udo.egner-walter@xxxxxx>
  • To: "jawsscripts@xxxxxxxxxxxxx" <jawsscripts@xxxxxxxxxxxxx>
  • Date: Sat, 20 Oct 2018 09:01:11 +0200

Hi Bob,

good hint. I will test this on Monday at work.

Meanwhile many thanks to you for your help and ideas, I really 
appreciate this.

Udo



Am 19.10.2018 um 23:07 schrieb Bob:

Maybe a parent element has to be selected for the ribbon to become activated?


On 19 Oct 2018, at 21:08, Udo Egner-Walter <udo.egner-walter@xxxxxx> wrote:

Hi Bob,

I tested my script in common apps like Microsoft Word and Outlook,
Internet Explorer and so on. And yes, I can navigate the ribbon in the
office apps with the keyboard. If the script ends the focus is in the
ribbons. JAWS announces that too. JAWS says something like "Copy button
press space or enter to activate the button". But I cannot activate it
let alone navigating through the ribbons. It looks like JAWS is there
and detects it but traps all keys to change the focus.

The JAWS function for detecting activity of the ribbon whereas says
there is no ribbon active. I don't have a clue what's going wrong.

If I cannot fix this I plan to detect if I'm in the ribbon and use the
invoke command only for the ribbons. But I had to do a little research
how to find out that an object is part of a ribbon.

Udo




Am 19.10.2018 um 21:13 schrieb Bob:
Sorry I missed the actual question.

What is the app your testing this in? Can you navigate the ribbon with the 
keyboard in this app natively?
Can you check where focus really is once the script has completed?

Don’t forget that apps are nearly never written well!
I have had selection items that report as allowing multiple that will crash 
the whole app if you attempt to select more than one item. Multi select 
items report themselves as only allowing a single selection.
Had one app the other day that would completely crash if you used 
GetFocusedElement on one screen.
A lot of the time you may be doing nothing wrong but the app is just poor!

Bob


On 19 Oct 2018, at 19:52, Udo Egner-Walter <udo.egner-walter@xxxxxx> wrote:

Hi Bob,

thanks again.

Okay, let me explain a little more. I want do make a script similar to
VoiceOver on the mac. If you press VoiceOver key+I you get a list of
object in the active window. Now you can type a few keys and the list
displays all objects with the name you typed. If you select an object
and press enter the focus is on the object. Now you can do what you
want: read it, activate it, go an object back or forth and so on.

For that reason I want to focus the object. By the way to invoke the
object with oElement.GetInvokePattern().Invoke is no problem, but what
if you have another object like a link or a combobox or to make think
clearer: a checkbox. If you invoke the checkbox the state changes, if
you focus it instead the state is the same as before.

I hope I explained good enough so you can understand my point.

I wonder why setting the focus for example to a checkbox in a window is
no problem but setting the focus inside the ribbons makes trouble. JAWS
announces the focus and I think the focus is there, but I cant execute a
button or move further through the ribbons.

Udo



Am 19.10.2018 um 20:28 schrieb Bob:
Udo

Depending on the element there are lots of ways you can trigger a button.

Element.GetInvokePattern.Invoke
Or
Element.GetIAccessiblePattern.DoDefaultAction
Are two possible methods.

If you have to you can get the position on screen with 
Element.BoundingRectangle.Top etc  and use ClickAtPoint to click it.

There is also something with Element.GetSelectionItemPattern if the 
element supports it but I can’t remember that one off the top of my head.

Bob


On 19 Oct 2018, at 19:07, Udo Egner-Walter <udo.egner-walter@xxxxxx> 
wrote:

Hi Bob,

your suggestion was right, it works great :-)

Thanks again very much!

But I have another problem and wonder, if you can help again. In my
script I retrieve a list of objects. After selecting an object I want to
focus the object on the screen. First I checked with
oElement.IsKeyboardFocusable and if true set the focus with
oElement.SetFocus(). It works great except on ribbons. I can focus the
object in the ribbon and JAWS tells me to activate it with SPACE or
ENTER, but nothing happens. I checked with a function. I don't know the
name exactly but its like IsRibbonActive), but this returns always false.

Do you have any ideas about this?

Udo





Am 18.10.2018 um 19:32 schrieb Bob:
Udo

If your OS is in German does Element.LocalizedControlType not give 
taste?

Bob


On 18 Oct 2018, at 18:09, Udo Egner-Walter <udo.egner-walter@xxxxxx> 
wrote:

Hello,

can someone please tell me, where to find the language-specific strings
for UIA ControlType IDs, defined in UIA.jsh? I mean
"UIA_ButtonControlTypeId" = "Button" in English = "Schaltfläche" in
German. But where can I find the proper German translations. I searched
my JSH and JSM files, but couldn't find them. Can someone please help 
me?

Thanks in advance

Udo

__________�

View the list's information and change your settings at
http://www.freelists.org/list/jawsscripts

__________�

View the list's information and change your settings at
http://www.freelists.org/list/jawsscripts

__________�

View the list's information and change your settings at
http://www.freelists.org/list/jawsscripts

__________�

View the list's information and change your settings at
http://www.freelists.org/list/jawsscripts

__________�

View the list's information and change your settings at
http://www.freelists.org/list/jawsscripts

__________�

View the list's information and change your settings at
http://www.freelists.org/list/jawsscripts

__________�

View the list's information and change your settings at
http://www.freelists.org/list/jawsscripts


__________�

View the list's information and change your settings at
http://www.freelists.org/list/jawsscripts


__________�

View the list's information and change your settings at 
http://www.freelists.org/list/jawsscripts

Other related posts: