| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "content/renderer/accessibility/renderer_accessibility_complete.h" | 5 #include "content/renderer/accessibility/renderer_accessibility_complete.h" |
| 6 | 6 |
| 7 #include <queue> | 7 #include <queue> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/message_loop/message_loop.h" | 10 #include "base/message_loop/message_loop.h" |
| (...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 188 continue; | 188 continue; |
| 189 | 189 |
| 190 // When we get a "selected children changed" event, Blink | 190 // When we get a "selected children changed" event, Blink |
| 191 // doesn't also send us events for each child that changed | 191 // doesn't also send us events for each child that changed |
| 192 // selection state, so make sure we re-send that whole subtree. | 192 // selection state, so make sure we re-send that whole subtree. |
| 193 if (event.event_type == | 193 if (event.event_type == |
| 194 ui::AX_EVENT_SELECTED_CHILDREN_CHANGED) { | 194 ui::AX_EVENT_SELECTED_CHILDREN_CHANGED) { |
| 195 serializer_.DeleteClientSubtree(obj); | 195 serializer_.DeleteClientSubtree(obj); |
| 196 } | 196 } |
| 197 | 197 |
| 198 // Allow Blink to cache intermediate results since we're doing a bunch | |
| 199 // of read-only queries at once. | |
| 200 obj.startCachingComputedObjectAttributesUntilTreeMutates(); | |
| 201 | |
| 202 AccessibilityHostMsg_EventParams event_msg; | 198 AccessibilityHostMsg_EventParams event_msg; |
| 203 event_msg.event_type = event.event_type; | 199 event_msg.event_type = event.event_type; |
| 204 event_msg.id = event.id; | 200 event_msg.id = event.id; |
| 205 serializer_.SerializeChanges(obj, &event_msg.update); | 201 serializer_.SerializeChanges(obj, &event_msg.update); |
| 206 event_msgs.push_back(event_msg); | 202 event_msgs.push_back(event_msg); |
| 207 | 203 |
| 208 #ifndef NDEBUG | 204 #ifndef NDEBUG |
| 209 VLOG(0) << "Accessibility update: \n" | 205 VLOG(0) << "Accessibility update: \n" |
| 210 << "routing id=" << routing_id() | 206 << "routing id=" << routing_id() |
| 211 << " event=" | 207 << " event=" |
| (...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 379 render_view()->GetWebView()->clearFocusedElement(); | 375 render_view()->GetWebView()->clearFocusedElement(); |
| 380 else | 376 else |
| 381 obj.setFocused(true); | 377 obj.setFocused(true); |
| 382 } | 378 } |
| 383 | 379 |
| 384 void RendererAccessibilityComplete::OnFatalError() { | 380 void RendererAccessibilityComplete::OnFatalError() { |
| 385 CHECK(false) << "Invalid accessibility tree."; | 381 CHECK(false) << "Invalid accessibility tree."; |
| 386 } | 382 } |
| 387 | 383 |
| 388 } // namespace content | 384 } // namespace content |
| OLD | NEW |