| Index: chrome/browser/extensions/extension_accessibility_api.cc
 | 
| ===================================================================
 | 
| --- chrome/browser/extensions/extension_accessibility_api.cc	(revision 43705)
 | 
| +++ chrome/browser/extensions/extension_accessibility_api.cc	(working copy)
 | 
| @@ -86,6 +86,12 @@
 | 
|      case NotificationType::ACCESSIBILITY_TEXT_CHANGED:
 | 
|        OnTextChanged(Details<const AccessibilityControlInfo>(details).ptr());
 | 
|        break;
 | 
| +    case NotificationType::ACCESSIBILITY_MENU_OPENED:
 | 
| +      OnMenuOpened(Details<const AccessibilityMenuInfo>(details).ptr());
 | 
| +      break;
 | 
| +    case NotificationType::ACCESSIBILITY_MENU_CLOSED:
 | 
| +      OnMenuClosed(Details<const AccessibilityMenuInfo>(details).ptr());
 | 
| +      break;
 | 
|      default:
 | 
|        NOTREACHED();
 | 
|    }
 | 
| @@ -152,6 +158,18 @@
 | 
|    DispatchEvent(info->profile(), keys::kOnTextChanged, json_args);
 | 
|  }
 | 
|  
 | 
| +void ExtensionAccessibilityEventRouter::OnMenuOpened(
 | 
| +    const AccessibilityMenuInfo* info) {
 | 
| +  std::string json_args = ControlInfoToJsonString(info);
 | 
| +  DispatchEvent(info->profile(), keys::kOnMenuOpened, json_args);
 | 
| +}
 | 
| +
 | 
| +void ExtensionAccessibilityEventRouter::OnMenuClosed(
 | 
| +    const AccessibilityMenuInfo* info) {
 | 
| +  std::string json_args = ControlInfoToJsonString(info);
 | 
| +  DispatchEvent(info->profile(), keys::kOnMenuClosed, json_args);
 | 
| +}
 | 
| +
 | 
|  void ExtensionAccessibilityEventRouter::DispatchEvent(
 | 
|      Profile* profile,
 | 
|      const char* event_name,
 | 
| 
 |