Issue 70872 - [a11y] Various state of UI widgets do not send a11y events.
Summary: [a11y] Various state of UI widgets do not send a11y events.
Status: CLOSED FIXED
Alias: None
Product: General
Classification: Code
Component: ui (show other issues)
Version: OOo 2.0.4
Hardware: All All
: P2 Trivial (vote)
Target Milestone: OOo 3.0
Assignee: eric.savary
QA Contact: issues@framework
URL:
Keywords: accessibility
Depends on:
Blocks:
 
Reported: 2006-10-26 00:09 UTC by richburridge
Modified: 2009-07-20 14:55 UTC (History)
8 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description richburridge 2006-10-26 00:09:48 UTC
See also Orca bug #363830.
http://bugzilla.gnome.org/show_bug.cgi?id=363830

There are a variety of nice keyboard shortcuts in OOo such as:

toggle bold - control-B
toggle underlining - control-U
toggle italics - control-I

Alignment-related:  Control+{L, R, E, J}
Heading-related:  Control+{1, 2, 3}
Revert to default style: Control+0

When the user types these, the state of the equivalent
widget in the UI gets toggled.

We do not receive any accessibility events when that toggling happens.
We need that to inform the user of the current state of that option.
Comment 1 michael.ruess 2006-10-26 06:25:41 UTC
Reassigned to ES.
Comment 2 eric.savary 2006-10-26 11:16:55 UTC
ES->OBR: Please have a look.
Comment 3 nospam4obr 2006-10-26 12:26:19 UTC
@pl: do we already have a corresponding VCLEVENT_ for this ? If so, which one ?
Comment 4 philipp.lohmann 2006-10-26 12:42:06 UTC
VCLEVENT_WINDOW_KEYINPUT, VCLEVENT_WINDOW_KEYUP ? I must admit that I don't have
the slightest idea who handles these shortcuts.
Comment 5 nospam4obr 2006-10-27 08:59:23 UTC
Well, these are the obvious (but unusable) ones. I was more referring to some
"toggle button switched state" event, which probably needs to get mapped to some
accessibility event in the UNO toolkit a11y implementation.
Comment 6 nospam4obr 2006-10-27 12:51:02 UTC
@pb: it seetms that VCLEVENT_TOOLBOX_CLICK is not send in this case (and not the
appropriate name either ;-)).
Comment 7 joaniediggs 2007-02-03 19:44:17 UTC
ping. :-)

There have been a lot of awesome improvements in 2.2-dev in the area of exposing
text attributes (THANK YOU!!!).  Any chance of squeezing in a fix for this one
for 2.2 as well?

Thanks in advance!
Comment 8 pb 2007-02-05 08:30:34 UTC
@joaniediggs: no chance because 2.2 is almost finished and the target milestone
of this task is 3.0.
Comment 9 Mathias_Bauer 2007-03-20 18:09:27 UTC
target 2.3
Comment 10 malte_timmermann 2007-04-25 18:58:24 UTC
What about adding some VCLEVENT_TOOLBOX_BUTTONSTATECHANGED?
Comment 11 joaniediggs 2007-07-25 19:32:42 UTC
Regarding VCLEVENT_TOOLBOX_BUTTONSTATECHANGED:  I, of course, couldn't tell you.
 :-)

However, just looking at the event name, I figured I'd ask:  Will that also
cause us to get events for the paragraph style, font name, and font size combo
boxes?  For instance, when the user presses Control+{1, 2, 3} the selected item
in those controls change.  We're not getting events for those changes.
Comment 12 pb 2007-08-01 14:49:48 UTC
pb: too late for 2.3 -> 2.4.
Comment 13 mdxonefour 2007-08-24 18:21:38 UTC
added myself to cc
Comment 14 mdxonefour 2007-08-27 09:47:30 UTC
MD: Due to the severity of this issue I raise the priority to P2.
Comment 15 Mathias_Bauer 2007-08-27 13:18:02 UTC
I think sending the events is doable.

@joaniediggs: if we do it correctly you should get these events for every change
in any toolbar item; we just would send them each time our toolbar control gets
a new status.

Are all people involved with getting these events each time when the status
changes, regardless what source changed the status? Each cursor movement could
trigger the same events.
Comment 16 joaniediggs 2007-08-30 04:27:49 UTC
> Each cursor movement could trigger the same 
> events.

I assume that a cursor movement would only trigger the event if the status has
changed.  For instance, given "This is bold text" where "bold" is formatted to
be bold and the rest of the text is not: If I started arrowing from "This"
towards "bold" I would expect the following:

1. An event to let me know that the bold toggle button was checked when I moved
from the space before "bold" to the "b" of "bold."

