Process ax::mojom::Event::kAlert in the auralinux backend.

This event is emitted by alert-like contents like bubbles or infobars.
The auralinux backend now emits the platform event
"object:state-changed:showing".

It fixes one aspect of the bug 1052675: there was no event indicating
the appearance of the bubble.

Bug: 1052675
Change-Id: I73a8441b457088261e70dbddb4c00795c8553a1a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2062349
Commit-Queue: Jacobo Aragunde Pérez <jaragunde@igalia.com>
Reviewed-by: Joanmarie Diggs <jdiggs@igalia.com>
Cr-Commit-Position: refs/heads/master@{#755380}
diff --git a/ui/accessibility/platform/ax_platform_node_auralinux.cc b/ui/accessibility/platform/ax_platform_node_auralinux.cc
index 3047706..c4a8398 100644
--- a/ui/accessibility/platform/ax_platform_node_auralinux.cc
+++ b/ui/accessibility/platform/ax_platform_node_auralinux.cc
@@ -3829,6 +3829,11 @@
       GetData().GetInvalidState() != ax::mojom::InvalidState::kFalse);
 }
 
+void AXPlatformNodeAuraLinux::OnAlertShown() {
+  atk_object_notify_state_change(ATK_OBJECT(GetOrCreateAtkObject()),
+                                 ATK_STATE_SHOWING, TRUE);
+}
+
 void AXPlatformNodeAuraLinux::NotifyAccessibilityEvent(
     ax::mojom::Event event_type) {
   if (!GetOrCreateAtkObject())
@@ -3904,6 +3909,9 @@
       // kLoadComplete.
       OnDocumentTitleChanged();
       break;
+    case ax::mojom::Event::kAlert:
+      OnAlertShown();
+      break;
     default:
       break;
   }
diff --git a/ui/accessibility/platform/ax_platform_node_auralinux.h b/ui/accessibility/platform/ax_platform_node_auralinux.h
index 5786f8a6..e8d1212f 100644
--- a/ui/accessibility/platform/ax_platform_node_auralinux.h
+++ b/ui/accessibility/platform/ax_platform_node_auralinux.h
@@ -215,6 +215,7 @@
   void OnParentChanged();
   void OnWindowVisibilityChanged();
   void OnScrolledToAnchor();
+  void OnAlertShown();
 
   void ResendFocusSignalsForCurrentlyFocusedNode();
   bool SupportsSelectionWithAtkSelection();