Re: UAIG Menu events

Matt,

This is reproducing the menu events that an OS platform expects to be
generated for a menubar and popup menu.

In the case of a mega menu you will not get a MENU_POPUPEND until it goes
away. So, as long as it is persistent and it is indeed a menu there should
not be an issue.

Menu mode is specific to menu bars and they are supposed to behave like
they do on an OS platform. If we need to do something different then we
need to change things in ARIA 1.1 as this would impact the native platform.

Rich


Rich Schwerdtfeger



From:	Matthew King/Fishkill/IBM
To:	Richard Schwerdtfeger/Austin/IBM@IBMUS,
Cc:	W3C WAI Protocols & Formats <public-pfwg@w3.org>
Date:	10/30/2013 05:00 PM
Subject:	Re: UAIG Menu events


Rich,

Is there something implied (or explicit that I have missed) in the spec
that menus must close? Wouldn't the spec support a persistent menu, i.e., a
list of links that is navigated with arrow keys? This is distinctly
different from a listbox in presentation. The user would enter the menu
with tab and leave with tab so a focus change would end menu mode.

A mega menu pattern we have used is to put a series of persistent menus,
along with other widgets in a dialog. Each of the menus in the mega menu
dialog is persistent. And, if the user tabs to a search field or some
information that is in the dialog, the AT would not be in menu mode. This
enables a very efficient keyboard experience since each menu is only one
tab stop.

Matt King
IBM Senior Technical Staff Member
I/T Chief Accessibility Strategist
IBM BT/CIO - Global Workforce and Web Process Enablement
Phone: (503) 578-2329, Tie line: 731-7398
mattking@us.ibm.com




From:	Richard Schwerdtfeger/Austin/IBM@IBMUS
To:	Joseph Scheuhammer <clown@alum.mit.edu>,
Cc:	Cynthia Shelly <cyns@exchange.microsoft.com>, W3C WAI Protocols
            & Formats <public-pfwg@w3.org>, Alexander Surkov
            <surkov.alexander@gmail.com>
Date:	10/30/2013 01:57 PM
Subject:	Re: UAIG Menu events



It should be up to the author to close the menu when the user moves focus
away.

Rich


Rich Schwerdtfeger

Inactive hide details for Joseph Scheuhammer ---10/30/2013 02:39:59 PM---On
2013-10-30 3:29 PM, Richard Schwerdtfeger wrote: thJoseph Scheuhammer
---10/30/2013 02:39:59 PM---On 2013-10-30 3:29 PM, Richard Schwerdtfeger
wrote: that works.  With that in mind, here's the lates

From: Joseph Scheuhammer <clown@alum.mit.edu>
To: Richard Schwerdtfeger/Austin/IBM@IBMUS, Joseph Scheuhammer
<clown@alum.mit.edu>,
Cc: Cynthia Shelly <cyns@exchange.microsoft.com>, W3C WAI Protocols &
Formats <public-pfwg@w3.org>, Alexander Surkov <surkov.alexander@gmail.com>
Date: 10/30/2013 02:39 PM
Subject: Re: UAIG Menu events



On 2013-10-30 3:29 PM, Richard Schwerdtfeger wrote:
      that works.



With that in mind, here's the latest.  Still waiting on Cynthia for advice
about how to combine rows 5 and 6.

However, the fact that the old text MSAA text for row 6 said, "clear menu
mode", the implication is that the user has moved away from the menu bar,
and not simply moved focus out of a menu, leaving it open.
|------------------------------------+------------------------------+---------------------------------------->
|              Scenario              |             MSAA             |             Microsoft UIA              |
|------------------------------------+------------------------------+---------------------------------------->
  >--------------------------------------------|
  |                  Mac OS X                  |
  >--------------------------------------------|
|------------------------------------+------------------------------+---------------------------------------->
|      Menubar is currently not      |      Activate the menu bar   |      MenuModeStartEvent on the         |
|      active, and user moves focus  |      and fire                |      accessible object for the menu    |
|      to the menubar from elsewhere |      EVENT_SYSTEM_MENUSTART  |                                        |
|      thereby activating it. As a   |      on the accessible object|                                        |
|      result, a menuitem in the     |      for the menubar.        |                                        |
|      menubar is focused.           |                              |                                        |
|                                    |                              |                                        |
|                                    |                              |                                        |
|      Menubar must a DOM parent of  |                              |                                        |
|      the menuitems or one defined  |                              |                                        |
|      by aria-owns.                 |                              |                                        |
|------------------------------------+------------------------------+---------------------------------------->
  >--------------------------------------------|
  |      AXMenuOpenedNotification              |
  >--------------------------------------------|
|------------------------------------+------------------------------+---------------------------------------->
|      Focus a menu item while       |      EVENT_OBJECT_FOCUS      |      AutomationFocusChangedEvent       |
|      menubar is activated.         |                              |                                        |
|------------------------------------+------------------------------+---------------------------------------->
  >--------------------------------------------|
  |      AXMenuItemSelectedNotification        |
  >--------------------------------------------|
|------------------------------------+------------------------------+---------------------------------------->
|      Menu popup made visible (menu |      EVENT_SYSTEM_MENUPOPUPST|      MenuOpenedEvent, then a focus     |
|      is opened).                   |      ART                     |      event on a menuitem               |
|                                    |                              |                                        |
|                                    |                              |                                        |
|      Should only be fired once     |                              |                                        |
|      until the menu is closed and  |                              |                                        |
|      opened again.                 |                              |                                        |
|------------------------------------+------------------------------+---------------------------------------->
  >--------------------------------------------|
  |      AXMenuOpenedNotification              |
  >--------------------------------------------|
|------------------------------------+------------------------------+---------------------------------------->
|      Menu popup hidden (menu is    |      EVENT_SYSTEM_MENUPOPUPEN|      MenuClosedEvent                   |
|      closed).                      |      D once only for         |                                        |
|                                    |      accessible menu object  |                                        |
|                                    |      and only if             |                                        |
|                                    |      EVENT_SYSTEM_MENUPOPUPST|                                        |
|                                    |      ART was fired for it.   |                                        |
|------------------------------------+------------------------------+---------------------------------------->
  >--------------------------------------------|
  |      AXMenuClosedNotification              |
  >--------------------------------------------|
|------------------------------------+------------------------------+---------------------------------------->
|      All menus closed, and user    |      EVENT_SYSTEM_MENUEND on |      MenuModeEndEvent                  |
|      moves focus away from menubar;|      the menubar; deactivate |                                        |
|      menubar is deactivated.       |      the menubar             |                                        |
|------------------------------------+------------------------------+---------------------------------------->
  >--------------------------------------------|
  |      AXMenuClosedNotification              |
  >--------------------------------------------|
|------------------------------------+------------------------------+---------------------------------------->
|      Focus moved out of menu I     |      EVENT_SYSTEM_MENUPOPUPEN|      MenuClosedEvent, then             |
|      CAN'T RELATE THIS SCENARIO TO |      D, then                 |      MenuModeEndEvent                  |
|      ANY OF ALEX's 5 SCENARIOS.    |      EVENT_SYSTEM_MENUEND and|                                        |
|                                    |      deactivate the menubar  |                                        |
|------------------------------------+------------------------------+---------------------------------------->
  >--------------------------------------------|
  |      AXMenuClosedNotification              |
  >--------------------------------------------|



--
;;;;joseph.


'A: After all, it isn't rocket science.'
'K: Right. It's merely computer science.'
            - J. D. Klaun -

Received on Thursday, 31 October 2013 14:23:32 UTC