Commit 7bc16951 authored by Morgan Reschenberg's avatar Morgan Reschenberg
Browse files

Bug 1710748: Return button menus when form controls are queried from rotor r=eeejay

parent 4cb5ee5a
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -126,6 +126,7 @@ uint16_t RotorControlRule::Match(const AccessibleOrProxy& aAccOrProxy) {
      case roles::ENTRY:
      case roles::OUTLINE:
      case roles::PASSWORD_TEXT:
      case roles::BUTTONMENU:
        return result;

      case roles::DATE_EDITOR:
+9 −1
Original line number Diff line number Diff line
@@ -825,6 +825,8 @@ addAccessibleTask(
    <li role="treeitem">item1</li>
    <li role="treeitem">item1</li>
  </ul>

  <a id="buttonMenu" role="button">Click Me</a>
  `,
  async (browser, accDoc) => {
    const searchPred = {
@@ -847,7 +849,7 @@ addAccessibleTask(
      "AXUIElementCountForSearchPredicate",
      NSDictionary(searchPred)
    );
    is(3, controlsCount, "Found 3 controls");
    is(4, controlsCount, "Found 4 controls");

    const controls = webArea.getParameterizedAttributeValue(
      "AXUIElementsForSearchPredicate",
@@ -857,6 +859,7 @@ addAccessibleTask(
    const spin = getNativeInterface(accDoc, "spinbutton");
    const details = getNativeInterface(accDoc, "details");
    const tree = getNativeInterface(accDoc, "tree");
    const buttonMenu = getNativeInterface(accDoc, "buttonMenu");

    is(
      spin.getAttributeValue("AXRole"),
@@ -873,6 +876,11 @@ addAccessibleTask(
      controls[2].getAttributeValue("AXRole"),
      "Found correct tree"
    );
    is(
      buttonMenu.getAttributeValue("AXRole"),
      controls[3].getAttributeValue("AXRole"),
      "Found correct button menu"
    );
  }
);