2. An event to let me know that the bold toggle button was unchecked when I
moved from the "d" of "bold" to the space that follows "bold".

I would NOT expect events for the bold toggle button as I arrowed from "b" to
"o" to "l" to "d".

If this is what you mean, then, I for one would be very grateful for these
events.  Personally, I think it is up to the application (OOo) to expose the
information everyone (else) has access to.  (When I arrow to the "b" of "bold" I
visually see that toggle button change appearance).  It is up to the assistive
technologies (Orca) to decide if/how to present that information to the end user.

BTW, thanks for the priority bump MD!!  Not having these events is a significant
problem for users who are blind. :-(
Comment 17 Mathias_Bauer 2007-08-30 07:20:46 UTC
Fine, so it looks as we can do it by just forwarding all status updates a
toolbar controller receives. 
Comment 18 Mathias_Bauer 2008-01-14 09:05:06 UTC
Carsten, please take over
Comment 19 carsten.driesner 2008-01-14 13:59:00 UTC
cd: Started.
Comment 20 nospam4obr 2008-01-16 13:01:16 UTC
Ok, I have committed my part of the fix: the UNO <-> ATK bridge now creates the
wrapper objects on the newly introduced VCLEVENT_TOOLBOX_BUTTONSTATECHANGED, so
the state change events are now bridged properly.

During my tests I noticed that OOo frequently crashes when closed while having
accerciser event logging turned on, but as this doesn't seem to happen with orca
and is also reproducible on the master, I have submitted issue 85292 for this.

Comment 21 carsten.driesner 2008-01-16 15:02:47 UTC
cd: Fixed.
Comment 22 carsten.driesner 2008-01-25 12:34:19 UTC
cd->es: Please verify on CWS.
Comment 23 eric.savary 2008-01-25 16:18:25 UTC
Verified in CWS fwk83
Comment 24 richburridge 2008-03-17 19:18:21 UTC
This is now working well for:

toggle bold - control-B
toggle underlining - control-U
toggle italics - control-I

But is not working for things like:

Alignment-related:  Control+{L, R, E, J}
Heading-related:  Control+{1, 2, 3}
Revert to default style: Control+0

See comments in Orca bug #404046
http://bugzilla.gnome.org/show_bug.cgi?id=404046

Reopening for further evaluation by the OOo team.
Comment 25 eric.savary 2008-03-18 14:54:47 UTC
Testing with AT-POKE:

Controls (buttons) like reft, right, centered, justified do send state event
("checked" in at-poke) when pressing the corresponding shortcuts -> cannot
reproduce.

Controls (combo boxes) like style, Font, Font size don't send their content changes.

- Changing summary because it ist not related to the shortcuts, but to the controls
- Retargetting -> 3.0
Comment 26 nospam4obr 2008-04-16 21:03:19 UTC
The previously defined event gets only fired for real toolbar buttons, but not
for combo boxes in toolbars. So at the time the selected entry changes, no
wrapper object has been created and thus no XAccessibilityEventListener is
attached to that object yet.
Comment 27 Mathias_Bauer 2008-04-21 16:14:00 UTC
changed component
Comment 28 nospam4obr 2008-06-06 21:23:25 UTC
I introduced a new event VCLEVENT_COMBOBOX_SETTEXT, which triggers the creation
of wrappers for the list and the edit child objects of the combo-box.

However, since the list items seem to get thrown away and recreated every time,
the only reliable seems to be the object:text-changed events emitted by the
combo box edit field.

Fixed in CWS aqua11y02.
Comment 29 nospam4obr 2008-06-24 07:46:03 UTC
Re-assigned to QA for verification.
Comment 30 eric.savary 2008-07-21 15:57:31 UTC
Verified in CWS aqua11y02 using:
- accersizer - event monitor - source: selected application - Event:
object:text-changed
- Paragraph 1: Style: Default ; Font name: Times ; Font size: 12
- Paragraph 2: Style: Heading 1 ; Font name: Arial ; Font size: 24

All 3 combo boxes delever the correct text-change events.
Comment 31 thorsten.ziehm 2009-07-20 14:55:46 UTC
This issue is closed automatically and wasn't rechecked in a current version of
OOo. The fixed issue should be integrated in OOo since more than half a year. If
you think this issue isn't fixed in a current version (OOo 3.1), please reopen
it and change the field 'Target Milestone' accordingly.

If you want to download a current version of OOo =>
http://download.openoffice.org/index.html
If you want to know more about the handling of fixed/verified issues =>
http://wiki.services.openoffice.org/wiki/Handle_fixed_verified_issues